Объявления

Друзья, если не получается зарегистрироваться, напишите на почту vdv_forever@bk.ru.
Я оторву свою задницу от всех дел и обязательно Вас активирую! :smile10:
Добро пожаловать на геройский форум! :smile25:

Неточности и дополнения!

В этом разделе можно оставить свои наблюдения и замечания по справочнику, а также высказать предложения по его совершенствованию и наполнению. Вся информация этого раздела будет скрупулезно рассматриваться и по мере сил и времени добавляться в справочник
offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5518
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2147 раз.

Re: Неточности и дополнения!

Сообщение AlexSpl » 16 дек 2022, 00:09

Цитата:
Приключения духов стихий в Героях 3. Уровни везде указаны разные.
(механика SoD - справка редактора карт SoD - Механика RoE - справка редактора карт RoE)
Духи воздуха: 2 - 2 - 4 - 3
Духи бури: 2 - 2
Духи воды: 3 - 3 - 4 - 3
Духи льда: 4 - 3
Духи огня: 4 - 4 - 4 - 3
Духи энергии: 5 - 4
Духи земли: 5 - 5 - 5 - 4 (тем не менее, жилище в RoE не охраняется)
Духи магмы: 3(!) - 5
С одной стороны, известные вещи, с другой стороны - мало ли где что написано. Проверил на шариках MON и с помощью героев-специалистов по магии. Исправил описание домиков на карте приключений.

До появления Conflux все 4 вида элементалей были нейтральными существами и, как мне всегда казалось, имели 4-й уровень. Это действительно интересно, что Элементали Земли имеют 5-й. В AB элементали стали жить в Conflux, заняв уровни 2 - 5. Также у них появились грейды. Справку редактора карт я бы не стал считать надёжным источником информации, как и мануал (редактор карт и мануал создавались до выхода игры в свет и точно до последних патчей), а вот уровень элементалей для героев-специалистов - это уже надёжнее. Даже не верится, что Элементали Магмы считаются существами 3-го уровня. У SoD-овских элементалей есть косяки (например, с присоединением), но чтоб грейд оказался на 2 уровня ниже оригинального существа. Определённо баг. Как Вы, кстати, проверяли?
Вернуться к началу

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1029
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 611 раз.

Re: Неточности и дополнения!

Сообщение Владимир » 16 дек 2022, 00:19

ИзображениеИзображение
Алагар (воздушных и земляных) и Димер (водяных и огненных) - оба высокого уровня, с помощью ударной магии.
Ну и шарики MON1 - MON7 ставил.
Проверял в RoE 1.0 и SoD 3.2.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5518
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2147 раз.

Re: Неточности и дополнения!

Сообщение AlexSpl » 16 дек 2022, 00:28

Сопротивляемости учитывали? У Алагара ещё и вторичный навык Sorcery имеется.
Последний раз редактировалось AlexSpl 16 дек 2022, 00:29, всего редактировалось 1 раз.
Вернуться к началу

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1029
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 611 раз.

Re: Неточности и дополнения!

Сообщение Владимир » 16 дек 2022, 00:29

Именно. Бил тем, к чему нет ни уязвимости, ни иммунитета.
Набор вторичных навыков был изменён. У героев не было Sorcery.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5518
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2147 раз.

Re: Неточности и дополнения!

Сообщение AlexSpl » 16 дек 2022, 00:32

Нужно это дело расследовать :smile2: В коде расчёта урона для ударной магии специалистов точно будет фигурировать правильный уровень (т.е. тот, который реально в игре).
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5518
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2147 раз.

Re: Неточности и дополнения!

Сообщение AlexSpl » 16 дек 2022, 09:17

Да, действительно, уровни Magma, Storm и Energy Elementals перепутаны: 3, 4 и 5, а должно быть 5, 3 и 4 соответственно. Собственно, в FizMiG'е есть (стр. 137 pdf-версии 2.89):

Цитата:
2 – На самом деле Ледяные элементали считаются во внутриигровых расчётах как существа 4 уровня, Энергетические – 5 уровня, а Магмовые – 3 уровня (баг).
Исправлен в HotA. Уровень любого существа можно проверить, например, действием заклинания от героя-специалиста по нему.


Вот полный список уровней существ (второе значение + 1):

 Уровни существ в SoD
<eTownCastle, 0, offset aPike, offset aCpkman_def,\
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownCastle, 0, offset aHalb, offset aChalbd_def,\
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownCastle, 1, offset aLcrs, offset aClcbow_def,\
CF_SHOOTING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownCastle, 1, offset aHcrs, offset aChcbow_def,\
CF_SHOOTING_ARMY or CF_ALIVE or CF_TWO_ATTACKS, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownCastle, 2, offset aGrif, offset aCgriff_def,\
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownCastle, 2, offset aRgrf, offset aCrgrif_def,\
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownCastle, 3, offset aSwrd, offset aCsword_def,\
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownCastle, 3, offset aCrus, offset aCcrusd_def,\
CF_ALIVE or CF_TWO_ATTACKS, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownCastle, 4, offset aMonk, offset aCmonkk_def,\
CF_SHOOTING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownCastle, 4, offset aZelt, offset aCzealt_def,\
CF_SHOOTING_ARMY or CF_ALIVE or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownCastle, 5, offset aCava, offset aCcavlr_def,\
CF_DOUBLE_WIDE or CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownCastle, 5, offset aChmp, offset aCchamp_def,\
CF_DOUBLE_WIDE or CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownCastle, 6, offset aAngl, offset aCangel_def,\
CF_FLYING_ARMY or CF_ALIVE or CF_KING_2, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownCastle, 6, offset aAagl, offset aCrangl_def,\
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE or CF_KING_2,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownRampart, 0, offset aCntr, \
offset aCcentr_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownRampart, 0, offset aEcnt, \
offset aCecent_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownRampart, 1, offset aDwrf, \
offset aCdwarf_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownRampart, 1, offset aBdrf, \
offset aCbdwar_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownRampart, 2, offset aWelf, offset aCelf_def, \
CF_SHOOTING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownRampart, 2, offset aGelf, \
offset aCgrelf_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_TWO_ATTACKS, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownRampart, 3, offset aPega, \
offset aCpegas_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownRampart, 3, offset aApeg, \
offset aCapegs_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownRampart, 4, offset aTree, offset aCtree_def,\
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownRampart, 4, offset aBtre, \
offset aCbtree_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownRampart, 5, offset aUnic, \
offset aCunico_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownRampart, 5, offset aWunc, \
offset aCwunic_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownRampart, 6, offset aGrdr, \
offset aCgdrag_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownRampart, 6, offset aGodr, \
offset aCddrag_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownTower, 0, offset aAgrm, offset aCgrema_def, \
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownTower, 0, offset aMgrm, offset aCgremm_def, \
CF_SHOOTING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownTower, 1, offset aSgrg, offset aCgargo_def, \
CF_FLYING_ARMY, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0>
<eTownTower, 1, offset aOgrg, offset aCogarg_def, \
CF_FLYING_ARMY, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0>
<eTownTower, 2, offset aSglm, offset aCsgole_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownTower, 2, offset aIglm, offset aCigole_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownTower, 3, offset aMage, offset aCmage_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownTower, 3, offset aAmag, offset aCamage_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_SHOOTS_RAY or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownTower, 4, offset aGeni, offset aCgenie_def, \
CF_FLYING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownTower, 4, offset aCalf, offset aCsulta_def, \
CF_FLYING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownTower, 5, offset aNsen, offset aCnaga_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_FREE_ATTACK, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownTower, 5, offset aNgrd, offset aCnagag_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_FREE_ATTACK, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownTower, 6, offset aLtit, offset aCltita_def, \
CF_ALIVE or CF_KING_3 or CF_IMMUNE_TO_MIND_SPELLS,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownTower, 6, offset aGtit, offset aCgtita_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_KING_3 or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownInferno, 0, offset aImpp, offset aCimp_def, \
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownInferno, 0, offset aFmlr, \
offset aCfamil_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownInferno, 1, offset aGogg, offset aCgog_def, \
CF_SHOOTING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownInferno, 1, offset aMgog, \
offset aCmagog_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_FIREBALL_ATTACK,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownInferno, 2, offset aHhnd, \
offset aChhoun_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownInferno, 2, offset aCerb, \
offset aCcerbu_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_FREE_ATTACK or CF_MULTI_HEADED,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownInferno, 3, offset aShdm, \
offset aCohdem_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownInferno, 3, offset aDhdm, \
offset aCthdem_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownInferno, 4, offset aPfnd, \
offset aCpfien_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownInferno, 4, offset aPfoe, offset aCpfoe_def,\
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownInferno, 5, offset aEfrt, \
offset aCefree_def, \
CF_FLYING_ARMY or CF_ALIVE or CF_IMMUNE_TO_FIRE_SPELLS,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownInferno, 5, offset aEsul, \
offset aCefres_def, \
CF_FLYING_ARMY or CF_ALIVE or CF_IMMUNE_TO_FIRE_SPELLS,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownInferno, 6, offset aDevl, \
offset aCdevil_def, \
CF_ALIVE or CF_KING_2 or CF_FREE_ATTACK, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownInferno, 6, offset aAdvl, \
offset aCadevl_def, \
CF_ALIVE or CF_KING_2 or CF_FREE_ATTACK, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownNecropolis, 0, offset aSkel, \
offset aCskele_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 0, offset aSklw, \
offset aCwskel_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 1, offset aZomb, \
offset aCzombi_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 1, offset aZmbl, \
offset aCzomlo_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 2, offset aWght, \
offset aCwight_def, \
CF_FLYING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 2, offset aWrth, \
offset aCwrait_def, \
CF_FLYING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 3, offset aVamp, \
offset aCvamp_def, \
CF_FLYING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_FREE_ATTACK or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 3, offset aNosf, \
offset aCnosfe_def, \
CF_FLYING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_FREE_ATTACK or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 4, offset aLich, \
offset aClich_def, \
CF_SHOOTING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD or CF_FIREBALL_ATTACK,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 4, offset aPlch, \
offset aCplich_def, \
CF_SHOOTING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD or CF_FIREBALL_ATTACK,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 5, offset aBknt, \
offset aCbknig_def, \
CF_DOUBLE_WIDE or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 5, offset aBlrd, \
offset aCblord_def, \
CF_DOUBLE_WIDE or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 6, offset aBodr, \
offset aCndrgn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_KING_1 or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNecropolis, 6, offset aGhdr, \
offset aChdrgn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_KING_1 or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownDungeon, 0, offset aTrog, \
offset aCtrogl_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownDungeon, 0, offset aItrg, \
offset aCitrog_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownDungeon, 1, offset aHarp, \
offset aCharpy_def, CF_FLYING_ARMY or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownDungeon, 1, offset aHhag, \
offset aCharph_def, \
CF_FLYING_ARMY or CF_ALIVE or CF_FREE_ATTACK, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownDungeon, 2, offset aBhdr, \
offset aCbehol_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_SHOOTS_RAY or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownDungeon, 2, offset aEvli, \
offset aCeveye_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_SHOOTS_RAY or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownDungeon, 3, offset aMedu, \
offset aCmedus_def, \
CF_DOUBLE_WIDE or CF_SHOOTING_ARMY or CF_ALIVE or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownDungeon, 3, offset aMedq, \
offset aCmeduq_def, \
CF_DOUBLE_WIDE or CF_SHOOTING_ARMY or CF_ALIVE or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownDungeon, 4, offset aMino, \
offset aCminot_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownDungeon, 4, offset aMink, \
offset aCminok_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownDungeon, 5, offset aMant, \
offset aCmcore_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownDungeon, 5, offset aScrp, \
offset aCcmcor_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownDungeon, 6, offset aRddr, \
offset aCrdrgn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownDungeon, 6, offset aBkdr, \
offset aCbdrgn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_IMMUNE_TO_MIND_SPELLS or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownStronghold, 0, offset aGbln, \
offset aCgobli_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownStronghold, 0, offset aHgob, \
offset aChgobl_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownStronghold, 1, offset aGwrd, \
offset aCbwlfr_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownStronghold, 1, offset aHgwr, \
offset aCuwlfr_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_TWO_ATTACKS, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownStronghold, 2, offset aOorc, \
offset aCorc_def, CF_SHOOTING_ARMY or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownStronghold, 2, offset aOrcc, \
offset aCorcch_def, CF_SHOOTING_ARMY or CF_ALIVE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownStronghold, 3, offset aOgre, \
offset aCogre_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownStronghold, 3, offset aOgrm, \
offset aCogmag_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownStronghold, 4, offset aRocc, \
offset aCroc_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownStronghold, 4, offset aTbrd, \
offset aCtbird_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownStronghold, 5, offset aCcyc, \
offset aCcyclr_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_CATAPULT, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownStronghold, 5, offset aCycl, \
offset aCcycllor_def, \
CF_SHOOTING_ARMY or CF_ALIVE or CF_CATAPULT, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownStronghold, 6, offset aYbmh, \
offset aCybehe_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_KING_1, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownStronghold, 6, offset aBmth, \
offset aCabehe_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_KING_1, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownFortress, 0, offset aGnol, \
offset aCgnoll_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownFortress, 0, offset aGnlm, \
offset aCgnolm_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownFortress, 1, offset aPliz, \
offset aCpliza_def, CF_SHOOTING_ARMY or CF_ALIVE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 1, offset aAliz, \
offset aCaliza_def, CF_SHOOTING_ARMY or CF_ALIVE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 4, offset aCgor, \
offset aCcgorg_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 4, offset aBgor, \
offset aCbgog_def, CF_DOUBLE_WIDE or CF_ALIVE, 0,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownFortress, 2, offset aDfly, \
offset aCdrfly_def, CF_FLYING_ARMY or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 2, offset aFdfl, \
offset aCdrfir_def, CF_FLYING_ARMY or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 3, offset aBasl, \
offset aCbasil_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 3, offset aGbas, \
offset aCgbasi_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 5, offset aWyvn, \
offset aCwyver_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownFortress, 5, offset aWyvm, \
offset aCwyvmn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownFortress, 6, offset aHydr, \
offset aChydra_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_KING_1 or CF_FREE_ATTACK or CF_MULTI_HEADED,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownFortress, 6, offset aChyd, \
offset aCchydr_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_KING_1 or CF_FREE_ATTACK or CF_MULTI_HEADED,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 1, offset aAelm, \
offset aCaelem_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 4, offset aEelm, \
offset aCeelem_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 3, offset aFelm, \
offset aCfelem_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_IMMUNE_TO_FIRE_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 2, offset aWelm, \
offset aCwelem_def, \
CF_DOUBLE_WIDE or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 4, offset aGglm, \
offset aCggole_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownNeutral, 5, offset aDglm, \
offset aCdgole_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 0, offset aPixi, \
offset aCpixie_def, CF_FLYING_ARMY or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 0, offset aSprt, \
offset aCsprite_def, \
CF_FLYING_ARMY or CF_ALIVE or CF_FREE_ATTACK, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0>
<eTownConflux, 5, offset aPsyc, \
offset aCpsyel_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_FREE_ATTACK or CF_NO_MORALE or CF_MULTI_HEADED,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 5, offset aMgel, \
offset aCmagel_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_FREE_ATTACK or CF_NO_MORALE or CF_MULTI_HEADED,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 0FFFFFFFFh, offset aBad1, \
offset aBad1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 3, offset aIcel, offset aCicee_def,\
CF_DOUBLE_WIDE or CF_SHOOTING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 0FFFFFFFFh, offset aBad2, \
offset aBad2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 2, offset aMagm, \
offset aCstone_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 0FFFFFFFFh, offset aBad3, \
offset aBad3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 1, offset aStor, \
offset aCstorm_def, \
CF_SHOOTING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 0FFFFFFFFh, offset aBad4, \
offset aBad4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\
0, 0, 0, 0, 0, 0, 0>
<eTownConflux, 4, offset aEner, offset aCnrg_def, \
CF_FLYING_ARMY or CF_IMMUNE_TO_MIND_SPELLS or CF_IMMUNE_TO_FIRE_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 6, offset aFirb, \
offset aCfbird_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_IMMUNE_TO_FIRE_SPELLS,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownConflux, 6, offset aPhoe, offset aCphx_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_IMMUNE_TO_FIRE_SPELLS,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 6, offset aAzur, \
offset aCadrgn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 6, offset aCrys, \
offset aCcdrgn_def, \
CF_DOUBLE_WIDE or CF_ALIVE or CF_KING_1 or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 6, offset aFaer, \
offset aCfdrgn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_ALIVE or CF_KING_1 or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 6, offset aRust, \
offset aCrsdgn_def, \
CF_DOUBLE_WIDE or CF_FLYING_ARMY or CF_HAS_EXTENDED_ATTACK or CF_ALIVE or CF_KING_1 or CF_DRAGON,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 5, offset aEnch, offset aCench_def,\
CF_SHOOTING_ARMY or CF_ALIVE or CF_NO_MELEE_PENALTY,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 3, offset aHcrs, \
offset aCsharp_def, CF_SHOOTING_ARMY or CF_ALIVE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 0, offset aHalf, offset aChalf_def,\
CF_SHOOTING_ARMY or CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownNeutral, 0, offset aPsnt, offset aCpeas_def,\
CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0>
<eTownNeutral, 1, offset aBoar, offset aCboar_def,\
CF_DOUBLE_WIDE or CF_ALIVE, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownNeutral, 2, offset aMumy, \
offset aCmummy_def, \
CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE or CF_UNDEAD,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 2, offset aNmad, \
offset aCnomad_def, CF_DOUBLE_WIDE or CF_ALIVE, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 1, offset aAgrm, \
offset aCrogue_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownNeutral, 4, offset aTrll, \
offset aCtroll_def, CF_ALIVE, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
<eTownNeutral, 0, offset aCata, \
offset aSmcata_def, \
CF_DOUBLE_WIDE or CF_SHOOTING_ARMY or CF_CATAPULT or CF_SIEGE_WEAPON or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 4, offset aBall, offset aSmbal_def,\
CF_DOUBLE_WIDE or CF_SHOOTING_ARMY or CF_SIEGE_WEAPON or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MELEE_PENALTY or CF_FREE_ATTACK or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 0, offset aFaid, \
offset aSmtent_def, \
CF_DOUBLE_WIDE or CF_SIEGE_WEAPON or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 0, offset aCart, \
offset aSmcart_def, \
CF_SIEGE_WEAPON or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
<eTownNeutral, 0, offset NullString, \
offset NullString, \
CF_SHOOTING_ARMY or CF_SIEGE_WEAPON or CF_IMMUNE_TO_MIND_SPELLS or CF_NO_MORALE,\
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0>
Вернуться к началу

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1029
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 611 раз.

