Benvenuto Visitatore(Log In|Registrati)

18 Pagine V  « < 2 3 4 5 6 > »   
Reply to this topicStart new topic
> Centurion in italiano, esiste per davvero?, EDIT: la traduzione è qui!
The Ancient One
messaggio16 Jul 2015, 13:26
Messaggio #76



Gruppo icone

Gruppo: Admin
Messaggi: 30.332
Iscritto il: 18 April 04
Da: Britannia
Utente Nr.: 1.377
pulley-in-the-middle

BGE Ultima 7
Playing Ultima 7: "Il Portale Oscuro" IN ITALIANO!

Dungeon Master 1 (PC - DosBox)
Sonic (Wii)
Runaway (PC)

SO WinXP




Non c'hi capito nulla, ma.... Immenso!


--------------------
 
Syxtem
messaggio16 Jul 2015, 13:32
Messaggio #77



Gruppo icone

Gruppo: UST Member
Messaggi: 497
Iscritto il: 17 February 03
Utente Nr.: 2.153
SO Win95




Completo il discorso sui file compressi (ossia i singoli file nei DAT).
Molto probabilmente ognuno di loro comincia con 4 byte che indicano la dimensione del file decompresso.
Segue una sequenza di un byte che indica lo stato degli otto simboli seguenti e quindi gli otto simboli, a ripetersi fino alla fine del file compresso.


--------------------
 
TheRuler
messaggio16 Jul 2015, 15:20
Messaggio #78



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Sulla base di queste supposizioni, che avevo fatto anche io (sese, come no ;-) ) stamatina ho estratto il textz.lzw ma non ho trovato un decompressore adeguato che lo decomprimesse. Hai qualcosa Syxtem?

http://s000.tinyupload.com/?file_id=19704625153039152206

Se qualcuno volesse già proporsi come betatester per il gioco (senza le negoziazioni) mi aiuterebbe a testarlo. In PM giro il file.


--------------------
 
Syxtem
messaggio16 Jul 2015, 17:50
Messaggio #79



Gruppo icone

Gruppo: UST Member
Messaggi: 497
Iscritto il: 17 February 03
Utente Nr.: 2.153
SO Win95




C'ho guardato, ma probabilmente il dizionario viene costruito seguendo alcune regole particolari.
Solitamente nella decompressione LZW, c'è un dizionario da cui si vanno a prendere i caratteri decompressi da applicare al posto di quelli compressi. Questo dizionario viene creato in fase di decompressione e può contenere anche delle voci che non verranno applicate mai. In textz.lzw la prima parola che viene cercata nel dizionario è quella con indice 35, perciò significa che vi sono probabilmente altrettante voci che sono state create prima di arrivare considerare quella.
Solitamente le voci vengono formate unendo i caratteri successivi che vengono individuati, ma possono essere create in molti altri modi. Purtroppo applicando le regole standard dell'algoritmo LZW non mi sembra di ottenere le voci del dizionario compatibili per effettuare la decompressione corretta.


--------------------
 
TheRuler
messaggio16 Jul 2015, 19:24
Messaggio #80



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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 trovato questo. Ho già fatto prove e genera un file molto simele al nostro. Purtroppo non lo decomprime.
Sembra che intervalli ogni byte con il byte di controllo 0x00 non compresso e 0x01 compresso.
Magari potrebbe esserci utile. Mi pare di aver capito che LZW abbia problemi di copyright


--------------------
 
TheRuler
messaggio20 Jul 2015, 17:45
Messaggio #81



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Riporto in vista la richiesta.
CITAZIONE (TheRuler @ 16 Jul 2015, 16:20) *
Se qualcuno volesse già proporsi come betatester per il gioco (senza le negoziazioni) mi aiuterebbe a testarlo. In PM giro il file.

Sia mai che col proprio portatile, all'ombra dell'ombrellone, a qualcuno non venga voglia di giocarsi questa piccola perla...


--------------------
 
TheRuler
messaggio25 Jul 2015, 14:39
Messaggio #82



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Alpo, DK, Syxt, questo codice potrebbe funzionare?
Come potrei testarlo?


--------------------
 
TheRuler
messaggio4 Aug 2015, 14:53
Messaggio #83



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Dopo un mese di test e modifiche sono arrivato alla prima release beta, presto pubblica. Per ora la traduzione delle negoziazioni è ferma, sebbene comprendano una parte cospiqua di testo, non sono "strettamente importanti" ai fini del gioco. Verranno comunque di sicuro tradotte.

Segue schermata riassuntiva di fine gioco, non si direbbe ma si è trattato di un piccolo lavoro di cesello e incastro.




E' una parte importante del gioco. Riassume tutto quello che è stato fatto durante la partita e regala quel senso di completezza tipico dei wargame da tavolo, al termine del quale ci si ferma a rimirare la propria opera di conquista in tutta la sua magnificenza. Una autocelebrazione bella e buona. ;-)
Suggerimenti ben accetti.

--------------------
 
The Ancient One
messaggio4 Aug 2015, 16:55
Messaggio #84



Gruppo icone

Gruppo: Admin
Messaggi: 30.332
Iscritto il: 18 April 04
Da: Britannia
Utente Nr.: 1.377
pulley-in-the-middle

BGE Ultima 7
Playing Ultima 7: "Il Portale Oscuro" IN ITALIANO!

Dungeon Master 1 (PC - DosBox)
Sonic (Wii)
Runaway (PC)

SO WinXP




Notevolissimo!!!

A vederlo così è praticamente perfetto! n5.gif


--------------------
 
TheRuler
messaggio4 Aug 2015, 18:21
Messaggio #85



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Grazie Ancient! 'OPPOBBUONO! XD


Ancora non mi convince quel "Passare" al posto di "End Turn". Purtroppo in questo il box, a differenza degli altri come quello di fine gioco (come si può vedere nel mio post precedente), è statico e quindi bisogna stare per forza dentro gli 8 caratteri.
"Fine Turno" sarebbe perfetto ma sborda. Stesso dicasi per l'originale "Melee" che ho dovuto tradurre in "Caos": è il comando con il quale il generale in battaglia scioglie la legione dagli ordini e comanda a tutte le unità sul campo di ingaggiare l'unità nemica più vicina.

Poi, a proposito dei nomi dei condottieri, ho pensato di tradurre quelli scritti in inglese come Caswallon che, sebbene sia britanno ho preferito riportarlo con Cassivellauno (ma ho trovato anche Cassibelano e Cassibelauno). Gli altri invece li ho lasciati con il loro nome originale:

CITAZIONE
Cinna
Annibale
Cleopatra
Filippo Macedone
Vercingetorix
Darius il Grande
Antiochus
Thorax di Tracia
Mithridates
Attalus
Absolna il marcio
Vindelic
Arminius
Bato
Decebalus
Asdrubale
Re Juba
Bocchus
Mamud il terribile
Horaxus
Bertonus
Hamilcar
Darminus
Cassivellauno
Galba
Chrysogones
Maldor l'impalatore



Condottieri romani:
CITAZIONE
Scipio Africanus
Marcantonio
Pompeo il Grande
Cornelius Scipio
Agrippa
Sulla
Marius
Crassus
Lucullus
Flaminius
Fabius il Prudente
Marcus il Mite
Fabius Hirrus
Rebilus
Decimus Curio
Labienus
Marcus Pedius
Lentulus
Trebonius
Nasidius
Lucius Cotta
Sabinus
Albertus Discreditus
Publius Rufus


Suggerimenti?


--------------------
 
The Ancient One
messaggio4 Aug 2015, 18:41
Messaggio #86



Gruppo icone

Gruppo: Admin
Messaggi: 30.332
Iscritto il: 18 April 04
Da: Britannia
Utente Nr.: 1.377
pulley-in-the-middle

BGE Ultima 7
Playing Ultima 7: "Il Portale Oscuro" IN ITALIANO!

Dungeon Master 1 (PC - DosBox)
Sonic (Wii)
Runaway (PC)

SO WinXP




Non ho letto tutto, ma il principio mi pare giusto!


--------------------
 
Alpobemp
messaggio14 Aug 2015, 20:00
Messaggio #87



Gruppo icone

Gruppo: IAGTG Member
Messaggi: 2.530
Iscritto il: 1 June 05
Da: Roma
Utente Nr.: 1.733
BGE Princess Maker 2
Playing Sci Studio 3+
Conquests of Camelot
Armikrogoebiuseffect Chapters

SO Windows7

OGI Supporter


Spolveratore (2)


CITAZIONE (TheRuler @ 25 Jul 2015, 15:39) *
Alpo, DK, Syxt, questo codice potrebbe funzionare?
Come potrei testarlo?


