Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Master of Puppets (v.3.07 Battery)
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III > Моды
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22
Iv
Цитата(MasterOfPuppets @ 24 Aug 2016, 17:10) *
Над идеей Игрика думаю. По сути, это смахивает на интерфейсное улучшение, но в то же время и Толич прав - больно хитро прятать артефакты таким макаром от компьютера, пусть он даже будет их получать вместе с городом. Можно было бы городской реликвией впилить, но я не люблю реликвии, использующиеся только человеком, и очень горжусь тем, что AI использует все мною созданные, кроме Креста Бафомета (который AI просто не нужен, а, возможно, даже вреден).
Но, блин, так хочется самому иметь такой схрон в городе! Iv, где ты? Помоги решить. pray.gif

Мне кажется не очень логичным привязывать обычные артефакты к городу, даже только для хранения. И не очень понимаю, почему нельзя использовать героя в качестве хранителя артефактов, разместив его в городе.
igrik
Крест Бафомета жертвенный алтарь отображает с косяками. Может и не у меня одного.


Цитата(Iv)
Мне кажется не очень логичным привязывать обычные артефакты к городу, даже только для хранения

На счет логичности бы поспорил, но хозяин - барин)
MasterOfPuppets
Цитата(igrik @ 24 Aug 2016, 19:04) *
Крест Бафомета жертвенный алтарь отображает с косяками. Может и не у меня одного.

Скорее, у тебя одного. Проверь Алтарь Жертвоприношений на карте. Если и там так - значит, с игровыми ресурсами беда какая-то.

В принципе, героя-домоседа вполне хватает. А если рюкзак забит - так Мешок в помощь, а то, что его сторожить надо - такова уж цена богатства...
igrik
Цитата(MasterOfPuppets)
Скорее, у тебя одного. Проверь Алтарь Жертвоприношений на карте. Если и там так - значит, с игровыми ресурсами беда какая-то.

Да у меня. Странно, ведь я ничего не менял.
MasterOfPuppets
Попробуй нормальный AltarMon.bmp. Или свой покажи.
igrik
На твой заменил - все ок. Хотя в своём ничего "плохого" не увидел.
Нажмите для просмотра прикрепленного файла
MasterOfPuppets
А так просто и не увидишь (слева - твой, справа - мой):


У меня всегда была подобная проблема, когда я Полное Собрание устанавливал - в Торговцах Артефактами все экраны в цвета игрока не окрашивались. Потом я их через DefTool пропустил и в архив положил, чтоб сразу можно было заменять после очередной установки.
Iv
Цитата(igrik @ 24 Aug 2016, 18:04) *
На счет логичности бы поспорил, но хозяин - барин)

Можно и поспорить, при желании wink.gif

В общем-то, ничего не мешает оставлять артефакты в городе, но чем это отличается от выкидывания их в мешке рядом с городом? Так что в оставлении артефактов смысла не вижу. Зато выглядит логичной продажа артефактов в городе, причем с временным хранением. Вижу это так:
В окно рынка добавляется новая кнопка продажи артефактов. Кнопка доступна только из города с героем внутри, с карты или из города без героя доступа к ней нет.
По её нажатию открывается окно продажи артефактов. Надо прикинуть, как оно может выглядеть. По идее, оно должно содержать 3 части: окно героя и/или рюкзака, окно проданных артефактов, окно ресурсов, за которые продаются артефакты. По умолчанию выбрано золото.

Проданные артефакты сохраняются в окне проданных, пока их не выкупили обратно или пока они не вытесняются свежепроданными
MasterOfPuppets
Ломбард? Хм, я что-то не представляю, когда он может мне понадобиться. Хотя идея хороша.

А хотя... нравится всё больше и больше.
igrik
Цитата(Iv @ 24 Aug 2016, 18:03) *
Можно и поспорить, при желании

В общем-то, ничего не мешает оставлять артефакты в городе, но чем это отличается от выкидывания их в мешке рядом с городом? Так что в оставлении артефактов смысла не вижу.

Как раз-то с точки зрения логики, логичней ценные вещи хранить в здании, а не на слабом персе. Даже если замок забрали, и лошка отобрали все арты, не факт, что хранилище после возварата замка будет пустое. К тому же я не люблю, когда какой-нить Вася сидит без дела в замке. Но это уже личный "бжик".
С точки зрения геройского привычного геймплея, данная надобность неактуальна, потому что стандартного функционала достаточно (лошок домосед). И я это прекрасно понимаю.

На счет лобмарда - довольно интересное решение.
Iv
Цитата(igrik @ 24 Aug 2016, 20:00) *
Цитата(Iv @ 24 Aug 2016, 18:03) *
Можно и поспорить, при желании

В общем-то, ничего не мешает оставлять артефакты в городе, но чем это отличается от выкидывания их в мешке рядом с городом? Так что в оставлении артефактов смысла не вижу.

Как раз-то с точки зрения логики, логичней ценные вещи хранить в здании, а не на слабом персе. Даже если замок забрали, и лошка отобрали все арты, не факт, что хранилище после возварата замка будет пустое.

Согласен. Я с этого и начал свою цепочку рассуждений. Логично хранить артефакты в здании? Логично. Значит, нужно какое-то здание. Новое здание только ради этой функции? Жирно как-то.. А если одно из существующих? А какое? Рынок, например. Но в этом случае зачем просто так хранить? Лучше продавать ненужные, а потом выкупать.

Цитата(igrik @ 24 Aug 2016, 20:00) *
К тому же я не люблю, когда какой-нить Вася сидит без дела в замке. Но это уже личный "бжик".

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


Цитата(MasterOfPuppets @ 24 Aug 2016, 19:17) *
Ломбард? Хм, я что-то не представляю, когда он может мне понадобиться. Хотя идея хороша.

А хотя... нравится всё больше и больше.

У меня очень часто в начале игры попадаются какие-то мелкие и совершенно ненужные артефакты. Например подвеска некромантии, которой я не пользуюсь, и т.д.
igrik
MasterOfPuppets, подскажи структуру командиров и адрес структуры.
MasterOfPuppets
Адрес - 0x128*Номер героя+0x28620C0.
Структура из вогосорцев (npc.cpp):
CODE
class NPC{
public:
int Used;
int Dead;
int Number;
int Type,HType;
int LastExpoInBattle;
struct{
unsigned CustomPrimary : 1; // Пользователь сам контролирует параметры
// unsigned NoHeroOwner : 1; // нет хозяина героя (3.58)
unsigned _reserved :31;
} Fl;
int Primary[7]/*At,Df,Hp,Dm,Mp,Sp,Mr*/;
// struct{
// Byte :1;
// } Flags;
int Skills[7];
short Arts[10][8];
char Name[32];
int OldHeroExp;
int Exp; // тек. опыт
int Level; // тек. уровень
Dword SpecBon[2];
int GetAvailableSpecBon(int);
static int Spec2Ind[15][2];
static int Bonus[7][5];
static int SpecBonus[7][5];
static char *BonusBmp[6][6];
static char *BonusArtBmp[6];
static char *BonusBmpA[6][6];
static char *SpecBonusBmp[6][6][4];
static char *SpecBonusText[6][6][2];
static char *SpecBonusPopUpText[6][6];
int FindSpecBonusBmp(int i,int j);
static char *NextBonusBmp[6][2];
static char *BonusText[6][6];
static char *BonusPopUpText[6][6];
static char *SpecBmp[9][2];
static char *SpecText[9][2];
static char *SpecHint[9][2];
int CalcSkill(int);
int CalculateSkills(int);
int MayNextSkill(int);
// static char *SkNames[7];
static char *Descr[9];
static char *Magics[9];
static _ZPrintf_ Hint[2];
static _ZPrintf_ Buffer,Buffer1;
static int Levels[100];
static int AISkillsChance[18][6];
void SetOldHeroExp(int Exp){ OldHeroExp=Exp; }
int GetExp(void){ return Exp; }
void AddExp(int,int); // добавить опыта
int GetNextLevel(void); // получить след ожид. уровень
NPC();
void Init(void);
void ToText(int,int=0,int=0);
char *ToHint(int);
static char *ArtPicNames[10];
static char ArtTextBuffer[10][512];
static int ArtIsPossible(int ArtNum);
int ArtMayHave(int ArtNum);
int ArtGetFreeSlot(int ArtNum);
int ArtDoesHave(int ArtNum);
int ArtCalcSkill(int Slot,int Skill);
int ArtInSlot(int ArtNum);
char *PrepareArtText(int Slot);
} NPCs[HERNUM],NPCsBack[HERNUM],NPCsa[2];

