Chief-NET

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Chief-NET » Экстрим хакинг » Tiny toon adventures


Tiny toon adventures

Сообщений 61 страница 80 из 127

61

Придётся, видимо, городить конструкцию типа "Количество билетов для прохода в аттракцион: хх."  Так как фраза всего одна на все случаи... Не стали бы они тогда писать 1 tickets? (халтурщики)

Сдвигается, скорее всего, всё вручную. Придётся визуально всё проверять.

Отредактировано Guyver (2014-11-21 04:16:07)

62

Mouse,читай, пожалуйста, внимательно, что я пишу. Как это делаю я по отношению к твоим сообщениям.

Тестовые скрины, демонстрирующие шрифт.
Ничего не выравнивал, так как вручную RLE лень перебивать, не то, что в былые годы)
Маратыч, как получится, прикрепи кодер сюда.

Речь о последнем вопросе - на скриншоте выше (который с копирайтами) строки летают влево-вправо. В самой игре тоже в разных окнах разные отступы, а где-то строки неоправданно короткие, то есть места много, но предложение продолжается на новой строке. Итак, всё это будет сдвигаться каким-то программным путём?

Испробую созданную Маратом утилиту для разжатия RLE, которым пожаты копирайты, и сделаю всё красиво и ровно.

63

Mouse,читай, пожалуйста, внимательно, что я пишу. Как это делаю я по отношению к твоим сообщениям.
Испробую созданную Маратом утилиту для разжатия RLE, которым пожаты копирайты, и сделаю всё красиво и ровно.

Очень самонадеянно считать, что я понимаю значение аббревиатуры RLE и, как следствие, хоть что-то из сказанного Марату. Вот теперь я могу догадываться, что эта утилита автоматически выполняет некую операцию, связанную с размещением текста, но с высоты своих знаний в области - понятия не имею, какую. Объяснять не нужно. Уверен, всё схвачено.

Придётся, видимо, городить конструкцию типа "Количество билетов для прохода в аттракцион: хх."  Так как фраза всего одна на все случаи... Не стали бы они тогда писать 1 tickets? (халтурщики)

Да, халтурщики, и это наблюдается в обе стороны (и локализаторы, и разработчики). И да, конструкцию нагородил, кое-как выкрутиться здесь можно.

Отредактировано Mouse (2014-11-21 05:34:31)

64

Не припомню на денди игр с немоноширным шрифтом. Марат, Алекс, такое бывает вообще?

Ни разу не встречал. Для этого, как правило, нужно иметь достаточно видеопамяти. Потому как алфавит занимает меньше памяти, чем предложения, которые выводятся на экран. Одна строка может содержать до 32 символов. Значит под неё надо выделить 32 тайла в памяти, грубо говоря.

65

Марат, нужна помощь. Необходимо найти адреса загрузки указателя и номера банка на пакет интро (h2485B-h2494F). Я нашёл нечто похоже на части указателя (hC84B) по адресам h4221 (4B) и h41F9 (C8), но не обнаружил где загружается номер PRG банка. Я так понимаю, они здесь 16 кб и по идее 6*h4000+hC84B + h10 = h2485B.
Сначала думал, что номера банка загружаются по адресам h4054, h405A.
Ещё здесь дурацкая система, после первой строки перед каждой последующей идёт байт смещения строки по оси Х. И эти байты совпадают с кодами из MTE словаря. Получается, что-типо этого:

  THIS IS EVERYBODY`S/FE/FD
FRIENDSFAVORITE TOWN,/FE/FD
DO YOU ACME ACRES./FF

А должно быть:

  THIS IS EVERYBODY`S/FE/FD
/05FAVORITE TOWN,/FE/FD
/06ACME ACRES./FF 
где 05, 06 - смещение строки по оси Х.

66

Приложил текст. Служебные байты не трогаем.
По ограничениям. Для пролога макс. длина строки - 25 символов. Всего строк не более 5 штук.
В самой игре в маленьких окнах обычно не более 3 строк длиной 21 символ.
http://savepic.org/6491171.png
В случае крайней необходимости, когда вместиться в существующие ограничения невозможно, будем пробовать ломать глубже.

67

Ещё здесь дурацкая система, после первой строки перед каждой последующей идёт байт смещения строки по оси Х. И эти байты совпадают с кодами из MTE словаря. Получается, что-типо этого:

  THIS IS EVERYBODY`S/FE/FD
FRIENDSFAVORITE TOWN,/FE/FD
DO YOU ACME ACRES./FF

А должно быть:

  THIS IS EVERYBODY`S/FE/FD
/05FAVORITE TOWN,/FE/FD
/06ACME ACRES./FF 
где 05, 06 - смещение строки по оси Х.

Для этого можно плагин написать.

Марат, нужна помощь. Необходимо найти адреса загрузки указателя и номера банка на пакет интро (h2485B-h2494F). Я нашёл нечто похоже на части указателя (hC84B) по адресам h4221 (4B) и h41F9 (C8), но не обнаружил где загружается номер PRG банка. Я так понимаю, они здесь 16 кб и по идее 6*h4000+hC84B + h10 = h2485B.
Сначала думал, что номера банка загружаются по адресам h4054, h405A.

Попозже поищу.

68

Марат, с этим плагин, думаю, не понадобится, так как текста с гулькин нос и я уже вручную поправил.
Гораздо удобнее бы было прикрутить плагин для перевода в Круптаре RLE групп, но для этого понадобятся также указатели на них:
Intro - h2485B-h2494F;
Ticket_booth - h4627-h478F;
Stage_clear - h4B9C-h4C35.
Вложил архив с проектом и ромами.

69

Возникла ещё одна проблемка. Если после загрузки видеопамять свободна и можно использовать несколько алфавитов, то когда начинается сюжетный текст - всё меняется. :)
Похоже, для основного текста придётся юзать только большой русский шрифт.
Марат, посмотри это дело, возможно ли задействовать правую сторону знакогенератора (спрайты?) для вывода букв на экран. Буква Б каким-то образом попала сюда, хотя там письмо должно было опускаться)

Отредактировано Mefistotel (2014-11-23 10:03:38)

70

Правая сторона используется, как prg банк. Оттуда читается текст выводимый на экран.

71

Intro - h2485B-h2494F;

Эти поинтеры я нашёл. Сам текст загружается в видеопамять начиная с адреса $1000 - правая сторона знакогенератора. Поинтер находится по адресу 4221, 4222. Номер банка по адресу 4010. Правда как он высчисляется я ещё не понял. В игре используется маппер mmc3. Это должно как-то помочь.

72

Intro - h2485B-h2494F;

Эти поинтеры я нашёл. Сам текст загружается в видеопамять начиная с адреса $1000 - правая сторона знакогенератора. Поинтер находится по адресу 4221, 4222. Номер банка по адресу 4010. Правда как он высчисляется я ещё не понял. В игре используется маппер mmc3. Это должно как-то помочь.

Интересно, интересно. Младшую часть я таки верно нашёл, но не подумал что и старшая рядом. Непонятно, как из адреса h2485b получился указатель h104B. Точнее с h4B то понятно, а вот с h10. Хотя если строка относительна чего-либо, к примеру, адреса h23810, то это нормально.
С вычислением номера банка равным h32 пока тоже неопределённость.  Банки на этом маппере:  PRG ROM:    8 x 16KiB, CHR ROM:   16 x  8KiB.

Отредактировано Mefistotel (2014-11-23 13:33:04)

73

С номером банка я ошибся. Раньше я никогда не работал с переключение chr банков  и поэтому понятия не имел как это работает. Сегодня восполнил этот пробел. Выяснилось, что chr банки в роме идут после prg банков. В нашей игре Размеры prg банка 8 * 16кб = $20000. После $20000 начинаются chr банки и именно с этого адреса начинается отчёт. Выяснил, что номер банка хранится по адресу $41C7. Его значение $12. Для нашего частного случая размер банка 1 кб = $400.
$12 * $400 = $4800. Прибавляем к этому значению $20000 получаем 24800.
Плюс ещё заголовок nes $10 байт = 24810. Поинтер у нас равен $104B. У читывая, что мы считаем относительно адреса $1000, так как имено в эту область видеопамяти загружается chr банк, отнимает от поинтера $1000 и получаем $004B. Теперь прибавляем получившийся поинтер к ранее вычисленному значению 24810, получаем $2485B.

Отредактировано Mefistotel (2014-11-25 04:41:46)

74

Марат, с этим плагин, думаю, не понадобится, так как текста с гулькин нос и я уже вручную поправил.
Гораздо удобнее бы было прикрутить плагин для перевода в Круптаре RLE групп, но для этого понадобятся также указатели на них:
Intro - h2485B-h2494F;
Ticket_booth - h4627-h478F;
Stage_clear - h4B9C-h4C35.
Вложил архив с проектом и ромами.

Сохранения есть на эти карты?

75

Отличная инфо!
Вечером скину сейвы на остальное.

Отредактировано Mefistotel (2014-11-24 02:41:22)

76

Марат, с этим плагин, думаю, не понадобится, так как текста с гулькин нос и я уже вручную поправил.
Гораздо удобнее бы было прикрутить плагин для перевода в Круптаре RLE групп, но для этого понадобятся также указатели на них:
Intro - h2485B-h2494F;
Ticket_booth - h4627-h478F;
Stage_clear - h4B9C-h4C35.
Вложил архив с проектом и ромами.

Марат, с этим плагин, думаю, не понадобится, так как текста с гулькин нос и я уже вручную поправил.
Гораздо удобнее бы было прикрутить плагин для перевода в Круптаре RLE групп, но для этого понадобятся также указатели на них:

Вот плагин. В скобках адрес ppu, который не нужно трогать. Размер оригинала надо сохранить добив пробелами в конце. Перед редактированием текста, адрес ppu желательно удалить и изменить размер окна под длину строки 32 символа.

77

Маратыч, билетную кассу (Ticket_booth - h4627-h478F;) можно увидеть, если сразу после начала игры нажать кнопку "А".
А вот сейв на экран (Stage_clear - h4B9C-h4C35.), который появляется после прохождения уровня, прикладываю:
http://papermario.ucoz.com/Project/Tiny_To...stage_clear.fcs
Плагин опробую.
http://papermario.ucoz.com/Project/Tiny_Toon_2/TT2ENG.png

78

Вынул по пойнтеру, попробовал вставить как есть, ничего не меняя. Пишет не хватает байта свободного места.
Что не так?
Да, и русский вариант будет больше, чем английский. И я буду переносить пакет на новый адрес, попутно меняя значение пойнтера для русского рома.

Отредактировано Mefistotel (2014-11-25 04:52:30)

79

Удали из таблицы коды переноса и окончания строк.

80

Вынул по пойнтеру, попробовал вставить как есть, ничего не меняя. Пишет не хватает байта свободного места.
Что не так?
Да, и русский вариант будет больше, чем английский. И я буду переносить пакет на новый адрес, попутно меняя значение пойнтера для русского рома.

Увеличь адрес на 1 байт, до 24950. Это никак не повлияет на байт под номером $24950 - проверено.


Вы здесь » Chief-NET » Экстрим хакинг » Tiny toon adventures