Innanzitutto grazie per il reminder privato eh.
Ma stavo sbragato al sole senza pc connesso.
Adesso che l'idillio è finito... immersione.

Dunque, non so rispondere alla tua domanda , ma se , invece di provare a casaccio il dialetto di LZW che ci fa magicamente azzeccare i codici giusti dell'albero di ricerca (non esiste una maniera univoca di creare il dizionario, questo credo che ormai sia chiaro a tutti, l'importante è che l'algoritmo che lo crea sia coerente tra programma di compressione e programma di decompressione) , provassimo invece a decrittare a mano un po' intuitivamente , un po' con controlli in game, i file?
Ovviamente poi una volta tradotte le frasi ricostruiremmo la serie di offset che sta all'inizio e comprimeremmo "senza compressione" ossia con gli 0xFF.

L'unica perplessità è se quello che hai postato è un file "tipo" o è soltanto uno dei più piccoli e ve ne sono altri molto più intricati.

Ciao,
Alberto

[EDIT]
Lo sai cosa non mi convince del codice che hai linkato?
Non vedo traccia della gestione (o perlomeno non la riconosco; cos'è, perl?) del flagbyte, il byte con la maschera di 0 e 1, 1 per byte grezzo, 0 per indice del dizionario, che invece abbiamo trovato nel file.
Anche per questo motivo sarei stato più tentato di considerarlo un dialetto di LZSS più che di LZW.

Messaggio modificato da Alpobemp il 14 Aug 2015, 20:29


--------------------
 
TheRuler
messaggio15 Aug 2015, 10:33
Messaggio #88



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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 (Alpobemp @ 14 Aug 2015, 21:00) *
Innanzitutto grazie per il reminder privato eh.


Prego Mr. Alpo
Theruler -breaking idylls since '70-



In merito al file tipo, verifico. Ci sono sicuramente file più grossi.
Io ho preso, l'ultimo, vedo di estrarli con calma tutti, tanto prima o poi va fatto. Potremmo creare un tool che estrae tutti i file all'interno di MNEGO.DAT basandosi sulla tabella presente in MNEGO.DIR che faccia anche il lavoro opposto, modificando la tabella in base alle nuove dimensioni di ogni singolo LZW. Esattamente come faceva il tool di DK per la traduzione di Kyrandia.
Credo sarebbe meglio averlo, un tool per lavorare più velocemente e testare al volo le modifiche, ma purtroppo non sono in grado di scriverlo quindi... andrò a manoni modificando solo l'ultimo file così da lavorare meno.

quello che mi preoccupa però è il contenuto non testuale che si può trovare dentro questi LZW. Ogni file è relativo ad una regione della mappa e contiene una serie di doamnde e risposte che vengono visualizzate in base alle scelte del giocatore e della AI. Il giocatore può rispondere "aggressivo", "diplomatico", "Amichevole" ecc... ci devono quindi essere dei caratteri speciali o dei puntatori prima o dopo i testi che indentifichino le scelte. Quei caratteri come li "intuiamo"?


--------------------
 
TheRuler
messaggio15 Aug 2015, 11:05
Messaggio #89



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Sulla base di quanto scoperto da Syxt per il file .DIR contenente la tabella (ho corretto il flag compresso da 0xB0 in 0x80) :
CITAZIONE (Syxtem @ 16 Jul 2015, 14:22) *
Giusto per confermare che effettivamente i file .DIR indicizzano i file contenuti negli archivi .DAT
Ogni DIR è formato da questi byte in sequenza (per ogni file contenuto nel DAT):
[4 byte] posizione del file all'interno del DAT (dal inizio del file DAT)
[2 byte] dimensione del file
[13 byte] nome del file (nome del file più 0x00 di terminazione)
[1 byte] flag: 0xB0/0xC0
Il significato del flag discrimina probabilmente i file compressi da quelli solamente archiviati, secondo questo significato:
0x80 -> file compresso
0xC0 -> file in chiaro
Questa congettura si basa sul fatto che ho notato che tutti i file con estensione LZW hanno quel byte a 0xB0, mentre quelli con diversa estensione hanno 0xC0.


Nel .DIR metteremo il flag 0xC0 anche per i file LZW per evitarci così di intervallare il flag degli 8 byte successivi all'interno del file ed avere quindi un testo "piano".
E' quello che hai fatto in Dragonsphere e suggerivi tu Alpo, giusto?


--------------------
 
TheRuler
messaggio15 Aug 2015, 22:11
Messaggio #90



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Dopo le imbeccate di Alpo e Syxt ho provato con una richiesta mirata al forum encode.ru, i guru della compressione, e 6 ore dopo un tizio ha buttato il codice (e il relativo binario così, per gradire)...
CENTURIONS - POTERE ASSOLUTO!



ecco il codice by Jan Ondrus:
CODICE
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv) {
  int buffer[65536];
  int b1, b2, pos = 0;
  FILE *in=fopen(argv[1],"rb");
  if (!in) perror(argv[1]), exit(1);
  FILE *out=fopen(argv[2],"wb");
  if (!out) perror(argv[2]), exit(1);
  for (int k = 0; k < 22; k++) { int c1=getc(in); } // skip first 22 bytes
  for (;;) {
    int c=getc(in);
    if (c==EOF) break;
    for (int i = 0; i < 8; i++)
    {
      if ((c & (1 << i)) != 0) {
        // literal
        int x=getc(in);
        putc(x, out); buffer[pos] = x; pos++;
      } else {
        // match
        if ((b1=getc(in)) == EOF) break;
        if ((b2=getc(in)) == EOF) break;
        int matchpos = b1 + ((b2 / 16) * 256) + 2;
        for (int j = 0; j < (b2 & 15) + 3; j++)
        {
            int x = buffer[matchpos + j];
            putc(x, out); buffer[pos] = x; pos++;
        }
      }
    }
  }
  return 0;
}


Funziona!
Ecco ad esempio TEXTZ.LZW

CITAZIONE
¼ê 8½ÝSarmatia has no room for Romans. You must leave. Rome sends a great warrior. We have heard of you.~A great general arrives! Your fame precedes you.~Others have told us you would come. They also told us what you would want. Ah yes, the peace of slavery. There can be no peace between us. We are not stupid. Your weakness is apparent. No, friend. There will be no surrender. We trust no one. It profits us not. This can never be, for we will not serve you. You are a windbag. You bore me. Lay down your weapons and we will spare you. Surrender and we can talk. Or would you fight us?~No. Unless you leave Sarmatia, we must fight.~No, Roman. You may surrender now. Sarmatians make war, not peace.

Adesso faccio qualche prova di traduzione, incapsulo il file non compresso in MNEGO.DAT e vado ad invadere la Poloni.. ehm, la Sarmatia.

--------------------
 
DK
messaggio15 Aug 2015, 23:38
Messaggio #91



Gruppo icone

Gruppo: Admin
Messaggi: 2.552
Iscritto il: 27 August 04
Utente Nr.: 1.509
BGE Indy and The Last Crusade
SO Windows7

OGI Supporter




Sì, quelli di encode.ru mangiano pane e lz+varianti biggrin2a.gif
C'è anche un italiano molto bravo che fa esperimenti blush.gif
E proprio oggi mi è venuto in mente che più o meno poteva essere una variante di LZSS tipo quella usata in Star Trek 25th.
Sono quasi sicuro comunque che i primi 4 byte del file .LZW indicano la sua dimensione da scompresso.
È possibile che i primi 20 caratteri (o quelli che sono) potrebbero essere indici delle varie frasi che seguono? Oppure magari son dati che servono al gioco, boh.
 
TheRuler
messaggio16 Aug 2015, 00:03
Messaggio #92



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Bentrovato DK!

Tutte le frasi sono intervallate dal classico 0x00. Ci sono alcuni gruppi che iniziano con ~ che sta ad indicare, ho notato, una frase randomica. Cioè il puntatore punta l'inizio del gruppo e il codice sceglie a caso una delle tre frasi.
Il problema sono i primi byte. Non ho trovato per ora nessuna corrispondenza.
questi sono i primi 12 byte di textz.txt
BC 01
EA 01
0B 02
38 02
BD 02
DD 02

Ho fatto qualche prova. Ho decompresso il file, senza modificarlo l'ho sostituito alla posizione relativa aggiornando le dimensioni e il flag 0x80 nel file MNEGO.dir ma purtroppo il gioco va in crash.

allego qualche file decompresso.
http://s000.tinyupload.com/index.php?file_...137335625152923

