Current time: 03.05.2024, 11:08 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Ваши вопросы по ERM-скриптам
Author Message
daemon_n Offline
Administrators

Posts: 4338
Post: #8446

Как из окна встречи героев получить номера правого и левого героев?

Без кликов. Просто из менеджера, скажем.


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
19.09.2021 16:50
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16502
Post: #8447

daemon_n, по адресу 0x6A3D90 хранится адрес Менеджера ,Обмена (Swap Manager).
В нём по смещению 0x40 лежит адрес левого героя, 0x44 - правого.

У героя поле ID расположено по смещению 0x1A (размер поля — 4 байта).

Archer30, not possible, currently (except !?OB, probably), but I'll think about fixing old triggers or creating new.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
19.09.2021 22:27
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #8448

Berserker, спасибо! Делаю как раз то, что просит Archer30:
    !!SN:Ex1/1/5942672/(gem_BeforeHeroSwap);
    !!SN:Ex1/1/4893738/(gem_AfterHeroSwap); - адреса взял из wog native dialogs. by igrik.
работает и для экрана города, и для Карты Приключений.

Для того я просил адреса, чтобы корректно получать номера героев.
Использую триггер
    !!SN:Ex1/1/5968384/(gem_OnUpdateHeroInteractionScreen);
Как я понял, работает он While 1;
Что приятно, с HD mod проблем не возникает Yes


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
20.09.2021 07:37
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2814
Post: #8449

daemon_n, я что-то не совсем понял: тебе нужно просто получить номера героев? Или тебе нужно сделать триггеры?


game bug fixes extended.dll || My Plugins || My GitHub
20.09.2021 10:13
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #8450

igrik, мне нужно получить номера героев.
А триггеры я уже сделал.
Насчёт них: я отвечал Берсеркеру, что Archer30 подойдёт то, что он просил выше.


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
20.09.2021 10:21
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2814
Post: #8451

Так Берс же тебе объяснил как получить номера:



game bug fixes extended.dll || My Plugins || My GitHub
20.09.2021 10:32
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #8452

igrik, да, я понял, спасибо)
Я просто ответил на твой вопросYes


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
20.09.2021 11:21
Visit this user's website Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1126
Post: #8453

Looks like HE:A1 doesn't work with "set" for artifact in backpack. Any idea Unsure
________

Also, I propose an alternative method for checking hero's basic primary skills without artifact bonuses, exactly the same purpose with HE:F1 but with the compatibility with WoG Script Enhanced Commander Artifact added.

Testing bug with Enhanced Commander Artifact option and HE:F1

New Function for calculating hero's basic primary skills (without artifact bonuses)

Download the function in ERM format


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 22.09.2021 21:40 by Archer30.)
22.09.2021 19:13
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16502
Post: #8454

Archer30, HE:A1 places artifact on BODY, as it said in documentation. Probably, it's EquiptArtToSlot function equivalent.

bool __thiscall Hero_ArtAdd_InBackPack(_Hero_ *hero, _Art_ *art, signed int slot_in_backpack)
0x4E3200

We need extra procedure in EEF for that.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
22.09.2021 19:50
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1126
Post: #8455

Berserker, EquiptArtToSlot also doesn't work. There is no available function/receiver for directly modifying the backpack slot.

I just have to do with HE:A4.

   ____

New Question:
How does IP receivers work?

I wanted to pass w var to the defending player for changes of my henchman of this turn, it failed.
There would be two IF:M dialogue popped up with this code for attacker, both are corrected results.
For defending player, 1 dialogue (BA52), and the values of w vars are wrong.

How do I make the IP receivers work correctly?


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 23.09.2021 14:15 by Archer30.)
22.09.2021 20:23
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2814
Post: #8456

Я думаю, эти функции известны, но на всякий всё же укажу их

Code:
int RemoveDollArtifact(int doll_slot_index) {return CALL_2(int, __thiscall, 0x4E2E40, this, doll_slot_index);}
int AddDollArtifact(_Artifact_* art, int doll_slot_index) {return CALL_3(int, __thiscall, 0x4E2C70, this, art, doll_slot_index);}
int RemoveBackpackArtifact(int index) {return CALL_2(int, __thiscall, 0x4E2FC0, this, index);}
int AddBackpackArtifact(_Artifact_* art, int index) {return CALL_3(int, __thiscall, 0x4E3200, this, art, index = -1);}
HE:A4 = 0x4E32E0 = void ArtAddFull(_Artifact_* art, int is_need_build_combo, int check_win_game) {CALL_4(void, __thiscall, 0x4E32E0, this, art, is_need_build_combo, check_win_game);}

где this -  структура героя
и
struct _Artifact_
{
_int_ id;
_int_ mod;
};


game bug fixes extended.dll || My Plugins || My GitHub
22.09.2021 22:05
Visit this user's website Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1126
Post: #8457

New question again...

Is there any ERA 3 variant for 998 (current interacting object)?

For example,

Also, is there any ERA 3 way to get the current interacting coordinates (I know only v998/v999/v1000)?

And also...any alternative for v997 battle round?


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 26.09.2021 18:17 by Archer30.)
26.09.2021 18:14
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #8458

Archer30, i^battle_round^


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
26.09.2021 20:11
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16502
Post: #8459

Archer30, there is no alternative for v998/v999/v1000 currently, but I'll add it, thanks.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
26.09.2021 23:07
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1126
Post: #8460

daemon_n, Berserker, thanks a lot 132


Latest ERA mods and scripts in development - My GitHub
27.09.2021 00:03
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group