[index] [Informatica] [Elettronica] [PIC16F84] [Wifi] [Links]
Appunti di Gianluca Ghettini
Progen per NeedForSpeed Underground 2
Progen (PROfile GENerator) e' un mio piccolo programma che permette di creare dal nulla un profilo da utilizzare con NeedForSpeed Underground 2. In tale profilo il gioco e' completato al 100% quindi sono disponibili tutte le macchine e le relative parti aggiuntive, tutte le piste e i concorsi di gara.
Utilissimo per fare un veloce multiplayer. La vera novita' e' che si puo' scegliere il nome del profilo a differenza di quanto succede scaricando una partita salvata da internet di qualcun altro, dove si e' costretti a giocare col nome profilo di quella persona.

scarica il sorgente (230 kB)
scarica l'eseguibile (14 kB)

Il programmino e' scritto interamente in C e gira praticamente su tutti i sistemi Windows. E' sufficiente avviare l'eseguibile, inserire il nome da assegnare al profilo (per un massimo di 20 caratteri) e attendere la creazione del file nella stessa directory del programma.

Un profilo per NeedForSpeed Underground 2 e' semplicemente un file da circa 54 kB nel quale sono memorizzate tutte le informazioni di gioco (quanto avete guadagnato, le macchine e relative tamarrizzazioni e cosi' via). Tramite un editor esadecimale si scopre che alla locazione 0xD225 ha inizio la striga che codifica il nome del giocatore. Nel caso della figura qui sotto si tratta della stringa "gianluca".






























E' sufficiente quindi dumpare su file una partita salvata completa al 100%:


void MemoryDump(unsigned char *newname)
{
    FILE *out;
    unsigned long int i;
    out = fopen(newname,"wb");
   
    for(i=0;i<DATALENGTH;i++)
    {
        fputc(savegame[i],out);
        printf("%02X",savegame[i]);
        if(!(i%20)) printf("\n");
    }
    fclose(out);
}


e sovrascrivere i dati a partire dalla locazione NAMEOFFSET (0xD225) in poi per assegnare il nome utente desiderato.


void NameOverwrite(unsigned char *newname)
{
    strncpy(savegame+NAMEOFFSET,newname,strlen(newname));
}


A questo punto non resta che creare una cartella con lo stesso nome profilo scelto, buttarci dentro il file di salvataggio appena creato e piazzare il tutto in:
C:\Documents and Settings\[utente]\Local Settings\Application Data\NFS Underground 2
Dove [utente] e' il nome utente windows che attualmente sta utilizzando il sistema.
  


RSS Feed
RSS Feed