@Mike Kozlov а если допустим мы имеем файл где описываются характеристики персонажа, вроде такого (см. скриншот, кусок из hex editor). Как правильно работать с ним? Например я хочу сменить имя (имя ж может быть короче или длинее) персонажа или его характеристики.
Можно попробовать поискать строки и редактировать их, в принципе в правой части их даже может быть заметно.
Вообще, все зависит от формата файла, например исполняемые файлы у винды делятся на секции, в одной из которых исходный код, в другой данные (если упростить)
Если имя длиннее, то сложнее. Как вариант - добавить в конец файла новую секцию и разместить его там, но придется заставить программу его там искать.
Если честно, не сталкивался с такой проблемой, ибо обычно у строк всегда есть какой-то простор из нулей.
Да вон же допустим у переменной is in main quest два значения двойных слов $01 и $10. Экспериментируй. Во времена ms-dos я просто сравнивал файлы(если у них фиксированная структура) fc /b filename1 filename2 > diff.txt Потом открываешь diff.txt и смотришь что поменялось. Слева твои смещения и будут. Впрочем, я и сейчас так делаю, так как дальше fc и дизассемблирования и отладки руками старого досявого не ушел, лол.
@Mike Kozlov а если допустим мы имеем файл где описываются характеристики персонажа, вроде такого (см. скриншот, кусок из hex editor). Как правильно работать с ним? Например я хочу сменить имя (имя ж может быть короче или длинее) персонажа или его характеристики.
Комментарий недоступен
Можно попробовать поискать строки и редактировать их, в принципе в правой части их даже может быть заметно.
Вообще, все зависит от формата файла, например исполняемые файлы у винды делятся на секции, в одной из которых исходный код, в другой данные (если упростить)
Если имя длиннее, то сложнее. Как вариант - добавить в конец файла новую секцию и разместить его там, но придется заставить программу его там искать.
Если честно, не сталкивался с такой проблемой, ибо обычно у строк всегда есть какой-то простор из нулей.
Да вон же допустим у переменной is in main quest два значения двойных слов $01 и $10. Экспериментируй. Во времена ms-dos я просто сравнивал файлы(если у них фиксированная структура) fc /b filename1 filename2 > diff.txt
Потом открываешь diff.txt и смотришь что поменялось. Слева твои смещения и будут.
Впрочем, я и сейчас так делаю, так как дальше fc и дизассемблирования и отладки руками старого досявого не ушел, лол.
А, не заметил имя на скриншоте.
Еще можно попробовать «врезать» внутрь символы, сдвинув все остальное.
Я бы попробовал сравнить два файла - такой и с очень длинным именем.