Current time: 22.11.2024, 12:10 Hello There, Guest! (LoginRegister)
Language: english | russian  

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

Posts: 1315
Post: #7621

Bes, ему нужно было просто разобраться почему не срабатывает нападение на монстра.
А ты заставил его идти в обход


Карта-мод "Война на Холсте"
27.12.2020 16:58
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1022
Post: #7622

SergOz я думаю разобраться была не судьба.. Никто н откликнулся на мой запрос кроме Вас и Bes В одиночку это невозможно было сообразить, а ибо помогать никто не хотел, то я схватился за этот вариант и он оказался отличным.. Мне так этот способ понравился от Bes и даже интереснее стало, но просто во-втором коде недоработка и я не пойму в чём? А так здорова получилось и этот вариант просто замечателен... Sm

Ребята, помогите ошибку найти во-втором скрипте
Он работает, но ошибка возникает тогда, когда код весь проходит до конца...
(This post was last modified: 27.12.2020 17:14 by fatsawhorse.)
27.12.2020 17:10
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #7623

SergOz, я ещё и крайний 96-copy
fatsawhorse, если верить со слов, то похоже на ошибку компилятора ERA, что не исключено, ведь Berserker когда-то занимался правкой подобного рода.
Но, для понимания истинной проблемы нужен ЛОГ ошибки. Повторите в игре баг кода и, не нажимая в окне ошибки кнопку ОК свернитесь и заархивируйте содержимое HoMM3 ERA 2.9.14\Debug\Era
Скиньте в тему ошибок архив.

А чтобы не мешала эта ошибка, отключите потом у себя в коде показ ошибок, как это описано в справке по команде UN:P904 применительно к вашему коду в теле триггера !?OB54;

P.S. нет нужды в строке !!VRv8798:S0 S1; присваивать сначала 0 а потом 1. Сразу записывай !!VRv8798:S1;
27.12.2020 17:32
Visit this user's website Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1022
Post: #7624

Bes, я так уже делал !!UN:P904/1 P905/0; перед тем как сюда написать и ничего не получилось.. Думал сам разберусь и не вышло!

Bes я выложил ошибку сюда http://wforum.heroes35.net/showthread.ph...#pid120502

и на всякий случай сюда вставляю https://dropmefiles.com/pYDIX
(This post was last modified: 27.12.2020 18:09 by fatsawhorse.)
27.12.2020 18:08
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1022
Post: #7625

Всё перепробовал касаемо тригеров, которые бы активировали бродячего монстра при нападении и оказалось, что единственный правильный вариант это ТОЛЬКО через !?OB54;, а больше никак. !?CM - это не выход.. Они работают не так как надо что недавно заметил.. Будь ты на другом конце экрана и нажмёшь на бродягу и он (тригер) сработает - чушь полная.. Да ещё нельзя при этом тригере нажимать на пустое место где был заявленный монстр ныне уничтоженный - сразу ошибка идёт и т. д. и т. п. Плохо что ЭРА не доработана до конца!
В новой то версии ЭРЫ 9.2.14 эта ошибка имеется или уже искоренили её?

Так что если монстр бродячий, то для него настройка ну в идеале будет только через объект-тригер !?OB54;

Ребята, ну правду бродячие монстры не работают! Сами да, нападают, но на них не напасть! Если проблема в возникшей ошибке не будет исправлена в коде
, то думаю придётся от бродячих монстров вообще отказаться.. "ИИ" то пытается убить бродячего монстра а они не уничтожимы (свойства обнулены) и эта картина наблюдается постоянно, ход за ходом!

Если вообще это доработать в принципе нельзя, ну я имею ввиду эту ошибку в коде, то очень бы это хотелось знать!

И что вообще заменили в ЭРЕ 9.2.14 в сравнении с ЭРА 9.2.4?
Меня в первую очередь интересуют опции (точно ли все на своём месте и под своими номерами? Ничего не перекроили?)
Все ли существа на месте и артефакты (ничто не исчезло ли?), карта 252 х 252 и первичные параметры 127 - есть ли это всё там?
(This post was last modified: 28.12.2020 22:00 by fatsawhorse.)
28.12.2020 18:20
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1022
Post: #7626

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

Я чуть позже приложу тот файл, что забыл в ошибку и заодно архив с ошибкой обновлю..

Благодарю Вас
(This post was last modified: 30.12.2020 17:49 by fatsawhorse.)
30.12.2020 17:48
Find all posts by this user Quote this message in a reply
fatsawhorse Offline

Posts: 1022
Post: #7627

Здравствуйте..

Bes, у меня получилось разобраться в проблеме нападения на бродячего монстра и теперь всё работает..

Да, сначала без моего кода ошибок не возникало, но когда я его вставил и активировал, то стала вылезать ошибка после окончания его срабатывания.

Отключение скрипта 57 в опциях 57; 232; 231 и 235 не помогло. Я все опции даже отключал и всё без изменения – ошибка возникала всё равно!

Эта команда !!SN:Q; не подействовала после установки ниже строки !!HE-1:Ty7/y8/y9/y20/y25; и всё равно происходил по-прежнему вылет с игры!

Bes, вот готовый код, работающий без ошибок
Сначала я подумал, что ошибка возникает из-за того, что беса я удаляю и игра не понимает, как дальше интерпретировать это событие, если бес уже удалён. Я решил обнулить его свойства и всё сработало, но ошибка, возникающая уже не сбрасывала игру и я решил её отключить, как и Вы сказали и всё стало работать! Оказывается надо обнулить было объект. Это самое главное было, что необходимо было мне сделать!

Три вопроса у меня (два остались последних, а первый возник недавно):

1. Я так и не понял, как надо эти ошибки ERM найти, которые необходимо отыскать в корне лог WOGCRACHLOG.TXT?

2. Я активировал бродягу таким способом
Как мне сделать, чтобы при активации он не бил «ИИ», а только человека?
Никак не могу установить необходимые свойства, чтобы они сработали. Он всегда бьёт всех без разбора (кто ближе стоит к нему). Может это не работает вообще в ЭРЕ?

Вот код
3. Никак не могу заставить бродягу снова появиться на прежних координатах, после того, как он нападёт и погибнет? Может это также не срабатывает вообще?

Этот код воскрешает бродягу лишь тогда, когда его убьют сами, а в остальных случаях он бесполезен Код
А когда он нападёт и погибнет, то как его снова воскресить, если не через таймер? Но таймер тогда их намножет бессчётное кол-во!

Архивы с ошибками я обновил. Вот ссылка https://dropmefiles.com/UmH5p

Но не совсем понял как нужно мне файл вставить недостающий (см. вопрос № 1)
Что-то их так и не получается доработать (2-й и 3-й вопросы). Не знаю что делать? 3-й вопрос можно решить таймером и через определённый промежуток времени проставлять монстров (и пусть наплодится целая гора), а вот второй не знаю как быть? Уж очень хочется решить именно второй вопрос (просто так всех компьютерных игроков поперебьёт) Bad
(This post was last modified: 02.01.2021 14:44 by fatsawhorse.)
31.12.2020 20:18
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #7628

What could be wrong here...
I wanted to set Battle Mode to 8 if ini is not exisited (default value). Although from my test, I had y1 =1, y2 = 1 instead of 8. 112


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 03.01.2021 00:11 by Archer30.)
03.01.2021 00:08
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #7629

Archer30, never mix named variables with non-named, please.
Result: 8.


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

Posts: 1315
Post: #7630

(03.01.2021 05:35)daemon_n Wrote:  ...как все эти w-vars работают, а то для меня это потёмки
Небольшой пример
Потом, в бою, можно проверить
В циклах можно так:
Но, если не старая версия Эры, то сейчас, имхо, удобнее через SN:W


Карта-мод "Война на Холсте"
(This post was last modified: 03.01.2021 16:23 by SergOz.)
03.01.2021 16:20
Find all posts by this user Quote this message in a reply
V_Maiko Offline

Posts: 610
Post: #7631

Could someone research and give me with some Universal Command variable the ultimate way to be able to assemble artifacts using non-SOD parts? Please, it's really required for my mod, even if UN:C is used for ERM2, I need it because my creativity on artifacts has been stunted.
(This post was last modified: 04.01.2021 04:43 by V_Maiko.)
04.01.2021 04:43
Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1315
Post: #7632

Raistlin, спасибо за активное пополнение темы UN:C. 20
У меня такой вопрос по абилкам монстров: можно ли нужную абилку "подсунуть" другому/любому существу?


Карта-мод "Война на Холсте"
04.01.2021 05:12
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #7633

Как на ERM (ERM 2.0) "прошерстить" все города один за одним на карте в начале сценария?
Проще говоря, мне надо в начале карты "прочитать" и "записать", какие строения есть в городах, затем надо отстроить, если чего-то не хватает, и разрушить, если лишнееAb


Image: widget.png?style=banner2

Новейший Heroes Launcher
06.01.2021 14:54
Visit this user's website Find all posts by this user Quote this message in a reply
SergOz Offline

Posts: 1315
Post: #7634

daemon_n, мне Berserker давал подобный код по монстрам.
Вот вольный перевод кода на города от меня:
В SN вместо 98 и -1 можно/нужно использовать (OBJ_TOWN) и (ANY_OBJ)

P.S. Кстати, заметил, что в строке !!re i ; двоеточие после i (!!re i : ; ) не имеет значение - скрипт работает в обоих случаях. Как всё-таки правильно?


Карта-мод "Война на Холсте"
(This post was last modified: 06.01.2021 17:33 by SergOz.)
06.01.2021 15:50
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #7635

SergOz, FindNextObject уже можно не использовать, UN:U команда была исправлена и дополнена.

Code:
[+] Improved UN:U command. It does not raise error if no more objects are found, but sets x-coordinate to -1 instead. Thus no premature
    objects counting is required. A new syntax with 6 parameters was added to allow using arbitrary integer variables instead of v-variables.
    !!UN:U(objectType)/(objectSubtype)/(direction like -1/-2 or object index)/(x)/(y)/(z).

    Example:
    ; Let's traverse through all map monsters, doubling their quantity

    !#VA(x:y) (y:y) (z:y); define variables to store object coordinates
    !!VR(x):S-1;           setting x-coordinate to -1 will force to start search from scratch
    
    !!re i; endless loop
      !!UN:U(OBJ_MONSTER)/(ANY_OBJ)/-1/(x)/(y)/(z); find next monster, (x) = -1 on failure
      !!br&(x)<0:;                                  exit loop if nothing found
      !!MO(x)/(y)/(z):Gd*2;                         double monsters quantity
    !!en:;

daemon_n,

Самый оптимизированный вариант по скорости и качеству:


SergOz, если работает без ":", то можно и не ставить.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
06.01.2021 20:12
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