Vinnaren i pepparkakshustävlingen!
2011-06-05, 16:29
  #1
Medlem
TheGrims avatar
Vet ej om jag har placerat rätt.

Valde att ej lägga ämnet i ett speciellt programmeringsspråk då man kan göra detta i alla programmeringsspråk i stort sett.

Hursomhelst. Jag funderar på följande:

Hur går det till när man gör så att spel kan LÄSA av mod (inte själva modden i sig).

T.ex GTA IV, där använder man en fil som heter filelist.pak och GtaIVLauncher.exe (Modifierade).
När dessa filer är överskrivna, kan man modifiera hur mycket man vill.

Och Modern Warfare 2 injectar man .dll filer.

Hur går det till? Jag menar, original .dll filerna är skrivskyddade så man kan ej redigera dessa.
Samma sak med de flesta andra filer.

Så man kodar alltså en .dll fil som läser av spelets alla filer, sen blir som en ny "engine" för spelet, och att den laddar sina egna inställningar? Förlåt för wall of text och om jag inte är tillräckligt tydlig
Citera
2011-06-05, 16:31
  #2
Medlem
TheGrims avatar
Förresten, tråden passar ej i "spel-relaterat" då det inte har med själva spelet i sig att göra, utan programmeringsbiten för att spelet ska förstå ens skript!

//Mvh. ~TheGrim.
Citera
2011-06-05, 18:32
  #3
Medlem
Trigraphs avatar
Citat:
Ursprungligen postat av TheGrim
T.ex GTA IV, där använder man en fil som heter filelist.pak och GtaIVLauncher.exe (Modifierade).
När dessa filer är överskrivna, kan man modifiera hur mycket man vill.

Vet ej vad du menar med detta, då det bara är att "modda"/redigera filer hur man vill. Så var det iallafall med mitt GTA IV.
Citera
2011-06-05, 20:05
  #4
Medlem
TheGrims avatar
Citat:
Ursprungligen postat av Trigraph
Vet ej vad du menar med detta, då det bara är att "modda"/redigera filer hur man vill. Så var det iallafall med mitt GTA IV.

Man måste patcha spelet för att den skall kunna moddas med t.ex "magicpatcher" eller xlive.dll<-- vill veta hur dessa funkar.

Hursomhelst. Om man ej patchar spelet, och modiferar filer sen sparar så vägrar spelet att starta.
Så man måste på något sätt patcha eller ersätta filer.

Mvh.
Citera
2011-06-05, 20:16
  #5
Medlem
Trigraphs avatar
Citat:
Ursprungligen postat av TheGrim
Man måste patcha spelet för att den skall kunna moddas med t.ex "magicpatcher" eller xlive.dll<-- vill veta hur dessa funkar.

Hursomhelst. Om man ej patchar spelet, och modiferar filer sen sparar så vägrar spelet att starta.
Så man måste på något sätt patcha eller ersätta filer.

Mvh.

OK, nu går jag kanske för mycket OT men..

Jag behövde inte göra något med mitt spel innan jag började modda sönder det, det var ungefär det jag försökte säga. Det var bara att börja ändra på saker och ting och det fungerade på en gång.

Om det är Xliveless du tänker på (xlive.dll-ersättare) så inaktiverar den windows live och är samtidigt en ASI-loader som accepterar diverse script. Men den är inte nödvändig för att bara modifiera spelfilerna, men trevlig ändå då man slipper live och får fler möjligheter att modifiera.

Det kan vara så att det var låst i tidigare versioner, jag har alltid använt senaste patchen så.

Verkar som om tidigare versioner krävde en patchad variant av filelist för att kunna modifieras. Det borde ju gå att jämföra skillnaderna i originalfilen och den patchade och på så sätt se vad som gör spelet modifierbart, även om det nu verkar vara inaktuellt.

http://www.gtaforums.com/index.php?showtopic=380102
__________________
Senast redigerad av Trigraph 2011-06-05 kl. 20:19.
Citera
2011-06-05, 20:18
  #6
Medlem
E.Ms avatar
När den injectar .dll filer så tror jag det går till på nåt sätt där man lurar spelmotorn att ladda filen som om det var en original fil, och man får därmed med materialet i spelet, hur man kodar/programmerar en .dll fil vet jag ej. I bla. GTA IV så använder man program som "A.L.I.C.E" som binder runt spelmotorn och "lurar/tvingar" den att ladda valda moddfiler.

Detta är enbart information som jag klurat ut själv och kan vara helt fel.
Citera
2011-06-05, 21:00
  #7
Medlem
TheGrims avatar
Citat:
Ursprungligen postat av Trigraph
OK, nu går jag kanske för mycket OT men..

Jag behövde inte göra något med mitt spel innan jag började modda sönder det, det var ungefär det jag försökte säga. Det var bara att börja ändra på saker och ting och det fungerade på en gång.

Om det är Xliveless du tänker på (xlive.dll-ersättare) så inaktiverar den windows live och är samtidigt en ASI-loader som accepterar diverse script. Men den är inte nödvändig för att bara modifiera spelfilerna, men trevlig ändå då man slipper live och får fler möjligheter att modifiera.

Det kan vara så att det var låst i tidigare versioner, jag har alltid använt senaste patchen så.

Verkar som om tidigare versioner krävde en patchad variant av filelist för att kunna modifieras. Det borde ju gå att jämföra skillnaderna i originalfilen och den patchade och på så sätt se vad som gör spelet modifierbart, även om det nu verkar vara inaktuellt.

http://www.gtaforums.com/index.php?showtopic=380102

Jaha okej! Jag använder mig utav 1.0.0.4. Hursomhelst. Jag vill ha svar på min fråga |:
Citera
2011-06-05, 21:26
  #8
Medlem
TheGrims avatar
Citat:
Ursprungligen postat av E.M
När den injectar .dll filer så tror jag det går till på nåt sätt där man lurar spelmotorn att ladda filen som om det var en original fil, och man får därmed med materialet i spelet, hur man kodar/programmerar en .dll fil vet jag ej. I bla. GTA IV så använder man program som "A.L.I.C.E" som binder runt spelmotorn och "lurar/tvingar" den att ladda valda moddfiler.

Detta är enbart information som jag klurat ut själv och kan vara helt fel.

Det låter rätt vettigt!
Skulle vara kul om någon kunnig skulle kunna lära ut hur man gör. Skulle vara kul att göra ett spel modable, sedan göra egna scripts till det!
Citera
2011-06-05, 22:41
  #9
Medlem
mrPythons avatar
Läs lite om DLL-injection i följande länk.

http://www.codingthewheel.com/archiv...king-poker-bot
Citera
2011-06-06, 15:00
  #10
Medlem
TheGrims avatar
Citat:
Ursprungligen postat av mrPython
Läs lite om DLL-injection i följande länk.

http://www.codingthewheel.com/archiv...king-poker-bot

Det var en väldigt intressant läsning!
Jag såg att det handlade om att skapa en bot.
Men gör man på samma sätt för att tillåta modifikationer till spel?
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback