Вечно жить не запретишь крис касперски ака мыщъх Хакер, номер #087, стр. 087-064-7 фрагмент сэйв-файла с ячейками, хранящими здоровье и броню 000000B0: 00 00 00 00-44 00 5F 00-01 00 01 0A-00 00 00 00 D _ ? ?? 000000C0: 00 00 00 00-00 00 00 00-00 00 00 00-00 00 00 00 000000D0: 00 00 00 00-00 00 00 00-00 00 00 00-00 00 00 00 000000E0: 00 00 00 00-00 00 00 00-00 00 00 00-00 00 00 00 000000F0: 00 00 00 00-00 00 00 00-00 00 00 00-00 00 00 30 0 Исправляем оба числа на FFFFh и загружаем исправленный сэйв в игру. Нетрудно заметить, что у нас все получилось :). [заключение] Приобретенные навыки оказываются очень полезными при расшифровке сетевых протоколов и реконструкции недокументированных форматов файлов и файловых систем. Квалифицированных специалистов мало, поэтому на них всегда присутствует устойчивый спрос, так что бессмертие в играх — это совсем не забава! Это очень и очень серьезно! Многие выдающиеся хакеры начинали именно с бессмертия. Осваивали hex-редактор, терзали отладчик, понемногу изучали ассемблер и постепенно, шаг за шагом двигались к тому, кем они стали сейчас. В общем, ты меня понял. Вливайся! насколько законно патчить игры Мне часто приходится слышать, что модификация игр незаконна и хачить можно только сэйвы. В корне неверное утверждение! По российскому законодательству, на своем компьютере с программой можно делать все, что угодно, в том числе и заменять DEC на NOP. А вот распространять хакнутый файл нельзя, что логично и правильно. автопатчер add_ammo_clip.c #define AMMO_ADDR 0x56AF28 #define AMMO_VALUE 66 #define AMMO_SIZE 1 main(int c, char** v) { // объявляем переменные и проверяем аргументы командной строки int x; HANDLE h; unsigned int ammo = AMMO_VALUE; if (c < 2) return -1; // открываем процесс if (!(h=OpenProcess(PROCESS_VM_WRITE | PROCESS_VM_OPERATION ,0,atol(v[1])))) return printf("-err:open process %d\n",atol(v[1])); |