Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ERM Manual
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III > Моды > Скрипты
Страницы: 1, 2, 3
Alexey
Эта же статья, но в оригинале от автора (R_Warlock) и с картинками:
http://strategyplanet.com/homm/wog/111/heroes.zip
545,906 байтов (написана до выхода WoG 3.58. Насколько я помню, он её писал для какого-то игрового журнала).

Также прекрасная статья, правда на английском "ERM for Dummies!" ("ERM для чайников"):
http://www.forumplanet.com/StrategyPlanet/...4317&tid=981049

Кое-что из самых основ ERM освещено в нашем старом FAQ'е по игре:
http://heroes.diaspora.ru/hmm3/addon/faq_wog.shtml
Вопросы/ответы 23 и 24. Ответ на 24 вопрос с картой примером.

Пара статей на нашем английском сайте:
http://strategyplanet.com/homm/wog/jack_erm1.shtml
http://strategyplanet.com/homm/wog/fnord_erm1.shtml
R_Warlock
Вот, как обещал, ссылочки на FAQ по ERM-у:
ERM
ERM_FAQ
Ennin
Цитата(AlexStar @ 11 Dec 2004, 01:30)
Новые артефакты

Вы в корне неверно понимаете принципы ВоГифифкации и ЕРМ (или вообще не понимаете).
Насчет ЕРМ - могу посоветовать прочитать тему "школа ЕРМ" здесь :
http://www.heroesportal.net/tavern/?forumid=18 . Лично я больше ничего сказать не смогу, т.к. писал "школу" я. Из всех перечисленных здесь учебников, ИМХО, "школа" лучше всех поясняет сам принцип ЕРМ.

Насчет ВоГификации. новые Артефакты появляются на карте только в процессе ВоГификации - то есть старые арты заменяются на новые. Так что новые арты можно подключить простым увеличением номера.

придать cвойства можно с помощью триггера !?AE
Ennin
кому интересно - вот оглавление "ЕРМ для чайников". что ещё нужно добавить - говорите
http://heroes.obninsk.ru/download/ennin/ermbook/
C@HeK
Вот скачал где-то описание к ERM на русском(не всё а софта по моему ваще нет) idontno.gif idontno.gif idontno.gif
Darhark
DF2 :: ФОРУМЫ > Игровые форумы > Heroes 3.5 WOG > Скрипты

тема:обучение ерм
комментарий темы:ерм для чайников смайлик
ПРИМЕЧАНИЕ: здесь ерм для чайников можно приравнять к "ерм для совсем чайников"

Еще пригодится вот этот документ:
http://www.aquarun.ru/keyf/keyf_book/12/keyf12p9.html

смайлик
DracoLich
Обновил ERM-помощь. Добавил и исправил кучу чего.
Скачать можно отсюда:
http://dracolich.narod.ru/ERM_HELP_RU.rar
DracoLich
Сама ERM-помощь. К ней и нужно качать обновление. Размер - 971 кб
http://dracolich.narod.ru/erm_help_ru.rar
Demiurg
DL

Вещь - супер. Работает под TE и WOG 3.59

Благодарю SnoRT'a за перевод большей части.

Код
!!DL#:XXXX; Ход диалога #, #>0.


Код
(Переведено SnoRT'ом)
A#1/#2/$  Изменение характеристик пункта диалога.

#1 - ID пункта
#2  тип  $
3  Текст  (string): новый текст пункта
4  Def  (номер): новый кадр Def'а
11  Pcx  (string): новый рисунок

Примечание:
Может быть вызвано в триггере !?DL, тем самым позволяет изменять диалог "на лету".

Примечание Demiurg'a:
Имхо, очень сырая команда. Может вызывать ошибки


Код
(Переведено Demiurg'ом)
C# - Установить определенное возвращаемое действие или изменить текущий курсор.
 # - тип действия
   1 - закрыть диалог с возвращением текущего элемента(Смотрите !!DL:S . Внимание!!! Если вы применяете под TE !!DL:C1, и у вас этот диалог не является первым(открыт в другом диалоге), то данная функция закроет все диалоги - Прим. Demiurg'a)
   1000+# - установить текущий курсор как решетка # (смотрите формат PM2)
Комментарии:
Для этой комманды вам не нужно устанавливать Id диалога в части !?DL . Это действует на активный диалог и любой элемент.
Примеры:
 !!DL:C1; - закрыть диалог
 !!DL:C1000; - изменить курсор на стрелу (стандартный курсор)
 !!DL:C1042; - изменить курсор на 'Разбитая лодка'


Код
(Переведено Demiurg'ом)
E#1/#2 Включить элемент диалога.
 #1 - ID элемента диалога
 #2 - включить (1) или выключить (0) элемент
Комментарии(Прим. Demiurg'a)
При выключении кнопки показывается следующий кадр дефа (смотрите Формат шаблонов -> 'B' - кнопка.)


Код
(Переведено Demiurg'ом)
H#1/#2 Установить подсказку для элемента диалога
 #1 - ID элемента диалога
 #2 - подсказка для элемента (появляется, когда вы движете мышь через элемент)
Комментарии:
 #2 может быть глобальной или статической z-переменной.
 Текст анализируется перед отображением (не во время установки).


Код
(Переведено Demiurg'ом)
N# Анализ шаблона диалога
 # - имя файла шаблона (может быть текстом, глобальной, локальной или статической z-переменной)
Комментарии:
 Текст анализируется перед использованием.
 Эта команда загружает файл шаблона (если еще не загружен), ищет диалог (используя Id) в файле и анализирует его.
 Она не показывает диалог.
 Главная цель этого дать нам шанс настроить загруженный диалог перед его показом.
Результат:
 Флаг 1 = 1 если успешно
 Флаг 1 = 0 если случились ошибки (не найден шаблон диалога)
Формат шаблона описан ниже.


Код
(Переведено SnoRT'ом)
P$    Передать контроль действий функции $
Параметры функции:
 x1 - действие
    0 - мышь сдвинулась на другой квадрат
    12 - левая кнопка мыши нажата
    13 - левая кнопка мыши отпущена
    14 - правая кнопка мыши нажата
 x2 - x координаты клика на карте
 x3 - y координаты клика на карте
 x4 - уровень клика на карте


Пример:
!?OB8/11/0;
!!DL:P12345;
!!IF:M^Заклинание выполнено.^;

!?FU12345;
!!if&x1=0:; мышь сдвинулась
!!OBx2/x3/x4:T?y1; получить тип объекта, куда указывает мышь
!!if&y1=34:; герой?
!!DL:C1042; курсор затопленной лодки
!!el:;
!!DL:C1000; стандартный курсор
!!en:;
!!FU:E;
!!en:;
!!if&x1=13:; левая кнопка мыши нажата
!!OBx2/x3/x4:T?y1 C?y2;
!!if&y1=34:; герой
!!HEy2:K; убиваем героя
!!DL:C1000; стандартный курсор
!!en:;
!!FU:E;
!!en:;
!!if&x1=14:; нажатие правой кнопки
!!DL:C1;
!!en:;


Код
(Переведено Demiurg'ом)S$ Показать диалог
 $ - возвращенный элемент (активный элемент, когда диалог закрывается)
Комментарии:
 Показывает диалог (с определенным Id) и ждет пока он не закроется. Это означает, что следующий ресивер запускается не сразу, а только когда диалог закрывается любыми средствами.
 Вы можете не использовать параметр вовсе, это означает, что возвратный код игнорируется.
 Вы можете показывать один диалог "из другого" и последовательность может быть неограничена но вы можете иметь только ОДИН диалог такого типа на экране одновременно. Это означает, что вы не можете вызвать диалог X из диалога X.[code]

[code](Переведено SnoRT'ом)
!?DL;    Триггер настройки диалогов

Вызывается, когда действие мыши или клавиатуры (ещё не поддерживается) перехватывется на любом пункте диалога.

Примечания:
Когда триггер выполняется, следующие переменные вводятся:
  v998 = Id Диалога
  v999 = Id Пункта диалога
  v1000 = Действие
Доступные действия (для v1000):
  12 - нажатие левой кнопки мыши
  13 - отжатие (не знаю как это правильно обозвать =)) левой кнопки мыши
  14 - нажатие правой кнопки мыши
Примечание Demiurg'a
Триггер срабатывает только при нажатии на включенный элемент диалога (смотрите !!DL:E)


Код
(Переведено SnoRT'ом)
Формат шаблонов.
Это стандартный файл текстовой таблицы Героев 3.
Первые две строки пропускаются (могут быть заполнены текстом или оставлены пустыми)
Самый левый столбик также игнорируется (может быть заполнен текстом или оставлен пустым).
Диалог начинается со следующих строк (в порядке столбца):

0: пропускается
1: знак '#' - означает начало нового шаблона диалога
2: xxx номер - уникальный Id диалога
3: номер x позиции - X позиция от верхнего левого угла (-1=центр экрана)
4: номер y позиции - Y позиция от верхнего левого угла (-1=центр экрана)
5: dx номер - горизантальный размер диалога
6: dy номер - вертикальный размер диалога
7: xxx номер - количество пунктов диалога (вы можете использовать меньше, но не больше, чем выбрали)
8: xxx номер - установить цвет рамки диалога под цвет номера игрока (-1 означает текущего игрока)
9: текст - имя PCX файла, который будет фоном
10: XXX номер - Id текстового пункта, который используется как поле с описанием.

Следующие строки анализируются как пункты диалога до тех пор, пока не будет знака '#' в первом столбце. Это может быть просто пустая строка с '#', или линия с началом нового диалога.

Самый главный элемент - первый символ в первом столбце. Поддерживаемые на данный момент элементы:

'P' - PCX рисунок:
0: пропускается
1: 'P'...
2: xxx номер - уникальный Id пункта
3: номер x позиции - X позиция в диалоге от верхнего левого угла
4: номер y позиции - Y позиция в диалоге от верхнего левого угла
5: dx номер - горизонтальный размер пункта
6: dy номер - вертикальный размер пункта
7: текст - имя PCX файла
8: флаги - специфическое значение (ещё не известно полностью)

'D' - кадр DEF рисунка:
0: пропускается
1: 'D'...
2: xxx номер - уникальный Id пункта
3: номер x позиции - X позиция в диалоге от верхнего левого угла
4: номер y позиции - Y позиция в диалоге от верхнего левого угла
5: dx номер - горизонтальный размер пункта
6: dy номер - вертикальный размер пункта
7: текст - имя DEF файла
8: кадр - изображения внутри DEF'а для вывода
9: флаги - специфическое значение (ещё не известно полностью)

'A' - анимированный DEF рисунок:
ещё не поддерживается

'B' - кнопка (особый DEF)
0: пропускается
1: 'B'...
2: xxx номер - уникальный Id пункта
3: номер x позиции - X позиция в диалоге от верхнего левого угла
4: номер y позиции - Y позиция в диалоге от верхнего левого угла
5: dx номер - горизонтальный размер пункта
6: dy номер - вертикальный размер пункта
7: текст - имя DEF файла
8: флаги - специфическое значение (ещё не известно полностью)

[Прим. Demiurg'a в DEF'е кнопки должно быть как минимум 2 кадра. При нажатии на кнопку показывается второй кадр. Также при отключении кнопки (переводе элемента диалога в режим выключен) показывается второй кадр. Например если вы сделаете кнопкой деф с заклинаниями, то будет изображено заклинания вызов лодки а при нажатии или выключении вы увидите следующее заклинание - потопить лодку.
При нажатии на кнопку (не удерживая) происходит выход из диалога (выход в предыдущий диалог, если диалог был открыт из другого диалога). Конечно кнопка должна быть включена.]

'T' - текст:
0: пропускается
1: 'T'...
2: xxx номер - уникальный Id пункта
3: номер x позиции - X позиция в диалоге от верхнего левого угла
4: номер y позиции - Y позиция в диалоге от верхнего левого угла
5: dx номер - горизонтальный размер пункта
6: dy номер - вертикальный размер пункта
7: текст - текст (может быть пустым и заполняться позже)
8: шрифт - имя файла шрифта
9: цвет - цвет текста
10: bkcol - цвет фона
11: выравнивание - выравнивание текста
12: флаги - специфическое значение (ещё не известно полностью)

'S' - текст в вертикальной прокруткой:
0: пропускается
1: 'S'...
2: xxx номер - уникальный Id пункта
3: номер x позиции - X позиция в диалоге от верхнего левого угла
4: номер y позиции - Y позиция в диалоге от верхнего левого угла
5: dx номер - горизонтальный размер пункта
6: dy номер - вертикальный размер пункта
7: текст - текст (может быть пустым и заполняться позже)
8: шрифт - имя файла шрифта
9: цвет - цвет текста
10: цвет2 - цвет полосы прокрутки
11: выравнивание - выравнивание текста

'E' - отредактированный текст:
0: пропускается
1: 'E'...
2: xxx номер - уникальный Id пункта
3: номер x позиции - X позиция в диалоге от верхнего левого угла
4: номер y позиции - Y позиция в диалоге от верхнего левого угла
5: dx номер - горизонтальный размер пункта
6: dy номер - вертикальный размер пункта
7: текст - текст (может быть пустым и заполняться позже)
8: шрифт - имя файла шрифта

'V' - SMK или BIK видео:
0: пропускается
1: 'V'...
2: xxx номер - уникальный Id пункта
3: номер x позиции - X позиция в диалоге от верхнего левого угла
4: номер y позиции - Y позиция в диалоге от верхнего левого угла
Видео выводится поверх любых других пунктов диалога и не имеет поддержки 'hint' описания. Это значит, что вам нужно следить, чтобы видео не вылазило за границы окна диалога, чтобы не получить проблем с перерисовкой.
Также вы можете использовать только одно видео за диалог.


Примечания:
Вы можете хранить больше одного диалога в файле шаблона.
Вы не должны использовать одинаковые Id диалогов в различных файлах шаблонов. Каждый диалог должен иметь свой унильный Id. Это также значит, что некоторые Id будут заняты под WoG-диалоги.
Пункт с номером 30721 - пункт отмены по умолчанию. Так, если игрок нажимает кнопку ESC когда выведен диалог - он закроется ( диалог, а не игрок =))) ).

Примечание Demiurg'a:
Для создания шаблона с диалогом необходима специальная программа TextEdit. Смотрите пункт 10.I по этой ссылке
DracoLich
ERM-help в формате chm, версия 2.0
Скачивать с сайта, прямая ссылка:
http://dracolich.narod.ru/ERM-Help.rar

Добавлено ([mergetime]1186500271[/mergetime]):
В случае любых неполадок с текстом и т.п. сообщите мне. Постараюсь исправить.
DracoLich
Обновил справку, версия 2.10
Добавлено новое содержание, исправлены некоторые ошибки, добавлено информации.
Скачивать с сайта, ссылка та же:
http://dracolich.narod.ru/ERM-Help.rar
DracoLich
Обновлена справка до версии 2,3.
http://dracolich.narod.ru/ERM-Help.rar
hippocamus
Код
Устанавливает специфический отзыв ИЛИ изменяет текущий указатель мыши.
# - вид действия
1 - закрыть диалог, вернуть код
1000+# - установить текущий указатель, как # (смотрите формат PM2)
Комментарии:
Для этой команды вам не нужно, чтобы установить диалог Id в триггерной части DL. Это влияет на активный диалог и любой элемент.
Пример:
!!DL:C1; - закрыть диалог
!!DL:C1000; - изменить указатель мыши на стрелу (стандартный указатель)
!!DL:C1042; - изменить указатель мыши на 'Затопить корабль'


Добавлено ([mergetime]1211123287[/mergetime]):
Не особо литературно, но понятно. Хотя без моей правки тоже не обошлось...
Хорошая вешь - 5-я Pragma
Indianа
Код
[b]C#[/b]
Установить особое callback-действие[0], или изменить текущий вид курсора.
# - тип действия
1 - закрыть диалог и возратить данный код в качестве результата
1000+# - новый вид курсора (см. формат PM2)

Комментарии:
Вам не нужно указывать идентификатор диалога в событии DL для этой команды, так как она работает с активным диалогом и любым его элементом.

Пример:
 !!DL:C1; - закрыть диалог
 !!DL:C1000; - изменить курсор мыши на "стрела" (стандартный игровой курсор)
 !!DL:C1042; - изменить курсор мыши на 'Потопить корабль'


[0] - callback-действие (или функция в программировании) - это действие, кторое будет исполнено (вызвано, если речь идёт о функции) по выходу из текущего блока кода (обычно функции).

На примерах Славы (ZVS) видно, что при каждом событии диалога (таким, как движение мышью) вызывается определённая ЕРМ-функция, которая и управляет всей остальной логикой. В функции мы выбираем, на какие действия как реагировать, а что игнорировать. Команда DL:C1 была бы обычной функцией, если бы закрывала диалог и тут же выходила из текущего блока кода. Но выполнения кода идёт вплоть до конца события (криво именуемого триггером).

Вот вам пример.
Код
...
!!DL:P12345;

!?FU12345;
!!DL:C1; команда закрытия диалога
!!IF:M^Выполнение функции идёт до конца. Вы видите это сообщение. Диалог закроется в конце события^;
; здесь ерм наткнётся на конец события и вызовет нашу возратную (callback) C1, которая и закроет диалог.
Indianа
Что такое диалог? Как эта хрень работает?
(размышления пьяного солдата)
© Unknown.

Обычное положение дел в Героях:

1) Есть окно, которое мы видим и в котором играем.

2) Windows постоянно шлёт этому окну всякие сообщения, класса "юзер двинул мышкой", "юзер снова двинул мышкой", "юзер соизволил нажать левую клавишу", "юзер давит ALT+F4 - выйти, или послать его НА?", "а не пора ли тебе бы, окно, перерисоваться?"

3) сами Герои постоянно получают сообщения от Винды и реагируют на них. Например, реакция на щёлчок по определённой игровой кнопке (утрировано)

Код
Функция, отвечающая за обработку событий окна
Если событие = щелчок_левой_кнопкой_мыши, то:
Если мышь.позиция.х>=100 и мышь.позиция.x<=200 и (тоже самое с y), то игрок нажал на кнопку "Настройки" и нужно что-то делать...

Если событие=клавиатура и юзер жмёт "ALT+F4", то спросить этого редиску, а "ДЕЙСТВИТЕЛЬНО ЛИ ОН ХОЧЕТ ВЫЙТИ?". Если нет (юзер в здравом уме), то хорошо, иначе шлём окну сообщение о закрытии.

Если...

Если....

Конец функции, отвечающей за обработку сообщений для окна.


Что такое диалог? Диалог - это создание нового окна внутри геройского со своей функцией обработки сообщений. Причём Герои уже в пролёте, сообщений их окно не получит. Диалог может иметь графическое отображение (настраивается через тхт-шаблон), а может использовать отображение окна Героев (как и сделано в примерах). Пример нехорошего диалога:

Код
ЕРМ-код
Создаём диалог. Назначаем функцию 12345 ответственной за обработку сообщений.

Функция 12345.
Если событие = движение мышкой, то выведи-ка сообщение: "Дорогой чайник! Если ты ещё не понял, ты попал в плен нехорошего скрипта (автор - hippocamus, когда будешь стрелять, напомни, что это я, скрипт, указал на него). Чтобы ты тут не жал, как бы не щёлкал - ничего не будет. Ты даже игру сохранить не можешь. Максимум - жми CTRL+ALT+DEL".

Если событие = "ALT+F4", то вывести сообщение: "Парень, ты чего, болен? Хочешь закрыть геройское окно? И это после того, как наигрался в пиратскую версию такой хороший игра? Короче, сиди и не высовывайся. ЕРМ рулит. Когда будешь стрелять в hippocamus-a, не забудь ему припомнить всё, что ты сейчас испытываешь".

Конец функции.


Каким же должен быть диалог? Диалог (или окно) должен регировать корректно на нужные сообщений и обязательно должен при определённых обстоятельствах закрываться, возвращая управление Героям.
DracoLich
ERM-Manual 2.4 с поддержкой команд TE.
Ссылка
hippocamus
Драколич, добавь на досуге вот такую команду для TE:

Цитата
есть ещё глобальный запрет построек... (работает для ТЕ)

Цитата:
New command CD:B
Syntax:
B0/town/struct/ENdis - global enable/disable structure...

Details:
B0/#1/#2/$;
Enable/disable #2 structure to build in any towns of #1 type.
$ - flag (0=disabled, 1=enabled).
Например, !#CD:B0/7/2/0 - запрет гильдий 3 уровня для всех "Крепостей" (с самого старта игры)
DracoLich
Сорри, но у мну нет компа под рукой с исходниками )
Потому справка пока заморожена )
hippocamus
НУ ладно. на будущее smile.gif
И ещё UN:C для статистики добавь.

C#1/#2/$3;
прочитать-записать участок памяти начиная с #1, длиной #2 в/из переменную $3.
hippocamus
В списке объектов (таблица типов объектов) нужно добавить:

40 Декоративный объект
217 Жилище существ фиксированного уровня
218 Жилище существ, привязанное к городу
DracoLich
Нужно ли переделать формат русифицированной справки в .hlp?
hippocamus
В принципе и так хорошо. Единтсвенное, что достаёт - нужно перед загрузкой включать картинки в IE.
hippocamus
Цитата
Рискованный Скрипт Таблица параметров вторичных навыков
(Внимание: рискованный скрипт)

Параметры навыков записаны в таблицу, и при установке значения уровня навыка отличного от 0-3, игра будет брать параметры соседних навыков.

Здесь таблица параметров навыков по уровням, используемых в игре (для навыков, которые используют процентные значения).
Есть четыре значения для каждого навыка: 0 - нет, 1 - основной, 2 - продвинутый, 3 - эксперт.
Если вы установить навык выше (или ниже) этого значения, игра будет смотреть на параметры, следующие далее (прежде) в таблице.

Например, если навык Стрельба установить на уровень 7, игра прочтет значение Атаки 3го уровня и даст бонус 30%.

Единственная проблема - это то, что игра будет неправильно показывать навык в окне героя или даже ВЫЛЕТИТ.

Можно использовать другие значения навыков с боевыми навыками, применяя смещение в триггере !?BA0 и удаляя его в триггере !?BG1.
Такой метод позволит избежать ошибок и позволит нормально качать навыки, если вы получите уровень после битвы.

Примечание: * означает, что соответствующий навык был отгадан по значениям, и фактически не тестировался.

Это о чём?
Я вообще не понял...
Если это таблица навыков героя - то зачем? Ведь есть нормальные команды для работы с навыками...?
major
Ну в смысле, что значения праметров идут в таблице по порядку, и если навыку поставить уровень >3 или <0, то процентное значение будет браться из другого навыка.

Например, как поставить, чтоб волшибство на эксперте увеличивало магический урон на 50%? Нужно перед битвой поставить уровень этого навыка 6, т.е. он прочитает значение навыка Продвинутый интеллект и будет использовать это значение. А после битвы вернуть назад, значение эксперт 3 (стандартные 15%).

Ты про это спрашивал или нет?
hippocamus
Да, про это, спасибо!
ShadowDF2
Hippo, думаешь, можно как-то по-доступней написать? laugh.gif Говори, исправлю

Добавлено ([mergetime]1237130544[/mergetime]):
И кстати, если у кого есть какой-либо материал по ерм текущей официальной версии 2.81 (+TE), просьба поделиться ссылками, ибо новая версия ждет =/
hippocamus
Ну во первых - на эту страницу ссылку нужно дать оттуда, где она актуальна. В команде !!HE:S
Во-вторых - добавить в !!UN описание команды C. Она есть отдельно, и не вполне понятно, а нужно дать краткое описание, формат команды и затем уже ссылку на статью.
В-третьих, описание стандартных функций ВОГ, которые описаны в script00.erm
Говорят, там есть даже такие функции как вычисление квадратного корня, но о них почти никому не известно.
Ну, и если можешь - то подробно работу с !!DL, с примерами, чтоб дураку было понятно. И оттуда ссылку на формат диалоговых TXT.
ShadowDF2
1) Поставлю
2) Напомните кто-нить синтаксис laugh.gif Я опять его потерял
3) Имеешь ввиду, готовые функции для вычисления чего-либо? Я помню, там есть функции для генерации случайных заклинаний =;
4) О DL ничего сам не могу написать, ибо не шарю. Напишите кто шарит примеры, плз. О вас не забудут laugh.gif
hippocamus
2. !!UN:C[адрес]/[количество байт]/[значение]
4. http://forum.df2.ru/index.php?act=ST&f=52&...ndpost&p=249409 и в окресностях smile.gif
ShadowDF2
4) Там лишь описание команд DL, а примеров нету. Нужны именно примеры
hippocamus
Понимаешь, в чём сложности с примерами...
!!DL привязан непосредственно к текстовику. Пример тогда давать нужно вместе с текстовиком.

Вот например: одевание куклы героя в магазине.
Кукла новая.
http://wogtowns.vndv.com/misc/ex.rar
(файл распаковать в Data, так, чтобы каталог sh был в Data)
Требуется ТЕ.
DracoLich
Помогите с перводом данной части данных о !!DL
CODE
Any Control Subtypes:
52 - set X (no redraw)
53 - set Y (no redraw)
61 - set Width (no redraw)

Def Subtypes:
9 - set file name
4 - set cadre
12 - set group
8 - set CloseDialog
10 - set (device) palette
13 - set player, whose colors to use

Button Subtypes:
9 - set file name
3 - set caption
10 - set (device) palette
13 - set player, whose colors to use

Pcx Subtypes:
11 - set file name
10 - set (device) palette
13 - set player, whose colors to use

Scroll Subtypes:
49 - set Position
50 - set PositionsCount

Edit Subtypes:
51 - set MaxLength
3 - set Text
7 - get Text?

Не то что бы много буков, просто трудности именно с интерпретацией на русский.
Цитата
В-третьих, описание стандартных функций ВОГ, которые описаны в script00.erm
Говорят, там есть даже такие функции как вычисление квадратного корня, но о них почти никому не известно.

В принципе, там нашел только функцию генерации случайнго заклинания. Никаких корней нет там (да и кому они нужны? оО).

Добавлено ([mergetime]1239951861[/mergetime]):
В принципе, учел пожелания выше, но с DL все равно конфуз получается - не буду же я запаковывать еще и карту под мб весом sleep.gif
Aleee
Как-то писал скрипт с вычислением расстояний от героя до объектов. С извлечением корня было бы легче.
hippocamus
О, Поздравляю Драколича!
gamecreator
Цитата(DracoLich @ 17 Apr 2009, 10:04)
Помогите с перводом данной части данных о !!DL

CODE
Подтипы любого элемента управления:
52 - установить положение по X (без перерисовки)
53 - установить положение по Y (без перерисовки)
61 - установить ширину (без перерисовки)

Подтипы def:
9 - установить имя файла
4 - установить кадр
12 - установить группу
8 - установить CloseDialog
10 - установить палитру (устройства)
13 - установить используемый цвет игрока

Подтипы кнопок:
9 - установить имя файла
3 - установить надпись
10 - установить палитру (устройства)
13 - установить используемый цвет игрока

Подтипы pcx:
11 - установить имя файла
10 - установить палитру (устройства)
13 - установить используемый цвет игрока

Подтипы прокрутки:
49 - установить позицию
50 - установить количество позиций

Подтипы поля ввода:
51 - установить максимальную длину
3 - установить текст
7 - получить текст?
MasterOfPuppets
Драколич - два пунктика по UN.
1)
Цитата(Russian Help)
H#1/#2/#3/#4/#5
Скрыть часть карты (область – круг)
        #1 – X
        #2 – Y
        #3 – L
        #4 – игрок
        #5 – радиус

Цитата(English Help)
Hide part of the map (round area)
  #1 = x
  #2 = y
  #3 = Level
  #4 = Owner (Format E1)
  #5 = Radius
Comments:
The shroud will be replaced for all players except the owner.

Без комментария команду можно истолковать превратно, то есть - совсем наоборот.
2)Для UN:U с параметром -1 или -2 не указано то, что переменную, куда заносятся координаты, нужно установить перед поиском на соответствующее значение.
DracoLich
Цитата
)Для UN:U с параметром -1 или -2 не указано то, что переменную, куда заносятся координаты, нужно установить перед поиском на соответствующее значение.

Ния не понял.
!!UN:U98/-1/x16/1; - записать координаты города №х16 в v1/v2/v3
Какие соответствующие значения?
major
MoP наверно имел ввиду, синтаксис !!UN:U#/$/-1/v-var и !!UN:U#/$/-2/v-var.
Чтобы он работал, нужно сначала установить переменную v-var.
MasterOfPuppets
Так точно yes.gif
MasterOfPuppets
http://www.heroesleague.ru/show/2293/erm_s.zip - по-моему, единственная, лишь дублирующаяся в сообщениях ссылка на ERM-help ТЕ-версии. Битая уже чёрт знает сколько времени. К сожалению, не успел скачать, пока ссылка была рабочей.

Может кто-нибудь дать нормальную ссылку? Или, если кого трафик не жжёт - залить на файлообменник.
Aleee
Он не сильно отличается от обычного, описаны кое-какие дополнительные функции у ресиверов, пара новых триггеров (так и недоделанных до конца и т.п.) Если, конечно, мы говорим про один и тот же хелп.
DracoLich
http://dracolich.narod.ru/ERM-Help.chm
Новая версия ERM-Help
Об ошибках пишите
MasterOfPuppets
А чё за баг? Я заметил только, что лист ресейверов кривоват, а так - всё норм.
Ещё бы неплохо добавить маленькое уточнение по команде UN:J7/#/$. Эта команда никакого отношения к Чёрному Рынку не имеет (что плохо) - лишь к Торговцам Артефактами. Или для игроков эти названия - синонимы?
DracoLich
Остались некоторые комментарии фо ми онли )
Проклятье блокировки слота такое подлое, слов нет. Таблица слотов другая.
Насчет черного рынка - разве они не синхронны? Всегда казалось что одинаковы.

Добавлено ([mergetime]1244274233[/mergetime]):
http://dracolich.narod.ru/ERM-Help.chm
2.7


Добавлено ([mergetime]1244274335[/mergetime]):
Бтв только что заметил что ссылка на сайте была на старую помощь оО
MasterOfPuppets
Цитата
Насчет черного рынка - разве они не синхронны? Всегда казалось что одинаковы.

На рынке совсем другие артефакты, они не меняются всю игру, и рынок никогда не обновляется - артефакты раскупают, и он пустеет.
MasterOfPuppets
Подумал тут... Может, стоит добавить в хэлп несколько примеров нестандартных позиций артефактов?
Например (из тех, что имеют какой-то смысл):

1339 right ring
65 left ring
1334 misc. slot 1
21732 misc. slot 2
117033 misc. slot 3
35338 misc. slot 4
21748 misc. slot 5
16771 either hand

Выяснить значения позиций труда не составляет. Редактируем слот(ы) какого-либо арта в artraits.txt, а затем выясняем это значение через UN:A#/2/$;
DracoLich
Не понял. Это куда артефакт может помещаться?
MasterOfPuppets
Цитата
1339 right ring
65 left ring
1334 misc. slot 1
21732 misc. slot 2
117033 misc. slot 3
35338 misc. slot 4
21748 misc. slot 5
16771 either hand

Только правое кольцо
Только левое кольцо
Только слот разного 1
Только слот разного 2
Только слот разного 3
Только слот разного 4
Только слот разного 5
Любая рука
DracoLich
Да перевод понятен, спрашивал именно о "строго левое кольцо".
Странно, что не вводили таких артефактов оО
MasterOfPuppets
В русском мануале чё-то всегда отсутствует команда CA:P.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.