форум группы Chief-Net » » Базовый хакинг » Sakura Taisen (Sega Saturn/PC)

Страниц (1): [1]
 

1. pedro - 24 Февраля, 2016 - 09:50:08 - перейти к сообщению
помогите разобраться с поинтерами tbl.bin файлов. пока что по ним оч. мало удалось нарыть, записаны они в начале файла, 2 байта с пока неизвестным мне значением, затем два байта предположительным с адресом текста в файле.

методом тыка нашел поинтер первого выводимого в игре сообщения, он лежит по адрусу 88, записан как 2716 052a, при этом выводится текст по адресу 13d0 "Лейтенанту Итиро Огами"
пробовал менять его на 2716 0520, стал выводится текст по адресу 13bc "простой театр."

непонятно alcoholic

файл закрепил
2. pedro - 24 Февраля, 2016 - 09:50:27 - перейти к сообщению
el_pedro

кажись чуток понял. первые два байта поинтера - номер сообщения, вторые два ссылаются на текст, а он может быть любой длинны, в игре оборвется лишь после шести байтов нулями. не соображаю только как 052a = 13d0
3. gegmopo3 - 24 Февраля, 2016 - 09:50:54 - перейти к сообщению
gegmopo3
Текст начинает в файле с 0х97C (Смещение)
Твой адрес текста 0x13D0
пойнтер 0х052А
Формула:
97C+52a*2=13d0
Файл: первые четыре байта заголовок, пойтер состоит из 4 байт, первые два байта относятся к информации какой либо (скорее всего расположение текста, может аватар, может еще чего), вторые 2 байта - указатель.
Например: второй пойнтер по адресу (000A)
0x002B - пойнтер
97C+002b*2=9d2
Так что первые два байта можешь вообще не трогать
4. pedro - 24 Февраля, 2016 - 09:51:12 - перейти к сообщению
el_pedro
воу, gegmopo3, спасибо! yu
однако намудрили разрабы. через ct2 "рассчитать" эти поинтеры не получится.
5. gegmopo3 - 24 Февраля, 2016 - 09:51:29 - перейти к сообщению
gegmopo3
да это они еще не намудрили)) бывают вообще, что без штурма мозга не разобраться)))
6. ZetpeR - 22 Октября, 2018 - 07:52:55 - перейти к сообщению
Вот ещё немного информации заголовок 4 байта
Первые 2 байта умножить на 2 получим размер таблицы с пойнтерами, 2 байта умножить на 2 получим общий размер таблицы с пойнтерами и блока с текстом.

Чтоб узнать правильный размер строчки с текстом надо читать текст до байта 00 к числу прочитанных байт текста надо прибавить 5 (непонятные байты), если число байт не будет чётным то надо прибавить ещё один байт.

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®