IPB

Здравствуйте, гость ( Вход | Регистрация )

> Обучение ERM, ERM для чайников :)
SnoRT
сообщение 04 Jun 2006, 09:48 (Сообщение отредактировал Bourn - 23 Jul 2006, 21:34)
Сообщение #1

Супер-злодей
Сообщений: 1 431
Спасибо сказали: 16 раз




Здесь будут разбираться разные скрипты (сложные и не очень) и объясняться сам процесс ЕРМ'ирования с самого начало и со всеми деталями и подробностями. Soul Reaver у нас назначается главным по обучению новичков laugh.gif
Таааккссс... Поработаю на благо настоящих героев. Что бы такое бы написать интересное?? Щас, полазию по своим картам, может чё-нить вспомню... Ничё интересного... Ну ладно, давайте например, создадим из пустого артефакта номер 168 (такая кожаная бронька из Диабло 2), к примеру, плащ глины. А лучше плащ в глине smile.gif А то грязный он какой-то... Будет, например, приносить носящему герою по 13 земляных элементалей в неделю, прибавлять ко всем первичным параметрам по 3, давать герою экспертную магию земли и защищать всё войско героя заклинанием Защита от земли. Предупреждаю сразу, скрипт не для новичков, а так, для более менее среднего уровня. Для самых новеньких в ЕРМ должен писать Soul Reaver. Следующим постом посмотрим smile.gif И так, приступим:

ZVSE (Ну как вы должны знать, без этого не обходится ни один скрипт)
Настройки самого артефакта
!#VRz10:S^Плащ из глины^; (Запомним в переменную z10 название артефакта)
!#VRz11:S^Приносит герою по 13 земляных элементалей в неделю, прибавляет ко всем первичным параметрам по 3, даёт герою экспертную магию земли и защищает всё его войско заклинанием Защита от земли.^; (Запомним в переменную z11 описние плаща)
!#UN:A168/1/5000; (Даём нашему артефакту цену 5000 золотых)
!#UN:A168/3/16; (Ценность нашего плаща. Он у нас реликт. Это 16)
!#UN:A168/9/10; (Присвоим нашему плащу название, запомненное в z10)
!#UN:A168/10/11; (Присвоим нашему плащу описание, запомненное в z11)

Установка прибавления земляных элементалей
!#VRv20:S13*65536+113; (Дадим заранее перенной v20 такое значение. Если вставить его в окно !!IF:Q под подтип картинки, то у нас под картинкой будет написано не просто элементали земли, а будет указано их точное колличество. 13.)
!#TM10:S1/999/7/255; (Сперва создадим таймер. Пронумеруем его 10-тым номером. 1 - это день первого появления, 999 - последнего, 7 - это интервал появлений (т.е. неделя), 255 - значит, что появляется для игроков каждого цвета.)
!?TM10; (Всё что будет написано дальше - это условия, выполняющиеся после пояления нашего таймера.)
!!OW:I-1/?v10; (Проверяем, игрок текущего цвета AI или человек. Если v10=0, значит человек. Если v10=1, то компьютер.)
!!VRv11:S0; (Ставим переменной v10 значение 0. Позже объясню зачем.)
!!DO10/0/155/1&v10=0:P; (Если текущий игок - человек, а не ИИ, то запускаем функцию номер 10. Приёмник !!DO отличается от !!FU тем, что одну и ту же функцию выполняет несколько раз подряд. Мы поставили 155. Именно столько в игре существует героев.)
!?FU10; (Так, теперь сама эта функция 10. Которая повторится 155 раз.)
!!HEv11:A2/168/d/?v12; (Проверяем, надет ли плащ у героя под номером v11 (v11 изначально мы установили на 0). Если v12=1, то надет.)
!!HEv11&v12=1:С2/113/13/0; (Если плащ одет, то даём этому герою 13 элементалей. 113 - это номер земляных элементалей.)
!!HEv11&v12=1:O?v13; (Теперь узнаем, какому цвету принадлежит герой, получивший войско.)
!!OW&v12=1:Iv13/?v14; (Определяем полученный цвет на AI или игрока.)
!!HEv11&v12=1/v14=0:B0/?z10; (Если игрок, который получил элементалей, человек, а не ИИ, то определяем его имя.)
!!IF&v12=1/v14=0:Q1/21/v20/1^К герою по имени %Z10 присоединяются земляные элементали благодаря плащу из глины.^; (Сообщение с текстом и картинкой элементалей. Выводится только если героем, которому даются существа, владеет игрок, а не компьютер. Вместо "%Z10" будет отображаться имя героя, которое мы узнали чуть раньше.)
!!VRv11:Sd1; (После всего этого в любом случае увеличиваем переменную v11 на 1, чтобы при следующем повторе функции проверялся уже герой не под номером 0, а следующий по списку. И так все 155 героев.)

Прибавление к параметрам первичных навыков
(Здесь вообще всё просто.)
!?AE1&v998=168; (Триггер на одевание артефакта номер 168 (наш плащ).)
!!HE-1:Fd3/d3/d3/d3; (Когда герой его одевает - получает по три ко всем параметрам.)
!?AE0&v998=168; (Триггер на снятие артефакта номер 168 (наш плащ).)
!!HE-1:Fd-3/d-3/d-3/d-3; (Когда герой его снимает - теряет по три ко всем параметрам.)

Экспертная магия земли.
!?AE1&v998=168; (Триггер на одевание артефакта номер 168 (наш плащ).)
!!HE-1:S17/?v21; (Запоминаем наличие у героя навыка магии земли до артефакта (v21=0 - нет навыка, v21=1 - базовый, v21=2 - продвинутый, v21=3 - эксперт)
!!HE-1:S17/3; (В любом случае даём герою эксперт земли.Если был базовый или продвинутый уровень, то он заменяется на экспертный.)
!?AE0&v998=168; (Триггер на снятие артефакта номер 168 (наш плащ).)
!!HE-1:S17/v21; (При снятии плаща возвращаем ему его старое значение навыка земли.)

Защита от земли во время боя.
!?BA0; (Триггер на начало битвы.)
!!BA:H0/?v30; (Определяем номер героя-нападающего (слева).)
!!BA:H1/?v31; (Определяем номер героя-защищающегося (справа).)
!!HEv30&v30<>-2:A2/168/d/?v32; (Если герой слева присутствует (v30<>-2), то проверяем у него наличие плаща.)
!!HEv31&v31<>-2:A2/168/d/?v33; (Если герой справа присутствует (v31<>-2), то проверяем у него наличие плаща.)
!!VRv25&v30<>-2/v32=1:S0; (Если плащ надет у левого героя, ставим v25 на 0.)
!!DO23/0/20/1&v30<>-2/v32=1:P; (Если плащ надет, запускаем функцию 23 на 20 раз.)
!!VRv25&v31<>-2/v33=1:S21; (Если плащ надет у правого героя, ставим v25 на 21.)
!!DO23/0/20/1&v31<>-2/v33=1:P; (Если плащ надет, запускаем функцию 23 на 20 раз.)
!?FU23; (Функция 23.)
!!BMv25:M33/99/3; (Ставим монстру v25 (если он есть) заклинание защита от земли экспертного уровня на 99 раундов.)
!!VRv25:Sd1; (Увеличиваем переменную v25 на один, чтобы при следующем обороте наложить заклинание уже на следующего монстра. Заметьте, что у правого и у левого героя переменная v25 будет принимать разные значения.)


Вот как будет выглядеть рабочий скрипт:
Код
ZVSE
!#VRz10:S^Плащ из глины^;
!#VRz11:S^Приносит герою по 13 земляных элементалей в неделю, прибавляет ко всем первичным параметрам по 3, даёт герою экспертную магию земли и защищает всё его войско заклинанием Защита от земли.^;
!#UN:A168/1/5000;
!#UN:A168/3/16;
!#UN:A168/9/10;
!#UN:A168/10/11;
!#VRv20:S13*65536+113;
!#TM10:S1/999/7/255;

!?TM10;
!!OW:I-1/?v10;
!!VRv11:S0;
!!DO10/0/155/1&v10=0:P;
!?FU10;
!!HEv11:A2/168/d/?v12;
!!HEv11&v12=1:С2/113/13/0;
!!HEv11&v12=1:O?v13;
!!OW&v12=1:Iv13/?v14;
!!HEv11&v12=1/v14=0:B0/?z10;
!!IF&v12=1/v14=0:Q1/21/v20/1^К герою по имени %Z10 присоединяются земляные элементали благодаря плащу из глины.^;
!!VRv11:Sd1;

!?AE1&v998=168;
!!HE-1:Fd3/d3/d3/d3;
!?AE0&v998=168;
!!HE-1:Fd-3/d-3/d-3/d-3;

!?AE1&v998=168;
!!HE-1:S17/?v21;
!!HE-1:S17/3;
!?AE0&v998=168;
!!HE-1:S17/v21;

!?BA0;
!!BA:H0/?v30;
!!BA:H1/?v31;
!!HEv30&v30<>-2:A2/168/d/?v32;
!!HEv31&v31<>-2:A2/168/d/?v33;
!!VRv25&v30<>-2/v32=1:S0;
!!DO23/0/20/1&v30<>-2/v32=1:P;
!!VRv25&v31<>-2/v33=1:S21;
!!DO23/0/20/1&v31<>-2/v33=1:P;
!?FU23;
!!BMv25:M33/99/3;
!!VRv25:Sd1;


Вот, вроде всё sorry.gif
Вообще кому интересно, могут зайти сюда. Здесь (на форуме WST spiteful.gif) есть эти же скрипты и плюс ещё другие всякие-разные. В общем, там их побольше. Для всех уровней.


--------------------
Ничего себе сходил за хлебушком о_О

Просьба начинающим скриптерам не обращаться за помощью в ERM. Не помню ни капли. Если только помочь с логической задачей на примерах.
В создания городов не вступаю. WST возрождать не буду. Скорее всего..


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
 
Start new topic
Ответов
major
сообщение 21 Mar 2009, 18:22
Сообщение #2

Immortal
Сообщений: 668
Спасибо сказали: 58 раз




наверно так надо
!#VRz178:S^Наёмный стрелок^;
!#VRz179:S^Наёмные стрелки^;
!#UN:G1/170/0/178;
!#UN:G1/170/1/179;
Go to the top of the pageAdd Nick
 
+Quote Post
G.I.
сообщение 21 Mar 2009, 21:47
Сообщение #3

Advanced Member
Сообщений: 114
Спасибо сказали: 7 раз




Цитата(major @ 21 Mar 2009, 19:22)
наверно так надо
!#VRz178:S^Наёмный стрелок^;
!#VRz179:S^Наёмные стрелки^;
!#UN:G1/170/0/178;
!#UN:G1/170/1/179;


Большое спасибо, отлично работает!!!
Только непонятно, почему только с переменными - где же я столько переменных подряд возьму? Ужасно неудобно!!!

Цитата(Virsavia @ 21 Mar 2009, 15:32)
Надо так наверное
!#UN:G1/170/0/S^Наёмные стрелки^;

В общем проблема в первых двух символах.

Нет, так увы не работает, хотя очень хотелось бы. Эта инструкция "не ест" строки, только строковые переменные banghead.gif

Добавлено ([mergetime]1237661241[/mergetime]):
А есть какая-нибудь нормальная справка по ерм для программеров? Я когда начинал много лет назад, как раз читал такую smile.gif Только сейчас я уже всё забыл, а справки кривые и для чайников. А то обычные справки сначала тебе описание для новичков дают, а потом списки триггеров и ресиверов. Ни тебе синтаксиса, ни переменных - никакой системы, царя в голове вообще нет. Я понимаю, что ерм скрипты пишут одни гуманитарии и ламеры shum_lol.gif, но всё-таки? Как сообщения выводить (для отладки искал) нашёл только случайно и в примерах smile.gif Серьёзных вещей с такими справками не сделаешь, приходится в стандартных скриптах лазать, а это неприлично долго sad.gif

Подскажите плиз "правильную" справку, буду очень благодарен biggrin.gif
Go to the top of the pageAdd Nick
 
+Quote Post

Сообщений в этой теме
- SnoRT   Обучение ERM   04 Jun 2006, 09:48
- - Soul Reaver   Здесь же будем выкладывать простенькие и не очень ...   04 Jun 2006, 09:57
- - BloodPhoeniX   Я здесь вот скрипт доработал по созданию Драколича...   08 Jun 2006, 11:31
- - Horn   Есть скрипты вогификации (scriptNN.erm, лежат в па...   08 Jun 2006, 16:33
- - Soul Reaver   Писал письмо Гудвину. Он просил сделать так чтоб в...   16 Jun 2006, 15:07
- - Soul Reaver   А откуда ещё? Прикол я бы всё писал это сам? Каждо...   16 Jun 2006, 17:36
|- - gamecreator   Цитата(Soul Reaver @ 16 Jun 2006, 18:36)Объяс...   18 Jun 2006, 20:32
- - DracoLich   Теперь разберем создание артефактов. Возьмем, напр...   02 Jul 2006, 18:43
- - DracoLich   При посещении объекта используются в основном его ...   03 Jul 2006, 13:03
- - SnoRT   Наверно что-нибудь напишу ещё. Наверное, многие хо...   04 Jul 2006, 16:00
- - DracoLich   Рассмотрим использование переменных Основные типы ...   11 Jul 2006, 12:10
- - DracoLich   y$ - переменная функции, уникальная для каждо...   11 Jul 2006, 18:53
- - DracoLich   Введение Флаги и переменные - это главнейшая особ...   13 Jul 2006, 17:34
- - DracoLich   Синтаксис проверки - значение ИЛИ: | !(!|?...   14 Jul 2006, 10:42
- - DracoLich   Вот все про флаги и переменные: PS. Стоит писать ...   14 Jul 2006, 11:05
- - DracoLich   Введение Если игрок активирует триггер, это вызыва...   21 Jul 2006, 08:48
- - DracoLich   Разберем простенький скрипт с участием монстра - к...   21 Jul 2006, 14:50
- - DracoLich   Так... Сейчас мы разберем способ заставить убежать...   23 Jul 2006, 14:54
- - Soul Reaver   Вот решил наскоро объяснить переменные. Они уже ко...   23 Aug 2006, 14:01
|- - gamecreator   Цитата(Soul Reaver @ 23 Aug 2006, 15:01)...   28 Aug 2006, 15:59
- - Рогатый Змий   ЦитатаSoul Reaver:А если вам хочется чтоб после по...   23 Aug 2006, 14:34
- - Ennin   Кодвсе команды делятся на две принципиальные части...   27 Aug 2006, 12:28
- - DracoLich   Как создать свой первый скрипт Erm для чайников, b...   23 Sep 2006, 11:03
- - DracoLich   Как создать свой первый скрипт (часть 2) Erm для ч...   23 Sep 2006, 18:58
- - DracoLich   Как создать свой первый скрипт (часть3) Erm для ча...   05 Oct 2006, 15:05
- - Demiurg   Получение/Определение/Установка типа артефакта у у...   13 Jun 2007, 23:54
- - sergroj   КодВ: Как установить, что имеется в "Облом...   09 Sep 2007, 12:45
- - Demiurg   Как управлять содержимым пандоры? Для пандоры рабо...   11 Sep 2007, 20:31
- - Demiurg   Как пользоваться !!UN:C? !!UN:C#/#...   15 Sep 2007, 14:25
- - Demiurg   MR2 Trigger features Для понимания дальнейшего по...   27 Sep 2007, 22:46
- - sergroj   Передача переменных между картами компании Для пер...   07 Oct 2007, 18:17
- - DracoLich   Документы ERS Если вы создаете новый скрипт для W...   18 Oct 2007, 13:04
- - Bes   В справке не совсем понятно, как работает арсширен...   30 Oct 2007, 20:14
- - DracoLich   2Bes Ну, раз мы имеем ПОИСК линии бонуса, то логич...   31 Oct 2007, 10:31
- - gamecreator   так: $1 - номер способности (формат SE1) ...   31 Oct 2007, 16:05
- - Д'якон   Решил поделиться небольшим опытом в использовании ...   09 Nov 2007, 15:48
- - Д'якон   Задача2: найти адрес содержащий стоимость постройк...   09 Nov 2007, 16:21
- - Д'якон   Задача3: заменить ресивер MR:N . Задача стоит в т...   09 Nov 2007, 21:26
- - Aнгeл   ЦитатаНо, оказалось, что понятия номер стэка вообщ...   01 Dec 2008, 15:06
- - Master Of Puppets   Просто открыл для себя, когда делал кнопки передач...   19 Feb 2009, 12:39
- - Ньюб   Здравствуйте уважаемые. А не могли бы вы подсказат...   25 Feb 2009, 16:27
- - Master Of Puppets   Операция удаления бит из переменной не вопринимает...   01 Mar 2009, 10:07
- - Master Of Puppets   В подавляющем большинстве случаев индекс z-перемен...   08 Mar 2009, 06:07
- - major   Попробуй через статические переменные названия арт...   08 Mar 2009, 17:37
- - G.I.   Пытаюсь вспомнить ерм... не получается... а ведь к...   21 Mar 2009, 13:16
|- - Virsavia   Надо так наверное !#UN:G1/170/0/S^Наёмные стре...   21 Mar 2009, 14:32
- - major   наверно так надо !#VRz178:S^Наёмный стрелок^; ...   21 Mar 2009, 18:22
|- - G.I.   Цитата(major @ 21 Mar 2009, 19:22)наверно так...   21 Mar 2009, 21:47
- - hippocamus   Да, переменные будут использоваться. Есть выход - ...   21 Mar 2009, 22:46
|- - G.I.   Цитата(hippocamus @ 21 Mar 2009, 23:46)Да, пе...   22 Mar 2009, 23:03
- - major   !!UN статические переменные не берет зараз...   22 Mar 2009, 20:06
- - hippocamus   Опытным путём Скачай новый ERM Editor (в полезных...   23 Mar 2009, 01:23
- - ShadowDF2   erm-manual читать не хотим? И чего хотИм?   23 Mar 2009, 18:33
|- - G.I.   Цитата(ShadowDF2 @ 23 Mar 2009, 19:33)erm-man...   24 Mar 2009, 13:59
- - izrukvruki   G.I. если тебе хелп по ЭРМ нуно посмотри тут http:...   24 Mar 2009, 14:57
- - G.I.   Спасибо! правда, это у меня уже есть, но всё р...   24 Mar 2009, 18:59
- - Faustalive   RE: Обучение ERM   24 Mar 2009, 23:46
- - hippocamus   Хм... Граали строятся функцией 717 в цикле DO. Но ...   25 Mar 2009, 00:16
- - Сатарыч   Гипо, привет! Нужно в 282 строке в скрипте ...   25 Mar 2009, 10:09
- - ShadowDF2   ЦитатаСпасибо! правда, это у меня уже есть, но...   25 Mar 2009, 12:59
|- - G.I.   Цитата(ShadowDF2 @ 25 Mar 2009, 13:59)Так а ч...   25 Mar 2009, 14:33
- - Сатарыч   Цитата(ShadowDF2 @ 25 Mar 2009, 13:59)Так а ч...   25 Mar 2009, 13:11
|- - ShadowDF2   Цитата(Сатарыч @ 25 Mar 2009, 13:11)Цитата(Sh...   27 Mar 2009, 14:08
|- - G.I.   Цитата(ShadowDF2 @ 27 Mar 2009, 15:08)Потруди...   27 Mar 2009, 17:42
- - Faustalive   ЦитатаНужно в 282 строке в скрипте !!DO717...   25 Mar 2009, 14:20
- - G.I.   Upd. т.е. это всё-таки справочник, а не учебник. ...   25 Mar 2009, 19:34
- - major   "естесственным" - напрямую в экзешке. эм...   25 Mar 2009, 19:42
|- - G.I.   Цитата(major @ 25 Mar 2009, 20:42)"естес...   26 Mar 2009, 00:14
- - G.I.   И вот ещё вопрос, как поставить свойство (и, желат...   26 Mar 2009, 08:44
- - izrukvruki   а модеры могли бы пост этот длинный отредактироват...   26 Mar 2009, 12:17
- - ShadowDF2   ЦитатаС объяснениями всё в порядке, понятно и подр...   26 Mar 2009, 17:29
|- - G.I.   Цитата(ShadowDF2 @ 26 Mar 2009, 18:29)ЦитатаС...   26 Mar 2009, 19:09
- - major   Цитата(G.I. @ 26 Mar 2009, 11:44)И вот ещё во...   26 Mar 2009, 17:49
- - Сатарыч   Цитата(major @ 26 Mar 2009, 18:49)Цитата(G.I....   26 Mar 2009, 19:48
- - hippocamus   Когда случается вот такое: Íà ï...   26 Mar 2009, 20:31
|- - asm   Цитата(hippocamus @ 26 Mar 2009, 22:31)Когда ...   26 Mar 2009, 20:50
- - hippocamus   Не думаю, что поможет...   26 Mar 2009, 21:10
|- - Iv   Цитата(hippocamus @ 26 Mar 2009, 21:10)Не дум...   27 Mar 2009, 09:26
- - major   Цитата(Сатарыч @ 26 Mar 2009, 22:48)Цитата(ma...   26 Mar 2009, 21:13
- - ShadowDF2   chm = пак .html файлов. Забацай плз страничку с тв...   27 Mar 2009, 18:22
- - G.I.   Пробовал с опытом !#EA7:B0/1/114/100/100/100/...   27 Mar 2009, 21:06
- - hippocamus   Попробуй так: !#EA7:F114/?v1 Bv1/1/114/100/10...   27 Mar 2009, 21:29
- - G.I.   Да нет, я просто не знал, что систему опыта надо ч...   27 Mar 2009, 21:48
- - G.I.   И снова вопрос: как вызвать анимацию атаки или стр...   28 Mar 2009, 01:39
- - hippocamus   Через стандартные функции ЕРМ - никак.   28 Mar 2009, 12:44
- - G.I.   Понятно Похоже я ставлю задачи нерешаемые... Лад...   28 Mar 2009, 14:19
- - ShadowDF2   Не видел подобного.   29 Mar 2009, 18:10
- - G.I.   Не получается управлять силой магии в бою!...   01 Apr 2009, 16:50
- - major   Я тоже менял этот параметр через Артмани, и тоже н...   01 Apr 2009, 17:13
|- - G.I.   Цитата(major @ 01 Apr 2009, 18:13)Я тоже меня...   01 Apr 2009, 20:18
- - G.I.   Ссори, просто совпадение чисел... сила магии не за...   02 Apr 2009, 17:41
- - ShadowDF2   Цитата(G.I.)взрыв сработает несмотря на иммунитет ...   03 Apr 2009, 16:47
|- - G.I.   [quote=ERM-Help]F$ The final (corrected) dam...   05 Apr 2009, 13:04
- - Сатарыч   Цитата(G.I. @ 05 Apr 2009, 14:04)Вопрос. Пыта...   05 Apr 2009, 21:09
- - ShadowDF2   Проще кастуй на юнита Берсерк. И гемора нет, и сов...   06 Apr 2009, 17:30
- - Vade Parvis   ShadowDF2, а разве имелась в виду не автоматическа...   06 Apr 2009, 17:32
- - ShadowDF2   Цитатаюниты атакуют ближайшую цель вне зависимости...   06 Apr 2009, 17:38
- - Master Of Puppets   Особенность статических стрингов – привязанность к...   08 Apr 2009, 07:12
- - ShadowDF2   ^Представь себе процесс дебага или совместной рабо...   08 Apr 2009, 17:25
- - major   Интересно, я вот буквально на днях экспериментиров...   08 Apr 2009, 17:30
3 страниц V   1 2 3 >


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 7 November 2025 - 20:26
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика