Benvenuto Visitatore(Log In|Registrati)

189 Pagine V  « < 79 80 81 82 83 > »   
Reply to this topicStart new topic
> [PC-DOS] HEROQUEST by Gremlin (1991) REMASTERED, - Modding, Bugfixing e Traduzione ITA/ESP devlog
raul
messaggio26 Nov 2024, 17:44
Messaggio #2001



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 26 Nov 2024, 11:34) *
Ho verificato il codice ieri, e ti confermo che il comportamento è corretto per come è scritto il codice. Devo cambiarlo ma al momento non ho un fix.
La questione è questa: per fare in modo di NON PERMETTERE la ricerca, ogni volta che un mostro si sposta nella tua sezione gli aggiorno la stanza nel profilo, copiandola con quella dell'eroe attivo. Questa cosa funziona sempre quando il mostro ti segue, ma se resta indietro si crea il problema, perché la stanza nel suo profilo si aggiorna lo stesso ogni volta che termini il turno. Per questo quando passi in un'altra sezione puoi cercare. Ma se termini il turno diventa non cercabile.

Spero che troviate presto la soluzione

CITAZIONE
Avevano scritto 4 blocchi praticamente identici per le 4 direzioni, io ho spostato le parti uguali all'esterno dei blocchi in modo da eseguirle nella parte comune, e poiusato un trucco per rendere "uguali" le parti simili.

Ottima idea quella di unificare il codice uguale e simile.

CITAZIONE
se clicchi in una casella dopo le scale, normalmente l'eroe si dirige dritto e calpesta le scale, mentre con il cambio che avevo proposto non le calpesta ma ci gira attorno arrivando al punto cliccato in origine.

Ho capito. In realtà l'idea mi piace, solo che non mi piace l'idea di dover usare il cursore dell'indirizzo per entrare. Sarebbe bello se se si fa clic al di fuori del riquadro di uscita, l'eroe girasse intorno al riquadro di uscita e quando si fa clic sul riquadro, uscisse.

L'idea di utilizzare i cursori per l'output non mi dispiace affatto, ma un semplice clic del mouse sarebbe perfetto.

CITAZIONE
Non si può. le 4 scale sono composte da 4 tile diverse e ognuna si attiva quando la calpesti per farti uscire. Tu le vedi assieme, ma sono considerate separate.
Bisognerebbe creare due nuove tessere (orizzontale e verticale) e assegnargli due nuovi ID, ma non vedo lo scopo. Sarebbero solamente grafiche senza reale utilizzo. Giusto?


Sì, lo sapevo, per questo ho proposto un codice per renderlo solo visivo. Il vero utilizzo sarebbe quello di dare effetti ladder nelle missioni, come avviene nell'espansione kellar tower.
 
raul
messaggio26 Nov 2024, 17:58
Messaggio #2002



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 26 Nov 2024, 17:26) *
Ho caricato su drive l'ultima versione con il codice del pathfinding eroe ottimizzato 1/3. Non è la versione definitiva, perché manca ancora la fase 2/3 e 3/3 dove aggiungerò (se tutto va bene!) il fix per veil of myst.
Intanto però la versione 1/3 per essere consolidata va testata per bene. mi raccomando, verifica se vedi anomalie nel movimento dell'eroe (anche con "attraversa la roccia").
Grazie!

Credo che tu abbia dimenticato di inserire il codice per il test.

CITAZIONE
Una cosa che ho notato, leggendo il codice (e poi verificato) è che sia il pathfinding originale, sia le frecce direzionali, quando hai attraversa la roccia non ti permette di attraversare porte segrete chiuse:

Non uso affatto le frecce direzionali, tranne che per la missione del castello misterioso.

CITAZIONE
Non l'ho cambiato, nel mio rework, ma risolvere la cosa non è semplicissimo, ho idea.

41.gif
 
TheRuler
messaggio26 Nov 2024, 20:24
Messaggio #2003



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




CITAZIONE
Non uso affatto le frecce direzionali,
neanch'io troppo ma sono utili per capire dove puoi andare quando usi "attraversa la roccia"


CITAZIONE
Credo che tu abbia dimenticato di inserire il codice per il test.
Credevo usassi l'exe dentro al mio pacchetto. Oppure vuoi modificare il tuo?


