Руководство по скриптовому языку TES Construction Set

Добавлен , опубликован
Руководство по скриптовому языку TES Construction Set
Пролог
Хочу выразить благодарность человеку под ником Gwathlobal, который проделал огромную работу по переводу данного уникального руководства.
Если у вас возникли какие-либо вопросы вы всегда можете связаться с автором
email автора: gwathlobal@yandex.ru
Сайт автора: tesplay.ru

Вступление

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

Что такое скрипт?

Скрипты – это кусочки программного кода, написанные на специальном скриптовом языке (с этого места я буду называть его скриптами TES). Эти маленькие «программы» запускаются в процессе игры и выполняют какие-то действия, а точнее, множество различных действий: запускают события, контролируют время и место, заставляют вещи и персонажей исчезать, появляться и двигаться, выдают игроку сообщения, меняют показатели статистики, даже управляют погодой – возможности огромны.
Скрипты TES – это уникальный скриптовый язык, не используемый вне TES CS. Как скриптовый язык, он имеет определенные ограничения по сравнению с «настоящими» языками программирования, например, C++:
  • Область применения Скриптов TES ограничена – не надо думать, будто вы сможете запрограммировать на нем что-то, чего не поместили в игру ее разработчики, так или иначе. Это не значит, что вы не сможете создать с помощью скриптов что-то новое и необычное! Однако вы не можете, например, создать текстовый редактор с помощью скриптов TES.
  • Скрипты TES также не являются инструментарием для разработки приложений (SDK), который позволил бы вам непосредственно изменять исходные коды игры. Вот почему вы не можете использовать скрипты TES, например, для того, чтобы создать новый погодный эффект. Подобные вещи зашиты в ядро игры, и для работы с ними вам пришлось бы изменять game.exe.
  • Это интерпретируемый язык, а не компилируемый, то есть скриптовый код нуждается в другой программе для выполнения (в данном случае – это Морровинд), в отличие от компилированного кода, который может выполняться сам по себе, как приложение *.exe.

Что могут скрипты?

Скрипты в Морровинде – это способ заставить игру динамически реагировать на действия игрока. Вы можете использовать скрипты для разработки сложных квестов. Вы можете использовать скрипты для создания специальных предметов, которые делают что-то, лежащее за пределами обычных зачарований. Вы можете использовать скрипты для создания ловушек. Вы можете использовать скрипты для управления поведением монстров и персонажей. Помните процесс создания вашего персонажа в Морровинде? Он в основном контролируется набором скриптов. Видели Фаргота, снующего вокруг своего тайника в Сейде Нин? Им управляет скрипт. Приходилось освобождать рабов? Это тоже обеспечивается скриптом. В общем, короткий ответ на поставленный вопрос: много чего.

Чего не могут скрипты:

Скрипты TES ограничены в своих возможностях. Существует масса функций, доступных для использования, но иногда имеющихся вариантов все-таки не хватает для воплощения ваших желаний. Хуже того, некоторые функции работают криво, а то и просто глючат. В большинстве случаев искушенные скриптеры находят лазейки в имеющихся ограничениях, но не следует ожидать чудес. Многие вещи просто зашиты в ядро игры, и на них нельзя прямо повлиять с помощью скриптов.
`
ОЖИДАНИЕ РЕКЛАМЫ...