NWScript - NWScript

NWscript
РазработаноBioWare
РазработчикBioWare
Впервые появился18 июня 2002 г.
Стабильный выпуск
1.69.8109 (Neverwinter Nights) / 9 июля 2008 г.
Операционные системыМайкрософт Виндоус,
Сторонние инструменты за Mac OS X и Linux
ЛицензияBioWare EULA
Интернет сайтПортал разработчиков BioWare
Под влиянием
C, Ява

NWScript это язык сценариев разработан BioWare для ролевая видеоигра Neverwinter Nights. Он основан на Язык программирования C и реализован в Набор инструментов Aurora. Neverscript, Открытый исходный код Сторонний редактор, был создан для Mac OS X и Linux версии Neverwinter Nights потому что набор инструментов Aurora не был портирован к тем платформы.

NWScript также используется в видеоиграх. Ведьмак, Звездные войны: Рыцари Старой Республики и Star Wars: Knights of the Old Republic II Лорды ситхов, которые используют Odyssey Engine. Neverwinter Nights 2, то продолжение к оригиналу NWN, имеет модифицированную версию этого языка сценариев.

Синтаксис

Несмотря на то, что NWScript основан на C, он не имеет многих функций из семейства C, за исключением логичный и двоичный / тройной операторы и некоторые математические функции. Функция исходный код недоступен для конечный пользователь, но правильный синтаксис определен в файле сценария с именем nwscript.nss. Пользователи могут создавать свои собственные функции, и их можно включить в другие скрипты через #включают директива, который работает немного иначе, чем в C ++.

Привет, мир

NWScript не имеет возможности напрямую указать экран для вывода. Вместо этого, например, внутриигровые персонажи, такие как персонаж игрока, могут говорить типично "Привет, мир "пример сообщения. Этот сценарий помещает сообщение" Hello world "в журнал сообщений игрока. Чтобы оно работало, оно должно быть помещено в OnClientEnter мероприятие из модуль характеристики.

пустота главный(){    SendMessageToPC(GetEnteringObject(), "Привет, мир");}

Первая строка - пустая основная функция это функция, с которой будет запускаться NWScript. В третьей строке текст Привет, мир отправляется в журнал сообщений игрока.

Типы данных

NWScript позволяет структуры, но нет объекты. Следующие общие типы данных доступны в NWScript:

NWScript также представил некоторые типы данных для игры Neverwinter Nights:

  • объект (относится к игровым объектам, таким как NPC и размещаемые объекты).
  • местоположение (относится к расположению объекта в игре, состоящему из ссылки на объект области, вектора и поплавка, описывающего положение и ориентацию в пределах области).
  • талант (относится к заклинания и способности).
  • вектор (относится к координаты объекта и представляет собой конструкцию из трех поплавков).
  • свойство (относится к способностям таких предметов, как оружие для использования в игре).
  • эффект (относится к эффектам изменения игровой механики на объектах; например, эффекты, созданные заклинаниями, болезнями и отображаемыми визуальными эффектами).

Формат файла

При сохранении сценарий, набор инструментов Aurora сохраняет простой текст скрипта в виде файла с расширением .nss. расширение имени файла. Когда составление сценарий, файл .ncs, содержащий Байт-код для запуска на NWScript Виртуальная машина файл создан. Если включен, отлаживать Также создается информационный файл с расширением .ndb. Игра использует только файл .ncs (и файл .ndb, если он вызывается).

При сохранении созданного модуля файлы упаковываются в единый файл модуля с расширением .mod вместе с другой информацией о структуре модуля.

внешняя ссылка