CITAZIONE
Sarebbe bello se se si fa clic al di fuori del riquadro di uscita, l'eroe girasse intorno al riquadro di uscita e quando si fa clic sul riquadro, uscisse.
Lo so. vero.
ma il pathfinding verifica prima i click del mouse, perché se il punto è un oggetto impassabile come mobili o mostri allora salta tutto il calcolo di ricerca percorso (sarebbe inutile, tanto non potrebbe arrivarci). Dopo di che fa lo stesso controllo ma pert TUTTE le caselle possibili su cui l'eroe può camminare (comprese le scale).
Ricordi il trucco del click sulla trappola che non faceva partire il pathfinding? Era qui in questo codice.
Quindi le scale possono essere:
1- sempre cliccabili e calpestabili dal patfinding (come ora)
2- Non cliccabili ma calpestabili dal patfinding (come erano le trappole)
3- Sempre calpestabili con le frecce (perché ti ricordo che sono due codici separati).



CITAZIONE
Ottima idea quella di unificare il codice uguale e simile.
La realtà è che mi diverte tantissimo ottimizzare il codice, e poi ho tanta paura di finire lo spazio nella zona grossa che ho trovato tempo fa.

Una ottimizzazione che faccio spesso è questa: i programmatori spesso usano questa logica condizionale (semplifico: in assembly se un Controllo non viene soddisfatto, semplicemente il codice passa alla riga dopo):

CODICE
1 Operazione A
2 Controllo se VERO salta a 4
3 Salta a 15
4 Operazione B
...
15 Operazione F


quello che faccio io è ribaltare la logica condizionale, risparmiando spesso dai 3 ai 4 byte ad ogni Controllo:

CODICE
1 Operazione A
2 Controllo se FALSO salta a 15
3 Operazione B
...
15 Operazione F



Il vantaggio della prima logica è la flessibilità, perché permette una gestione più complessa dei casi, mentre la mia versione è più restrittiva. Ma di solito posso permettermelo.


--------------------
 
TheRuler
messaggio26 Nov 2024, 21:00
Messaggio #2004



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




Mira que guapo.

File Allegato  ezgif_1_9695ff1164.gif ( 667.51k ) Numero di download: 1


Se vuoi provarlo (sul mio QUEST.EXE): 0x333D 40 --> 37

Oppure provare il pathfinding 1/3 sul tuo exe:
CITAZIONE
at 0x32D7 change to 538A1EF23F32FF803EF63F13737F803EF53F1A7378A0F63FB21AF6E28A16F53F32F603C28BE881C5
0E0A3E8A4E00380EF33F7359056F563B06110E74508BD88A8700FE243F744680BF000200741B80BF0
002307406F6451810752F80BF000232722B80BF0002407724F6451820751B908BC38A1EF23F32FFD1
E3FF97F140740AF601087405F601047403F8EB01F9905BC38BD8BF1A00F601807402EB34F60120C38
BD8BF0000F601407402EB24F60110C38BD8BF0000F601807402EB14F60120C38BD8BF0100F6014074
02EB04F60110C3678004240FC39090909090909090909090909090909090909090909090909090909
090909090909090909090909090909090909090909090909090909090909090909090

at 0xDCD1 change to 482F582F682F782F


guarda quanti bei 90...


--------------------
 
raul
messaggio26 Nov 2024, 21:01
Messaggio #2005



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 26 Nov 2024, 20:24) *
Credevo usassi l'exe dentro al mio pacchetto. Oppure vuoi modificare il tuo?

Naturalmente, in questo modo posso approfittare dell'opportunità di testare la mia versione spagnola.

CITAZIONE (TheRuler @ 26 Nov 2024, 21:00) *
Se vuoi provarlo: 0x333D 40 --> 37

Questo è il codice della prima fase di 3?

Messaggio modificato da raul il 26 Nov 2024, 21:03
 
TheRuler
messaggio26 Nov 2024, 21:12
Messaggio #2006



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




CITAZIONE
Questo è il codice della prima fase di 3?
no, solo il modo per aggirare le scale.
ho editato il messaggio sopra con tutto il codice.


--------------------
 
raul
messaggio26 Nov 2024, 21:19
Messaggio #2007



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 26 Nov 2024, 21:12) *
no, solo il modo per aggirare le scale.
ho editato il messaggio sopra con tutto il codice.

