JavaScript Menus and DHTML Menus Powered by Milonic Cyndeline Translations

Untitled Document

Pointer Tables

Precis som spel ofta lagrar stora delar av texten tillsammans, brukar de även lagra pointers till nämda textstycken på samma plats. Dessa platser, som består av ett antal pointers i rad (beroende på hur mycket text som spelet har), brukar benämnas som Pointer Tables.

Det finns undantag, men generellt burkar dessa tables ligga antingen precis ovanför, alternativt under det textstycke som de pekar på (ovanför är vanligast). Det som kännetecknar dessa, och som gör att man ofta kan hitta dem med blotta ögat, är att de står på rad och därför följer ett visst mönster.

Ifall du gått igenom följande kapitel, så vet du att pointers som står på rad gör det eftersom de textstycken de pekar på står i samma ordning. Och eftersom texten hamnar allt längre fram i vår rom ju längre fram i texten vi läser, desto högre blir även värdena i våra pointers eftersom de blir tvugna att peka längre och längre fram.

Men trots att de pekar allt längre fram, gör de ändå det inom en given textbank. Vi kan ha snes-pointern 4D93 (som pekar på 954D i spelet), 7893 som pekar på 9578, A193 osv. I en hexeditor ser det då ut så här:

4D937893A193

Eller för att vara tydlig:

4D 93 78 93 A1 93

Ännu tydligare:

4D XX 78 XX A1 XX

Ser du därför ett långt stycke med hexdecimaler, där en hexdecimal konstant återkommer med stigande hexdecimaler mellan sig, är det med största sannrolikhet ett pointer table.

A1 XX A9 XX BF XX C1 XX C8 XX CA XX DD XX F1 XX FC XX

Efter ett tag tar textbanken (XX) slut, varefter nästa börjar.

FC XX 03 YY 10 YY 2B YY osv.

Leta uppåt

Som sagt, så ligger dessa tabeller ofta precis ovanför den text som de pekar på. Därför finns det ytterligare ett sätt att leta efter specifika pointers (annat än att bara scrolla upp ett par steg i Windhex). Metoden kräver att du har en hexeditor som kan söka uppåt (Windhex kan inte detta, med program som Hex Workshop kan).

  1. Leta reda på texten vars pointer du vill hitta, och kalkylera ut pointern (mer om detta i tidigare kapitel).
  2. Använs tex. Hex Workshop och sök uppåt efter värdet du fått fram. Den första träffen du får, borde vara den pointer du letar efter.
  3. Ändra pointern och spela fram textstycket i spelet för att se ifall du hittat rätt.
  4. Om inte, sök uppåt ett steg till och testa dig fram.

 

Översättare sökes:

Resurser