Wake of Gods Forum | Форум Во Имя Богов

Full Version: Перевод игры на PNG
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
helgtla, на тестовом моде Изгнание нежити центрируется по отрядам. Размеры кадров совпадают с оригинальными?
Berserker, Размеры кадров совпадают.
   Проверил с изменением разрешения игры в ХД моде: чем выше разрешение, тем большее (влево) смещение /визуально/. Хотя, возможно "физический" сдвиг +/- одинаковый (если по экрану монитора сравнивать "на глаз")
---------------------
    Добавка: версия ХД мода у меня 5.2 RC 36
---------------------
   Обновил ХД мод до последнего. Всё осталось по прежнему (отображается со смещением).
При 800x600 сдвига нет, если верно вижу. Значит где-то принудительное смещение нужно применить. Буду разбираться, спасибо.
Berserker, hd mod двигает много чего в бою - координаты там помирают
Исправил.
    Возможно ли добавить поддержку замены кадров PNG формата для def`ов "замещённых" посредством !!SN:R ресурсов ?
    Сейчас замена происходит только если используемый ресурс с добавленным PNG аналогом используется игрой напрямую. Если же ресурс в процессе игры необходимо временно "сменить", то возникает 2 вида последствий: 1) Если изначальный ресурс имеет PNG аналог, то именно он и продолжает отображаться, а не тот, на который произошла замена. 2) Если изначальный ресурс не имеет PNG аналога, а тот на который необходимо изменить имеет, то замена ресурса происходит, но отображается не его PNG аналог, а "базовый" BMP вариант ресурса, которым заменили.

1)

    Sp06_.def имеет PNG вариант
    sp13_.def не имеет PNG вариант
    Результат: после замены !!SN:R^Sp06_.def^/^sp13_.def^; будет отображаться PNG вариант Sp06_.def .
    ------------------
2)

    Sp06_.def не имеет PNG вариант
    sp13_.def имеет PNG вариант
    Результат: после замены !!SN:R^Sp06_.def^/^sp13_.def^; будет отображаться BMP вариант sp13_.def.
---------------------------------------------------
    Для чего это нужно, пример: в процессе игры у многих монстров добавлены спецумения с уникальными анимациями для этих умений. И эти анимации реализованы путём подмены заклинаний (гарантировано неиспользуемых в данном бою) посредством ресивера !!SN:R , с последующим возвратом на изначальную анимацию. Подобное работает хорошо, но хотелось бы заменить визуал новых умений PNG аналогами (полупрозрачность, сглаживание и т.д. = выглядят поприятней). Однако сейчас подобное не срабатывает (описание почему - выше).
(04.08.2021 04:58)helgtla Wrote: [ -> ]в процессе игры у многих монстров добавлены спецумения с уникальными анимациями для этих умений. И эти анимации реализованы путём подмены заклинаний (гарантировано неиспользуемых в данном бою) посредством ресивера !!SN:R , с последующим возвратом на изначальную анимацию.

Это жесткие кастыли, так делать точно не стоит. Просто воспроизводи какую нужно анимацию на гексах в бою без подмены заклинаний. Вызов функции должен быть таким (при желании можно использовать SN:E):

Code:
    push   badEffect
        push   100
        push   структура_стека
        push   номер_анимации
        mov ecx, dword [699420h] ;CombatManager
        call   4963C0h
XEPOMAHT, Правильно ли я понимаю, что ваш метод основан на том, что происходит воспроизведение анимации с номером из списка ресивера BM:V (v=0 для молитвы, v=86 для блока и т.д.)?
    Если так, то результат скорее всего будет схожим с моим (воспроизведение анимации в моём случае реализуется посредством всё того же BM:V после замены необходимого закла через SN:R).
    Вся особенность в том, что если за данным V (из BM:V) номером закла "закреплён" png аналог, то игра при воспроизведении будет выводить именно ЭТОТ вариант.

   Для примера: для всех заклов анимация происходит в соответствии и их V номером. Допустим, мне необходимо проиграть на стеке анимацию v=73 (смертельный удар), но с совершенно другим визуалом (def файл был добавлен мною в архив мода). Так вот, если при старте игры у заклинания v=73 (смертельный удар) был создан png аналог (размещённый в папке с модом ..\Mods\moy_mod\Data\Defs\Sp03_.def), то при попытке вопроизведения игрой на стаке будет проигрываться именно png кадры из данной папки (так как изначально за анимацией v=73 игрой закреплён Sp03_.def, который имеет именно эти кадры, читаемые именно из папки ..\Mods\moy_mod\Data\Defs\Sp03_.def). А если же для "смертельного удара" я не делал png замену, то я могу проиграть произвольную анимацию на стеке (не суть важно каким именно методом я его заменил, !!SN:R меня вполне устраивает, хотя возможно ваш метод и более правильный, но указанный вами метод для меня непонятен в реализации /тут нужен конкретный пример на ERM/), но воспроизводиться в таком случае будет BMP вариант, не зависимо от того, если у заменённого анимационного defа png вариант (ведь для игры v=73 - не имеет png аналога)
---------------------------------------------------
    Как вариант, меня бы более чем устоило, если бы было возможно "расширить" вариацию с количеством V номеров заклинаний. И чтобы пользователь на старте игры (хотя скорее всего это необходимо ввести патчем, но с возможностью модером редактировать его параметры) мог самостоятельно задавать какие именно defы соответствуют выделенным для этого случая V номерам.
    Пример: для пользователей/модеров зарезервировать V номера с 256 по 500(1000) /так как подозреваю, что при том, что в хелпе последний закл имеет номер 86 (блок), но далее скорее всего зарезервированы "неиспользуемые" WoG заклинания/. В таком случае, не будет необходимости каждый раз подменять анимацию при абилках, достаточно будет указать "её пользовательский номер", для которого игрой уже будет определён png аналог.
(04.08.2021 13:58)helgtla Wrote: [ -> ]    Если так, то результат скорее всего будет схожим с моим (воспроизведение анимации в моём случае реализуется посредством всё того же BM:V после замены необходимого закла через SN:R).
    Вся особенность в том, что если за данным V (из BM:V) номером закла "закреплён" png аналог, то игра при воспроизведении будет выводить именно ЭТОТ вариант.

Это не "номера заклов", это номера анимаций в битве. Прошу не путать. Совершенно разные вещи. 108

(04.08.2021 13:58)helgtla Wrote: [ -> ]    Как вариант, меня бы более чем устоило, если бы было возможно "расширить" вариацию с количеством V номеров заклинаний. И чтобы пользователь на старте игры (хотя скорее всего это необходимо ввести патчем, но с возможностью модером редактировать его параметры) мог самостоятельно задавать какие именно defы соответствуют выделенным для этого случая V номерам.
    Пример: для пользователей/модеров зарезервировать V номера с 256 по 500(1000) /так как подозреваю, что при том, что в хелпе последний закл имеет номер 86 (блок), но далее скорее всего зарезервированы "неиспользуемые" WoG заклинания/. В таком случае, не будет необходимости каждый раз подменять анимацию при абилках, достаточно будет указать "её пользовательский номер", для которого игрой уже будет определён png аналог.

Расширить - не проблема. Патч очень простой (он есть в исходниках WoG если что). Проблема - выделение массива памяти средствами ERM и копирование в него данных с настройками анимаций + заполнение новых строк, задающих новые анимации, после чего - выгрузка так же как-то с помощью ERM, когда игрок выходит с карты в главное меню/в виндовоз. Например в ERA+ последний номер не 86, а 90-й 148 , в MoP их ещё больше.
Quote:[+] Добавлена поддержка замены pcx изображениями png. Замененные файлы pcx могут не существовать, если существует соответствующий файл png.
Чтобы заменить изображение pcx на изображение png, поместите файл png в следующее место:
"Mods/YourMod/Data/Pcx/[любые каталоги, возможно вложенные...]\[имя файла pcx без расширения].png".
Действует ли сие на портреты героев? Если да, то ограничены ли размер/цветность/ещё_хз_что картинки?
Я вот вставил поместил в Mods/War On Canvas/Data/Pcx/HPL088WL.png - новый портрет Аламара (140х182 32), а на карте отображается старый 105

P.S. Отбой тревоге: я уже разобрался Dance3

P.P.S. Большие портреты HPL должны быть 58х64 пискелей, а маленькие HPS 48х32. И они не отображаются в редакторе: их можно увидеть только в игре.
Отдельное спасибо за то, что в папке Pcx можно создавать вложенные папки внося таким образом упорядоченность.
SergOz, так поделись в чём ошибка твоя была, дабы другие на те же грабли не наступалиYes
Quote:1)

    Sp06_.def имеет PNG вариант
    sp13_.def не имеет PNG вариант
    Результат: после замены !!SN:R^Sp06_.def^/^sp13_.def^; будет отображаться PNG вариант Sp06_.def .
Не будет. Будет именно sp13_def или его png-кадр.

SN:R подменяет имена дефов в LoadDef. То есть реально грузится другой деф и отображаются обычные или заменённые кадры другого дефа.

Если нет, тест-мод бага, пожалуйста.
Berserker,

   Старт. У героя есть заклинания:
Защита от Воды и Защита от Земли /имеют png кадры/ (сами изначальные bmp дэфы данных заклов изменены с увеличением разрешения для соответствию png вариантам и помещены в архив )
Воздушный щит и контрудар /имеют базовые bpm кадры/
   Плюсом есть Sand.def с кадрами имеющими png аналог. Данный дэф идентичен визуалу для Защита от Земли (для сравнения как ДОЛЖНО отображаться заклинание при изменениях /Защита от Земли - эталон, он в процессе теста не заменяется и ВСЕГДА отображается png кадрами/)
------------
   Первый бой - просмотр того, как выглядят заклы.
   Далее 3 знака.
----------
   Верхний знак: Заменяет Воздушный щит на Sand.def. просмотр щита и защиты от земли - даст понять, что при замене дэфа, имеющего ТОЛЬКО bpm на дэф имеющий png версию - отобразит изменённый закл, но в bpm варианте, а не в png.
   ---
   Средний знак: Заменяет Защита от Воды на Sand.def /png на png/. При такой замене, видно, что по идее кадр меньше отображаемого визуала (так как Sand.def меньше разрешением), но отбражение идёт именно что изначального png аналога файла, которого пытался изменить, т.е. Защита от Воды
---
   Нижний знак: Защита от Воды на контрудар /png на bpm/.
   Ситаация схожа со вторым случаем, с той лишь разницей, что для конрудара ещё меньшее разрешение и png кадры от заменяемого Защита от Воды отрисовываются с сильным "урезанием".
---------------- ТЕСТОВЫЙ МОД ----------------
PNG replaced MOD
--------------------------------------------------
helgtla, да, проблему вижу, спасибо.
Перевел портреты героев в png.
Редактор карт может их видеть или он читает только pcx?
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Reference URL's