Come ho detto prima, ho sentimenti contrastanti riguardo a questo codice: da un lato mi va bene aggirare la tessera di uscita cliccando su una tessera all'interno della stanza, ma dall'altro trovo poco intuitivo usare le frecce direzionali per uscire.

In realtà, non sarebbe una cattiva idea usare di più le frecce direzionali, ma mi piace e preferisco la comodità di cliccare sulla tessera di uscita per uscire dal dungeon.

Un codice perfetto sarebbe quello di poter cliccare con il mouse su una tessera e, a seconda della destinazione, effettuare o meno la deviazione verso la tessera di uscita.

Messaggio modificato da raul il 27 Nov 2024, 06:24
 
raul
messaggio27 Nov 2024, 06:08
Messaggio #2008



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 26 Nov 2024, 21:00) *
Oppure provare il pathfinding 1/3 sul tuo exe:

at 0x32D7 change to 538A1EF23F32FF803EF63F13737F803EF53F1A7378A0F63FB21AF6E28A16F53F32F603C28BE881C5
0E0A3E8A4E00380EF33F7359056F563B06110E74508BD88A8700FE243F744680BF000200741B80BF0
002307406F6451810752F80BF000232722B80BF0002407724F6451820751B908BC38A1EF23F32FFD1
E3FF97F140740AF601087405F601047403F8EB01F9905BC38BD8BF1A00F601807402EB34F60120C38
BD8BF0000F601407402EB24F60110C38BD8BF0000F601807402EB14F60120C38BD8BF0100F6014074
02EB04F60110C3678004240FC39090909090909090909090909090909090909090909090909090909
090909090909090909090909090909090909090909090909090909090909090909090

at 0xDCD1 change to 482F582F682F782F

Ok, implementerò il codice nella mia versione spagnola e lo testerò. Devo solo verificare che il comportamento di movimento degli eroi sia quello normale, compreso l'incantesimo di attraversamento delle pareti.

CITAZIONE
guarda quanti bei 90...

Non ti capisco.

Messaggio modificato da raul il 27 Nov 2024, 06:24
 
TheRuler
messaggio27 Nov 2024, 08:33
Messaggio #2009



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




CITAZIONE
ma dall'altro trovo poco intuitivo usare le frecce direzionali per uscire.
è esattamente quello che ho pensato io. Difatti meglio non implementarlo.
Del resto ho già messo lo scroll di conferma in uscita.

CITAZIONE
Un codice perfetto sarebbe quello di poter cliccare con il mouse su una tessera e, a seconda della destinazione, effettuare o meno la deviazione verso la tessera di uscita.
non si può, a meno di stravolgere ancora di più quello attuale. Non ne vale la pena.

CITAZIONE
Devo solo verificare che il comportamento di movimento degli eroi sia quello normale, compreso l'incantesimo di attraversamento delle pareti.
Esattamente.

CITAZIONE
Non ti capisco.
90 è l'opcode per nop (no operation), il codice che uso quando voglio liberare lo spazio. Come vedi nel codice sopra gli ultimi 62 byte sono nop. E' lo spazio che ho liberato a seguito dell'ottimizzazione del pathfinding, per aggiungere in futuro nuovo codice.


--------------------
 
TheRuler
messaggio27 Nov 2024, 16:37
Messaggio #2010



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




Ho definitivamente risolto la ricerca nei corridoi quando i mostri cambiano stanza nativa. Ho posizionato la scrittura della stanza nel punto in cui si trova effettivamente il mostro.

CODICE
1ef:0b82:  8A 07          mov  al, byte ptr [bx]
1ef:0b84:  24 3F          and  al, 0x3f
1ef:0b86:  88 45 03       mov  byte ptr [di + 3], al
1ef:0b89:  C3             ret



Non ti spaventare sulla quantità di byte da cambiare. La ragione è che ho sposstato codice di tre byte indietro e quindi cambianotutti i riferimenti:

CITAZIONE
FIX3 search when monster move into new corridor section
at 0xCC05 change to 38C0C3
at 0x0F8A change to EB12A0B83FF645170174060402806517FEE8FFBBA2B83FC38A07243F884503C390
at 0x2915 change to 8B1ECA408B550102170277018955018306CA4002E8723BE823A381C36F54E86CE6


