Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Пишем скрипты под ТЕ
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III > Моды > Скрипты
Demiurg
Почему надо использовать TE для написания скриптов?
1) На ТЕ писать удобнее. Многие могут сказать, что далеко не всегда целесообразно применять синтаксис if else endif. Но даже в тех случаях, когда нет выигрыша в числе символов, есть другие преимущества. Скрипт гораздо легче читается и гораздо легче корректируется. Кроме того в ТЕ встроен лексический анализатор, позволяющий выявлять ошибки в ресиверах на стадии старта карты. Например, он обнаружив строчку:
!!UF:
Скажет, что не найден такой ресивер. Единственное отличие скриптов под ТЕ – нельзя использовать в комментах два и более восклицательных знаков подряд.
2) ТЕ поддерживает новые команды, которые иначе вы сможете увидеть только в ВОГ 3.59. С помощью !!EA:B можно существам давать большое количество абилок. С помощью !!SS можно изменять параметры заклинаний (например сделать телепорт кастуемым на вражеские существа в одну строчку). Найдется применение !!MR и !!MF.

Как поставить ТЕ?

Ссылки на последнюю версию ТЕ можно всегда найти здесь:
http://forum.heroesleague.ru/viewtopic.php?t=985
Привожу также прямую ссылки на скачивание:
http://www.heroesleague.ru/show/1268/TE_v1_03q.zip
Что нужно делать дальше написано в файле Readme!.txt
Если вы не собираетесь играть в ТЕ, то посмотрите в этом посте ниже раздел: Что нужно сделать, чтобы играть в ВОГ под ТЕ.

Какие отличия при игре в ТЕ?

Практически все изменения скрипотвые. В экзешник зашиты следующие изменения:
- Отключены некоторые «подсматривания» на чужом ходу, которые были возможны в сетевой игре. Ради этого пришлось отключить кнопку “Next Hero”, поэтому в ТЕ она пока не работает.
- Altar of Sacrifice теперь нечувствителен к типу героя-визитера, все герои могут жертвовать как артефакты, так и войска.
- В Skeleton Transformer можно дополнительно переделывать кавалерию и единорогов (негрейженых!) в черных рыцарей.
- При экспертном вызове водных и воздушных элементалей их число увеличено до 5*SP_героя.

Что нужно сделать, чтобы под ТЕ играть в ВОГ? (Обновлено 02/06/07 13:18)
Нижеприведенный патч добавит к ВОГ 3.58f EXE'шник ТЕ не трогая ни скрипты, ни текстовики.
(4 скрипта (26, 28, 54, 70) будут немного исправлены; 1 текстовик (SPTRAITS.txt) изменится в h3bitmap.lod)
патч


Где писать?

Здесь можно скачать скриптер – программа для написания скриптов.
http://www.heroesleague.ru/show/2293/erm_s.zip
Возможно кто-нибудь поделится ссылкой на более новый. Но и на этом вполне можно работать.

Помощь по ЕРМу:

Скачать можно здесь:
http://www.heroesleague.ru/show/2292/erm_help.zip
В этот хелп включены новые команды, поддерживаемые ТЕ. Хелп на английском языке.

P.S. Материалы взяты с форума по ТЕ, хелпа по ТЕ и личного опыта.
Bes
Такой вопрос...
Я как-то попробовал поиграть в свою карту под WoG3,58ф. Карта писалась на основе возможностей ТЕ, в частности повсеместно стараюсь использовать If-Else-End (или укороченный вариант if-end), так оказалось что это понималось 3,58-версией?! Почему?

(скрипты используются общие для обеих версий, все от Феникс-Мода)

Добавлено ([mergetime]1180082859[/mergetime]):
И если кто сможет, переведите пожалуйста текст-справку по "DIALOGUE CUSTOM (DL) RECEIVER"

Добавлено ([mergetime]1180082908[/mergetime]):
А то не совсем всё понятно, а хочется вникнуться в достоинства этого ресивера sad.gif

