ERM

ERM

ERMEvent Related Model — англ. «событийно-связанный модуль» — скриптовый язык для дополнения «». Название устарело. Первоначально ERM предназначался исключительно для расширения возможности "событий " — объектов, выполняющих некое действие при попадании на клетку, где они находятся. Позднее ERM был значительно изменён и дополнен. Теперь с помощью скриптов можно контролировать практически весь процесс игры. Было предложено новое название — GRM — Gamer Related Model, но оно не «прижилось».

Структура языка ERM

Скрипт на языке ERM представляет собой совокупность триггерных блоков (trigger blocs), срабатывающих при каком-либо действии игрока, внутри которых находятся блоки команд — приёмники (recievers). Также могут быть инструции (instructions) — блоки команд, выполняемых при загрузке карты. Вот пример скрипта: ZVSE !#VRz230:S^Кузница Гарика^; !?OB63/39; !!IF:M^Вы в Кузнице Гарика.^ V20/1; !#HT63/39:T230; !$OB63/39; !!IF:M^Вы вышли из Кузницы Гарика.^;В самом начале скрипта стоит идентификатор ZVSE. Он показывает, что дальнейший текст представляет собой скрипт на языке ERM. Все последующие строки начинаются с восклицательного знака и заканчиваются точкой с запятой. Любой текст вне этих символов рассматривается как комментарий. В данном примере «комментариями» являются знаки перевода строки между строками. Вторым символом в строке стоит один из символов ?,$,!,#. Этот символ определяет тип команды. Вопросительному знаку соответствуют триггеры (triggers), символу доллара — пост-триггеры (post-triggers), восклицательному знаку — приёмники и «решётке» — инструкции.

Триггеры и пост-триггеры определяют границы триггерных блоков и условия их выполнения: триггерный блок включает в себя все приёмники, находящиеся между соответствующим и следующим триггерами (пост-триггерами). Также границей является конец скрипта. Условия выполнения зависят от типа триггера (пост-триггера) и его параметров. Тип триггера записывается двумя заглавными английскими буквами после символов ?,$.После него ставятся параметры (числа от −2³² до 2³²-1 или числовые переменные), разделяемые косой чертой. Количество и значение параметров зависят от типа триггера. В настоящий момент существуют следующие типы триггеров: AE, BA, BF, BG, BR, CM, CO, FU, GE, HE, HL, HM, IP, LE, OB, MF, MG, MM, MR, MW, PI, SN, TH и TM. А также пост-триггеры LE и OB. Принципальной разницы между триггерами и пост-триггерами нет, последние можно считать как ещё два типа триггеров.

В данном примере имеется триггер и пост-триггер OB. соответствующие триггерные блоки выполняются соответственно до и после посещения некоего объекта. В данном случае имеются два параметра 63 и 39, которые показывают, что этим объектом являются все объекты типа 63 и подтипа 39.

Приёмники и инструкции содержат блоки команд скрипта. Инструкции выполняются при загрузке игры, а приёмники при срабатывании соответствующего триггера. За исключением символа типа ! или # их структура идентична. Практически любая инструкция может быть приёмником, и наоборот. После символа типа идёт тип приёмника, состоящий из двух заглавных английских букв. В настоящее время имеются следующие типы приёмников (и инструкций): AI, AR, BA, BF, BG, BH, BM, BU, CA, CD, CE, CH, CM, CO, DW, DO, EA, EX, FR, FU, GE, GD, GR, HE, HL, HO, HT, IF, IP, KT, LE, LN, MA, MC, ML, MN, MF, MM, MO, MP, MR, MT, MW, OB, OW, PO, QW, SC, SG, SK, SN, SP, SR, ST, SW, SY, TM, TR, UN, UR, VC, VR, WG, WH, WM, WT и. Как и триггер, приёмник имеет параметры, общие для всех его команд. После параметров ставится двоеточие и идёт блок команд, разделяемых произвольным количеством знаков, не являющихся цифрами, заглавными английскими буквами или одним из символов *, :, +, -, ;, ^. Обычно принято разделять команды одним пробелом или же не разделять их вовсе. Команда представляет собой заглавную английскую букву, после которой могут быть параметры — числа или переменные, разделяемые косой чертой. Также может быть параметр в виде текстовой строки, ограниченной символами ^ и располагающийся после прочих. Количество параметров, их тип и значение самой команды зависят от её типа (заглавная английская буква в начале команды) и типа её приёмника (инструкции).

В нашем примере имеются две инструкции VR и HT и два приёмника IF. VR командой S устанавливает строковую переменную z230 в значение «Кузница Гарика», а HT командой T связывает название объектов типа 63 и подтипа 39 со строковой переменной номер 230. Оба приёмника IF имеют команду M, выводящую сообщение на экран, а первый из них также имеет команду V, устанавливающую флаг (булеву переменную) номер 20 в значение 1 (истина).

Таким образом, данный скрипт назовёт все объекты типа 63 и подтипа 39 «Кузницами Гарика», а при входе и выходе будет выдавать сообщения. Это простейший возможный пример. В данной статье описана лишь общая структура языка. Не описаны условные блоки, флаги и переменные лишь упоминаются и не дан список всех команд и параметров всех триггеров и приёмников. Ссылки на сайты, где можно получить более подробную информацию, даны в конце статьи.

Файлы и ссылки

* [http://wakeofthegods.strategyplanet.gamespy.com/erm.shtml Страница на официальном форуме WoG, посвящённая ERM]
* [http://forum.df2.ru/index.php?showforum=52 Раздел на русскоязычном форуме поддержки, посвящённый ERM]
* [http://www.alex-world.nm.ru/guild.htm Гильдия Скриптописцев]
* [http://www.dracolich.narod.ru/rus.htm Помощь по ERM на русском языке]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "ERM" в других словарях:

  • Erm — ist die Abkürzung für Electronic Resource Management, einem System zur Verwaltung von Informationen und Workflows, die erforderlich sind, um e Ressourcen effizient auszuwählen, zu erwerben, zu pflegen, zu erneuern bzw. abzubestellen. Es bietet… …   Deutsch Wikipedia

  • ERM — (Enterprise Relationship Management) business program that analyses information concerning a company s customers (in order to improve customer service and relations) ERM (Enterprise Resource Management) general name for a business management… …   English contemporary dictionary

  • Erm — is a village in the Netherlands and it is part of the Coevorden municipality in Drenthe. Its altitude is 14 meters (49 feet) and its population is about 420.External links* [http://www.fallingrain.com/world/NL/1/Erm.html Map of the area of Erm] …   Wikipedia

  • ERM — ist die Abkürzung für Electronic Resource Management, einem System zur Verwaltung von Informationen und Workflows, die erforderlich sind, um e Ressourcen effizient auszuwählen, zu erwerben, zu pflegen, zu erneuern bzw. abzubestellen. Es bietet… …   Deutsch Wikipedia

  • ERM — may refer to: In systems and processes:* European Exchange Rate Mechanism * European Reference Materials * Enterprise Relationship Management * Enterprise Risk Management * Entity relationship model * Electronic Resource ManagementIn people:*… …   Wikipedia

  • ERM — See Exchange Rate Mechanism. Practical Law Dictionary. Glossary of UK, US and international legal terms. www.practicallaw.com. 2010 …   Law dictionary

  • erm — Mot Monosíl·lab Nom masculí …   Diccionari Català-Català

  • ERM — [ˌi: a:r ˈem] n [singular, U] the abbreviation of exchange rate mechanism …   Dictionary of contemporary English

  • erm- — *erm germ.: Hinweis: s. *ermana ; Quelle: Personenname (1. Jh. v. Chr.); Sonstiges: Reichert, Lexikon der altgermanischen Namen 2, 1990, 501 (Ermaric, Ermegild, Ermegundis, Ermemir, Ermulf, Hermegiscl, Hermer, Hermeric) …   Germanisches Wörterbuch

  • ERM — ► ABBREVIATION ▪ Exchange Rate Mechanism …   English terms dictionary


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»