1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление
    1. Если вы сделали перевод или русификацию игры, то вы можете поделиться своим творением здесь.
    2. О правилах вступления в группу переводчиков можно прочитать здесь.
    3. Русификации следует искать там.

Wing Commander IV: Цена свободы

Тема в разделе "Переводы своими руками", создана пользователем Рыжий Тигра, 8 янв 2007.

  1. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Процесс перевода игры "Wing Commander IV: Цена свободы"- в разгаре. Желающие опробовать то, что получилось, могут добраться сразу до описания перевода и ссылок на его скачивание, щёлкнув по этой ссылке.

    Желающим посоучаствовать в переводе - рекомендую: полезные для переводчика ссылки - словари, книги, статьи и прочие материалы. Пополнение копилки приветствуется!

    См. также:
    Самая свежая тестовая сборка и инструкции по её установке
    Бета-тестеры, wэлкам!
    31 дек 2016

    Upd 1:
    В связи с участившимися постами здесь "чисто для поржать" - вынужден объясниться.
    6 янв 2014

    Upd 2:
    Приглашаю желающих поучаствовать в переводе. Отозвавшиеся будут увековечены в финальных титрах. (Никаких более материальных благ, к сожалению, обещать не могу. :( )
    27 мая 2014

    Upd 3:
    Наконец удалось пробить барьер несовместимости моего перевода с версией игры от GOG!!! Желающим опробовать - wэлкам!
    2 окт 2014
     
    Последнее редактирование: 21 апр 2017
    kirik-82 нравится это.
  2.  
  3. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Ура, вытащил-таки исходники перевода со старой машины на новую. Сижу разбираюсь в исходниках dxmci.dll.
    Избавиться-то избавился, но двухступенчатая схема почему-то превратилась в трёх-с-половиной-ступенчатую и глючит по-чёрному. Не, ну понятно, что год назад я что-то недоделал, но что? - теперь уже хрен вспомнишь. :-( Придётся сначала по исходнику восстановить логику процесса, а потом переписывать нахрен.

    Всё может быть. Допустим, вы умрёте,
    Вас выгонят, сгорите на работе,
    Или на базе вас придавит свёклой в таре...

    Товарищи! Пишите комментарии!


    (L) Олег Системный

    PS.
    Фигушки: оказалось, что под разными версиями микро$офтовских platform SDK, directx SDK и DDK моя .dll'ка компилится и работает по-разному. Придётся кусочки SDK'ов и DDK'ов выдёргивать и включать к себе в дерево исходников. :-(
     
    Последнее редактирование: 6 авг 2016
    fisenko и Neitan нравится это.
  4. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Продолжаю ковырять исходники dxmci - правлю мелкие ошибки, которых немеряное количество накопилось, и заодно изучаю, что же я там такого за прошлые годы наваял. :-)
     
    fisenko, Neitan и kirik-82 нравится это.
  5. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Напоролся на мерзопакостный глюк - пока не пойму, мой или родной Origin'ский.
    Предыстория его проста. Для того, чтобы Lexington в игре (в прицеле, в субтитрах радиосвязи, на полётной карте) отображался как Лексингтон, подменяю слово в .tre-файлах по мере их считывания:
    Код:
    { REPL 18
      [ 18 "Lexington
    ;       123456789-
    ;       1234 56789-12345 678
      [ 18 "КЗК \<Лексингтон\>
    ; nav map:
      { TREF MISSIONS.TRE
        = x0040 x2DF  x0050 x2DF  x0090 x2DF  x0160 x2DF  x0168 x33B  x0238 x2DF
        = x02B8 x2DF  x02E0 x2DF  x0300 x33B  x0320 x2DF  x0330 x2DF  x0348 x2DF
        = x0370 x33B  x03C8 x2DF  x04B0 x2DF  x06B0 x2DF  x0750 x2DF
      } TREF
    } REPL
    И всё пучком.
    Но как только попытался проделать аналогичный трюк со словом Intrepid - тут же облом-с: игра падает даже до вылета, уже в начале вывода полётного задания, притом с воплями типа "компакт-диск не читается или вообще не от той игры".
    Ага, думаю, может, я где-то накосячил - ненароком бахнул/переименовал нужный файл, гейма его не находит и нервничает? За вечер слепил выводилку в лог имён открываемых файлов, запустил и офонарел:
    Код:
    13:10:40.750 (+  3305) 00000b64 (+ 21412) from 0048bfc2: open file ..\..\DATA\PROFILE\Неустрашимый.IFF failed: 3
    ...................................
    13:10:41.140 (+  3965) 00000b64           from 004A193C: MessageBox( 00030778, "Application files could not be found on the local hard drive or 
    on any CD ROM drive. The game CD is either missing, invalid,
    or may need cleaning.", "WC4: Цена свободы", /* 0x10010 */ MB_OK | MB_ICONERROR | MB_SETFOREGROUND ) 
    13:10:44.578 (+++++++) 00000e14 (+++++++) DllMain( DLL_PROCESS_DETACH ) 
    Строка, на которую подменяю, стала именем открываемого игрой (очевидно, в целях отладки) файла, такого файла нету - и вуаля. :-(
    Ладно, пойдём другим путём. Беру свою старую перенумеровывалку найденных слов, подсовываю ей слово "intrepid", компилирую - запускаю - опять падает:
    Код:
    12:50:29.875 (+ 71332) 00000fac           FIND_WORD_COUNTED: "01trepid" - missions.tre IFF 0046-0258:0002df (uncomp) 
    12:50:30.031 (+ 10238) 00000fac (+103660) FIND_WORD_COUNTED: "02trepid" - missions.tre IFF 0046-0258:0002df (uncomp)
    12:50:30.296 (+ 60969) 00000fac (+268565) FIND_WORD_COUNTED: "03trepid" - missions.tre IFF 0046-0258:0002df (uncomp) 
    12:50:30.640 (+ 79233) 00000fac (+330624) FIND_WORD_COUNTED: "04trepid" - missions.tre IFF 0046-0258:0002df (uncomp) 
    12:50:30.640 (+   848) 00000fac           FIND_WORD_COUNTED: "05trepid" - missions.tre IFF 0104-0328:00014c (uncomp) 
    12:50:30.984 (+ 33899) 00000fac (+344393) FIND_WORD_COUNTED: "06trepid" - special2.tre IFF 0269-0740:000046 (uncomp)
    12:50:31.000 (+ 22376) 00000fac           from 0048bfc2: open file ..\..\DATA\PROFILE\06TREPID.IFF failed: 3
    12:52:17.171 (+++++++) 00000fac           from 004A193C: MessageBox( 0002057e, "Application files could not be found on the local hard drive or 
    on any CD ROM drive. The game CD is either missing, invalid,
    or may need cleaning.", "WC4: Цена свободы", /* 0x10010 */ MB_OK | MB_ICONERROR | MB_SETFOREGROUND ) 
    12:53:15.296 (+164449) 00000fac           DllMain( DLL_PROCESS_DETACH ) 
    Ну, по крайней мере выловил одно из мест, в которых менять слово нельзя. Сейчас сижу ваяю гибрид из подменялки и перенумеровывалки, чтобы гадил поверх слова номером только там где можно; запущу - по крайней мере смогу собрать статистику, а по ней м.б. догадаюсь, в каких IFF'ах менять слово можно, а в каких низзя...
     
    Последнее редактирование: 14 авг 2016
    fisenko и Neitan нравится это.
  6. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Есть идея - в качестве последнего шанса тем, у кого игра в полноэкранке в принципе не идёт: сделать оконный режим в удвоенном окне - 1280*960 (вариант - 1706*960, чтобы видно было широкоэкранное кино). Нужно кому-ньдь такое?
     
    fisenko, Neitan и jack7277 нравится это.
  7. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Слепил, опробовал - работает и весьма удобен: чтобы включить-выключить или сменить слова для поиска, не требуется перекомпиляция софта, нужно только отредактировать и пересобрать файл перевода. Включу пару примеров в очередную бету, где-то на следующей неделе.
    --- добавлено 24 авг 2016, предыдущее сообщение размещено: 24 авг 2016 ---
    Тоже сделал, теперь всё компилируется под MSVC6 на любой машине.
     
    Последнее редактирование: 24 авг 2016
    fisenko, Neitan и jack kovalev нравится это.
  8. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Тоже разобрался, исправил, проверяю и отлаживаю.
     
    fisenko, Neitan, kirik-82 и ещё 1-му нравится это.
  9. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Обнаружил свою тупую ошибку - появилась ещё полтора года назад, в 12-й бете:
    - если при этом в полёте включить VGA - игра падает.
    Исправил. Попутно исправил ещё с десяток более мелких ошибок и прикрутил с дюжину доработок. Скоро соберу более-менее работоспособельную бету и выложу!
     
    fisenko, Sherhan007 и Neitan нравится это.
  10. Genesis Злоботряс

    Genesis

    Регистрация:
    21 апр 2011
    Сообщения:
    12.179
    В чём же заключаются эти нововведения? Просим рассказать.
     
  11. asso

    asso

    Регистрация:
    17 сен 2016
    Сообщения:
    6
    жаль писать на английском языке

    First of all, I'm sorry for writing in english. If it's against the rules I'll delete it, but I'm unable to say something in russian more than спасибо(spasibo)
    I arrived to this forum from CIC(http://www.wcnews.com/chatzone/threads/russian-translation-of-wc4.27188/) but I'm aware that this post has more movement and updates than the other.
    I know that Рыжий Тигра (ginger_tigra) posted there about the translation he was working on.
    I posted there, but if you don't mind I'll post here too, because I'm really interested on running a translation for the GOG version.


    What I really want to know is if you have subtitled the movies by hand or have found any file contaning the texts and the timings.
    I'm trying to figure out where to find it in the DOS version, but tinkering with TRE files returned nothing but menu translations, no clue of movies subtitles.
    It doesn't bother me to write down all the texts, or got it from the script, but the timing process is something I can't afford at this moment, because, ironically, I don't have so much time.
    Is a massive effort that I hugely appreciate from everybody who does it for movies, TV series or documentaries, a true handcrafted work.
    спасибо
     
    Последнее редактирование: 17 сен 2016
  12. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    @Genesis, там целая куча:
    • довёл до ума (надеюсь) работу субтитровой подсистемы с оригинальными .vob-файлами, чтобы игра на .vob'ах не падала и не какала в картинку субтитрами от не того ролика;
    • более надёжный поиск фильтра-сплиттера (актуально, если "матрёшки" с субтитровым потоком придётся воспроизводить не через сплиттер от Haali, а, к примеру, через LAV или старые фильтры от Gabest'а);
    • подстройка момента остановки ролика перед выводом внутрироликового меню (через раз останавливалось слишком поздно - успевало вывести первый кадр от следующего фрагмента ролика);
    • доделал проверку на полноэкранный/оконный режим;
    • сделал лог открытия файлов (без него очень тяжело выловить типичные глюки от неправильной установки игры, когда с CD или DVD на винт копируются лишние файлы);
    • добавил счётчик-нумератор заменяемых слов (новая команда "WCNT" для хак-движка) для отладки перевода;
    • во входной язык хак-движка добавил парочку метасимволов - тонкую шпацию (пробел шириной в просвет между соседними буквами, символ '\|') и короткое тире (в ходу в английском языке там, где у нас ставится длинное, символ '\_'; у длинного тире так и остался символ '\-');
    • замедлил перемещение стрелки-курсора клавишами в панелях настройки опций на борту и в вылете и в посмертном меню;
    • добавил проверку замен командами "REPL", "HACK", "ADDR" и тому подобными на перекрытия заменяемых участков;
    • сделал вывод дополнительных субтитров (некролог и Папашины голосовые подсказки в оружейке) курсивом;
    • в компилятор перевода включил режим "повышенной болтливости" (verbose) для отладки ошибок в исходнике перевода;
    • сделал более аккуратный отсчёт времени в сценах с замедлением (вращение полётной карты, панели опций, посмертное меню);
    • в компиляторе перевода и декомпиляторе .iff'ов добавил к сообщениям об ошибках ссылки на строку исходника программы, в которой ошибка обнаружена (для удобства доработки и отладки компилятора-декомпилятора под микро$офт-визуал-студией);
    • (опять же для удобства при доработке) сделал вывод шрифтов при сборке перевода в отдельные текстовые файлы;
    • с помощью предыдущей фишки нашёл больше десятка кривых букв в шрифтах, поисправлял;
    • доработал латинские шрифты - переделал буквы 'i' и 'l' по образцу таковых из программистского шрифта Input: добавил верхние "полочки" (а это потянуло за собой переделку ещё нескольких латинских и кириллических букв...);
    • добавил отладочную ловушку для перехвата вывода букв с кодами больше 256 (а пустые места для них есть в каждом шрифте - где по 4-5 штук, а где и по нескольку сотен; если окажется, что эти позиции не используются, то просто поудаляю их и дело с концом);
    • добавил возможность принудительного включения видеосвязи в бою для некоторых вылетов (в "заставочном" вылете A1, например, перед схваткой с пиратами получается белиберда, если фейс Маньяка не отвлекает внимание игрока от экранов бортовой РЛС и сопровождения цели);
    • в работе - доработки входного языка хак-движка: типы данных "указатель на строку" и "сортированный массив любого типа"; замена не на фиксированное слово, а на результат выполнения функции (мне это нужно, чтобы Порубежье могло комплектовать самолёты не трофейными ракетами от Конфедерации, а изделиями собственного производства).
    --- добавлено 18 сен 2016, предыдущее сообщение размещено: 18 сен 2016 ---
    @asso, welcome to our forum! I have replied to your post in http://www.wcnews.com/chatzone/threads/russian-translation-of-wc4.27188/#post-398489. But, because English isn't my native language and my vocabulary is not large enouph as I would want, I'm sorry when my posts are sometimes not well understandable, so please ask me again if so.
    You are welcome :-)
     
    fisenko, Sherhan007, Neitan и ещё 1-му нравится это.
  13. asso

    asso

    Регистрация:
    17 сен 2016
    Сообщения:
    6
    I've replied over the CIC forum.
    Thank you very much for your help.
     
  14. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Кому интересна возможность покопаться во внутренностях .tre-файлов - делюсь пакетом treutils из будущей беты dxmci. Три программы:
    • trextra - разделывает .tre-файл на отдельные IFF'ы;
    • tremake - собирает .tre из IFF'ов;
    • iffparse - декомпилирует IFF'ы до текстового исходника (попутно, если есть, выдирая из них картинки, звукозаписи, шрифты и прочую бинарь).
    В сегодняшней версии добавлена возможность декомпиляции одним рыпом всех IFF'ов из .tre-файла, примерно так:
    Код:
    trextra Q:\language.tre
    iffparse language.ifs @language\files.bbs
     

    Вложения:

    fisenko, Sherhan007 и kirik-82 нравится это.
  15. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Переписка с asso на форуме wcnews'а подкинула идею: быстренько слепить на базе "английского перевода" вариант с испанскими субтитрами, а на нём отработать ещё одну будущую фишку - чтобы пользователи могли добавлять свои переводы на любых языках (ну, т.е. кроме иврита и грузинского - нужных буковок в шрифте нету :-( ).
    --- добавлено 23 сен 2016, предыдущее сообщение размещено: 23 сен 2016 ---
    Кстати, делюсь доработанными шрифтами. В основном это замена латинских букв 'i' и 'l' (а заодно и украинских 'і' и 'ї' и похожих на них букв из маймуницы) на таковые с "полочками"; кроме того, пришлось доработать ещё по полдесятку букв, чтобы ложились в стилизацию, плюс исправил пару десятков ошибок и добавил "плакатных" символов для кернинга (в частности, наконец дошли руки откернить Дина "Громилу" Маккола).
    gflg-401x289.png gflg-inst-529x433.png gfmd-289x209.png gfmd-inst-401x289.png gfsm-225x161.png gfsm-inst-225x161.png slrg-241x289.png ssml-193x145.png ssml-inst-193x145.png subs-241x289.png subv-193x209.png vsml-161x97.png
     
    Последнее редактирование: 23 сен 2016
    fisenko, Sherhan007, Mlegion и 4 другим нравится это.
  16. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Вылизываю перевод "технических" персонажей. Придумываю всякие трюки, чтобы вызвать их на разговоры. :-)
    Сцена: вылет B1, погоня от РЛС за пиратами, чтобы засечь их базу. Висю плотно на хвосте у последнего пирата; как только локатор засекает пиратский фрегат - сбиваю его, останавливаюсь, вызываю болтающихся рядом с РЛС Митька́ и Шахтёра и приказываю им атаковать фрегат. Чуть позже отправляю туда же Скитальца. Ну, думаю, щас они втроём его потопят, а я тем временем послушаю эфир, уточню длительности фраз... А фигушки! Не, ну высказываний в бою я наслушался, но потопить фрегат так и не удалось: этот чёртов неуязвимчик даже без помощи своего авиаотряда, одними зенитками посбивал всех троих моих ребят.
    Кстати, что интересно - если аккуратно сбить последнего лётчика-пирата уже после обнаружения фрегата так чтобы фрегат не смылся, то всё равно за вылет засчитывают fail и назначают задачу его сначала найти, а потом утопить. Косяк-с! :-(
     
    Последнее редактирование: 24 сен 2016
    fisenko, Neitan и kirik-82 нравится это.
  17. Вредный

    Вредный

    Регистрация:
    25 дек 2013
    Сообщения:
    1.241
  18. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    @Вредный, пока не могу - не готова подстановка перевода в savegame'ы. Там через пятую точку сделано: названия и ТТХ пушек, хвостовой турели и буксирного луча (если есть) тупо пишутся в savegame и при переключении языка не меняются. А я хочу чтобы менялись.
    --- добавлено 25 сен 2016, предыдущее сообщение размещено: 25 сен 2016 ---
    Опять споткнулся на "I'd rather move on" из первой встречи Блэйра с Котярой. Что-же он всё-таки сказал-то?..
    --- добавлено 25 сен 2016 ---
    Ага-аа! В Origin'ском сценарии читаем:
    Т.е. Блэйр имел в виду всё-таки что-то вроде "столько хороших парней полегло, с ними должен был быть и я".
     
    fisenko и Neitan нравится это.
  19. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    asso поделился файлами globals.iff (шрифты) и language.tre (многоязычность) от испанской (собственно, испанско-франконемецкой: испанские тексты лежат в секциях, предназначенных для английских) 6CD-версии WC4. Сравниваю. Оказывается:
    • либо я таки не первый, кто вскрыл структуру шрифтов в WC3/WC4, либо Origin выпустил неофициальную испанскую версию (до выхода официальной латиноамериканской, насколько я в курсе, так и не дошло), либо у них кто-то спёр полуфабрикат (лично я склоняюсь больше к идее про полуфабрикат: заметил, что французские тексты в испанской версии сыроваты по сравнению с английской 6CD- или DVD-версией);
    • в самом тупом виде, чтобы превратить DVD- или GOG-версию WC4 в испанскую, достаточно просто записать испанский language.tre рядом с wc4dvd.exe - и всё тут же начинает писаться по-испански;
    • я неправильно угадал способ идентификации IFF'а игрой, т.е. мои переведённые IFF'ы игра подхватывает только каким-то чудом, а для IFF'ов, выдранных из испанской версии, номер вообще не прокатывает. Буду разбираться и переделывать...
     
    Последнее редактирование: 26 сен 2016
    fisenko, kirik-82 и Neitan нравится это.
  20. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Это было три года назад. С тех пор получил и прямое подтверждение: в испанском language.tre все IFF'ы находятся на совершенно других местах в первом заголовке, почти четверть сдвинулись на одну-две позиции в третьем заголовке, но поголовно у всех совпадают CRC32-id'ы. Но! При этом попытка отсортировать заголовок первого уровня по возрастанию CRC32-id'а приводит к падению игры с воплями вида "неправильный компакт-диск". При этом подсовывание испанского language.tre (с нафиг перетасованным первым заголовком) вместо родного аглицкого - прокатывает на ура. Не понимаю, чем одно отличается от другого? :-(
    --- добавлено 26 сен 2016, предыдущее сообщение размещено: 26 сен 2016 ---
    Ага, есть закономерности в заголовках первого уровня всех имеющихся .tre-файлов:
    • длина заголовка - всегда 2^N ± 1 элемент;
    • если посмотреть на CRC32-id'ы, то видно - записи в заголовках группируются: 1 эл-т, 2, 4, 8, 16, 32 и т.д.;
    • в пределах группы CRC32-id'ы эл-тов более-менее монотонно нарастают в диапазоне от 0x00000000 до 0xFFFFFFFF;
    • последняя группа, как правило, неполная - её записи разбавлены пустышками, которые опять же более-менее равномерно распределены между действительными эл-тами.
    (При распаковке .tre-файла программой trextra образуется .lst-файл, так вот если смотреть на его колонки "rec #" и "crc", то отлично видно.)
    --- добавлено 26 сен 2016 ---
    (голосом свинобраза из "Дюка Нюкема") АГА-АА! Дошло! Это ж сбалансированное двоичное дерево: 1 элемент, 2, 4 и так далее.
    (быстро-быстро закапывается по кончик хвоста в клавиатуру и оттуда роет туннель в гуглю на предмет выяснения - как из сортированного массива построить двоичное дерево)
     
    fisenko нравится это.
  21. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    В общем, получается, что заголовок первого уровня сортирован как двоичное дерево по CRC32-id'ам, а заголовок третьего уровня - по использованию IFF'ов: сначала идут радиосубтитры специфичные для вылетов A1, B1, B2 и т.д., потом общебоевые высказывания Маньяка, Скитальца, Котяры и т.д., потом ещё какие-то (пока не анализировал)... Субтитры для FMV-кинороликов (для не-DVD-версий игры) тоже собраны в плотную кучку.
    Т.е., похоже, IFF'ы собираются в .tre-файлы по функционально-прикладному принципу, а потом заголовок первого уровня пересортировывается до сбалансированного двоичного дерева.
    Следовательно, надо слегка переделать собиралку .tre-файла. Но это не горит. Гораздо существеннее, что функции подстановки переведённых IFF'ов тоже надо переделывать: искать место для подстановки не по смещению в первом заголовке, как сейчас, а по CRC32-id'у поиском по двоичному дереву. А для этого сначала заменить во всех исходниках перевода id'ы IFF'ов: смещения в первом заголовке - на CRC32. Руками - долго, муторно, с шансами накосячить и вообще нуеговбаню. Буду делать программку.
     
    fisenko нравится это.
  22. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Раскопал и исправил неприятную ошибку, из-за которой при использовании dwrap.dll в роликах с прыжком субтитр "Jumping to..." выводился два раза друг поверх друга.

    В связи с предстоящим испанским переводом, похоже, предстоит интерееесная задачка - разделить шрифтовые таблички на страницы по 128 символов: в первой - только латиница, во второй (0x80..0xFF) - еврозябры плюс "плакатные" символы для латиницы, в третьей (тоже 0x80..0xFF) - опять же "плакатные" для латиницы плюс кириллица плюс "плакатные" для неё... четвёртую и далее - уже можно выделить на иврит, грузинский и прочие. :-) А при компиляции перевода, соответственно, будут браться только страничка с латиницей и страничка с буквами языка, на котором перевод.
    --- добавлено 2 окт 2016, предыдущее сообщение размещено: 2 окт 2016 ---
    (хихикает) А всё ж здорово, что два года назад решил не выкидывать евромаймуницу полностью! Теперь проще будет восстановить...
     
    Последнее редактирование: 2 окт 2016
    fisenko нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление