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. nop

    nop

    Регистрация:
    5 дек 2014
    Сообщения:
    2.297
    Рыжий Тигра, Так я это видел не раз - не совпало. Может по моей невнимательности.. Я говорю про структуру, где информация об изображении, в которое рисуем, но вроде это не DDSurface.
    Там есть структура вроде rect и другая, где пара полей ширины/высоты, причем размеры = (width-1, height-1), а не (width, height)
    т.е. для получения pitch прибавляется единичка. Код довольно тупой и постоянно эту единицу прибавляет и отнимает при сравнениях.
    Индексация символа в структуре wc4_font_s, кстати, по адресу 00491347 и дальше. Сначала грузим высоту, потом идем в offsets..
    код
     
    Последнее редактирование: 25 дек 2014
  4. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    nop, ага, дошло. Не, такой не знаю. Я перехватывал вывод через DIB, то немножко обследовал - перед выводом кадра игра строит BITMAPINFO из каких-то своих внутренних данных. Но размеры константные 640*480, pitch между началами строк должен быть такой же, вот за разрядность / глубину цвета не уверен.

    ---------- Сообщение добавлено в 03:09 ---------- Предыдущее сообщение размещено в 03:06 ----------

    А что формат картинки свой собственный - не удивительно: гейма ж под DOS'овскую VESA делалась, а под win95 и DD только портировалась. Вряд ли ей бы движок для этого переделывали, проще доклепать выходной каскад конвертер.
     
  5. nop

    nop

    Регистрация:
    5 дек 2014
    Сообщения:
    2.297
    кроме функции draw_text по адресу 00491439
    есть еще виртуальный метод для рисования текста по адресу 00410DE0, принадлежащий классу, который, по всей видимости, наследует wc4_font_s(предварительная гипотеза).
    BITMAPINFO, куда рисуем - глобальная переменная по адресу 004C5094
     
    Последнее редактирование: 25 дек 2014
  6. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Не, не похоже. Я когда колол вывод в DIB - идентифицировал 0x004C5094 как uint8_t ****wc4_dibg_data - ((указатель на)^4) область данных, а в BITMAPINFO указатель на данные не входит. BITMAPINFO **wc4_dibg_info - это 0x04C5070.
    Ага, вижу. do while вдоль строки, пока не встретится нулевой байт, и для каждой буквы вызывает уже известную SUB_L004912A6.
    Это хорошо. А то я чесал в затылке над задачей - как хранить код предыдущего выведенного символа, чтобы было от чего считать кернинг. А так можно будет её тоже перехватить и завести локальную переменную.
    Кстати, прикольно - проверки на пустую строку нет, либо косяк, либо там, откуда вызывается, всё уже проверено.
    Ага, вижу: адрес в таблице есть, а прямых вызовов не видно. Но в дизассембле си-плюс-плюса я плаваю, да и что он нам даёт? Всё равно ж вызывает ту же 00491439...

    ---------- Сообщение добавлено в 04:32 ---------- Предыдущее сообщение размещено в 04:21 ----------

    Ага, хорошая новость: 004912A6 вроде бы больше ниоткуда, кроме 00491439, не вызывается - значит, вывод буквы можно не перехватывать и не патчить, а вызывать as is из перехватчика вывода строки, предварительно подвинув x для кернинга по необходимости.
    А вот мест, из откуда вызывается SUB_L00491283 (взятие ширины буквы), я насчитал 26 штук и сбился. И, сдаётся мне, не все из них циклы вдоль строки - придётся проверять каждый. :-(
     
  7. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Ага, я видел. Компилятор был какой-то... не привыкший к 32-битной адресации. :-) Можно ж было бы
    Код:
        mov  esi, [ebp+p_wc4_glyph_s]
        mov  esi, wc4_font_s.offsets[esi+eax*4]
    Ну, или как-то так. И нагляднее, и трошечки быстрее.
     
  8. nop

    nop

    Регистрация:
    5 дек 2014
    Сообщения:
    2.297
    Рыжий Тигра, там много такого. Похоже на старый Visual C с ассемблерными вставками.
    Потому что есть и cmp ecx, 0 jz .. и jecxz ..
     
  9. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Очередная бета, юбилейная :-) десятая: wc4dvd-rus-beta10.7z

    [​IMG]

    Основные изменения по сравнению с предыдущей:
    • в dxmci.dll добавлена поддержка дисплеев c любым соотношением сторон - от квадратных до чуть ли не 7:3 - силами directdraw, без привлечения opengl (существенно для старых медленных машин);
    • добавлен вывод в широкоэкранке, плюс к кинороликам, некоторых сцен в полёте - автопилот, различные обзоры, катапультирование, гибель/некролог, финальные титры;
    • добавлен пересчёт картинки из 8-битного directdraw в 16-битный - должно, по идее, избавить от "психоделической палитры" в win7 и win8;
    • соответственно, добавлено сглаживание при выводе субтитров к некрологам и Папашиным лекциям;
    • для поддержки эмуляции directdraw силами opengl и совместимости с дистрибутивом от GOG в комплект входит слегка модифицированная GOG'овская dwrap.dll;
    • соответственно, добавленный в предыдущей бете встроенный в dxmci.dll directdraw wrapper через opengl выброшен за ненадобностью;
    • соответственно, изменены панель конфигурации и описание настроек;
    • убрано раздражающее "чёрное мигание" при выводе подряд нескольких видеороликов;
    • добавлен кернинг пары самых крупных шрифтов - пока примитивный, через "плакатный" шрифт, в следующей версии кернинг будет уже настоящий;
    • исправлены несколько мелких ошибок Origin'а.
    В пакет также включены самые свежие версии исходников: .dll'ок и утилит, перевода игры и субтитров к кинороликам, а также самый свежий сценарный вариант перевода.

    Бета-тестеры, wэлкам! Особо приветствуется тестирование всех режимов под win7, win8 и win10. Нужны отзывы, как игра ведёт себя при включенном/выключенном "режиме совместимости", какие graphic enhancement'ы и videorenderer'ы наилучшим образом работают в каких операционках / с какими видеодрайверами, какие глюки наблюдаются... "Прррошу!" (L) Артемон :-)
     

    Вложения:

    Последнее редактирование: 26 дек 2014
    kirik-82 и Sherhan007 нравится это.
  10. nop

    nop

    Регистрация:
    5 дек 2014
    Сообщения:
    2.297
    Думаешь сделать 24&32? Ведь 16-битная палитра - ограниченная.
     
  11. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Пофиг, игра использует только 256 цветов.
    Только если 16-битка будет на каких-то системах глючить. А так 16 бит меня вполне устраивает - работает быстро, directdraw'ный ресайз интерполирует, шрифты сглаживаются, можно жить. :-)
     
    Последнее редактирование: 27 дек 2014
  12. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Проверяю и подгоняю напильником свой софт, задействованный в переводе (разборка-сборка .tre-файлов, декомпиляция и компиляция IFF'ов, работа со шрифтами), под WC3. Блин, не могу найти в нём шрифты! :-(
     
  13. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Со шрифтами разобрался: там же, где и основной комплект у WC4, - в globals.iff. Я просто успел позабыть за год с чем-то. :-(

    Зато какой я шикарный матюк придумал о порубежниках от конфедов, плюс к имеющимся "салатникам" и "рубероидам"!

    Население подзаборных территорий.

    Или, если выражается какой-ньдь с-понтом-монархист (надо поискать среди депутатов Великой Ассамблеи), "подданные подзаборного королевства". В совсем демократичном сокращённом виде - "подзаборники".
    Аж самому себе завидно. :-)
    Подарю этот матюк кэптену Полсену, ему понравится. Да и Козырь, думаю, при случае не откажется ввернуть в разговор.
     
  14. Genesis Злоботряс

    Genesis

    Регистрация:
    21 апр 2011
    Сообщения:
    12.566
    Это от созвучия "порубежья" и "подзаборья"? Если ещё есть там кому материться, то ещё могут быть варианты чуть более отдалённые: "тараканы", "бомжи", "шушера", "деревня", "дичь".
     
    Рыжий Тигра нравится это.
  15. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Типа того. И с оригиналом: "border worlder" - "подзаборник"; "б-д-р", совпадают количество слогов и номер ударного.
    О, в бою мат столбом стоит. Пригодятся! :-)
     
  16. Genesis Злоботряс

    Genesis

    Регистрация:
    21 апр 2011
    Сообщения:
    12.566
    А я, похоже, призвание нашёл...
    bb40f18a88488aa3794c4cae2e747837.jpg
     
  17. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Последняя на сегодня версия финальных титров: очень длинная картинка под катом
     

    Вложения:

    • creds.png
      creds.png
      Размер файла:
      56,4 КБ
      Просмотров:
      726
    • creds2.png
      creds2.png
      Размер файла:
      4,9 КБ
      Просмотров:
      843
  18. nop

    nop

    Регистрация:
    5 дек 2014
    Сообщения:
    2.297
    Эээ. Нет. Даже в VGA цвета выбираются из 18-битной палитры, а в SVGA обычно из 24-битной.
    Если игра захочет нарисовать 256 оттенков серого, то у тебя их столько в 16 битах не будет. Даже 32 серых тона чисто не передадутся.
     
    Последнее редактирование: 30 дек 2014
  19. Ogr 2 лол

    Ogr 2

    Хелпер Переводчик

    Регистрация:
    25 мар 2008
    Сообщения:
    6.512
    nop, 256 цветную картинку что перегнать в 16 битную, что в 24, что в 48 - толку ноль.
     
  20. nop

    nop

    Регистрация:
    5 дек 2014
    Сообщения:
    2.297
    Ogr 2, извини за грубость, но перечитай еще раз моё предыдущее сообщение, если не получилось понять с первого раза :) В 15/16 битах на некоторых палитрах будет небольшое, но заметное искажение цветов. При 24/32 - искажений не будет.
     
  21. Ogr 2 лол

    Ogr 2

    Хелпер Переводчик

    Регистрация:
    25 мар 2008
    Сообщения:
    6.512
    это "заметное" нужно под "лупой" искать сравнивая с исходником.
     
  22. nop

    nop

    Регистрация:
    5 дек 2014
    Сообщения:
    2.297
    Обычный серый градиент из 32 и более цветов окрасится зеленоватыми полосами и нужно быть слепым, чтобы это сходу не увидеть. Хотя да, конечно, это зависит от того, какая была палитра и как она использовалась в игре.
     
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление