Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопросник
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III > Моды > Скрипты
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
Aleee
А с монстром что?
SnoRT
!!OBx/y/l:T?v10;
Т.е. проверяем тип объкта, находящегося в координатах. Если v10 равно 54, значит там монстр. Если нужен ещё его тип, дальше юзай !!OBx/y/l:U?v10;
Bes
Можно ли в диалоге показывать портрет героя (любой стандартный)???

И вот теперь, насчёт неролучаемости!
Я применил такой скрипт в карте...
Код
!!MA&-100:X2/16384; арбалетчики теперь иммунны к магии огня

Вроде всё работает, а потом только заметил что арбалетчики потеряли способность стрелять, что за фигня???
Пробовал ставить стрельбу без штрафа перпядствий (2048) - таже проблема появляется, и т.д. короче при любой попытке улучшить монстра через X2, он перестают уметь стрелятьsad.gif

Дальше...
!#MA:X183/524288 X183/32768 - не работает sad.gif (это двойной удар+атака как у гидр).
Короче из всего для X2 у меня получилось только про мораль (131072)
Druin
Цитата(Bes @ 02 Feb 2007, 21:04)
Можно ли в диалоге показывать портрет героя (любой стандартный)???

Без дополнительной графики нет... С графикой можно через !!IF: D E;

Цитата(Bes @ 02 Feb 2007, 21:04)
Я применил такой скрипт в карте...
Код
!!MA&-100:X2/16384; арбалетчики теперь иммунны к магии огня

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

Ты присваеваеш конкретное значение, а надо побитно сложить... Смотри по !!VR в самом низу хелпа команды "LOGICAL BIT OPERATIONS"...
Berserker
Точно, а ещё лучше не смотри туда. Просто возьми уже имеющееся значение флагов в переменную, затем прибапвь нужные 16384 или другое и вновь установи.
SnoRT
А ещё лучше получить в переменную текущие значения флагов, а потом через !!VR:|16384; прибавить нужный бит. Ну это не для этого случая с арбалетчиками, но если так какой-то монстр уже имеет прибавляемый флаг, то ничего не прибавится и, следовательно, не будет ошибок.
Berserker
Тогда да, но так как было условие, что умения ешё нет, а надо добавить, то я и использовал общепонятный знак +. А вообще, можно монстрам одно спе-умение дать, если воговцы егго не заняли. Помните пустой флаг? Установите его нужным монстрам и добавьте небольшой скрипт, проверяющий этот флаг...
gamecreator
какой пустой флаг?
Aleee
Такой вопрос: как мне можно связать номер стека, номер слота и позицию на поле боя?
Вообще, что такое стек? Отряд?
Могу ли я, зная номер слота существа героя, узнать номер стека в битве? Или это одно и тоже?
Кто-нить мне разъяснит?
professornova
Я разнясню.
На поле боя монстров нет, есть стеки. Стек это отряд монстров.
Перед боем берется слот героя номер 0 (первый) и на его основе создается стек номер 0 (в котором, столько же монстров, такие же характеристики...)
Так же создание стеков проходит для слота номер 1,2,3,4,5,6 и то же самое для защитника, только у него нумерация начинается с 21.
Все обращение к отрядам монстров идут через номер стека.
Например, до боя у героя в слоте номер 0 (первый) были копейщики.
Для того чтобы обратится к копейщикам в бою надо обращатся к стеку номер 0 (или 21 для защитника).
После боя информафция о стеках копируется обратно в слоты героя.
Есть у нас стек номер x, тогда:
!!BMx:P?y1; - Узнать позицию его на поле боя
!!BMx:O?y2; - Узнать номер слота, из которого брался этот стек и куда скопируется после боя.

Для некоторых стеков этот слот равен -1 (командиор, оруженосец), это значит, что стек не будет никуда скопирован после боя.
Все вызвываемые существа имеют этот номер равный -1.
Для атакующего стеки имеют номера от 0 до 20, для нападающего от 21 до 42.
То есть может быть только 21 стек сражающийся за одну сторону.
Чтобы узнать номер стека соответсвующий номеру героя ты должет циклом пробежатся по всем стекам этой стороны(0-20 или 21-42) пока слот не станет равным нужному нам.
Aleee
Доходчиво. Лови плюс.
Berserker
Флаг 8192 не используется и вроде равен 0. А значит его можно использовать в своих целях.
SnoRT
Ххммм... Пустой флаг?.. Прикольно, я и не знал... Интересно, его специально не заняли, для нас? tongue.gif
professornova
Также не используются флаги:
2097152
268435456
536870912
1073741824
Azure Dragon
Уважаемые скиптеры, помогите написать диалоговое окно, в котором игрок сам вводит ответ. Я посылал вопрос, но ту тему очистили. И ещё, у меня в карте есть несколько диалоговых окон, как сделать так, чтоб они Не СМЕШИВАЛИСЬ . Очень прошу помощи и спасибо за ответы. banghead.gif

Добавлено ([mergetime]1170790258[/mergetime]):
и плиз, мне пишите на версию 2.50
SnoRT
!!IF:D#/$1/$2/$3/$4/$5/$6/$7/$8/$9/$10/$11/$12/$13/$14/$15;
!!IF:E$/#;

Чтобы сделать диалог с возможностью ввода ответа тебе понадобятся только пункты, выделенные красным, в остальных местах оставляй пустое место или ставь "0". Первая команда (!!IF:D) задаёт настройки диалога. # - его номер, $2 - z-переменная текста над полем ввод. Вторая (!!IF:E) непосредственно выводит на экран этот диалог. Эти две команды обязательно должны идти подряд и в таком порядке и # должен быть одинаковый. Кстати, в !!IF:D можно не только вводить текст, но и показывать картинки и делать пункты выбора, в общем читай хелп.
А чтобы диалоги не смешивались - разным диалогам ставь разный номер.

P.S. Тема и впрямь лишняя, и поменьше красного цвета, ладно? unsure.gif

Добавлено ([mergetime]1170830703[/mergetime]):
Цитата(Azure Dragon @ 07 Feb 2007, 05:30)
и плиз, мне пишите на версию 2.50

Кхмм... Т.е. ты имел в виду ВОГ 3.50? blink.gif Вряд ли они там были... Хотя, если и есть, то действовать должны так же.
Azure Dragon
В Воге были, точно не помню в какой карте. Подскажите, где модна скачать улучшение до версии 3.58?
SnoRT
Я не знаю, где "модна" скачивать, но если не обращать внимания на влияния моды и опираться только на полезность, то скачать можно здесь http://hmm3.fclan.ru/ mellow.gif

Кстати, про диалоги с вводом. Их можно сокращать просто до !!IF:D/#/$1;
Bes
юди, я тут решил отказаться на время (пока карта не будет готова) от использования скриптов внутри карты (т.е. держать их в событиях-таймерах), а сделал отдельным erm-файлом (используя erm_s.exe). Короче, как сделать, чтобы моя карта подгружала сама скрипты для себя из внеш.файла?
Я поместил erm-файл с одноимённым названием в папку с картой - ничего sad.gif Не подключаются почему-то? sad.gif Я пробовал также использовать "bind" в пропатченном редакторе... создал событие (день 672) и подкрепил скрипт - опять ничего sad.gif.

В общем, помогите мне... скажите что я делаю не так!
Спасибо!

[Добавлено, 8 Feb 19:??]

Я тут полистал ориг. справку по ЕРМ, так вот, нашёл раздел "LIST OF THE CLAIMED". Скажите, перечисленные там v, z и пр. это что? то что "забито" в скриптах 3,58f? Если да, то стоит ли учитывать это при написании своих скриптов, причём изначально отказавшись от вогификации карты?

И такой вопрос, я в самом конце этой же стр. увидел это..
Цитата(ERM help)
script81.erm and script82.erm are reserved for Alexandru Balahura for 3.59 along with Function 870.
------------------------------------------------------------------------------------------
script78.erm, script79.erm, script80.erm are reserved for Perfecto

Так вот, почему вы, DracoLich, не учитывали это (если это конечно защищено авторством создателей WoG), когда использовали номера 78, 81 при нумерации своих скриптов? smile.gif
Azure Dragon
а на версию 3.55. Можно написать скрипт, который разрешает делать в звамке более одной постройки? Извеняюсь, у меня пальцы косые, я хотел написать слово "можно"
SnoRT
Цитата(Bes @ 09 Feb 2007, 02:53)
В общем, помогите мне... скажите что я делаю не так!
Спасибо!

Ммм... Тут я сам не знаю как это делается unsure.gif

Цитата(Bes @ 09 Feb 2007, 02:53)
Я тут полистал ориг. справку по ЕРМ, так вот, нашёл раздел "LIST OF THE CLAIMED". Скажите, перечисленные там v, z и пр. это что? то что "забито" в скриптах 3,58f? Если да, то стоит ли учитывать это при написании своих скриптов, причём изначально отказавшись от вогификации карты?

Да, всё что там указывается используется в стандартных скриптах 3.58. Если ты пишешь какой-то скрипт или карту, которая должна вогифицироваться, то тебе следует использовать переменные (функции и таймеры тоже), которые не указаны в claimed. Если же ты делаешь свою карту и её не надо будет вогифицировать, то смело забей на этот список.

Цитата(Bes @ 09 Feb 2007, 02:53)
И такой вопрос, я в самом конце этой же стр. увидел это..
Цитата(ERM help)
script81.erm and script82.erm are reserved for Alexandru Balahura for 3.59 along with Function 870.
------------------------------------------------------------------------------------------
script78.erm, script79.erm, script80.erm are reserved for Perfecto

Так вот, почему вы, DracoLich, не учитывали это (если это конечно защищено авторством создателей WoG), когда использовали номера 78, 81 при нумерации своих скриптов? smile.gif


Мммм... Нифига се, чё-то я такого не заметил... Да ничего страшного, номер скрипта то изменить не долго.

Цитата(Azure Dragon @ 09 Feb 2007, 05:09)
а на версию 3.55. Можно написать скрипт, который разрешает делать  в звамке более одной постройки? Извеняюсь, у меня пальцы косые, я хотел написать слово "можно"

Ммм... Не знаю. Ни с чем старее 3.58 не работал. Попробуй применить !!CA-1(#(x/y/l)):R0; когда здание в замке уже построено и больше нельзя. Если постройка разрешиться - начит повезло.

Добавлено ([mergetime]1170978897[/mergetime]):
Ааа, нет. Ничего не выйдет. !!CA:R; команда новая, только в 3.58 появилась.
DracoLich
[quoe] как сделать, чтобы моя карта подгружала сама скрипты для себя из внеш.файла?[/quote] в карте сделать одно событие с одной строкой ZVSE, это скажет карте о присутствии связанного файла. В любом случае, так написано в справке
Цитата
Так вот, почему вы, DracoLich, не учитывали это (если это конечно защищено авторством создателей WoG), когда использовали номера 78, 81 при нумерации своих скриптов?
а зачем? 3.59 еще ждать и ждать
Berserker
Кто-нибудь помнит, можно ли заставить героя кастануть закл на Карте Приключений?
DracoLich
!!OW:S
Berserker
Спасибо, Драколич. Это на будующее для Аддона, а пока не нашедши команду сделал всё более объёмным способом.
Aleee
У меня парочка вопросов:

1. Как можно узнать МАКСИМАЛЬНОЕ количество очков хода у героя? Для того, чтобы восстановить их относительно максимума.

2. Каким вообще образом или алгоритмом я могу записать координаты всех вражеских героев?

Пока это. Кто ответит?
DracoLich
!!HE#:G$; - Исходные ходы героя
Запускаешь круг-функцию на интервал 0/155, проверяешь героя x16 на ИИ, если так, записываешь его координаты в перекрестно-ссылающиеся переменные... Короче, код:
!!DO1/0/155/1:P=1/=2/=3;
!?FU1;
!!HEx16:O?y1;
!!OW&y1>-1:Iy1/?y2;
!!FU|y1=-1/y2=1:E;
!!HEx16:P?vx1/?vx2/?vx3;
!!VRx1:+3;
!!VRx2:+3;
!!VRx3:+3;
координаты будут заноситься от v1 до максимума v466
Aleee
Возникло несколько затруднений:

1. Как проверить ману героя во время битвы? Пробовал после каждого хода стэка через !!HE, но прямо на экран битвы вылазит часть окна героя.
2. Предположим, в битве я менял курсор, как мне вернуть обратно автоматический выбор курсора?
Berserker
!!UN:R7/0/0;
Azure Dragon
Berserker, А для сего в ЕРМ форматирование квестов, что оно даёт ???
Berserker
Признаться сам был удивлён услышать такое. Форматирования квестов там точно нет smile.gif
Наверное автор поста имел что-то другое в виду...

Добавлено ([mergetime]1171663785[/mergetime]):
Признаться сам был удивлён услышать такое. Форматирования квестов там точно нет smile.gif
Наверное автор поста имел что-то другое в виду...
DracoLich
Может, имелось ввиду возможность редактирования журнала?
Bes
Помогите люди добрые! ж(

Как отключить набивание опыта. Я использую это...
Код
!#UN:P900/0; опыт стэков выключен.
!#UN:P906/1; опыт в битве не набивается (?)

но не помогает sad.gif

И, такой вопрос сразу не отходя... Можно ли скрыть области, где герой побывал (не тупо задать радиусы черноты, а глобально чтоб как бы забыть что видел)
Aleee
М.б. систему опыта надо отключить: опция 901.
Bes
Цитата(DracoLich @ 10 Feb 2007, 05:24)
[quoe] как сделать, чтобы моя карта подгружала сама скрипты для себя из внеш.файла?
в карте сделать одно событие с одной строкой ZVSE, это скажет карте о присутствии связанного файла. В любом случае, так написано в справке

в справке действительно так написано, только почему-то ни слова про это...
Код
ERMS_CurentMap=

А ведь только после этой записи всё заработало moral.gif
gamecreator
ага, только Current
DracoLich
Цитата
Как отключить набивание опыта. Я использую это...
!#UN:P900/0;
Цитата
в справке действительно так написано, только почему-то ни слова про это...

CODE
ERMS_CurentMap=

А ведь только после этой записи всё заработало
Не я справку делал )) А вот находка интересна. Как это получилось?
Druin
Цитата(Bes @ 17 Feb 2007, 19:00)
Код
ERMS_CurentMap=

Это вообще где такое? blink.gif
И вообще никогда с подобной проблемой не сталкивался... Работает все без проблем...
Aleee
Это по-моему, когда файл *erm к одной карте привязываешь.
Druin
Это я понял... непонял только как там проблемы возникли?... Хотя может это мне повезло что всегда все у меня работало... Причем без ZVSE внутри карты...
Bes
Я эту строку подсмотрел в скрипт-файле к карте профессора Новы...
Azure Dragon
а как сделать, чтоб раз в неделю проверялось под каким цветом есть игрок, а не компьютер и этому игроку прибовлялось по 12 существ?

Добавлено ([mergetime]1172086910[/mergetime]):
Berserker, почти в конце приёмников есть опция QW(если мне не изменяет память) я про неё говорил. Зачем она?
gamecreator
Цитата(Azure Dragon @ 21 Feb 2007, 22:41)
а как сделать, чтоб раз в неделю проверялось под каким цветом есть игрок, а не компьютер и этому игроку прибовлялось по 12 существ?

таймером. в тригере таймера !!OW:I-1/?v10; - теперь в v10 тип игрока. 1 комп, 0 - человек. если комп, то сделай выход: !!FU&v10=1:E;
Aleee
QW - редактирование квестового журнала
Bes
Скриптеры, так как насчёт этого...
Цитата(Bes)
Можно ли скрыть области, где герой побывал (не тупо задать радиусы черноты, а глобально чтоб как бы забыть что видел)
gamecreator
не понял вопроса
Bes
Ну, т.е., чтоб например перемещается у меня герой в далёкую точку (на моей карте какбы просыпается), и чтобы после этого закрылась вся изведанная им тер-рия. Я конечно могбы задать большие радиусы скрывания карты, но может есть другой, более специализированный что ли (типа отдельного для этого скрипт-кода), способ.
Aleee
Думаю, что нет. Наверное можно круговой функцией скрыть всю карту, ну или вообще любой прямоугольник. А вот чтобы только там, где ходил - вряд ли.
Azure Dragon
Вот назрел к вам вопросец. Как онулировать все свойства артифакта???(Например, он даёт 5 защиты, а я хочу чтоб он ничего не давал). И ещё, можно ли через ерм сделать так, чтоб существо, на которое напал игрок присоединялось к его армии. Помогите плиз, нето не получается...
DracoLich
До версии 3.57 это не представляется возможным.
Анулировать свойства нельзя, можно лишь кое-как из изменить. Атаку или любые такие первичные умения убрать легко, а особенности (типа +50% урона огненными заклами, иммунитет к Снятию заклинания) практически нереально...
!?AE1&v997=xxx; - здесь вместо ххх ставь номер арта
!!HE-1:Fd-5/d-5/d-5/d-5; - здесь от атаки/защиты/силы/знаний отнимаются по 5 очков при одевке арта, т.е. если он - Меч правосудия, он ничего не даст.
!?AE0&v997=xxx;
!!HE-1:Fd5/d5/d5/d5; - добавить очки обратно после снятия артефакта
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.