Добавлено ([mergetime]1180082966[/mergetime]):
Кстати, Demiurg, в спавке я вообще ничего про !!UF: не находил?! Откуда такая штука?
Demiurg
Цитата(Bes @ 25 May 2007, 12:41)
Такой вопрос...
Я как-то попробовал поиграть в свою карту под WoG3,58ф. Карта писалась на основе возможностей ТЕ, в частности повсеместно стараюсь использовать If-Else-End (или укороченный вариант if-end), так оказалось что это понималось 3,58-версией?! Почему?

(скрипты используются общие для обеих версий, все от Феникс-Мода)

Насколько я знаю, то WoG 3.58f просто игнорирует строчки
!!if:, !!el:, !!en: Вполне возможно, что сложилась такая ситуация, что условия стоявшие в !!if: и должны были выполняться.

Добавлено ([mergetime]1180083591[/mergetime]):
Эта вещь позволяет создавать диалоги на любых фоновых картинках с любыми элементами поверх фона. +еще несклолько полезностей.
За переводом обращайся к Снорту. Он переводил.
Экзешник ТЕ скажет, что не существует ресивера !!UF
на этапе загрузки карты. Я же писал, что анализатор выявляет некоторые ошибки на этапе загрузки/создания карты.

Добавлено ([mergetime]1180084068[/mergetime]):
Дабы кто-нибудь не усомнился в полезности !!DL
выкладываю сделанные с помощью него диалоги, реализующие гильдию магии на карте приключений. Второй диалог - менюшка для выбора покупаемого заклинания.
http://ifolder.ru/2121030
Пароль для скачивания 57x
(x - английский)
Сам скрипт гильдии магии на карте приключений выложу через несколько дней.
Bes
Скажите пожалуйста, если использовать FU:E внутри "if-else-end", то прерывание действовать будет только в пределах условия? Т.е. если перед ELSE поставить прерывание FU:E, то оно "не пойдёт" за пределы IF, так? unsure.gif
(Я это спрашиваю, чтобы удостовериться в своих наблюдениях, потому как уже использовал это и вроде шло как надо... вроде...)

Спасибо за надлядность, Demiurg! good.gif
TE рулит!!!
sergroj
Вот только формат шаблонов под !!DL со временем может измениться!
Berserker
ДЕмиург, надо бы всё тут поменять. Мой вариант: почему надо использовать более новый ехешник вога?
ставьте этот ехешник.
несколько отличий от вог 3.58

И при чём тут турнирная версия?
Писать легче не под ТЕ, а просто под ехешник. Ибо ТЕ - версия для сетевой игры для профи, а это при том, что просто всем нужно этот самый воговский ехешник и пару скриптов обновить.

Не бейте, если не в тему.
Demiurg
Цитата(Berserker @ 01 Jun 2007, 21:36)
ДЕмиург, надо бы всё тут поменять. Мой вариант: почему надо использовать более новый ехешник вога?
ставьте этот ехешник.
несколько отличий от вог 3.58

А где экзешник 3.59 выдают массам?
Bourn
2 sergroj
ты ведь разраб проги для диалогов? или на группе другая прога весит?
sergroj
Да
Berserker
Мы же про ТЕ говорим! Так вот ехешник оттуда и скрипты ты вроде уже выкладывал. Вот под это и надо писать скрипты. А в принципе, для чего тема? Давать уроки по тому, что в хэлпе написано? ИМХО просто флуд будет.
Demiurg
Цитата(Berserker @ 02 Jun 2007, 20:30)
Мы же про ТЕ говорим! Так вот ехешник оттуда и скрипты ты вроде уже выкладывал. Вот под это и надо писать скрипты.
Если честно, то я тебя не понял.
Цитата
А в принципе, для чего тема? Давать уроки по тому, что в хэлпе написано? ИМХО просто флуд будет.