Re: Неточности и дополнения!

Сообщение Владимир » 16 дек 2022, 10:01

У Storm всё нормально. Ненормально у Ice.
Если это записано в txt-шке, то я исправлю. Если в Heroes3.exe - тоже хотелось бы, но придётся искать адреса.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5518
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2147 раз.

Re: Неточности и дополнения!

Сообщение AlexSpl » 16 дек 2022, 10:12

Цитата:
У Storm всё нормально. Ненормально у Ice.

Да, точно. Повезло только им :smile1:

Цитата:
Если это записано в txt-шке, то я исправлю. Если в Heroes3.exe - тоже хотелось бы, но придётся искать адреса.

Начиная с адреса 0x2703B8 в исполняемом файле на диске (SoD 3.2 EN). Размер каждой записи 0x74 = 116 байт. Сама запись:

Код: Выделить всё
struct TCreatureTypeTraits
{
  enum TTownType townType;
  int level;
  const char *cSamplePrefix;
  const char *m_sprite_name;
  creature_flags attributes;
  const char *m_name;
  const char *m_plural_name;
  const char *special_ability;
  int cost[7];
  int baseFightValue;
  int AI_value;
  int growthRate;
  int horde_growth_rate;
  int hitPoints;
  int speed;
  int attackSkill;
  int defenseSkill;
  int damageLowBound;
  int damageHighBound;
  int numShots;
  int hasSpell;
  int wanderingLow;
  int wanderingHigh;
};

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

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1029
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 611 раз.

Re: Неточности и дополнения!

Сообщение Владимир » 16 дек 2022, 15:00

Всё получилось!
273B78: 03->02
273C60: 02->04
273E30: 04->03
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5518
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2147 раз.

Re: Неточности и дополнения!

Сообщение AlexSpl » 04 сен 2023, 09:43

Страница https://handbookhmm.ru/kings-bounty

Цитата:
Игра получила большое признание у многочисленных поклонников, а также множество призов, как от Интернет ресурсов, так и печатных изданий. Я бы одним словом охарактеризовал игру — шедевр! Впрочем, смотрите сами:

Смотрите сами... и вместо актуального видео игрового процесса мы видим промо-ролик версии игры 2006-го (!) года :smile20:

Внизу страницы в таблице горячих клавиш опечатка (Spase вместо Space). И неплохо было бы апостроф везде поставить в названии игры, а то даже на кнопке без (Kings Bounty).
Вернуться к началу

Пред.След.

Вернуться в Предложения и замечания

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1