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

Full Version: ERA III
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Thanks! Another request - Is it possible to implement MM:M support for custom buttons?

Code:
!?FU(OnTownMouseClick)&i^mouse_action^=(MOUSE_RMB_PRESSED);
!!FU(tum_InfoOf8thCreaturesBtn):P;

!?FU(tum_InfoOf8thCreaturesBtn);
!!CM:I?(location:y);
!!SN:F^GetButtonID^/^8thCreatures^;
!!FU&(location)<>v1:E;
!!CM:R0;
!!SN:T^Third_Upgrade_Mod.8thCreatures^/?(eighthCreatures:z);
!!IF:M0/4/^%(eighthCreatures)^; works
!!MM:M(eighthCreatures); doesn't work
!!MM:M^%(eighthCreatures)^; doesn't work

I know it can be changed via .btn, but I'm seeking various hint options (depending on types of town)
Better not MM:M, but opportunity for changing description of the all custom buttons! (Hero/advmap/town/batlle etc)
Archer30, probably possible, but not in TODO currently.
No problem 132
Как-то поднимался вопрос о возможности проигрывания .def-анимаций в диалогах.
Ныне мы имеем такую возможность в кастомных.

Тем не менее я вспомнил, что сама игра уже делает подобное, когда пересылаются данные на старте сетевой игры. В общем, будет ли полезна та функция, чтобы использовать её для анимации def в обычных такого же формата в любой нужный момент?
Эм, нет. У каждого диалога есть функция, которая обрабатывает все события. Анимацию каждый диалог реализует сам, запоминая прошедшее время и вызывая функции смены кадров дефов.
Berserker, а если вызвать тот самый диалог, чтобы показать лишь анимацию, то сработает?
Не знаю, что сработает и как должно сработать, но не запрещаю вызывать )
Berserker, вот список недочетов Эра 3.8.1 (хотя может на это была причина 105):

1. Старый плагин "game bug fixes extended.dll".
2. Старый плагин "wog native dialogs.era".
3. Старый HD-мод патчер "patcher_x86.dll".
4. Утилита для скриптов "Erm_Editor_Sublime" всё ещё продолжает просить обновления.
5. В дистрибутиве всё ещё есть "игра-укладчик" - патч "campaign heroes as start heroes.bin.
Panda, понял, спасибо. Всё исправлю.
Berserker, I'd like to point out a few things that could be improved:

1. To completely disable the darkness ability of Darkness Dragon, it's required to add one more patch
Testing savegame + fixed bin
End the turn and compare the result of the two bins. The original bin leaves a 1x1 area of darkness at the beginning of each turn.


2. Update the constant name of Hell Baron
I understand this creature was called Antrichrist before (or just internal name?), but it would be better if we update to the current name, Hell Baron.

Corrected:


3. Update the address of getting the last creature id to be compatible with Amethyst
The function of getting the last creature id in stdlib.erm is incompatible with Amethyst (Majaczek's version). According to him, there is another address to be a replacement.

Script for testing:
Note 1: This new address is not compatible with the standard ERA. Do you think it's possible to make the function compatible with and without Amethyst (majaczek)? SN:L^amethyst2_4.dll^?(amethystEnabled:y); maybe?
Note 2: Either address is incompatible with Amethyst (Feanor) or TyphonZ, sigh


Btw, is it necessary to have the debug info of duplicate constant definition?
I mean, it sounds normal to be for constant like (MON_LAST_WOG) to be re-defined in another mod like TUM. Now I have to use MON_LAST_TUM instead. This is inconvenient as out of auto-completion. (Perhaps it makes sense still. TUM is not WoG and should not use MON_LAST_WOG for its last creature)


Another one. Weeks ago we talked about whether msvcr90.dll from VC++ Redistributable 2009 package fixes the compatibility of badluck.era + Win XP. The result is negative 102 Just tested on my virtual machine, same error.
Archer30,

1. Thanks a lot for the fix! Take away 132

3.
- Maybe there is no need for changes, due to which later the game will stop working for ordinary players, and also other modes on Typhon, for example, Era Plus and WoG Ultra? 36 Fie 116 Stop
- Does TUM use the constants declared by Berserker in Era ERM Famework? Seriously? First a patched HD mod, then constants, what's next? 36 Fie 116 Stop

4. I'm afraid we are approaching the time when Era and its components slowly cease to function normally on Win XP... probably there is nothing to be done about it... 102
(17.06.2021 15:31)Archer30 Wrote: [ -> ]3. Update the address of getting the last creature id to be compatible with Amethyst
The function of getting the last creature id in stdlib.erm is incompatible with Amethyst (Majaczek's version).

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

Code:
    {0x4A1655+2,DS0(MONNUM),4},{0x4A189B+1,(long)MONNUM,4},  

    {0x47ADEC+1,(long)MONNUM,4},{0x47AE7C+1,(long)MONNUM,4},{0x47B04D+1,(long)M​ONNUM,4},
    {0x47B0E5+1,(long)MONNUM,4},{0x47B105+1,(long)MONNUM,4},{0x47B125+1,(long)M​ONNUM,4},

    {0x40AC91+1,(long)MONNUM,4},{0x40ACF1+2,(long)MONNUM,4},{0x40C2B0+1,(long)M​ONNUM,4},
    {0x416948+1,(long)MONNUM,4},{0x43F9B2+1,(long)MONNUM,4},{0x43FA88+1,(long)M​ONNUM,4},
    {0x43FDA8+1,(long)MONNUM,4},{0x43FE24+2,(long)MONNUM,4},
    {0x4401B5+1,(long)MONNUM,4},{0x4409D7+1,(long)MONNUM,4},{0x440A21+1,(long)M​ONNUM,4},
    {0x440A85+1,(long)MONNUM,4},{0x440C9A+1,(long)MONNUM,4},{0x440CD5+1,(long)M​ONNUM,4},
    {0x440D49+1,(long)MONNUM,4},{0x440D86+1,(long)MONNUM,4},{0x440F5B+1,(long)M​ONNUM,4},
    {0x4418D0+1,(long)MONNUM,4},{0x44192E+1,(long)MONNUM,4},{0x443265+1,(long)M​ONNUM,4},
    {0x44329A+1,(long)MONNUM,4},{0x443307+1,(long)MONNUM,4},{0x44333C+1,(long)M​ONNUM,4},
    {0x44372A+2,(long)MONNUM,4},{0x443796+2,(long)MONNUM,4},{0x446C86+1,(long)M​ONNUM,4},
    {0x446CF4+1,(long)MONNUM,4},{0x44730E+1,(long)MONNUM,4},{0x44BB13+2,(long)M​ONNUM,4},
    {0x44BC64+1,(long)MONNUM,4},{0x44C060+2,(long)MONNUM,4},{0x464670+1,(long)M​ONNUM,4},
    {0x46487A+1,(long)MONNUM,4},{0x464A91+1,(long)MONNUM,4},{0x465242+1,(long)M​ONNUM,4},
    {0x4652E4+1,(long)MONNUM,4},{0x478593+1,(long)MONNUM,4},{0x4785CB+1,(long)M​ONNUM,4},
    {0x4790D7+1,(long)MONNUM,4},{0x479142+1,(long)MONNUM,4},{0x47927F+1,(long)M​ONNUM,4},
    {0x47931B+1,(long)MONNUM,4},{0x4840B2+1,(long)MONNUM,4},
    {0x4863FC+2,(long)MONNUM,4},{0x491F65+1,(long)MONNUM,4},
    {0x491FB5+1,(long)MONNUM,4},{0x4920A9+2,(long)MONNUM,4},{0x4921A1+2,(long)M​ONNUM,4},
    {0x4921EC+2,(long)MONNUM,4},{0x4922B6+1,(long)MONNUM,4},{0x4922ED+1,(long)M​ONNUM,4},
    {0x49233E+1,(long)MONNUM,4},{0x492375+1,(long)MONNUM,4},{0x492521+1,(long)M​ONNUM,4},
    {0x4925BE+1,(long)MONNUM,4},{0x49262F+1,(long)MONNUM,4},{0x4926C9+1,(long)M​ONNUM,4},
    {0x49275D+1,(long)MONNUM,4},{0x4927E8+1,(long)MONNUM,4},{0x492959+1,(long)M​ONNUM,4},
    {0x492D0A+2,(long)MONNUM,4},{0x492DAD+1,(long)MONNUM,4},
    // 497903
    {0x49E705+2,(long)MONNUM,4},
    {0x49E728+2,(long)MONNUM,4},{0x49EE73+1,(long)MONNUM,4},{0x49EFC0+1,(long)M​ONNUM,4},
    {0x4A0435+2,(long)MONNUM,4},{0x4A04D7+2,(long)MONNUM,4},
    // 4A1655
    {0x4A17D9+1,(long)MONNUM,4},{0x4A1803+1,(long)MONNUM,4},{0x4A1828+1,(long)M​ONNUM,4},
    {0x4A184D+1,(long)MONNUM,4},
    // 4A189B
    {0x4A19FA+2,(long)MONNUM,4},
    {0x4A1A9F+2,(long)MONNUM,4},{0x4A42F1+1,(long)MONNUM,4},{0x4A6A7E+1,(long)M​ONNUM,4},
    {0x4A6C96+2,(long)MONNUM,4},{0x4A6F57+2,(long)MONNUM,4},{0x4A6FC6+1,(long)M​ONNUM,4},
    {0x4AB893+2,(long)MONNUM,4},{0x4ABC6C+1,(long)MONNUM,4},{0x4ABF68+1,(long)M​ONNUM,4},
    {0x4AE27F+1,(long)MONNUM,4},{0x4AE2CC+2,(long)MONNUM,4},{0x4CC86D+1,(long)M​ONNUM,4},
    {0x4CC8C9+1,(long)MONNUM,4},{0x4CC988+1,(long)MONNUM,4},{0x4DBA61+1,(long)M​ONNUM,4},
    {0x4DBA9D+2,(long)MONNUM,4},{0x4DBAE0+2,(long)MONNUM,4},{0x4DBB2D+1,(long)M​ONNUM,4},
    {0x4DBB74+1,(long)MONNUM,4},{0x4DBB96+2,(long)MONNUM,4},{0x4F1F88+1,(long)M​ONNUM,4},
    {0x4F2010+1,(long)MONNUM,4},{0x4F20D6+1,(long)MONNUM,4},{0x4F2138+1,(long)M​ONNUM,4},
    {0x4F479B+1,(long)MONNUM,4},{0x4F5BD0+2,(long)MONNUM,4},{0x4F5C4A+2,(long)M​ONNUM,4},
    {0x51402E+1,(long)MONNUM,4},{0x514078+1,(long)MONNUM,4},{0x5213E4+2,(long)M​ONNUM,4},
    {0x52141C+2,(long)MONNUM,4},{0x5217C7+1,(long)MONNUM,4},{0x521812+1,(long)M​ONNUM,4},
    {0x521835+2,(long)MONNUM,4},{0x52191C+1,(long)MONNUM,4},{0x52195C+1,(long)M​ONNUM,4},
    {0x5219BD+1,(long)MONNUM,4},{0x5219CD+2,(long)MONNUM,4},{0x5219F7+2,(long)M​ONNUM,4},
    {0x52FEF7+2,(long)MONNUM,4},{0x52FF5B+2,(long)MONNUM,4},{0x52FFB9+2,(long)M​ONNUM,4},
    {0x55036E+1,(long)MONNUM,4},{0x550825+1,(long)MONNUM,4},{0x55113E+1,(long)M​ONNUM,4},
    {0x551D8E+2,(long)MONNUM,4},{0x5632DA+2,(long)MONNUM,4},{0x565365+1,(long)M​ONNUM,4},
    {0x56637B+1,(long)MONNUM,4},{0x5664C8+1,(long)MONNUM,4},{0x56EBD3+1,(long)M​ONNUM,4},
    {0x56ECD4+1,(long)MONNUM,4},{0x56F115+1,(long)MONNUM,4},{0x5706A5+1,(long)M​ONNUM,4},
    {0x570A6E+1,(long)MONNUM,4},{0x570D4D+1,(long)MONNUM,4},{0x59F90A+2,(long)M​ONNUM,4},
    {0x5A21ED+1,(long)MONNUM,4},{0x5A22E6+1,(long)MONNUM,4},{0x5A2CC3+1,(long)M​ONNUM,4},
    {0x5A2DCD+2,(long)MONNUM,4},{0x5A2E27+2,(long)MONNUM,4},{0x5A753A+1,(long)M​ONNUM,4},
    {0x5A77C0+2,(long)MONNUM,4},{0x5A77FB+2,(long)MONNUM,4},{0x5A79B2+1,(long)M​ONNUM,4},
    {0x5A79ED+1,(long)MONNUM,4},{0x5A7D4B+2,(long)MONNUM,4},{0x5A7DBB+2,(long)M​ONNUM,4},
    {0x5A8A08+2,(long)MONNUM,4},{0x5A8A69+2,(long)MONNUM,4},{0x5A8B52+2,(long)M​ONNUM,4},
    {0x5A9378+1,(long)MONNUM,4},{0x5B0E09+2,(long)MONNUM,4},{0x5C08EA+2,(long)M​ONNUM,4},
    {0x5C605C+1,(long)MONNUM,4},{0x5C656A+1,(long)MONNUM,4},{0x5C789A+1,(long)M​ONNUM,4},
    {0x5C7946+1,(long)MONNUM,4},{0x5C79BC+1,(long)MONNUM,4},{0x5C7A1D+1,(long)M​ONNUM,4},
    {0x5C7AB0+1,(long)MONNUM,4},{0x5C7B25+2,(long)MONNUM,4},{0x5C7B48+1,(long)M​ONNUM,4},
    {0x5C7FD4+1,(long)MONNUM,4},{0x5C8046+1,(long)MONNUM,4},{0x5C84B0+1,(long)M​ONNUM,4},
    {0x5C9C3A+1,(long)MONNUM,4},
    {0x5D0C56+1,(long)MONNUM,4},{0x5D1059+2,(long)MONNUM,4},
    {0x5DD0A4+1,(long)MONNUM,4},{0x5DD976+1,(long)MONNUM,4},{0x5DDA4A+1,(long)M​ONNUM,4},
    {0x5EF08C+1,(long)MONNUM,4},{0x5F3939+1,(long)MONNUM,4},{0x5F40CC+1,(long)M​ONNUM,4},
/* это все элементы диалогов, а не монстры
    {0x5121EA+1,(long)MONNUM,4},{0x53A51F+1,(long)MONNUM,4},{0x53B1ED+1,(long)M​ONNUM,4},
    {0x5601C4+2,(long)MONNUM,4},{0x5758AC+1,(long)MONNUM,4},{0x575B6C+1,(long)M​ONNUM,4},
//  {0x5AC62E+1,(long)MONNUM,4}, // вызывает рисование книги закл. на голове
    {0x5C2565+1,(long)MONNUM,4},{0x5C3DFD+1,(long)MONNUM,4},
    {0x5CA9B3+1,(long)MONNUM,4},{0x5CAA24+1,(long)MONNUM,4},{0x5CAA94+1,(long)M​ONNUM,4},
    {0x5CABF9+1,(long)MONNUM,4},{0x5CAC6A+1,(long)MONNUM,4},{0x5CACDB+1,(long)M​ONNUM,4},
    {0x5CAE41+1,(long)MONNUM,4},{0x5CAEB2+1,(long)MONNUM,4},{0x5CAF23+1,(long)M​ONNUM,4},

(17.06.2021 15:31)Archer30 Wrote: [ -> ]Another one. Weeks ago we talked about whether msvcr90.dll from VC++ Redistributable 2009 package fixes the compatibility of badluck.era + Win XP. The result is negative 102 Just tested on my virtual machine, same error.

Один весёлый умник пересобрал феаноровские исходники данного плагина под новые виндовозы. Естественно, для обладателей Windows XP рекомендуется всё-таки использовать оригинальную версию от 2014 года, работающую даже на Windows 2003.
XEPOMAHT, так поделись старыми плагинами, все будут счастливы 120

Спасибо за адреса, взял содовский.
(18.06.2021 02:52)Berserker Wrote: [ -> ]   так поделись старыми плагинами, все будут счастливы

Они в составе ERA+ есть.
Reference URL's