ReferenceWML
< Перевод данного справочника еще не завершен. Английскую версию можно почитать на офф-вики >
Содержание
Язык разметки "Веснота"
Формат WML (Wesnoth Markup Language) используется в большинстве элементов игры, включая сценарии, бойцов, сейвы и разметку интерфейса. WML-файлы представляют из себя обычные текстовые файлы с синтаксисом, родственным XML и INI, и чаще всего имеют расширение .cfg. Главной особенностью языка являются макросы (на замену функциям), позволяющие избежать лишних копи-пастов, и вообще сильно облегчающие жизнь :) На уровне исходников WML-движок реализован преимущественно в классе config (ну и еще в simple_wml для wesnothd).
На этой странице расположены ссылки на некоторые основные WML-структуры. Краткий алфавитный список тегов находится в AlphabeticalWML. Более подробный, с атрибутами — в BuildingScenariosIndex.
Если вам нужно руководство, а не справочник, то смотрите статьи BuildingScenarios, BuildingCampaigns и BuildingUnits.
Примечание: данные статьи могут содержать некоторые неточности, пробелы в тегах и атрибутах, устаревший синтаксис. Если среди них вы не найдете ответа, как что-либо реализовать, то можно поискать его в рабочих конфигах дистрибутива и аддонов игры (а также по форумам и исходникам самого "Веснота"). Исправление и дополнение справочника приветствуется ;)
Основы языка
- SyntaxWML — синтаксис языка и работа с переменными
- PreprocessorRef — синтаксис препроцессора
Теги верхнего уровня
- GameConfigWML the top level [game_config] tag
- UnitsWML the top level [units] tag
- UnitTypeWML — типы бойцов
- AnimationWML — анимация бойцов
- CampaignWML — кампании, тег [campaign]
- ScenarioWML — сценарии, теги [scenario], [multiplayer], [test], и [tutorial]
- EventWML — обработка событий
- SideWML — параметры игровых сторон
- MapGeneratorWML — генератор случайных карт
- TimeWML — время суток
- IntroWML — экран заставки
- SavefileWML — формат файлов сохранений
- ReplayWML a description of the format of player actions such as moving a unit
- StatisticalScenarioWML used to generate statistics of a savegame
- PblWML a description of the format of server-uploadable campaigns
- EraWML - эры, тег [era]
- TerrainWML the top level [terrain_type] tag
- TerrainGraphicsWML, the top level [terrain_graphics] tag
- ThemeWML — темы разметки интерфейса, тег [theme]
- LanguageWML - особые строки движка, тег [language]
- LocaleWML — языки переводов, тег [locale]
- HelpWML — игровой справочник, тег [help]
- BinaryPathWML — папки ресурсов, тег [binary_path]
- FontsWML — используемые шрифты, тег [fonts]
Прочие теги
- EventWML — создание игровых событий
- FilterWML — фильтрация объектов
- ActionWML — действия, происходящие при вызове события
- ConditionalActionsWML — условные операции и фильтры условий
- DirectActionsWML — операции, прямо связанные с геймплеем (например, создание бойцов)
- SingleUnitWML — содание отдельных бойцов, тег [unit]
- EffectWML — управляемые модификации бойцов, тег [effect]
- InternalActionsWML — внутренние операции (например, работа с переменными)
- InterfaceActionsWML — операции, не влияющие на геймплей напрямую (например, диалоги)
- LuaWML — использование скриптов на Lua
- AiWML — параметры искусственного интеллекта
- AbilitiesWML a list of the different abilities a unit or weapon can have
- DescriptionWML the structure of WML coded menus like the difficulty chooser of campaigns
- EditorWML tags controlling the post-1.4 editor's behavior
Предопределенные макросы
«Веснот» поставляется с библиотекой предопределенных макросов, которые будут небесполезны и при создании собственного WML-кода. Их полный список с описаниями находится здесь (англ.).
Другое
- ReferenceWMLSyntax how this wiki and the pages it links to should be formatted
- ConventionsWML how to make your WML more readable
- UsefulWMLFragments Various pieces of WML for various purposes. If you have some WML you're proud of that you think others can use, add it here.
- Maintenance tools for wmlindent, wmllint, wmlscope
- CommandMode commands are not strictly speaking part of WML, these could be a little hard to find so there's a link here.
- MultiplayerServerWML is used when communicating with the multiplayer server.
- CampaignServerWML is used when managing contributed campaigns on the campaign server.
- ImagePathFunctionWML is used when applying the team-color function to images.
- BinaryWML how WML is sent over the network
Смотрите также
- BuildingMaps — текстовый формат карт "Веснота"
- TerrainCodesWML — список всех кодов ландафта
- MultiHexTutorial a description of the multi-hex tiling system
- IGNFileFormat a description of the ignore file format