PerryR
Posts: 460
|
(13.05.2024 10:37)fatsawhorse Wrote: Неужели нет возможности скриптом заставить командира сражаться, а не колдовать? Не сильно хочется мне обнулять его колдовскую силу через !?BG0, а потом через !?BG1 возвращать снова. Это геморно! Может всё-таки скриптом есть какой-нибудь другой способ?
Setting the number of available casts to zero is a good way in my opinion to force the commander to fight with his hands.
|
|
14.05.2024 03:12 |
|
Elzivir
Posts: 263
|
Ребята, подскажите кому не сложно и будет время, что необходимо изменить/добавить в скрипте Медицина (из мода Era Scripts Rus, автор - Algor), чтобы он работал и при переигрывании битвы с помощью файла BattleReplay.dll (автор - igrik):
!?BA52; [Начало боя: установка флага]
!!UN:P782/?y1; [проверяем включена ли опция 782 в y1]
!!UN&y1>0:P782/2; [P782=2 в начале битвы]
!?BR-1; [Начало боя: проверка стеков]
!!UN:P782/?y1; [проверяем включена ли опция 782 в y1]
!!FU&y1<2:E; [выход если опция не включена или здоровье уже изменялось]
!!BA:H0/?y1; [y1 - номер атакующего героя]
!!BA:H1/?y2; [y2 - номер защищающегося героя, -2. если нет героя]
!!HEy1:S27/?y11; [y11 - уровень Медицины атакующего героя [0..3]]
!!HEy1:X?y13/?y14/d/d/d/d/d; [y13=0,y14=номер навыка для специалистов по вторичному навыку]
!!VRy12:S0; [обнуление переменной]
!!VRy12&y13=0/y14=27:S1; [y12=1 для спец. Медицина атакующего героя]
!!HEy1:A2/94/d/?y13; [y13 - количество надетых Колец живучести у атакующего героя]
!!VRy13&y13>0:S1; [y13=1, если надето Кольца живучести]
!!HEy1:A2/95/d/?y14; [y14 - количество надетых Колец жизни у атакующего героя]
!!VRy14&y14>0:S1; [y14=1, если надето Кольца жизни]
!!HEy1:A2/96/d/?y15; [y15 - количество надетых Виалов жизненной силы у атакующего героя]
!!VRy15&y15>0:S2; [y15=2, если надет Виал жизненной силы]
!!HEy1:A2/131/d/?y16; [y16=1 , если надет Эликсир жизни у атакующего героя]
!!VRy16&y16>0:S4; [y16=4, если надет Эликсир жизни]
!!VRy11:+y12 +y13 +y14 +y15; [y11 - кол-во 5%-х бонусов от Навыка, Специализации и Артефактов атакующего героя]
!!VRy13:+y14 +y15 +y16; [y13 - бонус здоровья артефактов атакующего героя (для удаления)]
!!VRy21:S0; [обнуление переменной]
!!VRy23:S0; [обнуление переменной]
!!VRy26:S0; [обнуление переменной]
!!HEy2&y2>-1:S27/?y21; [y21 - уровень Медицины защищающегося героя [0..3]]
!!HEy2&y2>-1:X?y23/?y24/d/d/d/d/d; [y23=0,y24=номер навыка для специалистов по вторичному навыку]
!!VRy22&y2>-1:S0;
!!VRy22&y2>-1/y23=0/y24=27:S1;[y22=1 для спец. Медицина защищающегося героя]
!!HEy2&y2>-1:A2/94/d/?y23; [y23 - количество надетых Колец живучести у защищающегося героя]
!!VRy23&y2>-1/y23>0:S1; [y23=1, если надето Кольца живучести]
!!HEy2&y2>-1:A2/95/d/?y24; [y24 - количество надетых Колец жизни у защищающегося героя]
!!VRy24&y2>-1/y24>0:S1; [y24=1, если надето Кольца жизни]
!!HEy2&y2>-1:A2/96/d/?y25; [y25 - количество надетых Виалов жизненной силы у защищающегося героя]
!!VRy25&y2>-1/y25>0:S2; [y25=2, если надет Виал жизненной силы]
!!HEy2&y2>-1:A2/131/d/?y26; [y26=1 , если надет Эликсир жизни у защищающегося героя]
!!VRy26&y26>0:S4; [y26=4, если надет Эликсир жизни]
!!VRy21&y2>-1:+y22 +y23 +y24 +y25; [y21 - кол-во 5%-х бонусов от Навыка, Специализации и Артефактов защищающегося героя]
!!VRy23&y2>-1:+y24 +y25 +y26; [y23 - бонус здоровья артефактов защищающегося героя (для удаления)]
!!DO7916/0/41/1:Py11/y13/y21/y23/y16/y26; [перебор стеков на поле боя и увеличение здоровья живых непризванных стеков]
!!UN:P782/1; [флаг окончания увеличения здоровья стеков]
!?FU7916; [x16-номер стека, x1,x3-кол-во 5%-х бонусов атакующего/защищающегося, x2,x4-бонус здоровья артефактов атакующего/защищающегося, x5,x6=4 надет Эликсир жизни у атакующего/защищающегося]
!!BMx16:O?y1; [y1 - номер слота в армии [0..6], -1 если слот призван]
!!BMx16:F?y2; [y2 - флаг существ стека]
!!VRy2:&16; [y2=16 если существа живые, y2=0 если нет]
!!VRy5:S0; [обнуление переменной]
!!BMx16:H?y3; [y3 - max HP существа]
!!BMx16:I?y4; [y4=0 для атакующего и 1 для защищающегося]
!!VRy3&y4=0:-x2; [y3 - здоровье существ без бонусов артефактов]
!!VRy3&y4=1:-x4; [y3 - здоровье существ без бонусов артефактов]
!!VRy5&y4=0/y2=16/y1>-1:Sy3; [---------------------------------------------------------]
!!VRy5&y4=0/y2=16/y1>-1/x5=4::5 *4; [y5 - бонус здоровье живых непризванных существ атакующего]
!!VRy5&y4=0/y2=16/y1>-1:*x1 :20; [---------------------------------------------------------]
!!VRy5&y4=1/y2=16/y1>-1:Sy3; [------------------------------------------------------------]
!!VRy5&y4=1/y2=16/y1>-1/x6=4::5 *4; [y5 - бонус здоровья живых непризванных существ защищающегося]
!!VRy5&y4=1/y2=16/y1>-1:*x3 :20; [------------------------------------------------------------]
!!VRy3:+y5; [y3 - измененные HP стека существ]
!!BMx16:Hy3; [y3 - устанавливаем измененные HP стека существа]
P/S: скрипт наделяет навык Первой Помощи свойством добавлять 5/10/15% к HP существ. Так-то он действует исправно (даже при стандартных перезагрузках), но при переигрывании битвы именно с помощью BattleReplay.dll почему-то не работает...
(This post was last modified: 17.05.2024 15:38 by Elzivir.)
|
|
17.05.2024 08:29 |
|
Elzivir
Posts: 263
|
Удалось самому разобраться с проблемой. Все разрешилось благодаря установке хука на событие. Очередной костыль, конечно, зато все работает.
|
|
17.05.2024 17:31 |
|
fatsawhorse
Posts: 1022
|
Hello, Perry R
Most likely, I will do so when receiving the commander's move, since I think this is the only way, since there is no other simpler one.
|
|
21.05.2024 02:15 |
|
Archer30
Posts: 1175
|
Previous discussion
Hi Berserker, I am currently implementing a new artifact that ignores negative morale (similar to Spirit of Oppression but oppositely)
Ideally, I want to insert my hook at 0044BCBD, before the Spirit of Oppression logic.
What I need to do here is the same with Spirit of Oppression:
- Clear the forming text
- Insert my text
Roughly I need to repeat the code from 0044BCE4 to 0044BD19 but with my own arguments.
Is it possible to do that in erm?
Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 23.05.2024 10:00 by Archer30.)
|
|
23.05.2024 10:00 |
|
fatsawhorse
Posts: 1022
|
Здравствуйте.. Если кто может, то посмотрите лог! Я его сохранил и выложил на этот сайт https://ru.files.me/f/ddhawuvfhs ..
Эта ошибка меня иногда беспокоит. Она возникает обычно когда я нападаю на замок и веду бой в нём. Хотелось бы знать в чём эта проблема? Я не умею логи расшифровывать, но очень бы хотел научиться?
Заранее благодарю..
(This post was last modified: 24.05.2024 10:15 by fatsawhorse.)
|
|
24.05.2024 10:14 |
|
Archer30
Posts: 1175
|
|
27.05.2024 14:29 |
|
fatsawhorse
Posts: 1022
|
Здравствуйте XEPOMAHT
Спасибо Вам за помощь в расшифровке..
P.S. Я бы сам хотел научиться читать лог-файлы, но понятия не имею как это делать!
А Вы можете сказать по какой строчке Вы это определили?
Да уже, эра 3.0.5 это набор ошибок
(This post was last modified: 28.05.2024 04:43 by fatsawhorse.)
|
|
28.05.2024 04:39 |
|
XEPOMAHT
Posts: 2356
|
(28.05.2024 04:39)fatsawhorse Wrote: Я бы сам хотел научиться читать лог-файлы, но понятия не имею как это делать!
Для этого нужно знать Ассемблер и иметь более-менее разобранную геройскую базу.
(28.05.2024 04:39)fatsawhorse Wrote: А Вы можете сказать по какой строчке Вы это определили?
По адресу ощибки и содержимому регистров процессора.
(28.05.2024 04:39)fatsawhorse Wrote: Да уже, эра 3.0.5 это набор ошибок
Лучше переходите на последнюю версию ERA.
|
|
28.05.2024 05:16 |
|
fatsawhorse
Posts: 1022
|
Здравствуйте XEPOMAHT
Quote:По адресу ощибки и содержимому регистров процессора.
- а Вы можете эту строчку из лога сюда скопировать, если не недолго и не сложно! Может я методом тыка поучусь такие ужасы определять!
Quote:Лучше переходите на последнюю версию ERA.
- я готов это сделать прямо сейчас даже, но там до сих пор сетевая игра сломана. Я 3.9.5 тестировал и рассинхрон. При этом не было моих кодов и все опции были также отключены в игре Да ещё там была проблема с шрифтами на вторых компьютерах (там всё в иероглифах непонятных мне было). Судя по этим проблемам они есть, были и будут и думаю их вряд ли устранят (возможно по лоби эти рассинхроны не видны, но по сетевому проводу точно имеют место быть), так не видят скорее всего, но я вижу и они там точно есть! А вся моя игра построена на сетевых баталиях, где применяются коды в битвах!
(This post was last modified: 01.06.2024 08:40 by fatsawhorse.)
|
|
01.06.2024 08:37 |
|
XEPOMAHT
Posts: 2356
|
(01.06.2024 08:37)fatsawhorse Wrote: Вы можете эту строчку из лога сюда скопировать, если не недолго и не сложно! Может я методом тыка поучусь такие ужасы определять!
Exception
{ Module: h3era HD.exe Adress: [ 0x0043F2FC ] Code: EXCEPTION_ACCESS_VIOLATION Flags: 0x00000000 Information: read of address: 0x00000030
}
Context { EAX: 0x00000070, ECX: 0x00000002, EDX: 0x00000000, EBX: 0x0F53CB94, ESP: 0x02D382E4, EBP: 0x02D38380, ESI: 0xFFFFFFDE, EDI: 0xFFFFFF95 }
(01.06.2024 08:37)fatsawhorse Wrote: но там до сих пор сетевая игра сломана. Я 3.9.5 тестировал и рассинхрон. При этом не было моих кодов и все опции были также отключены в игре
Печально, что не исправили. Попробуйте версию ERA 3.9.12, может там всё же исправили мультиплейер (т.к. онлайн-лобби на ней люди как-то играют).
|
|
01.06.2024 09:23 |
|
Berserker
Posts: 16657
|
|
01.06.2024 10:19 |
|
fatsawhorse
Posts: 1022
|
Здравствуйте Berserker
Quote:fatsawhorse, В 3.9.11 уже нет проблем с рассинхроном без скриптов.
- пожалуйста, можно мне её протестировать! Очень хочу проверить. Правильно ли я понял, без всех скриптов? Неужели и свои нельзя вставлять? Или только без опций это! в 3.0.5 опции встроенные не все, но не которые и мои скрипты не давали рассинхрон, работая совместно!
А шрифт на втором компьютере исправлен или снова иероглифы греческие?
Хочу тестировать! сслыку дайте плиз..
XEPOMAHT Вы правы, я даже смотря на этот адрес с ошибкой просто-напросто не могу даже понять что дело именно в том что Вы мне написали в прошлый раз!
Но спасибо за подсказку где искать проблему (хотя я её и не найду. Это видимо где-то внутри игры, а не мои скрипты)
|
|
01.06.2024 10:42 |
|
Berserker
Posts: 16657
|
|
01.06.2024 13:43 |
|