--------------------
 
raul
messaggio27 Nov 2024, 17:37
Messaggio #2011



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 27 Nov 2024, 08:33) *
Esattamente.

Per quanto ho potuto giocare questa mattina tutto era perfetto, non ho notato alcun cambiamento, continuerò con i test.

CITAZIONE
90 è l'opcode per nop (no operation), il codice che uso quando voglio liberare lo spazio. Come vedi nel codice sopra gli ultimi 62 byte sono nop. E' lo spazio che ho liberato a seguito dell'ottimizzazione del pathfinding, per aggiungere in futuro nuovo codice.

Ok, ora ha senso. Il traduttore l'aveva interpretato come anni '90. screwy.gif

CITAZIONE (TheRuler @ 27 Nov 2024, 16:37) *
Ho definitivamente risolto la ricerca nei corridoi quando i mostri cambiano stanza nativa. Ho posizionato la scrittura della stanza nel punto in cui si trova effettivamente il mostro.

Sei il migliore... E lo sai. metal.gif
 
TheRuler
messaggio27 Nov 2024, 17:53
Messaggio #2012



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




Ottimo, fantastico.

Non mi sono scordato del tuo punto 20. E' solo più complicato di quanto pensassimo.


--------------------
 
raul
messaggio27 Nov 2024, 19:59
Messaggio #2013



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




Non preoccupatevi, fate quello che ritenete più opportuno, non voglio che vi bruciate con così tanto codice da ammalarvi alla fine.
È vero che vorrei finire di sistemare i testi nel file .bin.
 
raul
messaggio30 Nov 2024, 10:19
Messaggio #2014



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




Nel frattempo, continuo a testare il nuovo codice e tutto funziona bene, non ci sono cambiamenti nei movimenti degli eroi. Continuerò a giocare finché non avrò completato tutte le missioni.
 
TheRuler
messaggio30 Nov 2024, 10:21
Messaggio #2015



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




Dovrei avere terminato anche le fasi 2/3 e 3/3 per l'attraversamento dei mostri con "veil of mist".
Forse entro oggi riesco a mettere insieme le istruzioni per fartelo provare, raul.

Ho un solo problema da risolvere: devo fare in modo che l'effetto di veil of mist non si resetti alla fine del turno dei mostri, altrimenti un barbaro o un nano non potranno mai ottenere il movimento furtivo, ma solo l'invisibilità per un turno.


--------------------
 
raul
messaggio30 Nov 2024, 10:52
Messaggio #2016



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account






Bene bene, quando sarà pronto, tornerò a fare altri test, come al solito.
Puoi usare parte del codice per migliorare il movimento dei nemici in modo che non si blocchino a vicenda?

Messaggio modificato da raul il 30 Nov 2024, 10:56
 
TheRuler
messaggio30 Nov 2024, 13:09
Messaggio #2017



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




CITAZIONE
Puoi usare parte del codice per migliorare il movimento dei nemici in modo che non si blocchino a vicenda?

No, non c'entra quella parte. Ho modificato solo il movimento dell'eroe.

Sto però convincendomi che quel comportamento mi piace. Anche Nyerguds suggeriva che in fondo è bello che non tutti i mostri inseguano, e che alcuni rimangano a pattugliare i corridoi.
Del resto, il treno di mostri non è così tatticamente divertente.


--------------------
 
raul
messaggio30 Nov 2024, 13:12
Messaggio #2018



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




Per carità, ho visto un utente blu, come è possibile?

 
raul
messaggio30 Nov 2024, 13:16
Messaggio #2019



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 30 Nov 2024, 13:09) *
Sto pero convincendomi che quel comportamento però mi piace. Anche Nyerguds suggeriva che in fondo è bello che non tutti i mostri inseguano, e che alcuni rimangano a pattugliare i corridoi.
Del resto, il treno di mostri non è così tatticamente divertente.

Il problema non è il comportamento nel corridoio, il problema è nelle stanze, che rimangono ferme e non attaccano.

Messaggio modificato da raul il 30 Nov 2024, 13:17
 
TheRuler
messaggio30 Nov 2024, 15:22
Messaggio #2020



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




CITAZIONE
il problema è nelle stanze, che rimangono ferme e non attaccano.
quello sarà difficile. Molto difficile.

