Current time: 08.04.2020, 00:53 Hello There, Guest! (LoginRegister)
Language: english | russian  

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

Posts: 139
Post: #5821

Хм, а как через ERM заставить отряд выполнить действие (идти и атаковать, выстрелить) или подменить одно действие другим (для компа)? Вроде видел где-то, но по всему хелпу прошелся - не нашел.
13.09.2019 02:25
Find all posts by this user Quote this message in a reply
AuAu Offline

Posts: 287
Post: #5822

В "ночной разведке" вроде такое есть. Там может быть событие, где надо мобам помогать, эти мобы типа как твои, но управляет ими комп.


очень большая сборка модов для сиськофайтинга
In WoG we trust
(This post was last modified: 13.09.2019 05:03 by AuAu.)
13.09.2019 05:03
Find all posts by this user Quote this message in a reply
daemon_n Away

Posts: 1631
Post: #5823

Igor, еще в "Исправлении поведения ИИ" (Era Scripts)


HoMM3 ERA 2.9.12 HD RUS v1.29 (05.03.20)Yandex/DropBox/Google
Канал на Twitch, где я играю в героев.
13.09.2019 05:19
Visit this user's website Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 127
Post: #5824

Как можно узнать, что герой находится под действием заклинания видения?

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

Upd:нашел на форуме, возвращает в SN:W уровень видений на герое.
-1 0 1 2 3
соответственно:
нет видений, наложены без уровней магии, базовый уровень, продвинутый, экспертный.



The dreams you kill will break your heart
(This post was last modified: 13.09.2019 23:22 by ElfbI.)
13.09.2019 22:04
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline

Posts: 449
Post: #5825

(13.09.2019 22:04)ElfbI Wrote:  Как можно узнать, что герой находится под действием заклинания видения?

mov ecx, (номер_героя*размер_структуры_героя+адрес_структуры_героя)
call 4e6050h
результат функции будет в eax.

Под ERM может быть кто-нибудь сделает ресивер.

(13.09.2019 22:04)ElfbI Wrote:  

Чёрная магия.
13.09.2019 23:39
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 12094
Post: #5826

XEPOMAHT, то же, что и у тебя. Адреса, размеры структур (1170 на структуру героя) и смещения (137033) от структуры менеджера игры.


Скачать Герои 3 Эра и всё, что с ней связано
Поддержать проект
13.09.2019 23:57
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline

Posts: 449
Post: #5827

(13.09.2019 23:57)Berserker Wrote:  XEPOMAHT, то же, что и у тебя.

Нее, там проверки на воров (а с Тифоном и на любых монстров, которым установлен шпионаж) нету. Т.е. по любому потребуется вызов ОРИГИНАЛЬНОЙ геройской функции "Hero_GetVisionsSkill", соседняя - "CheckIfCoordsInVisionsRadius", кстати, тоже будет полезна.
(This post was last modified: 14.09.2019 00:20 by XEPOMAHT.)
14.09.2019 00:11
Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 127
Post: #5828

В общем, есть такая штука для определения уровня агрессии. Вопрос, можно ли здесь как-то учесть произвольное смещение уровня агрессии во время клика? Те, клик мышкой на мобе, его уровень агрессии по стандартной шкале (1-10), скажем 10. И я получу в y3 1 - готовы ринуться в драку. Но я хочу перед этим снизить ур агр, скажем, до 0. Но код ниже все равно возвратит мне значение у3=1 вместо 2, потому что получает его во время того же клика мышкой. Как бы это можно обойти? Можно как-то подменить значение в памяти, которое используется для расчетов. (если что, я пытаюсь нормальное окно справки для арефактов на дипломатию прикрутить)



XEPOMAHT, я искал проверку только на заклинание. На воров можно и стеки проверить героя


The dreams you kill will break your heart
(This post was last modified: 14.09.2019 00:19 by ElfbI.)
14.09.2019 00:14
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline

Posts: 449
Post: #5829

(14.09.2019 00:14)ElfbI Wrote:  (если что, я пытаюсь нормальное окно справки для арефактов на дипломатию прикрутить)

