Без описания |
Поиск в теме | Версия для печати |
Lleon23  |
Отправлено: 29 Января, 2025 - 11:48:06
|
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2025

|
Доброго времени суток! Хотелось бы понять как ваша "кухня" работает. Собственно, если не затруднит ответить на несколько вопросов, то вот они:
1. Какие текущие проекты у вас есть? Кто их раздает?
2. Как организован процесс перевода по этапам?
3. Есть ли какие-то простые подопытные на ромхакинг?
Спрашиваю тут, а не беру любой ром из сети, потому что хотелось бы принести пользу, а не ковырять то, что никому не нужно.
Уровень знаний:
Что такое 16-ричная система счисления, как работает ram, указатели на очень базовом уровне понимаю.
Исходя из этого, еще пара вопросов:
Есть ли мануалы для новичков кроме этих? http://chief-net.ru/index.php?op...22&Itemid=33
Какой базовый инструментарий используете кроме hex редакторов, встроенных дебаггеров в эмуляторы и пр?
|
|
|
Guyver  |
Отправлено: 30 Января, 2025 - 13:56:11
|

Chief-Net
Просматривает форум
Сообщений всего: 10218
Дата рег-ции: Окт. 2014
Откуда: Магадан

|
Выстави в DTM не 1 х 1, а 16 х 1 в окне Карта тайлов. И буквы будут видны полностью. Их можно экспортировать в bmp и там перерисовать (экспорт-импорт без косяков в версии DTM с форума от алекса)...
Зачем оставлять английский язык? Кто захочет поиграть на английском - просто запустит оригинальный ром 
Другое дело, если в немецкой версии слова длиннее, тогда в некоторых местах (меню, к примеру) даже не придётся пойнтеры искать, так как русские варианты влезут на старое место...
Цитата:Похоже пойнтнеры не нужны - Эм-м-м... Вообще-то в большинстве игр используется перенос строки, символ окончания диалога и пустое место в конце с блоком текста.
Если в игре используются автопойнтеры, тогда да, не нужны. Тут я не знаю, не проверял (на первый взгляд блок поинтеров находится прямо перед блоком с текстом)...
П.С. Да, пойнтеры прямо перед текстом, двухбайтные...
П.П.С. По идее, надо убрать выбор языка из европейки. Вангую, что часть ресурсов там общая, и при выборе другой версии в ней будут, к примеру, русские надписи и т.д.
----- Я не волшебник - я только учусь... |
|
|
Lleon23  |
Отправлено: 30 Января, 2025 - 14:27:40
|
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2025

|
Guyver пишет:Выстави в DTM не 1 х 1, а 16 х 1 в окне Карта тайлов. И буквы будут видны полностью. Их можно экспортировать в bmp и там перерисовать (экспорт-импорт без косяков в версии DTM с форума от алекса)... Да, сработало спасибо.
Guyver пишет:П.С. Да, пойнтеры прямо перед текстом, двухбайтные...
П.П.С. По идее, надо убрать выбор языка из европейки. Вангую, что часть ресурсов там общая, и при выборе другой версии в ней будут, к примеру, русские надписи и т.д. Пошёл разбираться. Многое не понятно, но очень интересно
Я пошарил по форумам. Комьюнити по переводам и ромхакингу полумертвое какое-то. Ну, или мне так кажется. (Отредактировано автором: 30 Января, 2025 - 14:32:16) |
|
|
Lleon23  |
Отправлено: 31 Января, 2025 - 10:40:56
|
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2025

|
Guyver пишет:Просто тот, кто может и умеет (и делает) - ему форумы не особо нужны...
И не поспоришь 
Думал быстро разберусь. Как бы не так
Вот этот блок указателей. Начиная с 1887D 4589 и 1887F 9F89 и до 18920 BEC1
Спойлер (Отобразить)[url=https://postimg.cc/tnbvwtJM]
Он примерно до середины основного текста, потом обрывается. Указатель BEC1 зачем-то повторяется несколько раз. Почему?
А вот главное меню. Начало главного меню 183E3 и на него пойтнера нет. Искал E3 83 и E3 83 C1
Я уж и в дебаггер залез, хотя мало понимаю ассемблерный код.
1ый скриншот - место где находится меню в роме.
2ой скриншот - Функция, которая читает наш текст меню по 2 байта
3ий скриншот - Место с вызовом этой функции. Я так понял, что 83Е3 в коде явно зашито?
Что делать в такой ситуации? Что можно изучить и почитать?
Спойлер (Отобразить)
[url=https://postimg.cc/nXVWkk9R]
[url=https://postimg.cc/VJdXFr4Q]
[url=https://postimg.cc/KkXVby4j]
P.S. Нашел видео на youtube про пойнтнеры snes. Может поможет https://www.youtube.com/watch?v=...DK-KB8k&t=3s (Отредактировано автором: 31 Января, 2025 - 13:24:39) |
|
|
Guyver  |
Отправлено: 31 Января, 2025 - 16:20:45
|

Chief-Net
Просматривает форум
Сообщений всего: 10218
Дата рег-ции: Окт. 2014
Откуда: Магадан

|
1899F - текст 1
189CC - текст 2
1887F - поинтер 1
18881 - поинтер 2
и т.д.
Если указатель повторяется несколько раз, может быть всё что угодно. Может, один из них верный, а другие ложные. А может, верные все... Как придумали разрабы - так и работает. Часто в играх бывает несколько указателей на одну фразу.
Дальше не смотрел, но на примере найденных находятся и все остальные. Может, они просто в другом месте. Если не получается дебаггером - можно взять корруптор и попробовать им. Я дебажить не умею и использую корруптер для этого...
http://guyverperevod.byethost7.com/program.html
Ищи в корруптере E3 и заменяй, к примеру, на 2 больше. Прогони ром диапазонами и позапускай, пока не увидишь, что фраза сдвинулась... Я взял диапазон 10000, потом как увидел, что фраза исчезла, 1000, потом 100...
Так ты определишь место в этом диапазоне, а потом уже определи где именно в этом диапазоне находится искомое число (сужай диапазон, пока его точно не найдёшь, а потом переключи в 16-чный вид адреса корруптера)... 2A6C8 - пойнтер E383. Как и положено по фразе... Как ты искал? 
Видишь, всё нашлось корруптером за 10 минут. Поэтому я до сих пор не освоил дебаггер В более сложных случаях мне помогают те, кто умеет им пользоваться...
Обычно перед такими разбросанными пойнтерами может стоять какой-то одинаковый символ. К примеру, A9. Найди несколько таких и посмотри, вдруг есть закономерность. И тебе станет легче их находить. Но не факт, что в этой игре так...
----- Я не волшебник - я только учусь... |
|
|
Lleon23  |
Отправлено: 31 Января, 2025 - 18:55:08
|
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2025

|
Благодарю за такой подробный ответ
Guyver пишет:2A6C8 - пойнтер E383. Как и положено по фразе... Как ты искал?
Видимо, я подумал(уж не знаю, почему) , что пойтнеры на текст идут именно блоками, и не могут быть так далеко. Начитался про банки памяти, но видимо не понял как это работает.
Попробую ещё раз, спасибо!
P. S. Да, ассемблер сложная штука, на мой взгляд. Особенно если сам код не пишешь - а я не пишу. 5 строк кода после компиляции превращаются в 50😐. Попробуй понять, что там изначально было, не видя исходников. Ещё и архитектуру системы знать надо. Мрак😁, но интересно.
Guyver пишет:
http://guyverperevod.byethost7.com/program.html
К сожалению ссылка битая, но я нашел уже тут Спасибо!(Отредактировано автором: 31 Января, 2025 - 19:33:08) |
|
|
Lleon23  |
Отправлено: 03 Февраля, 2025 - 14:37:29
|
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2025

|
Mefistotel пишет:Большие буквы смотрятся нормально.
Спасибо. Маленькие еще не трогал. Правильно понимаю, что буквы должны иметь размерность тех, которые изначально были? Ведь определенным буквам в ASCII соответствуют определенные тайлы? Например: Большую букву Щ вместить в 1 тайл проблематично. В английском шрифте W еле умещается, а еще же хвост нужно добавить от Щ.
P.S. Возможно, она и не понадобится.
P.S.S В роме маленькие буквы имеют один размер с большими. Правилен ли вывод, что текст масштабируется кодом игры?(Отредактировано автором: 03 Февраля, 2025 - 14:41:14) |
|
|
|
Поиск в теме | Версия для печати |
Страниц (1): [1] |
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0) |
« Базовый хакинг » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
 |
|