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

Full Version: ERA PLUS
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
daemon_n, Я и говорю, убрать управление каналом, ему это не нужно. Напишет нам если надо что-то
Небольшой прогресс по ERA+:

1. Редактор заклинаний теперь поддерживает содовский фильтр целей для заклинаний. Например, там можно задать заклинание, которое действует только на Криган, и т.д. (использованы свободные флаги в структуре заклинаний). Сам содовский кейс на запрет заклинаний от характеристик монстров удалён.

Image: image.png

2. Переписан код запрета заклинаний от артефактов. Теперь это таблица, в которой можно задать 1 артефакт на 1 заклинание + специальные проверки на массовые запреты и односторонние запреты в зависмости от уровня школы. Феаноровский Эмералд с его кривокодом в этой части ERA+ больше не используется.

3. Новая накладная почва - антипод проклятой земле, так же запрограммирован и размещается на грязи в соответствующей вог-опции.
XEPOMAHT, Кригане — это Инферно?
(27.10.2023 23:51)Berserker Wrote: [ -> ]Кригане — это Инферно?

Да, фракция инферно. Для поддержки Святого и Бранного Слов в игре.
Если честно, я не понял ни один из пунктов...
(27.10.2023 23:03)XEPOMAHT Wrote: [ -> ]содовский кейс на запрет заклинаний от характеристик монстров
Что это такое?
(27.10.2023 23:03)XEPOMAHT Wrote: [ -> ]Переписан код запрета заклинаний от артефактов. Теперь это таблица, в которой можно задать 1 артефакт на 1 заклинание + специальные проверки на массовые запреты и односторонние запреты в зависмости от уровня школы.
Ась?
(27.10.2023 23:03)XEPOMAHT Wrote: [ -> ]3. Новая накладная почва - антипод проклятой земле, так же запрограммирован и размещается на грязи в соответствующей вог-опции.
В каком смысле антипод-то? Можно колдовать любые заклинания, кроме 1-го уровня?
Попробовал сыграть в версию 3.5.4. Сразу вопрос: какой смысл несет изменение схемы отстройки города? Например, в Оплоте эльфы стали требовать кузницу, а пегасы - волшебный пруд
Не перебор с погостами? Раз
два
три

и толкователями снов?

А синий может все свои войска в скелетов превратить. Пять раз подряд
Жесть! Это случайная карта?
Да. Мой любимый шаблон Diamond
Установил сборку от Panda, запустил, никакие настройки не менял, только шаблон выбрал, город и героя.

В общем, в моде та же беда, что и в HotA - слишком большая доля новых объектов. В результате - меньше относительная доля старых объектов, в т.ч. - и жилищ существ.
(28.10.2023 00:20)MOP Wrote: [ -> ]Что это такое?

Code:
switch ( v11 )
  {
    case 17:
    case 19:
      if ( !AHero )
        goto SDefault;
      v9 = Hero_HasArt(AHero, 106);
      goto LABEL_46;
    case 24:
      if ( v7 & 0x40000 )
        return 0.0;
      if ( !AHero )
        goto SDefault;
      v9 = Hero_HasArt(AHero, 103);
      goto LABEL_46;
    case 25:
      if ( !(v7 & 0x40000) )
        return 0.0;
      if ( !AHero )
        goto SDefault;
      v9 = Hero_HasArt(AHero, 104);
      goto LABEL_46;
    case 38:
      goto S38_Resurrection;
    case 39:
      if ( v7 & 0x40000 )
        goto SDefault;
      return 0.0;
    case 41:
      if ( v7 & 0x40000 )
        return 0.0;
      goto S51_52_55_Fortune_MisF_Slayer;
    case 42:
      if ( v7 & 0x40000 || !v5->damage_max )
        return 0.0;
      if ( !AHero )
        goto SDefault;
      v9 = Hero_HasArt(AHero, 102);
      goto LABEL_46;
    case 44:
      goto S44_Precision;
    case 49:
    case 50:
      if ( !(v7 & 0x20000) )
        goto SDefault;
      return 0.0;
    case 51:
    case 52:
    case 55:
S51_52_55_Fortune_MisF_Slayer:
      if ( v5->damage_max )
        goto SDefault;
      return 0.0;
    case 59:
      if ( !AHero )
        goto SDefault;
      v9 = Hero_HasArt(AHero, 100);
      goto LABEL_46;
    case 60:
      if ( !AHero )
        goto SDefault;
      v9 = Hero_HasArt(AHero, 105);
LABEL_46:
      if ( v9 )
        return 0.0;
      BYTE1(v7) = BYTE1(v14);
      goto SDefault;
    case 61:
      if ( !AHero )
        goto S44_Precision;
      if ( Hero_HasArt(AHero, 107) )
        return 0.0;
      LOWORD(v7) = v14;
S44_Precision:
      if ( v7 & 4 )
        goto SDefault;
      return 0.0;
    case 62:
      if ( !AHero )
        goto LABEL_16;
      if ( Hero_HasArt(AHero, 101) )
        return 0.0;
      v7 = v14;
LABEL_16:
      if ( v13 == 70 )
        return 0.0;
      if ( v13 == 71 )
        return 0.0;
S38_Resurrection:
      if ( !(v7 & 0x40000) )
        goto SDefault;
      return 0.0;
    case 70:
      if ( v13 != 70 && v13 != 71 )
        goto SDefault;
      return 0.0;
    case 71:
      if ( !(v7 & 0x10) )
        return 0.0;
      if ( v13 == 30 || v13 == 31 )
        return 0.0;

(28.10.2023 00:20)MOP Wrote: [ -> ]Ась?

Code:
    cmp eax, Количество_заклинаний
    jge .не_проверять_арт
    movzx ecx, byte [eax+артефакты_дающие_иммунитет_к_заклинаниям]
    test ecx, ecx
    je .не_проверять_арт
    test ebx, ebx
    je .не_проверять_арт
    push ecx
    mov ecx, ebx
    call dword [Проверить_артефакт_на_кукле_героя]
    test al, al
    jne Запрет_заклинаний_от_арта.арт_есть_запрет_закла
    mov edx, dword [ebp-4] ; восстановить флаги монстра
.не_проверять_арт:

(28.10.2023 00:20)MOP Wrote: [ -> ]В каком смысле антипод-то? Можно колдовать любые заклинания, кроме 1-го уровня?

Можно колдовать только 5 уровня.

(28.10.2023 00:58)Ivor Wrote: [ -> ]какой смысл несет изменение схемы отстройки города? Например, в Оплоте эльфы стали требовать кузницу, а пегасы - волшебный пруд

Чтобы Оплот отстраивался медленнее. В ERA+ изменены схемы отстройки всех городов - доппостройки для жилищ потребуются во всех городах.

(28.10.2023 02:35)Ivor Wrote: [ -> ]Не перебор с погостами?

У него ценость 750, т.к. там разный хлам. В современной версии генерируются все воговские объекты с более низкими ценностями, поэтому погосты встречаются намного реже.

(28.10.2023 02:35)Ivor Wrote: [ -> ]и толкователями снов?

По конфигу, должен генерироваться в 2 раза реже чем, например, мельницы. Иногда содовский генератор карт благодаря не очень удачному генератору случайных чисел может по 5 раз повторять один и тот же объект, ну вроде Берсеркер правил генератор чисел в era.dll - рекомендую обновить эту библиотеку.

(28.10.2023 02:35)Ivor Wrote: [ -> ]А синий может все свои войска в скелетов превратить.

ИИ преобразователем скелетов не пользуется - не сможет.

(28.10.2023 04:00)Ivor Wrote: [ -> ]В общем, в моде та же беда, что и в HotA - слишком большая доля новых объектов. В результате - меньше относительная доля старых объектов, в т.ч. - и жилищ существ.

Никто не запрещает в ERA+ запускать карты, сгенерированные в обычном СоДе, где не будет ничего нового. Лично для меня, чем больше новых объектов карты, тем лучше и интереснее (например в той же HoA слишком мало новых объектов, она всё же больше для консерваторов). Например в текущей версии ERA+ на генератор карт поступают 2337 объектов карты и в каждом обновлении это количество постепенно увеличивается. Кому-то мало, кому-то много - всем не угодишь. 105
(28.10.2023 18:17)XEPOMAHT Wrote: [ -> ]
(28.10.2023 00:58)Ivor Wrote: [ -> ]какой смысл несет изменение схемы отстройки города?

Чтобы Оплот отстраивался медленнее. В ERA+ изменены схемы отстройки всех городов - доппостройки для жилищ потребуются во всех городах.
Жаль. Лучше бы смотрелось добавление требования доп.построек для улучшений жилищ.

(28.10.2023 18:17)XEPOMAHT Wrote: [ -> ]ИИ преобразователем скелетов не пользуется - не сможет.
Тогда, может, ограничить его кол-во одним на зону, и убрать с большей части земель?
(28.10.2023 20:22)Ivor Wrote: [ -> ]Лучше бы смотрелось добавление требования доп.построек для улучшений жилищ.

Там примерно 50 на 50 - где-то доп.постройки требуются только для улучшений. Для постройки жилищ более сильных монстров на уровне (например тех же эльфов) требуется доп.постройка уже для базового жителя жилища.

(28.10.2023 18:17)XEPOMAHT Wrote: [ -> ]Тогда, может, ограничить его кол-во одним на зону, и убрать с большей части земель?

Мне не известно место в коде игры, где это регулируется. Для настроек генератора карт есть только 2 значения - ценность и частота появления. При заполнении зоны всегда остаётся остаток по ценности, который тратится на самые дешёвые объекты карты. Тут либо увеличивать ценность (тогда игра будет "добирать" теми же мельницами), либо снижать частоту (тогда объект появится только на картах с "размазанными" зонами, на "плотных" зонах шансы будут совсем никакие). Когда количество дешёвых объектов карты будет большим, то и количество повторений заметно снизится (возможно, уже так в текущей версии ERA+ по сравнению со старой, где объектов нехватает).
(28.10.2023 20:49)XEPOMAHT Wrote: [ -> ]
Quote:Тогда, может, ограничить его кол-во одним на зону?
Мне не известно место в коде игры, где это регулируется.
Я когда-то спрашивал Sav'а на df2 про ограничение кол-ва колодцев на зону
Sav Wrote:Изменить значения простыми патчами можно, но что касается ценностей и частот - они прописаны константами в коде, поэтому их адреса не составляют какой-либо таблицы, каждый надо смотреть отдельно. Эти адреса я никуда не выписывал.

максимальное количество колодцев на зону - Вроде 0x64087C, 4 байта.
Сделал патчик https://disk.yandex.ru/d/3vLhDQy5QKdwIg и кол-во колодцев стало сильно больше. Он, правда, работал кривовато, колодцев генерировалось штук 5 на зону, что явный перебор.

М.б. это поможет
(30.10.2023 01:33)Ivor Wrote: [ -> ]М.б. это поможет

Спасибо за подсказку. Добавил в эту таблицу Тифона все новые объекты. Должно помочь.
Поиграл немного в мод. Найденные баги:
1. На сгенерированных рандомках новые подвиды врат подземки генерятся где попало, а не на тех землях, где они разрешены

2. При выборе карты сгенеренной рандомки через Случайная карта - Сгенерированные карты все фракции отображаются как Замок

3. Скелеты-Войны
Image: 2023-11-04-22-32-22.png
HOTRAITS.TXT Расса

4. Изменения ряда героев вызывают глубокое недоумение. Тирис надо вообще переименовать в Табула раса Sm
Image: 2023-11-04-18-14-07.png
(02.11.2023 00:04)Ivor Wrote: [ -> ]1. На сгенерированных рандомках новые подвиды врат подземки генерятся где попало, а не на тех землях, где они разрешены

В данный момент это невозможно исправить. Можно только исключить разномастные Врата из генератора, оставив только содовские. Возможно, в будущих версиях найдётся решение.

(02.11.2023 00:04)Ivor Wrote: [ -> ]2. При выборе карты сгенеренной рандомки через Случайная карта - Сгенерированные карты все фракции отображаются как Замок

У меня нет адресов на данное меню в игре. Найти и исправить проверку на лимит городов там не удалось.

(02.11.2023 00:04)Ivor Wrote: [ -> ]3. Скелеты-Войны

Исправил.

(02.11.2023 00:04)Ivor Wrote: [ -> ]4. Изменения ряда героев вызывают глубокое недоумение. Тирис надо вообще переименовать в Табула раса Sm

Использованный в ERA+ русификатор не идеален. С правками русификации/англоизации вообще никто в моде не занимается. Помогать желающих нет, увы. 105

(02.11.2023 00:04)Ivor Wrote: [ -> ]5. Игра вылетела на ходу ИИ. Но, м.б., это из-за того, что обновил версию Era+ на последнюю из первого поста темы.

Там либо установить последний патч (https://vk.com/doc-118013293_669311748), либо убрать у Сфинксов в редакторе монстров способность воскрешать нежить и начать карту заново. Переброска кода с Тифона 2.9 попортило много крови, и не только мне.
Reference URL's