Cheaty -> HEXa editßcia
┌vod - zßkladnΘ pojmy...
Najsk⌠r si musφme poveda¥ nieΦo o tom, Φo je to byte, ASCII tabu╛ka a nieko╛ko ∩alÜφch zßkladn²ch pojmov.
Ka₧dß informßcia sa skladß z jednotliv²ch znakov, bytov (bajtov). Ka₧d² znak je tvoren² jedn²m bytom, Φi u₧ je to
pφsmeno, Φφslica alebo Üpecißlny znak. Tento byte sa ∩alej zkladß z ⌠smych bitov, ktorΘ m⌠₧u ma¥ hodnotu
0 alebo 1. Z toho nßm logicky vyplφva 256 kombinßciφ (2 na ⌠smu). To znamenß, ₧e ka₧d² byte m⌠₧e ma¥ 256
r⌠znych pod⌠b. Pod╛a toho ak· mß hodnotu (0-255), je mu priraden² znak. A to sme u₧ pri pojme ASCII tabu╛ka - aby
na vÜetk²ch poΦφtaΦoch boli znaky sprßvne interpretovanΘ, musela by¥ vytvorenß istß norma, ako prevßdza¥ hodnotu
bytu (0-255) na nejak² znak. Bola zavedenß tzv. ASCII tabu╛ka, v ktorej je presne definovanΘ, ak² znak se mß zobrazi¥
pro dan· hodnotu Zßdrhe╛ je ale v tom, ₧e niektorΘ jazyky (napr. aj slovenΦina) pou₧φvaj· zvlßÜtne znaky (diakritika),
ktorΘ anglick² jazyk (pre≥ bola Ütandartnß ASCII tabu╛ka zoszavenß) nepoznß. Preto boli vytvorenΘ alternatφvbe ASCII
tabu╛ky, ktorΘ obsahuj· tieto zvlßÜtne znaky, priΦom pre slovensk² jazyk sa presadily tieto dve: Latin 2 a bratia
Kamenick².
╧alÜia vec, ktor· si treba poveda¥ je fakt, ₧e byte (respektφve jeho hodnotu) m⌠₧eme zobrazova¥ v zßsade 4 sp⌠sobmi:
- Zßkladn²m sp⌠sobom je zobrazenie vlastnΘho znaku pod╛a ASCII tabu╛ky (naprφklad pφsmeno A).
- DekadickΘ vyjadrenie - tj. zßpis v desiatkovej Φφselnej s·stave. ╚i₧e od 0 do 255.
- Hexadecimßlne vyjadrenie - tj. zßpis v Üestnßstkovej s·stave. Tu je to troÜka inßΦ. Zatia╛ Φo desiatkovß
s·stava pou₧φva znaky od 0-9, Üestnßstkovß pou₧φva znaky 0-F. To znamenß, ₧e 0-9 ostßva, ale potom nasleduje
A, B, C, D, E a F. Tak₧e napr. ak v decimßlnej s·stave napφÜeme 8, potom v Üestnßstkovej je to 08 ale u₧
10 (decimßlne) je 0A (hex), 11 je 0B, 15 je 0F, 16 je 10 a 255 je FF.
- Binßrny zßpis - ako bolo povedanΘ na zaΦiatku, ide pri ka₧dom byte o osemcifern² zßpis hodn⌠t 0 a 1.
HEXa editßcia
Nejsk⌠r si vysvetlφme, Φo je to hexaeditovanie, Φo je jeho podstatou a nakoniec si povieme nieko╛ko zßsad pre bezproblΘmov·
hexaeditßciu.
Ak hovorφme o HEXaeditovanφ v s·vislosti s hrami, tak ide vΣΦÜinou o to, ako si vylepÜi¥ postavy, zv²Üi¥ poΦet kreditov,
zaisti¥ nesmrte╛nos¥, nevidite╛nos¥... Finta spoΦφva v tom, ₧e vÜetky tieto informßcie musia by¥ niekde ulo₧enΘ.
Prvou ·lohou je teda zisti¥ kde.
VΣΦÜinou sa jednß o save-s·bor. O Φo ide? NiektorΘ hry maj· zabudovan· mo₧nos¥ ukladania [SAVE] a opetovnΘho nahrania [LOAD]
ulo₧en²ch pozφciφ. Je to z toho d⌠vodu, ₧e nie ka₧d· hru je mo₧nΘ dohra¥ za jedno poobedie a tak je nutnΘ, aby mal hrßΦ
mo₧nos¥ uschova¥ si stav hry, tak ako ju mß rozohrat· a po nahratφ ulo₧enej pozφcie znova pokraΦovat od miesta, kde skonΦil.
Hra si pri ukladanφ pozφcie vytvorφ zvlßÜtne s·bory, kde zapφÜe vÜetky potrebnΘ informßcie, aby mohol potom opΣ¥ obnovi¥
predoÜl² stav. Nßm ide o to, ₧e tieto ulo₧enΘ informßce m⌠₧eme meni¥ v nßÜ prospech. Ke∩ vieme, do akΘho s·boru sa tieto
dßta zapisuj· a kam presne, potom to nieje u₧ ₧iadny problΘm - staΦφ otvori¥ dan² s·bor v nejakom HEXeditore a zmeni¥
prφsluÜnΘ byty na po₧adovan· hodnotu.
InΘ je to ale v prφpade, ke∩ nepoznßme nßzov s·boru s ulo₧enou pozφciou. ╚asto mßva prφponu SAV, ∩alÜou mo₧nos¥ou je nßzov,
pod kter²m byla pozice ulo₧ena a pod. Je nutnΘ trochu experimentova¥ a zisti¥, kde sa presne pozφcie ukladaj·. Ke∩ u₧
identifikujete s·bor, ktor² chcete hexaeditova¥, musφte nßjs¥ prφsluÜn² byte, na ktorom je zapφsanß hodnota, ktor· chcete
zmeni¥. Je potrebnΘ vedie¥ hodnotu danej vlastnosti (pe≥azφ,...) akß bola v momente ukladania pozφcie. T·to hodnotu je
nutnΘ nßjs¥ - naprφklad ako dekadicke vyjadrenie bytu. ProblΘmom je, ₧e tßto hodnota m⌠₧e by¥ ulo₧enß r⌠znym sp⌠sobom - v
jednom byte, dvoch bytoch alebo trΘbats v Ütyroch bytoch. Ak ide naprφklad o vΣΦÜie Φφslo, m⌠₧e by¥ hodnota ulo₧enß t²mto
sp⌠sobom:
druh² byt*256+prv² byt+1
Pre zlo₧itejÜie systΘmy je potrebnΘ ma¥ trochu viacej sk·senostφ. NaÜ¥astie vy nemusφte tieto problΘmy rieÜi¥, lebo ke∩ si
pozriete cheat v naÜej databßze, tak pri ka₧dej HEXeditßcii je uveden² s·bor, ktor² sa mß editova¥, pozφcia editovan²ch
bytov, poprφpade akΘ hodnoty m⌠₧u nadob·da¥. Tu by sme sa mali eÜte pozastavi¥ a poveda¥, ₧e pozφcia bytu v s·bore sa takzie₧
naz²va offset.
Nieko╛ko rßd pre u╛ahΦenie HEXeditßcie...
A na kakoniec nieko╛ko dobr²ch rßd, ktor²ch dodr₧iavanφm si u╛ahΦφte prßcu a HEXeditovanie pre vßs bude v₧dy hraΦkou:
- V₧dy si pred editßciou niekde ulo₧te k≤piu s·boru, ktor² sa chystßte editova¥ - keby sa nßhodou nieΦo nepodarilo,
m⌠₧ete vÜetko ╛ahko vrßti¥ do p⌠vodnΘho stavu jednoduch²m skopφrovanφm zßlo₧nΘho s·boru spΣ¥.
- Pri HEXaeditßcii platφ viac ako inokedy pravidlo "Dvakrßt meraj a raz re₧."
- HEXaeditßcia nevy₧aduje nejakΘ extra znalosti, ale aj tak by som ·pln²m zaΦiatoΦnφkom, ktor² nerozoznaj·
s·bor od adresßra odporuΦil eÜte chvφ╛ku poΦka¥ a troÜka sa rozkuka¥, prφpadne sa obrßti¥ na sk·senejÜieho u₧ivate╛a.
- V₧dy si dan² cheat - nßvod na hexaeditßciu vztlaΦte a poriadne preΦφtajte. Postupujte presne pod╛a neho - vyvarujete sa tak zbytoΦn²ch ch²b.
- Niekedy sa taktie₧ edituj· spustite╛nΘ s·bory typu COM a EXE, ktorΘ obΦas b²vaj· komprimovanΘ. Na prφpadn· nutnos¥
dekomprimacie je v₧dy v cheate upozornenie. NajΦastejÜie sa mo₧no stretn·¥ s t²mito dekomprimaΦn²mi programami:
UNP, UnPKlite, UnLZ,... NajvhodnejÜie je zohna¥ si UNP, lebo je to univerzßlny dekomprimaΦn² program a dokß₧e zvlßdnu¥
ve╛kΘ mno₧stvo komprimßciφ. Po prevedenφ HEXaeditßcie je vhodnΘ a niekedy je to potrebnΘ, s·bor opΣ¥ dan²m
programom skomprimova¥.
| Cheaty | Programy | Pojmy | Definφcie | StruΦnΘ rady | HEXaeditßcia |
|