Блок со шрифтом делится на два полблока. В первом блоке:
4 байта код символа
4 байта вертикальные координаты
4 байта левые горизонтальные координаты
4 байта вертикальные координаты
4 байта правые горизонтальные координаты
Всё верно. Ну тут ничего нового ты не открыл. Это и так всё понятно с координатами. Единственно непонятно то, в каких единицах идёт отсчёт, чего ты и сам нам не смог объяснить.
Насчёт координат я стал заморачиваться, думая, что вместо иероглифов мы смогли бы нарисовать русский алфавит, подправляя эти координаты по нужным размерам заглавных и маленьких букв. Мысля была такова, что расположив буквы в соответствии с кодировкой Windows-1251, как раз там, где иероглифы, мы могли бы тогда писать чистым русским алфавитом перевод напрямую. Но, как выясняется, коды русского алфавита (С0-FF) используются в игре как программный код, а вместо них и умляутов используются специальные коды символов в фигурных скобках. Поэтому нам нельзя писать перевод русским алфавитом напрямую, т.к. это будет интерпретироваться игрой, как программный код. Я уже пробовал и проверял, игра сразу крашится. Отсюда следует, что возиться с координатами нет особой необходимости, разве что расширить место под пару-тройку широких букв.
И Re-Education тогда весь изрисовался, правда он потом зациклился с кастомным шрифтом, более толстым, который не ужимался в нужные пределы в файле. Поэтому такой подход с жирным шрифтом не подходит, достаточно использовать стандартный шрифт, какой и используется в игре.
Собственно, я на скорую руку рисовал весь алфавит и он вполне замечательно размещается на месте умляутов. Если немного постараться, то будет совсем красиво. Писать перевод ессно придётся в любом случае заменой символов.
Тут я проводил эксперимент, какие области символов выводятся на экран:
Думаю понятно что к чему. То есть, на экран выводится область символа в полную высоту, независимо от того, заглавная или маленькая это буква. Однако по ширине каждая буква индивидуальна. Но помнится проверял, русские буквы по ширине в основном вполне размещаются. Но можно как раз тут подхимичить с координатами.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Писать перевод ессно придётся в любом случае заменой символов.
Только для строк начинающихся с #. Вон текст на картинке выше написан просто буквами и изумительно обрабатывается. Всяких умляутов хватает для русского включая букву Ё. Вот только я полез дальше и обнаружил что в игре нет субтитров. Тут даже и переводить толком нечего, одна обучалка да меню.
Вон текст на картинке выше написан просто буквами и изумительно обрабатывается.
Просто буквами не знаю как ты делал, разве что только те буквы, которые совпадают с английскими по начертанию. Остальные же буквы, на месте умляутов, по-любому придётся заменять кодами в фигурных скобках.
Если имеется в виду перерисовка русского алфавита вместо английского, то да, можно обойтись и без кодов замены. Тогда придётся постараться сделать так, чтобы в игре не попадались случайным образом сообщения на английском, иначе увидим на экране белиберду. Поэтому нужно будет хорошо всё проверять, чтобы не осталось хвостов без перевода.
По поводу координат, то думаю пришли к единому мнению, что нет необходимости с ними заморачиваться. Алфавит и так прекрасно умещается и ложится как надо. Если все согласны - значит закрываем этот вопрос.
Насчёт перевода текста, то я не понимаю, почему тогда в игре так много текста, его там просто уйма. Может субтитры нужно как-то хитро включать?
dodther, если тебя так заинтересовал перевод, то будет замечательно, если ты возьмёшься за продолжение. Нужно отрисовать наконец-то финальную плашку шрифтов. Ну и заняться переводом. В переводимых файлах, как я уже говорил, всё очень просто. Там нет привязки к смещениям и сдвигу текста, а идёт привязка по ID, который не изменяется в зависимости от сдвига смещений. А так как, с учётом кодов символов в фигурных скобках, текст получится длиннее оригинала, там, в каждом блоке диалогов, просто придётся подправлять значение длины каждого диалога.
Короче, я всегда здесь и, если что, всегда рад помочь в технической части по возможностям. Думаю и riku.kh3 нас не бросит в тяжёлую минуту. Это готовый образ - переведены и собраны в BF все звуковые файлы видеороликов и аудиодиалогов. Осталось дело за текстом.
Re-Education,
Сообщение от Re-Education
И за тем как вы говорите что аффтар слился, типо начал что-то делать и забил на все это.
Сорри, но время течёт и течёт, всё почти уже сделано и разжёвано, а дело стоит и стоит. Поэтому это начинает немного напрягать. Я готов помогать, но у меня тоже напряги с нетбуком, папку открывает полминуты, фотошоп открывается за 5 минут. И у меня просто депрессия, устал я ковырятся в файлах, да и интернет тоже надоел за 20 лет. Так что, если чо, извините.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Просто буквами не знаю как ты делал, разве что только те буквы, которые совпадают с английскими по начертанию. Остальные же буквы, на месте умляутов, по-любому придётся заменять кодами в фигурных скобках.
Если имеется в виду перерисовка русского алфавита вместо английского, то да, можно обойтись и без кодов замены. Тогда придётся постараться сделать так, чтобы в игре не попадались случайным образом сообщения на английском, иначе увидим на экране белиберду. Поэтому нужно будет хорошо всё проверять, чтобы не осталось хвостов без перевода.
Если ты внимательно смотрел на картинку в моём посте то увидел что английский текст никуда не девался. Кстати на картинке пе просто фраза, а Панграмма . Русские буквы это отдельные буквы. Единственно я не стал рисовать на текстуре совпадающие буквы а просто перенаправил координаты на английские. Ну и код"SELECT" и человечка перенёс на другие коды, так как висели на русских буквах. Вот и всё, теперь в текстах можно писать на русском. Исключения составляют фразы которые обрабатываются графически как в главном меню, закруглённые. Там да вывод только через коды, но таких фраз мало и их видно сразу, там в начале всегда стоит символ #. Как например в файле P5MAIN.MGM. А вот в файле P5COMMON.MGM на 3909 строке надпись без этого символа и там мона смело писать без кодов. Прикладываю свой фал шрифтов с настроенными прописными. Ну и заодно паковщик в bf.
Сообщение от ErikPshat
Насчёт перевода текста, то я не понимаю, почему тогда в игре так много текста, его там просто уйма. Может субтитры нужно как-то хитро включать?
В игре просто уйма повторяющегося текста. Например фраза Single Weapon Tutorial встречается в 1174 файлах.
Сообщение от ErikPshat
dodther, если тебя так заинтересовал перевод, то будет замечательно, если ты возьмёшься за продолжение. Нужно отрисовать наконец-то финальную плашку шрифтов. Ну и заняться переводом.
Шрифт я отрисовал, его осталось только донастроить строчные буквы. Это я сделаю. Я заниматься начинал PS3 версией, но ресурсы абсолютно одинаковые и можно на PSP делать, а потом полученный опыт перенести на PS3.
Сообщение от ErikPshat
В переводимых файлах, как я уже говорил, всё очень просто. Там нет привязки к смещениям и сдвигу текста, а идёт привязка по ID, который не изменяется в зависимости от сдвига смещений. А так как, с учётом кодов символов в фигурных скобках, текст получится длиннее оригинала, там, в каждом блоке диалогов, просто придётся подправлять значение длины каждого диалога.
Текстовые файлы я пока бегло глянул. Из того что увидел это то что текст идёт двумя блоками. В первом блоке идут смещения начала строки относительно начала блока, во втором собственно текст. Интересует вопрос по ID. У каждой фразы есть свой ID? Покажи где находится. Если у каждого предложения свой ID тогда будет несложно перекинуть текст. Я вот когда делал порт Tales of Zestiria, там текст был в ≈ 3000 файлах и выглядел вот так
STR_BATTLE_TUTORIAL_002_PC@Защищайтесь от атак врага, нажимая <Picture id="BTL_ICN_BTN_BATTLE_GUARD"/>!
Ну я и написал програмку которая выдернула из ПК версии весь текст, сложила в один файл(≈ 31000 строк вышло)? А потом из этого файла по ID втыкала в PS3 версию.
Репутация: 220 
(весьма и весьма положительная личность)
Здравствуйте! "аффтар" тут и внимательно следит за проектом! Просто у меня комп сгорел.(перепад напряжения) И в данный момент просто не где делать. Куплю комп и продолжу эксперименты ,если к тому времени вы уже не закончите перевод. И к тому же этот проект не столько мой ,сколько Эрика, Рику, Скорпега, и остальных кто помогает делом или решением проблем с которыми мы сталкиваемся при реализации проекта. Я пока не начал перевод этой игры, не знал ничего об переводе игр. Огромное спасибо знающим людям, которые делятся опытом в этих делах. А пока приходится сидеть с телефона и просто следить за проектом.
И за тем как вы говорите что аффтар слился, типо начал что-то делать и забил на все это.
Репутация: 220 
(весьма и весьма положительная личность)
подключил винт от своего компа на комп друга и выдернул с него файлы что у меня были наработаны.Там картинка шрифта и алфавит для проги от рику. Делал вроде качественно, но почему то игра крашилась когда переводил игру при помощи программы от рику автоматической всталялки текста.А если заменял картинку и не переводил этой прогой то все прекрасно запускалось.Русские символы шрифта Romul Regular. В общем посмотрите кому не трудно.
подключил винт от своего компа на комп друга и выдернул с него файлы что у меня были наработаны.Там картинка шрифта и алфавит для проги от рику. Делал вроде качественно, но почему то игра крашилась когда переводил игру при помощи программы от рику автоматической всталялки текста.А если заменял картинку и не переводил этой прогой то все прекрасно запускалось.Русские символы шрифта Romul Regular. В общем посмотрите кому не трудно.
Прога от рику нормально работает. Надо просто не забывать что текст должен быть в кодировке ANSI.
На картике мой шрифт. Прогой обработал только строки с #, их всего 7. всё остальное можно писать просто текстом.
На картике мой шрифт. Прогой обработал только строки с #, их всего 7. всё остальное можно писать просто текстом.
Быть может в главном меню есть смысл написать сокращеннее? Например: "новая" и "загрузить", то есть опустить слово "игра". Места совсем мало, а так будет выглядить лаконичнее
Ты меня не так понял. То что на картинке я и так знаю. Там не Id, а просто позиция в блоке. А было-бы хорошо иметь именно ID фразы, а не блока. Попробую на днях сварганить выдёргивалку текстов
Репутация: 229 
(весьма и весьма положительная личность)
dodther, боюсь, что опция с субтитрами вырезана намертво В качестве эксперимента попробовал в РС версии посмотреть, в каком блоке изменяются значения параметров Tutorial/Blood/Subtitles при сохранении, и посмотрел в PSP версии
Также, ещё в РС версии есть такое значение для Tutorial = off; Blood = on; Subtitles =on; - 0x02039919
Там не Id, а просто позиция в блоке. А было-бы хорошо иметь именно ID фразы, а не блока. Попробую на днях сварганить выдёргивалку текстов
Как не ID? Посмотри этот ID в последующих блоках, он идёт по порядку по нумерации, а не по позиции блока.
То, что было бы хорошо иметь ID фразы, а не блока, то хотеть не вредно, но этого там нет.
Я предлагал делать замену (Replace) кода 00, разделяющего фразы, на код переноса строки 0D0A. Потом в текстовике все фразы будут с каждой новой строки. После перевода строк произвести обратную операцию замены кода 0D0A на 00. Затем исправить длины всех фраз.
Только сомневаюсь в том, как себя поведёт текстовой редактор, ведь при сохранении он может пересохранить программный код, как текстовой код.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 19.11.2015 в 12:08.
Я предлагал делать замену (Replace) кода 00, разделяющего фразы, на код переноса строки 0D0A. Потом в текстовике все фразы будут с каждой новой строки. После перевода строк произвести обратную операцию замены кода 0D0A на 00. Затем исправить длины всех фраз.
Только сомневаюсь в том, как себя поведёт текстовой редактор, ведь при сохранении он может пересохранить программный код, как текстовой код.
Да эт уже мелочи. Текстовый редактор нормально себя ведёт. Пользуюсь блокнотом++
Вот для ознакомления весь тест из игры. Тут все языки и повторы не чищены. _PoP.rar
6 243 590 строк.
Меня вот беспокоит проблема как определить какой язык содержится в файле. Этого я не нашёл.
П.С. Можно к ИД блока дописывать порядковый номер строки в блоке и получится ИД строки.
П.С. 2. После чистки от дублей осталось 8212 строк. Ещё-бы языки вычистить...
Последний раз редактировалось dodther; 20.11.2015 в 11:38.
dodther, думаю лучше файлы с другими языками сразу выкинуть или занулить, чтобы не путались под ногами.
Дубли удалять наверное не стоит, т. к. игра имеет несколько развитий событий и эти дубли могут выводиться при разных стечениях обстоятельств.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
dodther, думаю лучше файлы с другими языками сразу выкинуть или занулить, чтобы не путались под ногами.
Ты опять невнимательно читал. Я не знаю как определить какой язык в файле. Это нигде явно не указано. Шапки у файлов идентичны.
Более того, в одном файле может быть несколько языков.
Сообщение от ErikPshat
Дубли удалять наверное не стоит, т. к. игра имеет несколько развитий событий и эти дубли могут выводиться при разных стечениях обстоятельств.
Как раз таки стоит дубли удалять, это совершенно одинаковые фразы. Нафига в текстовике держать 586 раз фразу "Voices Volume" например?
Последний раз редактировалось dodther; 21.11.2015 в 18:33.
Репутация: 229 
(весьма и весьма положительная личность)
dodther, значение по умолчанию для обеих версий одинаковое - 0x02019919, а в PC версии оно отвечает за то, что все опции Tutorian/Blood/Subtitles включены. Возможно, получится найти какие-нить следы через PersianRug по запросу 0x19990102
Репутация: 220 
(весьма и весьма положительная личность)
Привет всем! В общем собрал я финальную плашку шрифтов, вложил в bf архив по нужным файлам. Перевел и подогнал все меню чтоб правильно отображалось и текст не налезал друг на друга. Все отлично отображается и работает. Не могу найти нужные файлы с обучалкой в игре, чтоб прогнать через прогу Riku.kh3, и потом упаковать и вложить в bf архив. В общем если кто нашел отпишитесь в каких файлах это находится, чтоб уже закончить перевод игры и приступить к тестированию.
Вопрос скорее к Эрику. Файлы с остальными текстами, PersianRug пишет что они не сжаты jade движком и распаковывать их отказывается. Так как их тогда прогнать через прогу от riku?
Последний раз редактировалось Re-Education; 29.11.2015 в 00:15.