Опять добавляешь костыли в функцию ПКМ по монстру? Отчего напрямую не хочешь добавить проверки на артефакты дипломатии в функцию GetArmyDiplomacyValue?

(14.09.2019 00:14)ElfbI Wrote:  я искал проверку только на заклинание. На воров можно и стеки проверить героя

Ну если нравится дублировать существующий код, тогда ОК.
14.09.2019 00:35
Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 127
Post: #5830

XEPOMAHT, я в первый раз слышу про эту функцию. Откуда вы берете список этого счастья? Подскажите, как с функцией-то работать? Я функционал эры достаточно плохо знаю. Так что ответ на ваш вопрос - потому что не умею. Буду благодарен информации, как в GetArmyDiplomacyValue запихать проверки на арт. 66 67 68 и 166 (сборный) со значениями к агрессии -1 -1 -2 -5.


The dreams you kill will break your heart
(This post was last modified: 14.09.2019 01:27 by ElfbI.)
14.09.2019 00:47
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline

Posts: 449
Post: #5831

(14.09.2019 00:47)ElfbI Wrote:  Откуда вы берете список этого счастья? Подскажите, как с функцией-то работать?

Из эровского отладчика - H3era.dbgmap. В начале там получается общеармейский AI_value героя, хук на свои артефакты можешь поставить как раз после этого, увеличивая AI_value артефактами (значение записывается в ebp-4, после хука читаешь значение из ebp-4 (если хук конечно не портит ebp 148 , х.з. как ЭРА его ставит), изменяешь как нужно и записываешь обратно), чтобы твоя армия казалась сильнее. Как это выглядит на ERM не представляю - такими вещами не занимаюсь (такие вещи обычно записываю в dll).
14.09.2019 02:06
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 12094
Post: #5832

XEPOMAHT, я этот dbgmap сгенерировал, дай Бог памяти, то ли с воговской IDA базы, то ли у Sav-а в своё время попросил. Вероятно, второе.


Скачать Герои 3 Эра и всё, что с ней связано
Поддержать проект
14.09.2019 02:33
Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 127
Post: #5833

XEPOMAHT, эмммм, как бы это сказать, я ни хрена не понял, и вряд ли смогу подобные фокусы проворачивать. А потом спрашиваете, почему костыляю на !?СМ, я ничего сложнее ерм и бэйсика не практиковал, а это какое-то высокоуровневое шаманство.



The dreams you kill will break your heart
14.09.2019 02:51
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline

Posts: 449
Post: #5834

(14.09.2019 02:33)Berserker Wrote:  Вероятно, второе.

Понятно. Может быть тогда стоит выложить воговскую IDA-базу с именами из dbgmap для простых смертных? Читаемость кода со всеми именами, по-моему, намного и намного лучше (правда я сохранял базу в IDA 6.1, в версии IDA 6.5 и выше база не открывается - пишет, что база битая и её невозможно конвертировать 148 ), особенно в плане кода ИИ.

(14.09.2019 02:51)ElfbI Wrote:  я ни хрена не понял, и вряд ли смогу подобные фокусы проворачивать.

Такие вещи лучше вообще на ERM не делать - всё, что связано с перехватами кода намного легче и удобнее практиковать на ассемблере в DLL (потребуется знание ассемблера и принципов работы машинного кода), посложнее - на Си+ и др. высокоуровневых языках (до сих пор я не могу до них добраться, поэтому "как оно" - сказать не могу - сложность написания DLL там запредельная).
14.09.2019 12:09
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 12094
Post: #5835

XEPOMAHT, воговская от Сергея Роженко и так в публичном доступе. А свою Sav не выкладывал, в Хоте трепетно к таким вещам относятся.
ElfbI, всё ты делаешь верно, с точки зрения возможностей скриптового языка. Большинство авторов скриптов не обязано вдаваться в ассемблер и никзоуровневую отладку.


Скачать Герои 3 Эра и всё, что с ней связано
Поддержать проект
14.09.2019 13:39
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-2020 MyBB Group