1. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

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

Русификация Z

Тема в разделе "Переводы своими руками", создана пользователем AxXxB, 19 янв 2007.

  1. AxXxB неадекват

    AxXxB

    Хелпер

    Регистрация:
    13 ноя 2006
    Сообщения:
    1.580
    Где в игре что лежит и как это посмотреть (на 25.01.2015):

    1. Графика:
      • SPRITES.DAT (для Expansion Kit - SPRITES.EXP) - спрайты и глифы шрифта. Утилита для просмотра - ZGFX от Meeky (http://zzone.lewe.com/forum/viewtopic.php?f=5&t=592). Утилиты для изменения пока нет.
      • HEADFX.DAT и SHEADFX.DAT (для Expansion Kit - *.EXP) - архивы с файлами, содержащие элементы внутриигрового интерфейса (HUD). Распаковщик/запаковщик архивов - Zod Archiver (http://www.old-games.ru/forum/showthread.php?p=807822#post807822). Утилита для просмотра файлов для HUD (*.dat внутри архивов) - ZGFX от Meeky (http://zzone.lewe.com/forum/viewtopic.php?f=5&t=592). Утилиты для изменения файлов для HUD пока нет.
    2. Тексты:
      • В виде ASCII в exe игры. Отдельных утилит для просмотра и изменения пока нет, но можно пользоваться любым hex-редактором.
      • В виде картинок в *.dat файлах внутри HEADFX.DAT и SHEADFX.DAT (тексты для HUD) - см. про графику
    3. Звук:
      • Звуковые эффекты - *.RAW, лежат в подпапке AUDIO. Утилита для просмотра и изменения - любой достаточно продвинутый звуковой редактор (см. http://www.old-games.ru/forum/showthread.php?p=828835#post828835)
      • Музыка - *.MID, лежат в подпапке AUDIO. Стандартные файлы MIDI.
    4. Видео:


    --== оригинальное сообщение ==--

    Предлагаю собраться нескольким людям и русифицировать Z, т. к. мои собственные ковыряния в Hex-редакторе плодов не принесли. :)

    Итак, вопросы, которые остро стоят перед нами:

    №1. Где находятся шрифты?
    №2. Где находятся рисункоподобные элементы меню?
    №3. Этот вопрос стоит только передо мной. Уважаемый Siberian_GRemlin поведал, что файлы .PAC в игрушке пакованы по разновидности алгоритма некоего Зива-Лемпела. Есть ли прога, позволяющая распаковать/упаковать по этому алгоритму?

    Если у кого-то нет Zed'а, здесь есть ссылка. Там же есть ссылка на образ диска озвученной версии. Озвучка не ахти, но все-таки приятно слышать родную речь.

    Всем, кому хотелось бы поучаствовать, отзовитесь! Я буду очень благодарен!
     
    Последнее редактирование: 25 янв 2015
  2.  
  3. AxXxB неадекват

    AxXxB

    Хелпер

    Регистрация:
    13 ноя 2006
    Сообщения:
    1.580
    Аццкий псевдокод для обратного преобразования (куча картинок в игровой формат видео, описанный, напомню, тут - http://wiki.multimedia.cx/index.php?title=JV, также см. архив страницы во вложении):

    Код:
    origFrame = выделить память под несжатый кадр (320*200 байт)
    imgMemory = выделить память под картинку (320*200 байт + размер палитры)
    encodedFrame = выделить память под сжатый кадр (320*200*2 байт должно хватить)
    frameHeader = выделить память под заголовок кадра
    текущая палитра - все цвета черный
    
    для каждой картинки из набора:
    
    	считать картинку в imgMemory
    
    	если палитра отличается от текущей:
    		записать в заголовок новую палитру
    		текущая палитра <- новая палитра
    
    	если вся картинка одного цвета:
    		тип кадра - Fill
    		заполнить origFrame цветом картинки
    		записать кадр в файл
    		следующая картинка
    
    	если картинка и содержимое origFrame одинаковое:
    		тип кадра - Empty
    		записать кадр в файл
    		следующая картинка
    
    	тип кадра - BTC
    
    	для каждого блока 8х8 пикселей в imgMemory:
    
    		подпрограмма кодирования: [
    			если содержимое блока совпадает с содержимым блока в origFrame:
    				записать в encodedFrame 2 нулевых бита
    				следующий блок
    
    			если во всем блоке используется только один цвет:
    				записать в encodedFrame 2 бита (0, 1)
    				записать в encodedFrame 8 бит - номер цвета в палитре
    				следующий блок
    
    			если во всем блоке используется только 2 цвета:
    				записать в encodedFrame 2 бита (1, 0)
    				закодировать блок и поместить результат в encodedFrame
    				следующий блок
    		]
    
    		записать в encodedFrame 2 бита (1, 1)
    
    		для каждого блока 4х4 пикселя в текущем блоке 8х8 пикселей:
    
    			подпрограмма кодирования (как для блока 8х8)
    
    			если номер текущего блока 4х4 в текущем блоке 8х8 больше 4:
    				следующий блок 8х8
    			
    			записать в encodedFrame 2 бита (1, 1)
    
    			для каждого блока 2х2 пикселя в текущем блоке 4х4 пикселей:
    
    				подпрограмма кодирования (как для блока 8х8)
    
    				если номер текущего блока 2х2 в текущем блоке 4х4 больше 4:
    					следующий блок 4х4
    					если номер текущего блока 4х4 в текущем блоке 8х8 больше 4:
    						следующий блок 8х8
    				
    				записать в encodedFrame 2 бита (1, 1)
    				
    				записать в encodedFrame последовательно 4 8-битных номеров цвета в палитре, 
    					использующихся в текущем блоке 2х2 пикселя
    
    			//конец цикла блоков 2х2 пикселя
    
    		//конец цикла блоков 4х4 пикселя
    
    	//конец цикла блоков 8х8 пикселей
    
    	записать frameHeader и encodedFrame в файл
    
    //конец цикла картинок
    Надеюсь, реализую в текущем году :D
     

    Вложения:

    Последнее редактирование: 23 фев 2015
    Dimouse нравится это.
  4. AxXxB неадекват

    AxXxB

    Хелпер

    Регистрация:
    13 ноя 2006
    Сообщения:
    1.580
    Извлек шрифты через ZGFX (см. первый пост темы). Каждый глиф - отдельный спрайт в SPRITES.DAT. Дополнительных символов - умляутов, знака градуса и кавычек-елочек - впритык хватает для реализации кириллицы: 21 заглавная и 25 строчных буквы, начертания которых не имеют аналогов в латинице. Некоторые шрифты не содержат никаких дополнительных символов, но, похоже, они нигде не используются (в игре вообще довольно много неиспользуемых ресурсов). Если используются, тогда придется извращаться :(. Заменять латинские буквы кириллическими совсем не хочется, поскольку в мультиплеере есть чат, и если игроки будут сидеть в нем с разными версиями - один с английской, другой с русской - то привет. Правда, если игра поддерживает ввод умляутов, и кто-то будет писать там в раскладке с ними, то ничего хорошего тоже не получится - но это все-таки лучше, чем не видеть нормального текста вообще. Переделывать процедуры ввода и вывода текста в exe, честно говоря, нет никакого желания, хотя хотелось бы (парадокс? :))
     

    Вложения:

    • fonts.zip
      Размер файла:
      1,3 МБ
      Просмотров:
      52
    AndyFox, kirik-82 и Dimouse нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление