Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Флейм
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III > Моды > Скрипты
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
DracoLich
Цитата(Malcolm @ 18 Aug 2006, 16:49)
Я и с первого раза понял, просто выразился не совсем правильно - я имел ввиду собирать ту же инфу, что и в гильдии (а может и еще какую) и по ней высчитывать.

А как ее собрать???
unsure.gif
Irh
Цитата(DracoLich @ 18 Aug 2006, 00:19)
Насчет предложений не помню... Вроде были, но давно... Первое. По кол-ву ХП 1001 крестьянин уделает Лазурного дракона, так что ХП не всегда удачный выбор.
Есть такой показатель - AI value, где-то в !!MA его можно получить - видимо, можно в качестве ценности использовать его. В конце концов, просто цену в золоте, с учетом ресурсов.
А 1001 крестьянин Лазурного не уделает, хорошо если до 3-го раунда доживут smile.gif.

Лазурный: 70 (минимум) * 3,5 (атака над защитой) * 2 (атака + ответ) = 490
Крестьяне: 756 * 0,3 * 2 = 454
DracoLich
Цитата(Irh @ 18 Aug 2006, 18:23)
Цитата(DracoLich @ 18 Aug 2006, 00:19)
Насчет предложений не помню... Вроде были, но давно... Первое. По кол-ву ХП 1001 крестьянин уделает Лазурного дракона, так что ХП не всегда удачный выбор.
Есть такой показатель - AI value, где-то в !!MA его можно получить - видимо, можно в качестве ценности использовать его. В конце концов, просто цену в золоте, с учетом ресурсов.
А 1001 крестьянин Лазурного не уделает, хорошо если до 3-го раунда доживут smile.gif.

Лазурный: 70 (минимум) * 3,5 (атака над защитой) * 2 (атака + ответ) = 490
Крестьяне: 756 * 0,3 * 2 = 454

Я имел ввиду, не выиграют, а по кол-ву ХП будут больше wink.gif
Malcolm
Цитата
А как ее собрать???

сам же говорил:
Цитата
возможностьпроверить, естественно есть.

ERM-ом. Ну что можно - то собрать, а остальное - хрен с ним. Я гильдию воров привел просто как наглядный пример.

А может еще общую стоимость всей армии в золоте?

На счет рож дипломатов:
Покопался во 2-х героях на предмет морд героев - среди них до фига мордуленций, которые пойдут на рожи дипломатов - один Сандо чего стоит, или из рыцаря Максима - good.gif воотакой дипломат для барбарианов. А Селия и Черити хорошо пойдут на инферно. Проблемно только с болотом - пожалуй только Жаклин подходит.

Если делать морды дипломатов, лучше делат по 2-3 на каждую рассу и чтоб они случайно выбирались при старте. Чтобы если на карте несколько одинаковых расс, чтобы морды отличались.

В таком слечае каждое дип. сообщение лучше сопровождать следующими картинками:
{флаг стороны с которой общаешся}{морда дипломата с которым общаешся}{флаг стороны с которой общаешся}

(флагис 2-з сторон для симметрии)
Рогатый Змий
Цитата(Druin @ 17 Aug 2006, 11:38)
Истину Гаматворец говорит... Зачем усложнять себе жизнь в ЕРМ, если в редакторе можно настроить...
Ну уж если сильно хоцца, то !!LE:L;

пишу !!LE34/4/0:L;
А событие в этой точке не хочет исчезать после первого посещения... sorry.gif
DracoLich
!!LEx/y/l:L$; - $ = 1 - отменить события после первого посещения, = 0 - не отменять.
gamecreator
Как мне кастануть спелл в бою?
DracoLich
!!BM#:C#1/#2/#3/#4/#5;
# - номер стека
Колдовать заклинание
#1 – номер заклинания
#2 – позиция для заклинания
#3 – уровень навыка монстра (0…3)
#4 – уровень навыка героя (???) (0…3)
#5 – проверка на существование монстра
Sergiyua
А скрипт с номером 100 будет работать или игра выдаст ошибку? Или просто *.ers файл не сможет его включить/выключить?
gamecreator
не будет. игра воспринимает только скрипты 00-99
Sergiyua
Что и следовало доказать!
Рогатый Змий
Почуму не работает?
Пишу
!!HE1&77/-98:A111;
А артефакт не хочет у героя появляться? idontno.gif
только если припешу координаты
!!HE1&77/-98X/Y/L:A111;
DracoLich
Флаг 77 должен быть Истиной, а флаг 98 - ложью. Так? Проверь:
!#IF:V77/1 V98/0;
!!HE1&77/-98:A111;
Рогатый Змий
Драколич как-то написал скрипт Монстр-Квестор
с артефактом

Цитата
ZVSE
!#OBx/y/l:S;
!?OBx/y/l;
!!HE-1&v9<>-5:A2/7/?v9/d;
!!IF&v10=1/v9=0:Q11/8/7/1^Тебе что, жизнь не дорога? Принеси артефакт, потом поговорим!^;
!!IF&v10=0/v9=0:Q10/8/7/1^Если хочешь пройти, принеси сперва артефакт.^;
!!IF&v9>0:M^Молодец. Можешь идти.^;
!!UN&v9>0:Ox/y/l;
!!VRv9&v9>0:S-5;
!!VRv10&v10=0:S1;

Я хочу такой же скрипт только с требованием золота ...
Я бы и сам сделал только мне долго разбираться что к чему...
я уже и с другими скриптами намучился сегодня sorry.gif
(я ведь карту свою довольно необычную делаю (кто знает),скоро выставлю)
DracoLich
ZVSE

!#OBx/y/l:S;
!?OBx/y/l;
!!OW:R-1/6/?v1;
!!IF&v10>0/v1<12345:Q2/36/12345/1^Только 12345 золота, и не меньше!^;
!!IF&v10=0:Q2/36/12345/1^Нам требуется 12345 золота. Принеси его нам, и сможешь пройти.^;
!!IF&v1>12344:Q3/36/12345/2^Отлично! Хотите пройти?^;
!!UN&3:Ov998/v999/v1000;
!!OW&3:R-1/6/d-12345;
!!VRv10:S1;
Рогатый Змий
Я вот что хотел спросить:
А как сделать диалог с объектом где можно галочками выбирать что говорить
Ну как в кампании ВСЕ ИЛИ НИЧЕГО unsure.gif
Druin
Цитата(Black_Dragon @ 22 Aug 2006, 12:15)
Я вот что хотел спросить:
А как сделать диалог с объектом где можно галочками выбирать что говорить
Ну как в кампании ВСЕ ИЛИ НИЧЕГО unsure.gif

Код
!!IF:G#1/#2/#3/#4/#5/(up to #16);

Задает диалог переключателей (до 12 пунктов)
  #1= 1 - переключатели (один ответ)
         0 - галочки (много ответов)
  #2= номер переменной v, в которую записать результат.
  #3= начальное состояние кнопок
  #4= номер переменной z, содержащей заголовок окна.
  #5= номер переменной z, содержащей имя первого пункта
         0-0 – не отображать
  #6= номер переменной z, содержащей имя второго пункта
         0-не отображать
  ...
  #16= номер переменной z, содержащей имя двенадцатого пункта
         0-не отображать
Комментарии:
1. Полученное состояние хранится в виде "бит на пункт".
 Пункт1=1,
 пункт2=2,
 пункт3=4,
 пункт4=8,
 пункт5=16...
Когда отмечены все пункты, знач.=4095
Когда отмечены пункты 2, 4, 5, 8 и 10, знач.=2+8+16+128+512
Когда все сброшены, знач.=0
Рогатый Змий
Как сделать сообщение с картинкой навыка?? Например экспертной защиты
Мне конечно стыдно спрашивать такие глупые вопросы потому что опыт у меня уже не маленький в ERM
,но иногда бывает измучиешься на ерунде... unsure.gif
Druin
Цитата(Black_Dragon @ 22 Aug 2006, 19:25)
Как сделать сообщение с картинкой навыка?? Например экспертной защиты

!!IF:Q1/20/71/1;

Цитата(Black_Dragon @ 22 Aug 2006, 19:25)
Мне конечно стыдно спрашивать такие глупые вопросы потому что опыт у меня уже не маленький в ERM

Боюсь ты пока всего лишь ньюб... Однак не стесняйся спрашивать... wink.gif
Рогатый Змий
!!HE0:C2/3/15/1;
Это добавляет герою новых монстр(стрелков 15 штук)
А как отнять у героя монстров? idontno.gif
Druin
Поробуй тип -1 поставить... если не выйдет, то:
Код
!!HE#:C#1/#2/..../#14;

Change monsters : Give to player a choice of monsters set.
  #1 = type of monster 1 (-1 = no, see Format C)
  #2 = number of monsters 1
  #3 = type of monster 2 (-1 = no, see Format C)
  #4 = number of monsters 2
  #5 = type of monster 3 (-1 = no, see Format C)
  #6 = number of monsters 3
  #7 = type of monster 4 (-1 = no, see Format C)
  #8 = number of monsters 4
  #9 = type of monster 5 (-1 = no, see Format C)
  #10 = number of monsters 5
  #11 = type of monster 6 (-1 = no, see Format C)
  #12 = number of monsters 6
  #13 = type of monster 7 (-1 = no, see Format C)
  #14 = number of monsters 7
Example:
This will be a dialog like when you leave creatures.
!!HE-1:C5/6/7/8/9/10/11/12/13/14/15/16/17/18;
!!HE-1:C1/2/-1/0/-1/0/-1/0/-1/0/-1/0/-1/0;
DracoLich
Не, Друин, это нифига не даст... Получится у игрока выбор : -15 монстров??? Там нужно проводить вычисления, имеются ли монстры, их количество (чтоб в минус не ушло)... Black Dragon, скажи, какого монстра там нужно будет убирать, и все... crazy.gif
Рогатый Змий
Цитата(DracoLich @ 23 Aug 2006, 19:55)
Black Dragon, скажи, какого монстра там нужно будет убирать, и все... crazy.gif

№84 crazy.gif
Druin
Тогда пусть Black_Dragon объяснит задачу подробнее... ЧТО конкретно ему надо?
Согласен чтоя мог его не так понять... но как написал, так и ответили... gi.gif
DracoLich
Поясню, т.к. сам не могу сделать: нужно чтоб при активировании триггера у героя отнималось x гоблинов... Вот если они в одной кучке, никаких проблем... А вот если разделить....
Рогатый Змий
Ну мне достаточно чтоб у героя вычли всего лишь на всего 1 Гоблина и все.... crazy.gif
DracoLich
ZVSE

!?триггер;
!!DO11/0/6/1:P;
!?FU11;
!!HE-1:C0/x16/?y1/d;
!!FU&y1<>84:E;
!!HE-1&y1=84:C0/x16/y1/d-1;
!!VRx16&y1=84:S6;
Рогатый Змий
Цитата(DracoLich @ 24 Aug 2006, 10:43)
ZVSE
!?триггер;
!!DO11/0/6/1:P;
!?FU11;
!!HE-1:C0/x16/?y1/d;
!!FU&y1<>84:E;
!!HE-1&y1=84:C0/x16/y1/d-1;
!!VRx16&y1=84:S6;

ууу...Однако...Такого я еще не видел... unsure.gif
Драколич не мог бы ты разобрать это в разборе скриптов? sorry.gif
А то даже !!DO я никогда не видел... unsure.gif
Рогатый Змий
Еще...
Пишу
!?IF:V500/1;- тригер если флаг 500 утсановлен на правду, то едем дальше...Не работает idontno.gif
!!DO11/0/6/1:P;
!?FU11;
!!HE-1:C0/x16/?y1/d;
!!FU&y1<>84:E;
!!HE-1&y1=84:C0/x16/y1/d-1;
!!VRx16&y1=84:S6;

Или пишу...
&500 перед : тоже пишет ошибку idontno.gif

!?Тригер
!!DO11/0/6/1&500:Р;
!?FU11;
!!HE-1&500:C0/x16/?y1/d;
!!FU&y1<>84&500:E;
!!HE-1&y1=84&500:C0/x16/y1/d-1;
!!VRx16&y1=84&500:S6;
DracoLich
!!FU&-500:E; - функция выйдет при флаге 500 равном 0.

!?OB10/10/0;
!!DO11/0/6/1&500:Р;
!?FU11;
!!HE-1:C0/x16/?y1/d;
!!FU&y1<>84:E;
!!HE-1&y1=84:C0/x16/y1/d-1;
!!VRx16&y1=84:S6; - попробуй так, объект в 10/10/0 поставь и проверь...
Рогатый Змий
А сколько флагов можно использовать?
До 1000 или до 10000 idontno.gif
SnoRT
10000
DracoLich
v-переменные: 1-10000
z-переменные: 1-1000
w-переменные: 1-200
Функции: 1-30000
Таймеры: 1-100
Флаги: 1-1000
Диалоги: 1-100
Рогатый Змий
Еще такой вопрос:
при перезагрузки карты в ERM остаются старые данные
старые поставленные флаги до перезагрузки карты?Вы понимаете о чем я ? Могу объяснит получше
DracoLich
Остаются до перезапуска героев:
v500 - v10000
z500 - z1000
Флаги: 500 - 1000
Рогатый Змий
Цитата(DracoLich @ 25 Aug 2006, 04:56)
Остаются до перезапуска героев:
v500 - v10000
z500 - z1000
Флаги: 500 - 1000

Ни че не понимаю idontno.gif
Объясню ситуевину по лучше
допустим
Я написал вот этот код
--
!?OBX/Y/L;
IF&-600:Q2^Какой-то текст^;
IF:V600/1;
IF&600:Q2^Какой-то текст^;
--
При первом посещении все будет нормально Флаг 600 будет поставлен на правду
А когда я перезагружу карту то вторая строчка не сработает тоесть флаг 600 будет поставлен на правду а почему? Я ведь его ставил до перезагрузки idontno.gif
А как с этим бороться?
Можно ли скрипт написать что типа после перезагрузки все флаги переменные обновлять по новой... idontno.gif
А то вся игра получается пойдет под хвост cray.gif (под хвост котам которые обитают на моем сайте в моей подписи cray.gif )
Druin
Или обнуляй флаг инструкцией
!#IF:V600/0;
или используй флаг меньше 500...

И еще... у тебя при првом посещении вылезет два текста... что ентого избежать напиши так:
!?OBX/Y/L;
!!IF&-600:Q2^Какой-то текст^;
!!IF&600:Q2^Какой-то текст 2^;
!!IF:V600/1;

Добавлено ([mergetime]1156492929[/mergetime]):
Да и вообще странный скрипт... ты не мог бы описать зачем он тебе... бо хрень какая-то непонятная или безграмотная...
Рогатый Змий
Цитата
Да и вообще странный скрипт... ты не мог бы описать зачем он тебе... бо хрень какая-то непонятная или безграмотная...

Этот скрипт тут не причем абсалютно...Я всего лишь привел пример на скорую руку...

Цитата
И еще... у тебя при првом посещении вылезет два текста... что ентого избежать напиши так:

Я перепутал....но это не имеет никакого отношения к ээтому вопросу moral.gif
Цитата(Druin @ 25 Aug 2006, 11:02)
Или обнуляй флаг инструкцией
!#IF:V600/0;
или используй флаг меньше 500...

Но ведь если человек сохранит потом загрузит то ничего не будет а я имел ввиду перезагрузку карты сначала...

А как обнулять? я ведь хочу обнулить перед перезагрузкой...
И что обнулять теперь каждый флаг?
Я ведь уже много флагов за 500 в своих скриптах использовалcray.gif
Должен быть какой-нибудь другой выход из положения...
Druin
Инструкции работают при старте карты (неважно первый раз запускаешь или перезагружаешь)... А при загрузке сэйва ничего не поменяется...

И эта... Любишь кататься люби и самочек возить... smile.gif Так что придется обнулять...
Рогатый Змий
Цитата(Druin @ 25 Aug 2006, 12:09)
Инструкции работают при старте карты (неважно первый раз запускаешь или перезагружаешь)... А при загрузке сэйва ничего не поменяется...

И эта... Любишь кататься люби и самочек возить... smile.gif Так что придется обнулять...

А нельзя написать все флаги через запитую а потом обнулить за раз?
А при загрузки будет все нормально?
Irh
Код
!?FU1;
!!IF:Vx16/0;
!#DO1/1/10000:P;
Рогатый Змий
Цитата(Irh @ 25 Aug 2006, 16:36)
Код
!?FU1;
!!IF:Vx16/0;
!#DO1/1/10000:P;

Спасибо конечно yes.gif , но не могли бы вы мне объяснить как он работает? idontno.gif
Druin
Это простой цикл... обнуляет все флаги от 1-го до 10000-го... Справка по !!DO есть на русском, смотри соответствующую тему... И кстати в последней строчке ошибка... Надо:
!#DO1/1/10000/1:P;
BT_Uytya!
У мен пара вопросов насчет Кальта... В скрипте "Нейтральный город" ему изменили специализацию - 100 опыта в день и 5% к навыку Обучение за уровень. Я захотел вытащить быстрообучаемого Кальта из скрипта Нейтральный город. Недолго думая, скопировал вот это:

!!HE135:X0/21 Y9/100/999/1; [Kalt - Learning bonus plus gains 100 experience daily (Blessing)] (Благословение сфинкса Кальту на 999 дней - 100 опыта в день)
!!VRz176:Sz167009; [Kalt's specialty text] (Описание специализации)
!!UN:G2/135/2/176; [Set Kalt's specialty text to z176] (Описание специализации-2)

и вставил в новый 99 скрипт. Но теперь при битве, если в армии Кальта есть водные элементали, по которым у него была специализация раньше, то появляются жуткие гляки.
Строчек, добавляющих 5% бонус к обучению и убирающих старый бонус Элементалям я не нашел. Также непонятно, в чем дело - ничего специализацию не трогает. Я пробовал оставлять только благословение - то же самое.
Итак, вопросы:

1. Будет ли также глючить, если включен нейтральный город целиком?
2. Изменяет ли скрипт саму специализацию Кальта?
3. Дает ли скрипт 5% бонус обучению?
4. Там ничего не вшито в движок?
5. Почему у меня такие глюки? И что мне делать?
6. Вроде все...
DracoLich
1 - нет, все работает нормально
2 - полностью изменяет, убирая специальность по водным и устанавливая на специализацию обучения
3 - дает
4 - ничего
5 - скорее всего, неправильно сделал... Я испытал такой, и все работало:
ZVSE
!#HE135:X0/21 Y9/100/999/1;
!#VRz176:Sz167009;
!#UN:G2/135/2/176;
Sergiyua
Все знают ers файлы и его формат, а кто может полность описать какие позиции за что отвечают:
test 82 7 0 -1 1 0 82
Я знаю только что первая цифра 82- это номер скрипта, 7 - это позиция собственных скриптов, а вот дальше 0 , -1, 1 , 0, не знаю, а еще в конце ствится номер опции скрипта, только как его определить, иногда совпадает с названием скрипта, иногда нет. Кто знает, можете ли помочь?
DracoLich
ERS - документы
Если вы создаете новый скрипт для ВоГификации, вы можете добавить его в настройки ВоГ-опций с помощью ".ers"-файла. .ers - файл должен иметь имя, схожее с именем скрипта, например, script67.erm будет иметь script67.ers как файл для настройки.
Этот файл - небольшая таблица, содержащая информаци. о номере скрипта, внутренней ссылки скрипта для изменения значения (вкл/откл), позиция в ВоГ-опциях и текст описания и названия.
Быстрая расшифровка каждого поля:
1. Комментарий - вы можете ввести, что захотите. Обычно я ввожу имя или описание скрипта, но это поле только для вас, т.к. оно не показывается в игре.
2. Номер скрипта (например, 10 = script10.erm).
3. Страница, на которой он находится (начиная со страницы 0)
4. Группа: 0=верхняя правая, 1=нижняя правая, 2=верхняя левая, 3=нижняя левая
5. Номер строки для включения скрипта (первая = 0, и т.д.) или вы можете ввести "-1" для помещения строки на следующую незанятую строку. Как правило, я использую -1.
6. Установка по умолчанию: 0 = выкл, 1 = вкл.
7. Статус для мультиплеера (если вы нажимаете кнопку "Стандарт для мультиплеера")
8. ERM - файл должен содержать проверку командой UN:P, для проверки на выкл или вкл. Вы можете проверить статус командой UN:P#/?v1; где # - номер ERM-скрипта. Я использовал такую схему: номера 0-10 для встроенных опция (правый клик, командиры, стрелковые башни и т.п.). 11-99 - это номера для скриптов. Если скрипт ниже 11, я добавлял 100 к номеру. Например, 101 - это скрипт 1, 102 - скрипт 2, и т.д. В дополнение к ERM - номерам, я использовал расширенные опции (например, "правила карты" используют большинство из них), начиная со 111 и до конца (199). Часто вам нужен будет простой ERM - номер (для одиночной опции) и вы можете базировать его на номере вашего скрипта. Я советую нумеровать ваш скрипт от script70.erm и выше, для избежания пересеканий ВоГ-скриптов и ваших (в крайнем случае пересечение будет не "выкидывательным").
9. Текст - это текст, который будет показан как имя скрипта в игре в поле для включения/отключения.
10. Подсказка при наведении на имя скрипта, показывается внизу экрана.
11. Текст при щелчке правой кнопкой мыши на опции (или тексте опции).

Примечание: каждая ВоГ-опция - это кнопка (вкл/откл), за исключением некоторых Славиных скриптов, имеющих только одну позицию (например, система набора опыта, т.е. супер-установки). Вы не можете сделать это с помощью .ers - файла, т.к. это код игры.
Sergiyua
Спасибо за коментарий.

Добавлено ([mergetime]1157357310[/mergetime]):
А Вы не доработали скрипт про удаление препятствий?
DracoLich
Повторите его действие - попытаюсь biggrin.gif
Sergiyua
ZVSE
!#TM4:S1/999/7/255;
!?TM4;!!DO48/0/155/1:P;
!?FU48;
!!HEx16:A2/161/d/?y1; - 161 - номер твоего арта
!!FU&y1=0:E;
!!IF:Wx16;
!!VRw19&y1=1:+1;
!!HE-1:O?y2;
!!OW:Iy2/?y3;
!!IF&y1=1/y3=0:M^Артефакт дает вам еще одно очко разрушение. Теперь у вас их %W19.^;
!?CM5;
!!CM:F?v5011;
!!CM:P?v1/?v2/?v3;
!!FU64&v5011=1:P;
!?FU64;
!!OW:A-1/?y1;
!!FU&y1=-1:E;
!!IF:Wy1;
!!IF&w19>0:Q15^Вы хотите удалить этот объект? У вас очков удаления: %W19^;
!!VRw19&15:-1;
!!UN&15:Ov1/v2/v3;
!!IF:V15/0;Удаляет любой объект Кроме твоего замка Удалять может только герой, который носил артефакт минимум неделю
Добавлено (14 Aug 2006, 14:45):Для удаления - Шифт+левая кнопка
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.