Sav
Цитата(Лорд Хаарт @ 17 Aug 2016, 10:18) *
Анимация стойки — это та, в отношении которой кое-кто недавно настаивал, что она вшита в код одного конкретного проекта и больше никуда вделана быть не может? xD.gif

Вообще-то, выдрать её из dll Хоты действительно очень трудно, если только исключить слив исходников, которго, я надеюсь, не было. Но никто не мешает реализовать независимо, что было сделано, например, в 3.59 ещё до Хоты (и, судя по спасибе sergroj, использовалось здесь). В Хоте фишка в том, что вся параллельная анимация работает одновременно с любыми, даже самыми сложными боевыми антмациями (вплоть до того, что вызываемый элементаль анимирует во время вызова), а это уже действительно сложно (местами), и попросту долго и муторно.
MasterOfPuppets
Лично я вообще не понимаю, чего люди носятся с этой анимацией. Мне она и непривычна, и неприятна - как в ХотЕ, так и в MoP. Поэтому когда я буду играть, то, скорее всего, удалю плагин в папке. Ну а в релизе он будет, потому что фаны просили.
XEPOMAHT
Хорошо бы ещё попросить адреса на биографию героя из структуры героя (та, что задаётся в редакторе карты - не могу найти способ загнать её в текстбуфер средствами WERD) и из файла HeroBios.txt (адресов для чтения текста оттуда так что-то и не нашёл) для вставки в диалог портрета.

tolich
К слову, она необязательно задаётся в редакторе, чаще берётся стандартная. И, насколько я помню WoG, это разные случаи.
XEPOMAHT
Цитата(tolich @ 30 Aug 2016, 10:24) *
К слову, она необязательно задаётся в редакторе, чаще берётся стандартная. И, насколько я помню WoG, это разные случаи.


Там как я понял, в структуре героя проверяется char BioCustomized;, если оно равно 0, то берётся стандартная (из struct _HeroBios_). Если там что-то другое, то нужно по каким-то адресам читать ту, которая задана игроком. Для корректного чтения биографии всё равно нужны адреса и на общую и на пользовательскую биографии.
igrik
для Эры. ХЗ пойдет ли на MoP
Код
!!UN:C6790272/4/?y4;
!!VRy5:S[номер героя] *40;
!!VRy6:Sy4 +36 +y5;
!!UN:Cy6/4/[ссылка на адрес текста со специализацией]; получить либо установить


Если использовать с чтением из ert файлов, то будет выглядеть так
Код
!!SN:E7824928/1/[номер z переменной];  получить адрес z переменной из ert файла
!!VRy1:Sv1;
!!UN:C6790272/4/?y4;
!!VRy5:S[номер героя] *40;
!!VRy6:Sy4 +36 +y5;
!!UN:Cy6/4/y1;
tolich
Цитата(XEPOMAHT @ 30 Aug 2016, 10:19) *
средствами WERD
igrik
Угу. Я видел.
MasterOfPuppets
Вот полная функция, учитывающая кастомную биографию:

Код
proc Получить_биографию_героя, HeroStr
    mov ecx, [HeroStr]
    cmp byte [ecx+3D9h], 0
    je @f
    mov eax, [ecx+3DEh]
  .if ~eax
    mov eax, 63A608h
  .endif
    ret
@@:
    mov ecx, [ecx+_Hero_.Номер]
    mov eax, [6A5820h]
    mov eax, [eax+20h]
    mov eax, [ecx*4+eax]
    ret
endp
igrik
Цитата(MasterOfPuppets @ 12 Aug 2016, 17:22) *
.....................................
Код
        mov edi, [Структура_живого_отряда_на_позиции]
   .if signed edi > -1
           mov ecx, COMBAT_MANAGER
           mov eax, [edi + Структура_стека.Принадлежность]
           mov edx, [edi + Структура_стека.Номер_стека]
        .if [ecx+combatManager.Тактическая_фаза] & eax = [ecx+combatManager.Ходящая_сторона] & [ecx+combatManager.Номер_отряда_в_строю] <> edx
           Передать_ход_отряду ecx, eax, edx
        .endif
   .endif

Как я понял, нужно еще добавить что-то типо этого в ExeFunc.inc?
Цитата
_thiscall, Передать_ход_отряду, 464F10h, 3,\; Структура стека; номер стороны; номер стека у стороны

Но я совсем не понимаю назначение параметров после адреса 464F10h, 3,\;
MasterOfPuppets
Цитата(igrik @ 30 Aug 2016, 12:40) *
Как я понял, нужно еще добавить что-то типо этого в ExeFunc.inc?
Код
_thiscall, Передать_ход_отряду, 464F10h, 3,\;                                            Структура стека; номер стороны; номер стека у стороны

Да, только не структура стека, а combatManager.
Цитата(igrik @ 30 Aug 2016, 12:40) *
Но я совсем не понимаю назначение параметров после адреса 464F10h, 3,\;

Там в начале таблицы указано:
Цитата
; БИБЛИОТЕКА ПЕРЕХОДНИКОВ К ИГРОВЫМ ФУНКЦИЯМ
; Соглашение, название, адрес в MoP.exe, количество параметров (для ccall - -1(переменное количество))

По идее, изначально в WERD при неверном количестве параметров функции должно было показываться сообщение об ошибке. Но в итоге мне так часто понадобилось вызывать процедуры, проталкивая в них аргументы заранее, что это утратило всякий смысл. Пример:
Код
push eax <- эти регистры будут затёрты...
push ecx <- ...так что пушим их в Функцию_1 заранее
Функция_2 ecx, esi <- вызов Функции_2, которая не сохранит ecx и eax
Функция_1 edi <- вызов Функции_1 (аргументы ecx и eax уже в неё протолкнуты, edi толкается сейчас)

То есть, у Функции_1 три аргумента, но вызов идёт таким образом, что кажется, будто он один. Тут-то механизм проверки и лажанётся, поэтому от него было решено отказаться, оставив памятку о кол-ве аргументов чисто для информации. Но эта информация очень важна и полезна.
igrik
Блин, так и не могу понять чего не хватает?
MasterOfPuppets
Это, надеюсь, есть в файле TRIGGERS\Клик в экране битвы.inc?
Цитата
.if Подтип_клика = Нажата_левая_кнопка_мыши
include 'WERD\Показ окна героя в битве\Показ.ASM'
include 'WERD\Воздушный Шар\Клик на отряде.ASM'
include 'WERD\Быстрая тактическая расстановка\Клик.ASM'
.endif
igrik
Конечно.
Я выполнил следующие этапы:
1. создал: Быстрая тактическая расстановка -> Клик.ASM (по тобой указанному коду)
2. Добавил include 'WERD\Быстрая тактическая расстановка\Клик.ASM' в "TRIGGERS\Клик в экране битвы.inc"
3. Походу дела пришел к выводу, что нет параметра "Передать_ход_отряду".
4. Добавил параметр _thiscall, Передать_ход_отряду, 464F10h, 3,\; предварительно посмотрев правилен ли этот адрес для MoP.exe

Нашел очепятку в STRUC -> combatManager.inc
Dword Номер_отряда_с_строю; 132BC
И в файле Быстрая тактическая расстановка -> Клик.ASM это подправил
MasterOfPuppets
Не должно быть ,\; после описания функции. Просто ; - это же конец таблицы. А вот после WinLoseGame - как раз ,\;
Слэш - это перенос на след. строку. По сути всю таблицу можно в одну строку записать, но это же неудобно.
igrik
Я и с ",\;" и без нее пробовал.
Пишет ошибку "error: illegal instruction"
Код
flat assembler  version 1.71.54  (1048576 kilobytes memory)
D:\igrik\Games\Heroes III MOP\Data\MoP\Soft\Fasm\INCLUDE\WerdDll\FUNCTIONS/ExeFunc.inc [345]:
_thiscall, Передать_ход_отряду, 464F10h, 3;                                            COMBAT_MANAGER; side (0 или 1); stack_on_side (0 ... 20)
error: illegal instruction.



upd: может что-то с путями. Попробую с твоим оригинальным путем поэксперементировать "Games\MoP\Data\MoP\Soft\FASM\include"
MasterOfPuppets
Так на скрине неправильно. Надо:

_thiscall, WinLoseGame, 4F3370h, 1,\;
_thiscall, Передать_ход_отряду, 464F10h, 3;
igrik
Скрин чуток успел устареть blush.gif
MasterOfPuppets
Будь с путями непорядок, так до компиляции и дело бы не дошло. Ошибка только в слэшах и запятых. Добавь новую процедуру не в конец, а куда-нибудь посреди старых.
XEPOMAHT
Ещё нужно как-то активировать код вывода биографии Командира в MOP:

Код
; УДАЛЕНО ИЗ_ЗА НЕСООТВЕТСТВИЯ ИМЁН ГЕРОЕВ В БИОГРАФИИ РЕАЛЬНЫМ ИМЕНАМ В МОДЕ
; Показ биографии:
Biography equ dword [2860524h]
         .if Номер_активного_элемента_текущего_диалога = 6666
                        fn Игровое_сообщение_без_картинок, Biography, ebx
                        ret
         .endif
restore Biography


компилятор начинает ругаться на универсальный вызов любой функции, обладающей прототипом - fn, в Conventions.inc. MasterOfPuppets, помогите разобраться.
igrik
Йошкарлы! Получилось. Спасибо!
Ошибка была в отсутствии слеша тут _thiscall, WinLoseGame, 4F3370h, 1,\; Видимо после моих экспериментов.
Теперь я с быстрой тактикой brags.gif
MasterOfPuppets
igrik, biggrin.gif

XEPOMAHT, это старый усложнённый код. Просто заменить "fn Игровое_сообщение_без_картинок," на "Message" (универсальный макрос игрового сообщения).
igrik
MasterOfPuppets, с помощью быстрой тактической расстановки можно перемещать военные машины:
- двигаются: воздушный шар и тележка с боеприпасами (хотя это можно оставить как фичу к тактике)
- не двигаются и не вылетает игра: палатка первой помощи
- не двигаются и вылетает игра: катапульта и баллиста (а это надо лечить)

т.е. в данном примере, я легко могу блокировать ворота военной техникой

Походу всё-таки нужно добавить проверку на тип существ.
И еще, почему-то при осаде замка не появляется баллиста. Хотя у героя защитника она есть в наличии, а также есть навык артиллерии
MasterOfPuppets
Цитата(igrik @ 30 Aug 2016, 22:01) *
Походу всё-таки нужно добавить проверку на тип существ.

А, ну да:
Код
...
        bt [edi + Структура_стека.Флаги], Флаг_Боевая_Машина
     .if ~CARRY? & [ecx+combatManager.Тактическая_фаза] & eax = [ecx+combatManager.Ходящая_сторона] & [ecx+combatManager.Номер_отряда_в_строю] <> edx
        Передать_ход_отряду ecx, eax, edx
...

Цитата(igrik @ 30 Aug 2016, 22:01) *
И еще, почему-то при осаде замка не появляется баллиста. Хотя у героя защитника она есть в наличии, а также есть навык артиллерии

Так и в оригинале не появляется, о чём написано в ФизМиге.
MasterOfPuppets
НОВОСТИ

209. Исправлены ошибки с опытом существ, чей номер превосходит 255.
210. Окно Торговцев Артефактами теперь можно открыть даже если в городе нет героя-гостя. При этом в диалоге будут отсутствовать кнопки «Купить» и «Продать артефакты».
211. Выставлен позабытый в предыдущих версиях апгрейд: Фанатик -> Фанатик Войны.
212. Заменена графика городских реликвий: Солнечный Круг Маликут, Символ Наири-о-Наори, Искрящийся Жезл Нуозафала, Книга Древних, Винтари-дин-Зинвари (в последнем случае произошло переименование реликвии в «Кубок Дарумонга»).
213. Заменены портреты ещё некоторых героев (Зендор, Гарлон, Табита).
214. Разрешено присоединение существ Дипломатией при включенной опции «Смешанные нейтралы» (присоединяется лишь заглавный отряд).
215. Каждый месяц в игре теперь – «месяц монстра». Монстром месяца может стать любое незапрещённое существо не выше 6-го уровня.
216. Появляющиеся в «месяц монстра» существа на карте также становятся смешанными нейтралами, если включена соответствующая опция.
217. Окно героя в битве открывается теперь по ПКМ на нём, что сохраняет стандартное действие по ЛКМ (открыть книгу заклинаний).
218. Редактор карт мода не затирает файлов редактора WoG и других дополнений, которые могут быть с ним в одной папке.

Начиная с этого момента каждую минуту можно ожидать, что вновь распахнутся ворота Ангбанда и чёрные орды Моргота хлынут на просторы Арды, чтобы начать Третью Битву... Проще говоря, начался мой отпуск.
igrik
Код
00462C31 06

COMBAT01.mp3 - COMBAT06.mp3
Оказывается и на MoP можно применить дополнительную боевую музыку. Шикен-блескен! punk.gif
А вот на ERA такой трюк не походит (токо через скрипт).
MasterOfPuppets
Хм, а что в ЭРЕ не так?
igrik
[off]Я долгое время думал что с эрой не так, но сейчас покопав выяснил, что при влюченном твике HD <Sound.Async> = 1 (распаралеливание звуков) игра почему-то всегда воспроизводит только COMBAT01.mp3 - COMBAT04.mp3, хотя отладчик показывает, что call PlayMP3File3 принимает в себя и COMBAT06.mp3.
ХЗ короче, буду копать дальше...[/off]
igrik
MoP, при битве с нейтралами очень парят оковы войны. Хотелось бы иметь возможность сбегать от нейтралов. Все равно в данное время, если нужно сбежать мы грузим сейв, снимаем оковы и сбегаем при необходимости.
MasterOfPuppets
В принципе, да, самого не раз напрягало. Коль успею - сделаю. Сейчас просто по полной идёт подготовка к релизу.

У Брака появился третий бонус:

Это единственный бонус, отягощённый половым диморфизмом: процент к Нападению получает муж, а к Обороне - жена (жена вдохновляет, муж защищает). При этом не имеет значения, есть ли сам навык - бонус просто плюсуется. Спецухой он не усиливается. В Трауре бонус инвертирован.
Также, следуя пожеланиям Ива, заменил графику Обручалки - теперь оно поменьше и явно не Кольцо Всевластия.
В общем, меня радует, что фишка, которая не развивалась столь долго и которую я уже давно подумывал удалить из мода вообще, была буквально поднята из говна и стала полезной и красивой.
MasterOfPuppets
Цитата(igrik @ 02 Sep 2016, 10:44) *
MoP, при битве с нейтралами очень парят оковы войны. Хотелось бы иметь возможность сбегать от нейтралов.

Сделано. Там патчик-то ерундовый, хотя и для RtL неподходящий:


Код
; Оковы Войны (125 -> 795)
; функция проверки:
E4513 A120946900;          MOV EAX,DWORD PTR DS:[699420] - CombatManager
E4518 83B8AC54000000;      CMP DWORD PTR DS:[EAX+54AC],0 - есть ли хозяин у правой стороны
E451F 7D05;                JGE SHORT mop.004E4526 - есть
E4521 32C0;                XOR AL,AL - если нет, то как бы нет и артефакта
E4523 C20400;              RETN 4
E4526 681B030000;          PUSH 31B - Оковы Войны
E452B E8304FFFFF;          CALL mop.004D9460 - проверка наличия
E4530 C20400;              RETN 4