Тема для того, чтобы объяснить новеньким на форуме, что не надо терзать себя пиша скрипты под EXE'шник 3.58f Надо использовать более новые версии.
В этой теме планируется описание работы новых команд.
А ты видел тему про обучение ЕРМ? Там кажется в первом посте сказано, что писать скрипты нужно в редакторе карт. Эту тему уже давно пора переписать заново.
Berserker
В таком случае, ИМХО или IMO, лучше ту темы и отредактировать. Вроде там Драколич модер. Как-небудь в первый пост всё это, а смо обучение в конец.
FANaTWOG
Цитата
Что нужно сделать, чтобы под ТЕ играть в ВОГ?


Только щас начинает допирать... Типа если я пропатчу, то, запустив с h3te.exe игру, все скрипты, написанные под wog 3.58f будут работать? Никаких различий в синтаксисе и встроенных опциях???

Если так, то наконец доступен мне будет spell support bud.gif
Ох, понапишу еще скриптов... icon_twisted.gif
Demiurg
Цитата(FANaTWOG @ 18 Jun 2007, 01:23)
Цитата
Что нужно сделать, чтобы под ТЕ играть в ВОГ?

Типа если я пропатчу, то, запустив с h3te.exe игру, все скрипты, написанные под wog 3.58f будут работать? Никаких различий в синтаксисе и встроенных опциях???

Да, именно так.
Ссылку поправил. (по той которая была раньше файл был удален)
FANaTWOG
Играю в WOG под TE - почему-то не работает скрипт 02, опция 102 "Улучшенные артефакты I".
Выскакивает ошибка, хотя по идее никакой ошибки нет:

wrong artifact number - !!HE-1:A1/?y-2/y-1;

Под WOGовский екзешник все работало нормально.Что-же это? Баг в TEшном ERM?
Demiurg
Над смотреть WOGERMLOG.txt, с сохраненными значениями переменных, и условия на карте, при которых происходит баг. Так ничего сказать нельзя.
FANaTWOG
Баг происходит когда нажмешь правую кнопку мыши на одетом артефакте,чтобы посмотреть его описание, к примеру на символе знаний(баг не на всех артах, но на большинстве)
Почему wrong number? Тут ведь получить в y-2, а не указать... бред какой-то... idontno.gif



Цитата
Над смотреть WOGERMLOG.txt, с сохраненными значениями переменных

Переменные в этом блоке скрипта все "unique to each function"


P.S. Этот баг что - только у меня shok.gif Ни у кого не стоит script update?
Berserker
Такой баг был в Феникс-Моде. Скрипт какой-то там глючный, скорее всего не учли некоторых переменных. И такая же ошибка. Я его просто выключил.
Demiurg
Цитата(FANaTWOG @ 27 Jun 2007, 17:13)
Играю в WOG под TE - почему-то не работает скрипт 02, опция 102 "Улучшенные артефакты I".
Выскакивает ошибка, хотя по идее никакой ошибки нет:

wrong artifact number - !!HE-1:A1/?y-2/y-1;

Под WOGовский екзешник все работало нормально.Что-же это? Баг в TEшном ERM?

Я посмотрел.
Действительно ошибка в ТЕшной версии ЕРМ.
Ибо команда !!HE-1:A1/?y2/y-1; работает верно и в переменную y2 сохраняется номер артефакта. Надо будет узнать, есть ли этот баг в 3.59.
Druin
Нету... Только в ТЕ...
gamecreator
интересно мне как такое могло случиться - зачем рыться в старом коде, если он рабочий? или хотели оптимизировать?
Цитата(FANaTWOG @ 27 Jun 2007, 21:03)
Ни у кого не стоит script update?

тут психов нет.
FANaTWOG
Цитата
тут психов нет.


Да нормальный update, moral.gif только русик ставить не надо - из-за него глюки были (string not found и.т.д.).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.