Author | Subject | |
---|---|---|
Sir GreenDrekon
HoMM III: Landless |
Благодарю, всё работает так, как надо.
----------------- 1) Можно запросто дать своиства объекту с опр. координатам. А можно ли дать опр. своиства всем объектам с типом-63 и подтипом 21? ---------------- 2)Как поселить во внешнем жилище существ. ---------------- 3)Если зайти в шахту то она отключеться. Шахта называеться "кристалическая пещера" При первом посещении шахты к v1 прибавляеться 1 и показывается первый текст и шахта отключаеться и называеться уже "заброшеная кристалическая пещера". При втором посещении выводиться текст:"Врядли эта шахта когда нибудь заработает." При третем:"Здесь нет работников." При четвёртом:"Хотя... Если оставить работников, то она ещё может заработать." Вот мой скрипт: ZVSE !#VRz1:S^Кристалическая пещера^; !#OB3/30/0:H1; !?OB3/30/0&1000; !!VRz1:S^Заброшеная кристалическая пещера^; !!OB3/30/0:H1; !!OB3/30/0:S; !?OB3/30/0; !!VRv1:+1; !!IF&v1=1:Q1/21/16/1^Вы нашли кристалическую пещеру, но по всей видимости она заброшена.^; !!IF&v1=2:Q1/21/16/1^Врядли эта шахта когда нибудь заработает.^; !!IF&v1=3:Q1/21/16/1^Здесь нет работников.^; !!IF&v1=4:Q1/21/16/1^Хотя... Если оставить работников, то она ещё может заработать.^; Етот скрипт работает. Итак мой вопрос. При четвёртом посещении шахты задаеться вопрос: "Оставим трёх гномов или нет?" Если нет то тексты идут заново, а если да, то у героя отнимаеться четыре гнома, показываеться текст, и шахта работает. P.S. Пожалуста, опишите поподробнее третий скрипт |
|
Sir mefisto
HoMM V: Knight |
1). Можно. Просто вместо координат нужно написать !?OB63/21; Если нужно изменить подсказку пишите !#HT63/21:Tz400; Где z400 - текст подсказки.
2). Тут подумать надо... 3). Добавте следующее: !!IF&v1=5:Q1/21/16/2^Оставим трёх гномов или нет?^; !!VRv1&v1=5/1:S0;[если отрицательный ответ] Если герой отвечает "да", то у него нужно отнять 3 гномов. Это можно сделать быстро или качественно. Быстро - в одну строку: !!HE-1&v1=5/-1:C0/s/16/d-2; - вам надо будет только точно знать слот, где находяться гномы. Качественно - проверить каждый слот на наличие гномов и удалить троих. Если нужно, то скажите, я напишу. |
Special status: |
Sir GreenDrekon
HoMM III: Landless |
1)По вопросу с пещерой мне нужен второй вариант.
2)Не могли бы вы оставить ссылку на программу, создающию новые объекты. Я знаю, что такая есть, но вот где. Ключевое слово "новые" |
|
Sir mefisto
HoMM V: Knight |
Это программа не для создания, а для изменения. Ссылки нет, но если Вы напишете свой e-mail, то пришлю архив - патч для редактора.
Вот второй вариант: !!VRv133&v1=5/-1:S0; !!DO133/0/6/1&v1=5/-1:P; !?FU133&v133=0; !!HE-1:C0/x16/?v11/?v13; !!VRv13&v11=16:-3; !!VRv133&v11=16:S1; !!HE-1:C0/x16/v11/v13; Всё. Вроде, должно работать (я не проверял и писал по памяти). !!DO - запускает функцию 133 семь раз, проверяя все слоты с существами. Если в каком-либо слоте встретит гномов (v11=16), то троих заберёт. !!VRv133&v11=16:S1; - строчка нужна для того, чтобы у героя забирали только троих гномов, а не по три из каждого слота. |
Special status: |
Sir GreenDrekon
HoMM III: Landless |
Спасибо, но что-то не работает!
Во-первых: гномы не отнимаються!(отнимаються когда нажать отм.) Во-вторых: мне нужно, что-бы шахта снова работала! В-третьих: Если разделить гномов на 1 и 2 то отнимаеться один гном! ------- 1) А можно изменить картинку существ (в окне героя)? 2) Так как мне всё таки существ во внешнем жилище изменить? |
|
Sir mefisto
HoMM V: Knight |
Дурья моя голова! Чтобы исправить первую ошибку достаточно во всём скрипте исправить -1 на 1, т.е.:
!!IF&v1=5:Q1/21/16/2^Оставим трёх гномов или нет?^; !!VRv1&v1=5/-1:S0; !!VRv133&v1=5/1:S0; !!DO133/0/6/1&v1=5/1:P; !?FU133&v133=0; !!HE-1:C0/x16/?v11/?v13; !!VRv13&v11=16:-3; !!VRv133&v11=16:S1; !!HE-1:C0/x16/v11/v13; |
Special status: |
Sir GreenDrekon
HoMM III: Landless |
1) А можно симитировать поражение, если у героя не останеться каках-то существ?
2)Я смог изменить существ в жилище двумя строками, но выскакивает стандартное сообщение башни лучников с предложением нанять паладинов, а мне надо, что-бы в этом сообщении писало не "башня лучьников", а "замок паладинов". |
|
Sir mefisto
HoMM V: Knight |
1.Можно.
!#TM45:S1/999/1/255; !?TM45; !!DO45/0/6/1:P; !?FU45; !!HE-1:C0/x16/$/?v1;[$ - номер нужного монстра] !!VRv2&v1>0:+1; !!UN&v2=0/x16=6:Q0;[проигрыш, если нет ни одного монстра типа $] 2.Попробуйте так: !#VRz113:S^Замок паладинов^; !#HTt/s:Tz113; [вместо t и s вставьте тип и подтип нужного объекта] |
Special status: |
Sir wquolz
Messages: 4 |
Здравстуйте, скажите пожалуйста как сделать условием победы уничтожение всех нейтральных монстров на карте (или еще лучше монстров определенной фракции, например некрополиса).
Насколько мне известно, данное условие было реализовано в компании Праздник Жизни за варвара Килгора. Я пробовал открывать эту карту через Save Editor. Ничего не выходит. Помогите... |
|
Sir mefisto
HoMM V: Knight |
ZVSE
!#TM3:S1/999/1/255; - устанавливаем таймер для всех игроков !#VRv600:S0; !?TM3; !!VRv600:S0; !!DO3/56/69/1:P; !!UN&v600=0:Q1; - выйграть, если не осталось ни одного стека. !?FU3; !!UN:U54/x16/?n; - считаем количество стеков нежити типа x16 !!VRv600:+n; Функция !!UN:U подсчитывает количество объектов определённого типа. Команда !!DO последовательно считает сколько скелетов, сколько войнов-скелетов ... ... ... сколько Драконов Приведений размещено на карте. Всё количество записывается в переменную v600. Если стеов больше нет (v600=0), то текущий игрок выигрывает. |
Special status: |
Sir wquolz
Messages: 4 |
Большое спасибо, попробую
|
|
Sir Norwin
HoMM IV: Knight |
Здравствуйте все. Помогите мне, пожалуйста. Я решил написать простенький скрипт, чтобы шахта серы с координатами 20/14/0 производила кристаллы. Вот написал такой скрипт:
ZVSE !#MN20/14/0:R5; Захожу в игру, запускаю карту и игра вылетает, выдавая какую-то ошибку и предлагая отправить отчёт. В чём дело? |
|
Sir Kirinyale
HoMM V: Knight |
Сэр Norwin, 18.07.2007 08:39 Попробуйте сделать то же самое не через инструкцию, а через глобальное событие на первый день: 1) Добавить какое-нибудь текстовое событие на первый день или исправить существующее так, чтобы оно начиналось с цифры, которая будет его ERM-номером (например: "1 какой-то текст"). Цифра в игре видна не будет. 2) Скрипт переписать так: ZVSE !?GE1; !!MN20/14/0:R5; В данном случае не проверял, но должно помочь. Это стандартное решение - работа с объектами в инструкциях глючит очень часто, так как на момент отработки скрипта они иногда просто не успевают правильно создаться и инициализироваться. |
|
Sir mefisto
HoMM V: Knight |
Можно так же попробовать другой триггер, пост-инструкцию. Тоже может помочь, причём не нужно никаких сообщений с цифрой
!?PI; !!MN20/14/0:R5; |
Special status: |
Sir Kirinyale
HoMM V: Knight |
Сэр mefisto, 18.07.2007 15:30 Эх, не весь я ERM358.TXT прочитал... |
|
Sir mefisto
HoMM V: Knight |
Сэр Kirinyale Goldfire, 19.07.2007 11:01Сэр mefisto, 18.07.2007 15:30 Не Вы один, мессир, такой. Я просто изучал обычный англоязычный хэлп последней версии. |
Special status: |
Sir Kirinyale
HoMM V: Knight |
А какая нынче у нас последняя? У меня 2.03 завалялась.
|
|
Sir mefisto
HoMM V: Knight |
Сейчас - 2.06 для ERM 2.8.1, в виде html.
|
Special status: |
Sir Kirinyale
HoMM V: Knight |
А можно мне его на почту? Или ссылочку приватом, если таковая имеется.
|
|
Sir mefisto
HoMM V: Knight |
Отправил голубем
|
Special status: |
Sir Norwin
HoMM IV: Knight |
Сэр Kirinyale Goldfire, 18.07.2007 10:57 Спасибо. Помогло. Сэр mefisto, 18.07.2007 15:30 У меня старый ВоГ, так что не поможет, но всё равно спасибо. |
|
Sir Norwin
HoMM IV: Knight |
У меня возникло несколько вопросов.
В ресиверах выбираю GRM, потом Show a message Type1 (!!IF:Q#/#/#/#^TEXT^; ), читаю внизу описание: >> {IF Receivers Options} (Q#/#/#/#^TEXT^) - Show a message or request with one picture (#1 - number of flag; #2 - type of the picture (see list below); #3 - subtype of the picture (Format [TP Q]); #4 - type of message; =1 - message (FLAG #1 WILL NOT BE SET!!!); =2 - request yes/no (stored to the flag)) Тут моя огрятская голова очень долго размышляла: 1)Какой флаг нужно указать вместо первой решётки? 2)Что нужно смотреть за такой list below? 3)Что нужно ставить вместо четвёртой решётки, я вообще не понял. Ещё я не совсем понимаю, что такое флаги (описание в первых постах этой темы я всё же читал). Не мог бы мне кто-нибудь это разъяснить? Прошу прощения, если вопросы глупые. |
|
Sir mefisto
HoMM V: Knight |
1) Любой от 1 до 10. Просто вставить цифру. Он нужен для того, чтобы записывать действия игрока. (см. последний пункт)
2)see list below - смотри список (там ссылка должна быть), где указан тип и подтип нужной картинки. Например, для ресурсов тип - 0-6, а подтип - количество. 3)Четвёртая решётка - тип самого сообщения. При использовании одной картинки, можно вставить 1 (простое сообщение с кнопкой "Да") или 2 (сообщение с заданной картинкой и двумя кнопками "Да" и "Нет"), при выборе второго типа, результат (на какую кнопку нажал игрок) записывается в флаг, который Вы обозначили в первой решётке. Если герой нажал на "Да", этот флаг примет положительное значение, иначе - отрицательное. |
Special status: |
Sir Norwin
HoMM IV: Knight |
Сэр mefisto, 22.07.2007 18:42 Спасибо, вроде бы разобрался. Теперь возник другой вопрос: как при нажатии на ту или иную кнопку (да или нет) после вопроса происходило какое-нибудь действие? Например, увеличение количества опыта. |
|
Sir mefisto
HoMM V: Knight |
Вот пример:
ZVSE !?LE5/6/0; !!IF:Q6/-1/-1/2^Хотите получить опыт?^; *две кнопки, без картинки. Более простой вариант строки: !!IF:Q6^текст^; *если герой нажал на "да", условие для всех действий - "&6" !!IF&6:Q1/17/500/1^Вы получили:^; *сообщение с картинкой опыта и количеством с одной кнопкой !!HE-1&6:Ed+500; *любой герой, посетивший локальное событие в точке 5/6/0, если согласился на предложение, получает 500 опыта. *если герой нажал на "нет", условие для всех действий - "&-6" !!IF&-6:M^Вы не получили опыт, потому что отказались.^; |
Special status: |
Lady Perfect Stranger
HoMM IV: Landless |
В таверну впорхнула молоденькая фея.
Глубокоуважаемый Сэр Мэфисто, мне нужен скрипт очень похожий на предыдущий. Необходимо чтобы при нападении на монстра выскакивало окно с вопросом с вариантами ответов да или нет. При положительном ответе монстр исчезал, а при отрецательном - нет, но и не нападал. Произнеся это, фея замерла в ожидании ответа. |
|
Sir mefisto
HoMM V: Knight |
Как и заказывали: x/y/l - координаты монстра. Например, 6/2/0 - клетка 6/2 верхнего уровня карты, 2/3/1 - клетка 2/3 подземелья карты.
ZVSE !#OB6/2/0:S; *делаем так, чтобы объект (монстр) в данной клетке карты не проявлял свои стандартные реакции на контакт с героем !?OB6/2/0&1000; *читайте так: если герой посетил монстра в 6/2/0 и, если за данного игрока играет человек, то: !!IF&-2:Q2/21/m/2^Да или нет?^; *задаётся вопрос, причём ответ сохраняется во флаг 2. m - номер монстра (например, у копейщика - 0) !!UN&2:O6/2/0; *удаляем объект, если получили ответ "Да" на сообщение |
Special status: |
Lady Perfect Stranger
HoMM IV: Landless |
Премного благодарна, сэр Мефисто! - сказала фея и послав эльфу воздушный поцелуй, упорхнула дорисовывать карту
|
|
Sir Kirinyale
HoMM V: Knight |
Сэр mefisto, 22.07.2007 15:16 Большое (хоть и слегка запоздалое) спасибо. У самого вдруг возник вопрос: точно ли нигде нет возможности явно получить текущий максимум маны героя, или я просто не могу найти её даже в новом хелпе? Цель - отключить автовосстановление маны. Казалось бы, запросто вычисляется, да вот беда - у героя специализация по интеллекту... Подробности проблемы здесь: www.heroesportal.net/tavern/?id=161679&pagenum=6#last |
|
Sir mefisto
HoMM V: Knight |
Нет, в ERM такой возможности нет. Как я понял, 5% за каждый уровень добавляются не к количеству маны, а к вторичному умению интеллект.
В итоге получается формула: B*(200%+L*5%), где B - база, 200% - за счёт навыка экспертного интеллекта, L - уровень героя. И она верная... но: она считает верно (абсолютно) только тогда, когда счёт идёт на десятые доли, т.е. при умнажении на 2.1, 2.2, 2.3. Иначе говоря, если L*5 - число не чётное, то в итоге мы получем лишнюю единицу в окончательной сумме. Пример: Герой Эллешар 2 уровень, 2 знания, эксперт интеллект: 20*2.1=42 - такой показатель есть и в игре. Герой Эллешар 3 уровень, 2 знания, эксперт интеллект: 20*2.15=43, но в игре этот показатель равен опять же 42. Т.е. чистая прибавка идёт через один уровень и приходится на каждый чётный. Именно из-за сего факта нет прибавки на первом уровне. Надеюсь, помог. |
Special status: |