Quello blu è il gruppo UST, un vecchio gruppo di traduzioni di cui gharlic fa parte.




--------------------
 
raul
messaggio30 Nov 2024, 17:31
Messaggio #2021



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




Per questo ho detto che se riusciamo a far passare i mostri l'uno attraverso l'altro, si spera che quando si avvicinano all'eroe e non sono bloccati da un altro mostro, non rimangano così statici nelle stanze.
 
TheRuler
messaggio30 Nov 2024, 18:27
Messaggio #2022



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




CITAZIONE (raul @ 30 Nov 2024, 17:31) *
Per questo ho detto che se riusciamo a far passare i mostri l'uno attraverso l'altro, si spera che quando si avvicinano all'eroe e non sono bloccati da un altro mostro, non rimangano così statici nelle stanze.

Quando e se il movimento mostri verrà completamente cambiato si può pensare di implementarlo. Al momento non è possibile perché non c'è motivo
Tutto sommato come ho già detto mi piace che i mostri rimangano nelle stanze a presidio. Se il mostro non si sposta verso l'eroe che si posiziona sulla porta, il giocatore non ha la possibilità di scambiarsi di posto con un altro eroe e attaccare quindi il mostro due volte, impedendo a Morcar di entrare nella stanza o attaccare con più di un mostro.
Se invece il mostro rimane nella stanza quel trucco odioso non si può attuare.

Non devi vederli "statici", ma "stragegici". A me piace molto.




--------------------
 
TheRuler
messaggio30 Nov 2024, 19:03
Messaggio #2023



Gruppo icone

Gruppo: SMod
Messaggi: 14.545
Iscritto il: 20 January 06
Da: Bologna
Utente Nr.: 2.653
Entropologo part-time

BGE AG: Indy3
Arcade: Silpheed
Free Roaming: Shadow of the Colossus
RTS: Praetorians

Playing Magari...
SO Windows7

OGI Supporter




Ho messo a punto il codice che permette agli eroi di attraversare i mostri quando sotto l'effetto di "Velo di Nebbia" (Veil of Mist).

Il codice ha richiesto la rielaborazione di 3 blocchi per l'aggiunta del controllo dell'incantesimo e dell'eliminazione del suo effetto. Oltre alla verifica di tutte le caselle calpestabili dall'eroe in due modalità, pathfinding (click col mouse) e passo-passo (frecce direzionali)

I blocchi:
1- patfinding dell'eroe, aggiunta caselle mostro nel calcolo del percorso possibile
2- accensione e spegnimento delle frecce di movimento in base alle condizioni
3- animazione ed effettivo spostamento dell'eroe

tutti questi codici li ho dovuti ripetere x4, ma ho colto l'occasione per compattarli ed unificarli in un'unica call 2f8e

esempio abilitazione freccia direzionale LEFT
CODICE
1ef:59f2:  E8 99 D5    call 0x2f8e
1ef:59f5:  73 02       jae  0x59f9
1ef:59f7:  EB 0A       jmp  0x5a03


esempio nuovo codice per solo animazione LEFT
CODICE
1ef:4941:  E8 4A E6    call 0x2f8e
1ef:4944:  73 03       jae  0x4949
1ef:4946:  E9 56 04    jmp  0x4d9f
1ef:4949:  3C 40       cmp  al, 0x40
1ef:494b:  72 03       jb   0x4950
1ef:494d:  E9 4F 04    jmp  0x4d9f
1ef:4950:  8B 55 01    mov  dx, word ptr [di + 1]
1ef:4953:  90          nop  
1ef:4954:  90          nop


call 2f8e unica:
CODICE
1ef:2f8e:  3C 30             cmp  al, 0x30
1ef:2f90:  73 13             jae  0x2fa5
1ef:2f92:  F6 45 18 01       test byte ptr [di + 0x18], 1
1ef:2f96:  74 0D             je   0x2fa5
1ef:2f98:  80 3E 9C 3F 02    cmp  byte ptr [0x3f9c], 2
1ef:2f9d:  72 06             jb   0x2fa5
1ef:2f9f:  83 FA 01          cmp  dx, 1
1ef:2fa2:  75 04             jne  0x2fa8
1ef:2fa4:  C3                ret  
1ef:2fa5:  3C 32             cmp  al, 0x32
1ef:2fa7:  C3                ret  
1ef:2fa8:  67 80 04 24 16    add  byte ptr [esp], 0x16
1ef:2fad:  C3                ret

