Current time: 15.01.2025, 18:57 Hello There, Guest! (LoginRegister)
Language: english | russian  

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

Posts: 7107
Post: #391

блин. я помню что писал скрипт существа, забирающего свойства других. и использовал там !?BG1, потому что по !?BG0 действие было нулевым. может это вы чето нахимичили в 3.59?


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
04.09.2009 20:31
Find all posts by this user Quote this message in a reply
Efrit Offline
Administrators

Posts: 6184
Post: #392

gamecreator, ничего мы не химичили. Я вообще под 3.59 ещё скрипты не пишу - пока и возможностей 3.58 хватает, !!UN:C и в 3.58 есть. Вот как LUA просмотрю как следует - так и пересяду на 3.59-платформу Sm


Welcome!
04.09.2009 20:36
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5441
Post: #393

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

Желательно не громозский способ.. например через UN:C
05.09.2009 03:37
Visit this user's website Find all posts by this user Quote this message in a reply
Efrit Offline
Administrators

Posts: 6184
Post: #394

Bes, а как насчёт такого варианта - попробовать скастануть в пустую позицию поля битвы (предварительно проверим её с помощью !!BU:O) один зыбучий песок с помощью !!BH:Q или !!BM:Q, и после этого - тут же проверить эту клетку на наличие песка с помощью всё того же !!BU:O ? (и удалить песок, если он там ещё есть, естес-но Sm )


Welcome!
05.09.2009 16:19
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5441
Post: #395

идея мне понравилась.. необычная,интересная.. Sm
но не подходит:
1. а если будет не гарнизон запретом,а антимагический арт? лишние условия нужно прописывать...

спасибо за идею
Добавлено:
sergroj предложил способ найти адрес для UN:C..
Quote:с АртМани точно можно найти
GrayFace (02:54:26 5/09/2009)
это должно быть внутри менеджера битвы - его адрес лежит в 6919200
GrayFace (02:54:51 5/09/2009)
найди простое значение
GrayFace (02:55:59 5/09/2009)
потом просто добавь любое 4-байтовое значение в таблицу и замени его адрес на 699420 (это уже в шестнадцатиричной)
GrayFace (02:56:57 5/09/2009)
потом из адреса простого значения, которое ты нашел, вычти значение по второму адресу
я не сообразил как это.. может кто поможет по такому алгоритму?
Bad (я бездарь)
(This post was last modified: 05.09.2009 22:13 by Bes.)
05.09.2009 22:08
Visit this user's website Find all posts by this user Quote this message in a reply
MOP Offline
Moderators

Posts: 1468
Post: #396

(31.08.2009 18:25)Bes Wrote:  !!BA-10:H0/?y3; получит к примеру 56
Э-э-э... А есть команда BA-10? Может, НЕ-10?
Quote:Мой совет: не использовать триггеры вообще, сразу вызывать функции.
Проще всегда использовать лишь глобальные переменные.

Вчера натолкнулся на глюк: в !?BR не получилось задать значение z-переменной. Высер произошёл на таком коде:
Quote:!?BR|15/16; обнуление информации каждый раунд битвы
!!VRz1:S^^;
!!VRv2:S$ID DEF`S & DWELLINGS$+462; инфо о стеках
!!SN:E$CopyMemory$/0/42/$AdressZ1$/v2; скопировать нулевую информацию
Посмотрел через АртМани - произошло копирование не нулевой информации, а последнего значения z1, которое она фиг знает где и когда получила. Пришлось заменить код на такой:
Quote:!?BR|15/16; обнуление информации каждый раунд битвы
!!VRv3:S$ID ArtifactsMerchants$+224; - нулевая память после артефактов Торговцев
!!VRv2:S$ID DEF`S & DWELLINGS$+462; инфо о стеках
!!SN:E$CopyMemory$/0/42/v3/v2; скопировать нулевую информацию
Так вот вопрос: глюк в !?BR или в ЭРЕ?


Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery
(This post was last modified: 09.09.2009 14:54 by MOP.)
09.09.2009 14:50
Find all posts by this user Quote this message in a reply
Efrit Offline
Administrators

Posts: 6184
Post: #397
Восклицание 
Офигеть, вот это баг так баг. Оказывается, ERM совсем не умеет проверять строгие неравенства между дробными числами (то есть < или >). Спасают только нестрогие неравенства (<= или >=) - их ERM проверять умеет...


Welcome!
09.09.2009 22:18
Find all posts by this user Quote this message in a reply
Дьякон Offline

Posts: 395
Post: #398

Я думал все баги уже известны


Страус труп (с) Бьерн
09.09.2009 23:15
Find all posts by this user Quote this message in a reply
DracoLich Offline

Posts: 251
Post: #399

(05.09.2009 03:37)Bes Wrote:  Подскажите,пожалуйста!!!
"Как можно узнать, что битва происходит в магическом гарнизоне?"

Желательно не громозский способ.. например через UN:C

эм... а такой метод чем не нра?
!?BA;
!!HE-10:P?y1/?y2/?y3;
!!OBy1/y2/y3:T?y4 U?y5;
!!IF&y4=33/y5=1:M^гарнизон антимагии^;
11.09.2009 08:49
Visit this user's website Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5441
Post: #400

сэн-сэй,такой метод даёт тип и подтип ГЕРОЯ,а не гарнизона..
(насчёт BA-10 эт я перепутал,конечно же просто !!BA:H0/?y3)
11.09.2009 14:47
Visit this user's website Find all posts by this user Quote this message in a reply
DracoLich Offline

Posts: 251
Post: #401

(11.09.2009 14:47)Bes Wrote:  сэн-сэй,такой метод даёт тип и подтип ГЕРОЯ,а не гарнизона..
(насчёт BA-10 эт я перепутал,конечно же просто !!BA:H0/?y3)

ты хоть пробовал? у меня все работает, и как положено возвращает гарнизон 33 антимагический 1
11.09.2009 17:17
Visit this user's website Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5441
Post: #402

хм.. в том то и дело что ДА. Bad
мне давал именно Героя Bad
ладно,спасибо,я всётаки вынужден был писать цикл поиска нужного мне гарнизона,сверяя координаты
(как говорится,глумная голова и не такое сделает)
Добавлено:
правда я координаты брал через BA:P,а не через HE:P
Добавлено:
может есть разница? %)
(This post was last modified: 11.09.2009 19:48 by Bes.)
11.09.2009 19:46
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16695
Post: #403

Не так, Бес. Всё намного проще. Для проверки объекта идёт следующий псевдокод:

Quote:выключить ошибки
получить координаты героя
получить значение Х объекта У по этим координатам
включить ошибки
если была ошибка, то объета нет, иначе есть

Альтернатива: установка v2,v3,v4 координат героя, при этом v2 = x - 1; Затем одна команда поиска. Если координаты не равны геройским, значит гарнизон не здесь. Всё экранировать запретом ошибок.


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

Posts: 5441
Post: #404

дело в том,что на карте практически,очень редки такие гарнизоны,потому не вижу особой разнице в твоём варианте и в том,что я вынужден был реализовывать.. всё равно цикл проскочит очень быстро (UN:U33/1/-1/#)..
(если будет желание,я конечно пропишу твоим способом,а пока пусть как есть,прости)
11.09.2009 22:23
Visit this user's website Find all posts by this user Quote this message in a reply
DracoLich Offline

Posts: 251
Post: #405

ну можно вспомниить про скрипт "гарнизоны".. правда там тока обычные (
во всяком случае, я получал именно номер объхекта гарнизона, а не героя. 3.58ф без модулей и т.п.
12.09.2009 17:53
Visit this user's website 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-2025 MyBB Group