; Замена вызовов:
1E756 E8B85D0C00;            CALL mop.004E4513
1E76F E89F5D0C00;            CALL mop.004E4513
78DAE E860B70600;            CALL mop.004E4513
78DC3 E84BB70600;            CALL mop.004E4513
78EC8 E846B60600;            CALL mop.004E4513
78EDD E831B60600;            CALL mop.004E4513

MasterOfPuppets
Завершена работа над коррекцией мануала для Battery. Скачать и прочесть можно тут.
Сразу несколько людей вызвалось перевести мануал на английский (а то это единственная, но самая важная текстовая составляющая мода, отсутствие перевода которой сильно сокращает аудиторию мода за счёт утраты зарубежных игроков). Посмотрим, как пойдёт...
MasterOfPuppets
MasterOfPuppets
Последний выпуск новостей о Battery перед релизом
идёт активное, но закрытое бета-тестирование

219. Заменена графика Обручального Кольца. Кольцо стало поменьше в размерах.
220. Добавлен третий бонус Брака – проценты Нападения/Обороны в зависимости от пола супруга.
221. Оковы Войны не мешают побегу от монстров, не имеющих хозяина.
222. Рейд-боссы при включенной опции появляются в достаточно пустых областях карты в последний день каждого месяца.
223. Из редактора карт удалены несуществующие артефакты 195-199.
224. Увеличено количество требуемого опыта для достижения следующего ранга «сверхуровневыми» существами (файл MCREXPMOD.TXT). Лазурному Дракону требуется более всего (210000) очков, чтобы стать асом.
225. Герой может менять тип командира, пока у того ещё 1-ый уровень. Диалог выбора выводится при клике на иконке Командира в окне героя.
226. Заменена графика Пожирателя Душ.
227. Пожиратель Душ получил способность увеличивать Некромантию героя на 1% каждые свои 2 уровня. Действует и без наличия навыка Некромантии.
228. Исправлен баг: Колчан Стрел давал боеприпасы верхнему отряду противника.
229. На втором месяце уровень «монстра месяца» не превышает 4-го, если уровень сложности = 200%, и не превышает 5-го, если уровень сложности = 160% и ниже.
В дальнейшем генерируется монстр любого уровня от 1 до 6.
MasterOfPuppets
Итак, спустя более чем три года с начала разработки, большую часть из которых проект находился в наглухо замороженном состоянии, мы готовы представить Вам продолжение культовой модификации.

МИРОВОЙ РЕЛИЗ

Heroes of Might and Magic III – Master of Puppets
v. 3 Battery

Требования к ОС: Windows xp и выше, Wine или ExaGear.
Требования к архитектуре: поддержка процессором SSE2.
Установка: распаковка архива в папку с SoD/Complete/WoG/TE/ERA/HotA и более поздними аддонами. Язык игры, на которую устанавливается мод, значения не имеет. Остерегайтесь кастрированных версий.
Поддержка HD-мода: отсутствует.

Изменения по сравнению с предыдущей версией (очень кратко):
- практически полная двуязычность игры (английский/русский) и редактора карт
- 16 новых существ
- 17 новых артефактов
- 2 новые городские реликвии
- 3 новых хранилища существ
- 1 новое заклинание
- 1 новый накладной ландшафт
- изменения в геймплее
- новые опции
- очередные улучшения интерфейса
- некоторые улучшения графики
- исправления багов предыдущей версии, а также WoG и SoD.

Прямая ссылка на скачивание
Foster
У меня хром на ссылку матерится и не даёт скачать. А вот с ИЕ скачать вышло, да
MasterOfPuppets
Цитата(Foster @ 10 Sep 2016, 10:36) *
У меня хром на ссылку матерится и не даёт скачать. А вот с ИЕ скачать вышло, да

На сайте много мелких файлов с расширениями *bin и *exe (мои поделки для Героев). Похоже, поэтому Гугл определяет его как заражённый. Но на самом деле всё в порядке.
Позже наверняка будут ссылки на Я.Диск и vk.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.