Hack rom

A ROM hackelés az a folyamat módosítására ROM kép egy videojáték , hogy változtassa meg a grafika, a párbeszédek, a szintek, a játék vagy más elemek. Ezt általában a videojáték-rajongók végzik, akik rendelkeznek technikai képességekkel, hogy kreatív változatként új életet lehelhessenek egy régi játékba, amelyre vágynak, vagy hogy nem hivatalos játékokat hozzanak létre és annak érdekében. játékmotor.

A hackelési ROM-ot általában egy hexszerkesztővel (a nem szöveges adatok módosítására szolgáló szoftverrel) és különféle speciális eszközökkel, például csempeszerkesztőkkel és egy adott játékra jellemző eszközökkel hajtják végre , amelyek leginkább a szintek, objektumok stb. Módosítására szolgálnak, bár fejlett eszközöket, például az összeállítási nyelvet és a hibakeresőket alkalmanként használják. Amikor elkészült, a leggyakrabban terjesztett hackek az interneten keresztül mások számára emulátor segítségével játszhatnak .

Az amatőr fordítás egyfajta hacker ROM; vannak olyan anticenzúra-hackek is, amelyek célja egy játék eredeti állapotának helyreállítása. Ez rendszeresen megfigyelhető a régebbi játékoknál, amelyeket az importálás során cenzúráztak a kiadó (különösen a Nintendo ) videojátékokra vonatkozó tartalmi politikája miatt, amely az Egyesült Államokban sokkal szigorúbb volt, mint Japánban vagy Európában. Bár a módszertan mindkét hackelési típusra vonatkozik, ez a cikk a „kreatív hackelésre”, például a játék szintjének szerkesztésére összpontosít.

Közösségek

Számos ROM hacker különféle okokból hoz létre csoportokat vagy csatlakozik hozzájuk, például közös online tér létrehozása a hackek vagy a képernyőképek megosztásához, a csoport többi tagjának támogatásához vagy együttműködéséhez., A csoport fórumán való kiváltságos státusz elérése érdekében a csoporttal kapcsolatos presztízs, vagy csak a bajtársiasság. Számos hacker azonban úgy dönt, hogy egyedül működik. Egy adott csoport nem minden tagja szükségszerűen hacker; vannak, akik nyugdíjba vonultak, mások webfejlesztési és / vagy fórumfelügyeleti szolgáltatásokat kínálnak, mások pedig egyszerűen felajánlják a feltörekvő hackerek irányítását.

A legtöbb hackelőcsoport online helyet kínál hackek és képernyőképek tárolására (néha csak a csoporttagok által végrehajtott hackeléseket, néha szinte bármilyen hackelést), fórumot kínál, és gyakran rendelkezik IRC csatornával .

Módszertan

A ROM-ban lévő adatok, amelyeket számos programozó vagy programozó csapat hozott létre, nagyban változhatnak.

Hexadecimális kiadás

A hexa szerkesztő az egyik alapvető eszköz a ROM hackerek eszköztárában. A Hex szerkesztőket általában szöveg és egyéb ismert felépítésű adatok (pl. Objektumtulajdonságok) szerkesztésére, valamint az összeállítás-feltörésre használják .

A szöveg szerkesztése a hackelés egyik legalapvetőbb formája. Sok játék nem tárolja a szövegeit ASCII formátumban , ezért néhány hexa szerkesztőt kifejezetten fejlesztettek, megmondva, hogy a szövegszerkesztés megkönnyítése érdekében melyik bájt érték felel meg az ábécé mely betűinek (betűinek); egy fájlt, amely meghatározza ezeket a byte = letter kapcsolatokat, "table" fájlnak hívjuk. Más játékok egyszerű szövegtömörítési technikákat alkalmaznak (például a bájtpárkódolás, más néven DTE - kettős csempés kódolás , ahol két vagy több betű bizonyos kombinációi egyetlen bájtba vannak kódolva), amelyeket egy megfelelő hexadecimális szerkesztő megkönnyíthet a módosításhoz.

A hexadecimális szerkesztő a választott eszköz egy karakter / objektum tulajdonságainak módosításához, ha ismert az adatok felépítése és helye, és ha nincs a játékra specifikus szerkesztő az adatok módosítására. Néhány meggondolatlan hacker szint-szerkesztést is végez egy hexaszerkesztővel, de ez rendkívül nehéz (kivéve azokat a játékokat, amelyek szinttárolási formátuma nagyon hasonlít a hexaszerkesztőben való bemutatására).

Grafikus szerkesztés

Egy másik alapvető hackelési készség a grafikus hackelés, amely magában foglalja a játékelemek, például a környezet, a karakterek, a betűtípusok és egyebek megjelenésének megváltoztatását. A grafikus adatok formátuma konzolonként eltérő, de a legtöbb régebbi (NES, Super NES, Game Boy stb.) Grafikákat csempékben tárol , amelyek 8x8 pixeles adategységek. És a képernyőn vannak elrendezve a kívánt eredményt. Ezeknek a csempéknek a szerkesztése hexszerkesztővel is lehetséges, de könnyebb olyan csempeszerkesztőt használni (például Tile Layer vagy Tile Molester ), amely képes a ROM adatok grafikus megjelenítésére, valamint azok szerkesztésére.

Graphics hack terjedhet kisebb módosításokkal (például hogy Mario egy afro frizura ), hogy „ rajta ” karakter egy másik játék, a teljes vizuális téma változik (általában kíséri paletta változások; lásd alább. Alább).

A további grafikus hackelés nem csupán a csempék és a színek megváltoztatásával jár, megváltoztatja a lapok elrendezését vagy a létrehozott csempék csoportjait, nagyobb rugalmasságot és kontrollt biztosítva a végső megjelenítés felett. Ezt hatszögszerkesztéssel vagy egy speciális eszközzel (a játékhoz vagy egy rendszerhez) lehet elérni. A grafikus feltörés jó példája a befejezetlen Pokémon Torzach, egy olyan hack, amely megpróbálta a Pokémon és a hozzá tartozó lapkák egész generációját felvenni a játékba. A feltörést azóta elhagyták, de még mindig jó példa arra, hogy mit lehet elérni a rendelkezésre álló eszközökkel.

Paletta szerkesztése

A hackelés másik népszerű formája a palettás hackelés , ahol a színértékeket megváltoztatva megváltoztatják a játékos által a játékban látott színeket (ami gyakran együtt jár a grafika szerkesztésével ); A palettaértékeket általában hexadecimálisan tárolják . Ez nagyon egyszerű a NES játékok esetében , amelyek grafikája előre definiált színkészletet használ, amelyekből a játék szelektál; ebben az esetben a paletta feltörése megfelel ezeknek a színeknek a megváltoztatásáról. A dolgok kissé bonyolultabbá válnak a Super Nintendo játékokkal vagy más rendszerekkel, amelyek a színek abszolút RGB- értékeit tárolják . A paletta szerkesztők általában egyszerűek és szint szerkesztőkkel vagy játékspecifikus grafikus szerkesztőkkel érkeznek.

Szint szerkesztés

A ROM hackelés, a szintszerkesztés egyik legnépszerűbb formája magában foglalja a játék szintjeinek vagy térképeinek módosítását vagy újratervezését. Ez szinte kizárólag az Ön igényeinek megfelelő szerkesztő segítségével történik. Egy adott játék (az úgynevezett szintű szerkesztő ). Szintű szerkesztések történhetnek a játék megnehezítése, a játék történetének megváltoztatása, vagy csak valami új hozzáadása érdekében egy régi játékhoz. A teljes grafikus hackeléssel együtt a játék drámaian megváltozhat. Megjelenés és játékérzet.

Adatszerkesztés

Számos feltörés (főleg RPG ) központi eleme az adatok módosítása, például a karakterek, elemek és ellenségek tulajdonságai. Ez általában vagy "kézzel" (hexa szerkesztővel) történik, ha az adatok helye és szerkezete ismert, vagy egy játékspecifikus szerkesztővel, amely ezt a funkciót kínálja. Ebből a marnière-ból egy hacker megváltoztathatja a fegyverek működését, az ellenségek erejét vagy viselkedését stb. A cél lehet a játék megkönnyítése vagy megnehezítése, vagy akár új forgatókönyvek létrehozása a játékos számára.

Assembly hackelés

A legerősebb és vitathatatlanul a legnehezebb feltörési technika maga a játékkód módosítása, az ASM hackelés nevű folyamat ("ASM" jelentése " összeállítás ", utalva a játékokhoz használt programozási nyelv típusára. Régebbi konzolok). Nincs szabványos módszer az ASM hackelésére, mivel a kód játékonként nagyon változik, de a legtöbb tapasztalt ASM-hacker vagy beépített hibakeresővel vagy nyomkövetővel rendelkező emulátort használhat , vagy szétszerelő segítségével böngészhet a ROM-on , majd elemezheti a kódot, és szükség szerint módosítsa egy hexa szerkesztővel vagy egy assembler szerkesztővel. Bár ez nagy kihívást jelent a fent felsorolt, viszonylag egyszerű módszerekhez képest, az ASM hackeléssel gyakorlatilag "bármi" lehetséges (a játékplatform hardveres / szoftveres képességeinek határain belül), kezdve az ellenségek mesterséges intelligenciájától a grafika előállításának megváltoztatásához. (Természetesen a lehetőségeket korlátozza a hacker képessége a meglévő kód megértésére és módosítására.)

Ha a fejlesztők gépelt nyelvet használtak , akkor a hacker képes lesz arra, hogy ugyanabban a nyelven összeállítsa saját kódját a játékhoz, ha hozzáférnek egy megfelelő fordítóhoz. Ilyen például a C használata a Nintendo 64 játékok feltörésére , mivel a MIPS - GCC összeállíthatja a Nintendo 64 kódját.

Zene hackelés

A zenei feltörések viszonylag ritkák, a zenei adatok játékokban való tárolásának sokfélesége miatt (ezért nehéz ezeket az adatokat megtalálni és módosítani), valamint az új zene összeállításának (vagy a zene viselésének. A másik játék zenéje) nehézségei. Mivel a zene feltörése nagyon ritka, sok hack nem tartalmazza a stave / komponált zenét. A SapTapper szoftver azonban felhasználható a Gameboy Advance, sok Gameboy Advance játék zenei adatainak feltörésére zenére az M4A motorral (más néven Sappy Driver ).

A zene hackelésének legelterjedtebb formája a zene egyik ROM-ról a másikra való hordozása, mindkettőt általában ugyanaz a cég készítette. A zene két ROM között történő hordozása szinte mindig okoz valamilyen problémát, a formátum szinte mindig más. Jó példa a zenei hackelésre a hiányos Pokémon: The Legendary Ashes hack.

Néhány játék zenei adatait azonban 100% -ban feltörték, például a Final Fantasy VI és a Super Mario World az SNES-en. Kompozíciós eszközökkel, például MML ( zenei makró nyelv ) használatával lehetőség van a midis fájlok konvertálására a játékkal kompatibilis zenei adatokra, vagy eredeti kompozíciók készítésére. Ilyen lehetőségekre példa a Final Fantasy VI Return of the Dark Sorcerer hack , amely több mint 250 dalt tartalmaz.

ROM bővítés

Alapvetően egy ROM hacker alig adhat hozzá tartalmat egy játékhoz, csak módosíthatja a meglévő tartalmat, mivel a ROM-okon alig vagy egyáltalán nincs üres hely. Ezt a korlátozást a ROM bővítésével lehet leküzdeni , amely megnöveli a ROM kép teljes méretét, és teret enged a több tartalomnak és egy nagyobb játéknak. Ennek nehézségei a játék rendszertől függően változnak. Például a NES ROM kibővítése nehéz vagy lehetetlen a játék által használt memóriakezelő vezérlő (vagy angol nyelvű térkép ) miatt. Például, ha egy vezérlő 16 ROM ROM-ot engedélyez, és mindegyik használatban van, akkor tovább bővül a ROM lehetetlen anélkül, hogy a játékot valahogyan más vezérlővé alakítanánk át, ami könnyen vagy majdnem elsöprő lehet. Másrészt a Super Nintendo játék kibővítése (szinte) rutinszerű művelet. Az extra hely kihasználásához a játék egyes részeit szerkeszteni vagy átírni kell (lásd fent a Assembly Hacking című részt), hogy a játék tudja, hol keresse az új információkat. A Game Boy Advance játékokat általában a legkönnyebben bővíthetőnek tartják.

terjesztés

Miután a hackelés befejeződött (vagy a hiányos verziót ideiglenes kiadásra alkalmasnak tekintik), az interneten közzéteszik mások számára. Ennek szokásos módja egy javítás létrehozása (IPS vagy más formátumban), amely alkalmazható a módosítatlan ROM-on. Ezt néhány dokumentációval együtt egy archívumba helyezik, és valahova feltöltik. Az IPS két bináris fájl (ebben az esetben a nem módosított ROM és a feltört ROM) közötti különbségek rögzítésére szolgáló formátum, amely alkalmas ROM feltörésekre. Az IPS-t ma is használják kis javításokhoz; a ROM-ok növekedésével azonban ez a formátum megmutatta korlátait, ami számos fájlformátum létrehozásához vezetett, például a NINJA és a PPF (" PlayStation Patch Format"). A PPF-et ma is használják, különösen nagy fájlok, például ISO CD-képek és Nintendo 64 játékok javításához . Egy új patch formátumot, a UPS-t is kifejlesztett a ROM hacker közösség, amelynek célja az IPS és a PPF utódja. A Game Boy Advance-re szakosodott ROM hacker egy újabb patch formátumot, az APS patch rendszert is kifejlesztett. Az APS rendszer helytakarékos, megfordítható és gyorsabb, mint elődei.

A hack javításként történő terjesztésének célja a teljes ROM-képek terjesztésének jogi hátrányainak elkerülése; a javítás csak azt menti, ami megváltozott a ROM-ban, így terjesztése nem terjeszti az eredeti játékelemeket. A javítás szintén kisebb, mint a teljes ROM kép (egy NES ROM lehet  40KiB és  512KiB között  , a Super Nintendo ROM pedig 256KiB és  6MB között lehet  ). A javítások használata azonban nem szünteti meg a szerzői jogi kérdéseket, mert a javítások származékos műveknek tekinthetők  ; a vállalatok azonban általában figyelmen kívül hagyják őket, amíg ki nem adják őket a ROM-okkal.

Rendszerek és játékok

A ROM-ok hackelésének nagy részét a NES és a Super Nintendo játékok végzik , ezek kicsiek és egyszerűbbek a fejlettebb konzolos játékokhoz, például a Nintendo 64-hez képest . A Game Boy játékok népszerűek a hackelés terén is, valamint a Mega Drive játékok is kisebb mértékben. De az újabb konzolos játékok korántsem védettek a hackelés ellen, sőt, ahogy a számítógépek egyre erősebbek és az eszközök egyre nagyobbak lesznek, arra számíthatunk, hogy újabb hackek jelennek meg a PlayStation és a Nintendo 64 esetében .

Népszerű játékok szerencsejátékhoz népszerű játékok hackeléshez; Számos feltörést adtak ki Sonic , Super Mario Bros. játékok / sorozatok számára . , Pokémon , Chip's Challenge , Super Mario World , Final Fantasy , Chrono Trigger , The Legend of Zelda , Megaman , Fire Emblem , EarthBound , Super Mario 64 és még sok más.

Források

  1. ROMhacking feltételek szótára .
  2. (in) "  vg64tools - Project Hosting on Google Code  " , Code.google.com (hozzáférés: 2009. szeptember 9. )
  3. (in) "  Super Mario 64: Pong Of Death (Messiaen)  " , Sites.google.com (hozzáférés: 2009. szeptember 9. )
  4. (in) "  Return of the Dark Sorcerer tracklist  " (hozzáférés: 2018. december 14. )
  5. Új patch formátum, a UPS, ma debütál
  6. legújabb patch formátum, az APS, nemrég jelent meg

Lásd is

Külső linkek