Сейчас подробнее разберу твой проект.
Pokemon Colosseum [PAL]
Сообщений 101 страница 120 из 179
Поделиться1022013-07-23 18:08:10
Даже больше текста обрезано. Буду искать коды. А вообще можно так сделать, пусть непрерывные будут, главное чтобы редактировалось удлинялось и укорачивалось, внешне не особо важно как выглядит?
Поделиться1032013-07-23 18:15:02
Даже больше текста обрезано.
Ну на первых FFFF спотыкается, и режет. Был бы символ переноса другой, было бы все нормально. Может с плагином че и получится, ты коды все пока найди.
Поделиться1042013-07-23 18:32:38
Хорошо. На маджик Тим был и Круптар для чайников и плагины к нему. Буду изучать. А точно без плагина не обойтись? Может просто не ставить ffff как окончание. Пусть дальше все в одну строку будет?
Поделиться1052013-07-23 18:52:24
Может просто не ставить ffff как окончание. Пусть дальше все в одну строку будет?
Окончание FFFF00
Ну вот так покажет, если не указать перенос в таблице (на стандартном плагине standart.kpl):
What would you like/FF/FF/00/00 (а дальше там идет "to do?").
Т.е. он считал до 0000 и остановился, т.к. 0000 у нас стоп-байт. И показал тебе в конце /00/00 - все, конец диалога.
Отредактировано Anton299 (2013-07-23 18:53:38)
Поделиться1062013-07-23 19:28:02
Можно конечно извратиться и заменить в хексе все переносы чем-то другим, а после правеи поменять назад на FFFF.
Поделиться1072013-07-23 19:36:50
Ну это ж не дело... )
Поделиться1082013-07-23 19:52:57
На форуме Мэджик тимов есть тема по Круптару. Там можно позадавать вопросы по плагинам. В разделе Программирование.
PS: Если они там ещё не повымерли окончательно.
Отредактировано KenshinX (2013-07-23 20:29:41)
Поделиться1092013-07-23 20:28:34
Может все таки не ffff00? Запутался я уже. Мысль была после такая еще. Там FFFF используется как подтверждение предыдущей команды т.е. 0000 затем FFFF как подтверждение. Вроде ENTER
Поделиться1102013-07-23 20:46:33
Просто посмотри в хекс-редакторе...
FFFF00 - это явно перенос строки.
Отредактировано Anton299 (2013-07-23 20:48:44)
Поделиться1112013-07-23 20:57:02
Не скажешь что за хекс редактор? У меня все не так удобно.
Поделиться1122013-07-23 20:59:52
Hex Workshop 6
[spoil=Спойлер]http://shedevr.org.ru/zelda64rus/downloads.html#hex
[/spoil]
При поиске (кнопка с биноклем) HEX значений поставь галку "all instances" - оно тебе подсветит все найденное, и внизу будет список адресов, по которым все это найдено.
Так же можно искать HEX значения по маске (??=любой байт).
Например, надо найти FFFF00xx
В поиске пишешь FFFF00??
После установки прога интегрируется в проводник, и кликнув правой мышой на файле появляется пункт "Hex edit with Hex Workshop".
Отличная прога. Еще WinHEX хвалят, но эта мне как-то больше нравится.
Отредактировано Anton299 (2013-07-23 21:11:51)
Поделиться1132013-07-23 21:15:47
Lupus предлагаешь добавить перед ffff00 еще ff например? А не повлияет на игру?
ПС То был скриншот ВинХекса. Неудобно(
Отредактировано Armorant (2013-07-23 21:16:49)
Поделиться1142013-07-23 21:17:43
Lupus предлагаешь добавить перед ffff00 еще ff например? А не повлияет на игру?
Зачем добавлять, если нет там этого FF перед FFFF00?
Скриншот у тебя с WINDHex, а не WinHex. Это разные проги.
Скачай Workshop, попробуй ее.
Отредактировано Anton299 (2013-07-23 21:19:10)
Поделиться1152013-07-23 21:33:32
Да скачал. Сейчас попробую.
Нет я про то (насколько я понял) строка режется из за того что опять натыкается на символ обрыва в середине сообщения, если изменить, добавив перед или после какой либо уникальный код и сгрупировав в новый код обрыва строки. Поменять везде где начинается новая строка хотя это крайне трудно. Это на работу игры повлияет? Потом надо будет ведь назад менять?
Отредактировано Armorant (2013-07-23 21:38:43)
Поделиться1162013-07-23 21:51:24
Не надо нигде ничего в start.dol менять. Не забывай, что это "экзешник" игры.
Надо написать плагин, чтобы нормально считывался текст. Для этого разберить с кодами, пойми, какой за что отвечает.
FFFF00 явно перенос, 0000 явно стоп.
Остальные ищи в тексте.
Отредактировано Anton299 (2013-07-24 19:10:16)
Поделиться1172013-07-23 22:06:31
Понял. Все не так здесь просто. Объясните мне вот что про поинтеры.
1. Как ранее поинтеры 00000065 (и далее) было рассмотрено. Они стоят друг за другом, т.е. на равное число различны друг от друга (поинтеры). Так как они могут указывать на текст разной длины? Ведь адрес следующего сообщения после например Hello и Hello my... (далее текст на 40 слов) явно будет больше. Ранее спрашивать не стал, другим мысли заняты были, да и шло все нормально чтобы далее углубляться. Допустим, я по поинтерам, теоритически могу вычислить кол-во сообщений в блоке последующего после поинтеров текста. Поинтер указывает на начало сообщения (пока не укладывается как, если текст разной длины - писал ранее), то концом сообщения является тот самый код обрыва 0000. Правильно ли я себе это все представляю?
2.В роме при вставке доп части кода ведь все последущее смещается и адреса становятся ошибочными - ром работает не правильно как следствие. Так?
3. Замена на уникальный поинтер (с FFFF00 на FFFFFF) той же длины это выход? И наверняка после редактирования текста придется все менять обратно на FFFF00?
Отредактировано Armorant (2013-07-23 22:28:43)
Поделиться1182013-07-23 22:32:36
1. Насчет 00000065 я ошибся. После проб и ошибок первый пойнтер оказался не 00000065, а следующие 4 байта, 000015A0. Текст вывело правильно (не учитывая обрезания строк, конечно).
2. Да.
3. Не выход это. Надо просто сделать грамотно проект. FFFF00 это не пойнтер, а код разрыва строки.
Нужно, чтобы в круптаре все показало так, как оно есть в игре.
Я тут вместе с тобой учусь, тоже... )
Ты можешь, наконец, найти и выписать отдельно все коды в тексте и занести их в таблицу?
Отредактировано Anton299 (2013-07-23 22:35:20)
Поделиться1192013-07-24 11:02:38
Антон, смотря какие коды. Сижу с хексом пока, ищу закономерность. Хочу найти код в конце каждого сообщения. Сообщение выводится доходит до конца ловит такой код и переходит на другое сообщение следующего уже поинтера. Я увидел что между некоторыми сообщениями большой зазор есть. В этих местах и ищу. Может все не так красиво, но главное чтобы работало. И пока не знаю какие коды написать. 0700 тот же пока не понял с чего и почему он лепится. Программа супер, но где внешнюю таблицу в него загрузить?
Поделиться1202013-07-24 11:13:28
ВСЕ коды выпиши. Их не должно быть слишком много. Это вон в Skyward Sword их было больше 1500. Чуть с ума не сошел... А тут явно немного.
Внешние таблицы не поддерживаются, да и зачем тебе ее туда грузить?
Код в конце каждого сообщения - 0000.
FFFF0700=[0700] всегда в начале диалога, но не во всех диалогах. Нафига он, я не знаю.
FFFF07002031=[bubble] - тоже в начале, иконка text bubble, после него всегда двоеточее, потом сам текст. Типа как на твоих скринах выше в теме: "[bubble]: Hello ... welcome to the pokemon center".
Отредактировано Anton299 (2013-07-24 11:18:54)