questa è stata simpatica perché per variare le condizioni di salto indietro (ret) diversa per le due routine (frecce e animazione) ho dovuto manipolare lo stack (l'ultima operazione dove aggiungo 16 byte alla memoria puntata dallo stack pointer) per farla ritornare al punto in cui dovevo.

File Allegato  Screenshot_2024_11_30_185238.png ( 32.85k ) Numero di download: 0


CITAZIONE
at 0x32D7 change to 538A1EF23F32FF803EF63F13737F803EF53F1A7378A0F63FB21AF6E28A16F53F32F603C28BE881C5
0E0A3E8A4E00380EF33F7359056F563B06110E74508BD88A8700FE243F744680BF000200741B80BF0
002307306F6451801752F80BF000232722B80BF0002407724F6451820751B908BC38A1EF23F32FFD1
E3FF97F140740AF601087405F601047403F8EB01F9905BC38BD8F6471A807402EB2EF6471A20C38B
D8F607407402EB20F60710C38BD8F607807402EB13F60720C38BD8F64701407402EB05F6470110C3
678004240FC390909090909090903C307313F6451801740D803E9C3F02720683FA017504C33C32C36
780042416C3909090909090909090909090909090909090909090909090909090909090

at 0xDCD1 change to 482F572F642F712F

at 0x5D71 change to E83AD67302EB0A

at 0x5Dc2 change to E8e9D57302EB0a

at 0x5E12 change to E899D57302EB0a

at 0x5E65 change to E846D57302EB0a

at 0x4D61 change to E84aE67303E956043C407203E94f048b55019090

at 0x4E28 change to E883e57303E98f033C407203E988038B55019090

at 0x4EEE change to E8bde47303E9C9023C407203E9C2028B55019090

at 0x4FB9 change to E8f2e37303E9Fe013C407203E9F7018B55019090

at 0x261D change to C390909090909090909090909090909090909090909090909090

at 0x0B8D change to DE


codice frecce direzionali:
File Allegato  ezgif_6_fb2347b97a.gif ( 1.68mb ) Numero di download: 3


--------------------
 
raul
messaggio30 Nov 2024, 19:08
Messaggio #2024



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




Beh, questo è un argomento molto diverso da quello di cui sto parlando, e possiamo discuterne quando volete, anche se vi sto dicendo che quello che vorrei è che i nemici entrino nelle stanze e non che ne escano.

Quello di cui parlo è quando si è già in una stanza. Vi faccio un esempio.

Nella stanza in cui si raccoglie la lama dello spirito, se l'eroe si trova in un angolo, ci sono nemici che non si avvicineranno all'eroe anche se hanno abbastanza movimento e un posto dove attaccare. Probabilmente è perché un altro mostro “blocca” l'accesso, per questo dico che se si fa in modo che i mostri si superino a vicenda, è possibile che questa “IA” venga migliorata.

Messaggio modificato da raul il 30 Nov 2024, 19:10
 
raul
messaggio30 Nov 2024, 19:46
Messaggio #2025



Gruppo icone

Gruppo: OldGamer
Messaggi: 2.695
Iscritto il: 15 September 17
Da: España
Utente Nr.: 21.627
SO Sono un BOT, cancellami l'account




CITAZIONE (TheRuler @ 30 Nov 2024, 19:03) *
Ho messo a punto il codice che permette agli eroi di attraversare i mostri quando sotto l'effetto di "Velo di Nebbia" (Veil of Mist).



CITAZIONE
at 0x261D change to C390909090909090909090909090909090909090909090909090

In origine era già così, non è stato necessario apportare modifiche.

Messaggio modificato da raul il 30 Nov 2024, 19:46
 

189 Pagine V  « < 79 80 81 82 83 > » 
Reply to this topicStart new topic
1 utenti stanno leggendo questa discussione (1 visitatori e 0 utenti anonimi)
0 utenti:

 

Modalità di visualizzazione: Normale · Passa a: Lineare · Passa a: Outline


Versione Lo-Fi Oggi è il: 6th November 2026 - 15:04