Mi sa che ci hai preso DK con le dimensioni del file da scompresso. Solo che c'è una piccola differenza magari dovuta al codice di decompressione. E potrebbe essere la ragione perché non funziona.
Prendendo il file textz.lzw, i primi due byte indicano 02DD mentre il file decompresso è grosso 02CD.
Ho notato nel codice che il tizio salta i primi 22 Byte. La ragione? In effetti confrontando vari file compressi quei byte sembrano non far parte del testo decompresso.


--------------------
 
Alpobemp
messaggio16 Aug 2015, 00:27
Messaggio #93



Gruppo icone

Gruppo: IAGTG Member
Messaggi: 2.530
Iscritto il: 1 June 05
Da: Roma
Utente Nr.: 1.733
BGE Princess Maker 2
Playing Sci Studio 3+
Conquests of Camelot
Armikrogoebiuseffect Chapters

SO Windows7

OGI Supporter


Spolveratore (2)


CITAZIONE (TheRuler @ 15 Aug 2015, 11:33) *
In merito al file tipo, verifico. Ci sono sicuramente file più grossi.
Io ho preso, l'ultimo, vedo di estrarli con calma tutti, tanto prima o poi va fatto. Potremmo creare un tool che estrae tutti i file all'interno di MNEGO.DAT basandosi sulla tabella presente in MNEGO.DIR che faccia anche il lavoro opposto, modificando la tabella in base alle nuove dimensioni di ogni singolo LZW. Esattamente come faceva il tool di DK per la traduzione di Kyrandia.
Credo sarebbe meglio averlo, un tool per lavorare più velocemente e testare al volo le modifiche, ma purtroppo non sono in grado di scriverlo quindi... andrò a manoni modificando solo l'ultimo file così da lavorare meno.

quello che mi preoccupa però è il contenuto non testuale che si può trovare dentro questi LZW. Ogni file è relativo ad una regione della mappa e contiene una serie di doamnde e risposte che vengono visualizzate in base alle scelte del giocatore e della AI. Il giocatore può rispondere "aggressivo", "diplomatico", "Amichevole" ecc... ci devono quindi essere dei caratteri speciali o dei puntatori prima o dopo i testi che indentifichino le scelte. Quei caratteri come li "intuiamo"?


Il tool di estrazione è il meno. I file che citi li avevi già postati? Posso lavorarci.
Il contenuto di questi lzw mi sembra che di non testuale abbia solo l‘indice dei puntatori all‘inizio.
Hai sempre tutte le sfumature a disposizione, o a volte solo alcune?

Ciao,
Alberto

[EDIT] oooops avevate già risolto. Non avevo ricaricato la pagina, rispondevo alla cache.
Raga, vi ribadisco che quelli all'inizio sono puntatori alle frasi, l'avevo notato ieri decomprimendo a mano.

Ciao,
Alberto

Messaggio modificato da Alpobemp il 16 Aug 2015, 01:07


--------------------
 
TheRuler
messaggio16 Aug 2015, 00:59
Messaggio #94



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Eccoli Alpo.
http://s000.tinyupload.com/index.php?file_...228888775256081
Cosa intendi per sfumature?


--------------------
 
Alpobemp
messaggio16 Aug 2015, 01:12
Messaggio #95



Gruppo icone

Gruppo: IAGTG Member
Messaggi: 2.530
Iscritto il: 1 June 05
Da: Roma
Utente Nr.: 1.733
BGE Princess Maker 2
Playing Sci Studio 3+
Conquests of Camelot
Armikrogoebiuseffect Chapters

SO Windows7

OGI Supporter


Spolveratore (2)


CITAZIONE (TheRuler @ 16 Aug 2015, 01:59) *


Allora. Per sfumature intendo le opzioni diverse che hai a disposizione per rispondere (amichevole, aggressivo, etc) a cui accennavi..

Per quanto riguarda i puntatori all'inizio del file, occhio, perché sono compressi anche quelli!!! Bisogna togliere gli 0xFf anche da lî!!!
Se il russo li ha saltati, ha toppato!!!


[EDIT] In altre parole il file compresso inizia dopo 0x000002DD
Ciao,
Alberto

Messaggio modificato da Alpobemp il 16 Aug 2015, 01:17


--------------------
 
TheRuler
messaggio16 Aug 2015, 08:40
Messaggio #96



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Capito.
I casi sono questi:

1.Arrivi in una regione con un ceto basso e ti scrive che sei un pivello e vai subito alla guerra (ogni regione ha il suo ceto minimo per cominciare le trattative, ad esempio L'egitto richiede il livello prima di quello finale, proconsole)
2.Arrivi con un ceto alto e cominci a parlare:
3.Amichevole
4.Diplomatico
5.Aggressivo
6.Ultimatum
7.Offri alleanza
8.Guerra!
9.Ritirati

Ogni scelta mostra subito una risposta romana che è presente nell'OVL, ed è quindi già tradotta. Se è "giusta" prosegue e mostra la risposta dell'avversario e una nuova scelta.
Alpo potresti provare a ricompilare il codice provando a saltare solo i primi 2 o 3 byte? Io intanto faccio una prova a mano


--------------------
 
TheRuler
messaggio16 Aug 2015, 09:07
Messaggio #97



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Test OK. Hai avuto ragione Alpo. Bisogna saltare solo i primi 4 byte. Ho preso i due gruppi di 8 byte mancanti a mano togliendo i due 0xFF siccome sono tutti non compressi e le dimensioni del file decompresso ora coincide con quanto riportato dai primi due byte dell'LZW originale.
Ancora non funziona. Però va in crash nella schermata successiva. Per un attimo si vede un messaggio di errore di "mem alloc" e dove ci dovrebbe essere il testo è tutto bianco, si vede solo la grafica.
Mi ha fatto questo scherzo anche quando ho tradotto le frasi romane. Quelle sono nell'OVL ma vengono scritte a video in questa schermata. In pratica la schermata di negoziazioni prende le frasi da 3 file diversi:
OVL0.OVL
scout.lzw (dentro mnego.dat)
textz.lzw (dentro mnego.dat) nel caso della regione Sarmatia.
e la grafica da altri 2 (tutti .CBM non compressi all'interno di MNEGO.DAT, i portrait, i box e l'immagine di sfondo) però quelle si vedono bene.

Lo scherzo consisteva nel farmi vedere tutto bianco nel caso in cui provassi a cambiare le dimensioni delle frasi. In tutto il resto del gioco non lo faceva, in questa schermata si. Sono dovuto riamanere dentro la lunghezza delle stringhe originali.

Che ci sia da cambiare un valore per allocare più memoria in quella specifica schermata?


--------------------
 
DK
messaggio16 Aug 2015, 09:24
Messaggio #98



Gruppo icone

Gruppo: Admin
Messaggi: 2.552
Iscritto il: 27 August 04
Utente Nr.: 1.509
BGE Indy and The Last Crusade
SO Windows7

OGI Supporter




Allora, velocemente, il file .LZW è così composto:
4 byte - dimensione del file decompresso
.... seguono dati compressi

Per decomprimere, va bene quell'algoritmo di sopra, ma bisogna fare un paio di modifiche
CODE
for (int k = 0; k < 4; k++) { int c1=getc(in); } // skip first 4 bytes
...
int matchpos = b1 + ((b2 / 16) * 256) + 2 + 16;

Invece di 22 byte bisogna saltare solo i 4 della dimensione.
Inoltre la posizione del buffer LZ deve saltare i 16 byte iniziali.
Ho ricompilato l'eseguibile, dovrebbe andar bene, fai le prove.
File Allegato  unlzw_cent.zip ( 17.43k ) Numero di download: 7

Infine, nel file decompresso, i primi byte sono puntatori di 2byte alle varie stringhe nel file.
 
TheRuler
messaggio16 Aug 2015, 09:32
Messaggio #99



Gruppo icone

Gruppo: SMod
Messaggi: 11.307
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




Purtroppo da qualche tempo a questa parte non si riescono più a scaricare gli allegati al forum. DK, tu riesci?
Io non riesco neanche sui miei. Mi dice che non sono connesso al forum.


--------------------
 
DK
messaggio16 Aug 2015, 09:37
Messaggio #100



Gruppo icone

Gruppo: Admin
Messaggi: 2.552
Iscritto il: 27 August 04
Utente Nr.: 1.509
BGE Indy and The Last Crusade
SO Windows7

OGI Supporter




Boh, a me funziona, te l'ho mandato via mail comunque. Prova a cancellare cache e cookie dal browser magari.
 

18 Pagine V  « < 2 3 4 5 6 > » 
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: 16th October 2019 - 00:44