Module/ru
Module topics |
---|
Contents
Обзор
Модуль - это набор игровых ресурсов(en), который может быть:
- отдельной кампанией;
- расширением какой-либо одной кампании;
- расширением всех доступных кампаний.
Технически, в понимании тулсета, модуль это та же надстройка.
Кампания, это одиночное приключение. Этот термин может относиться как к основной, так и к отдельным кампаниям, создаваемым независимыми модмейкерами и которые появляются в "Других кампаниях". Основная кампания именуется также "Single Player campaign", то есть Одиночная игра, хотя все кампании для DAO являются одиночными.
- Модуль может наследовать ресурсы из других модулей, что определяется в свойствах модуля.
- Любой модуль может использовать ресурсы из основного модуля игры (Core Game Resources).
- Основная кампания использует ресурсы из основного модуля игры и свои собственные ресурсы. В игре ресурсы основной кампании доступны модулям, расширяющим её, но недоступны модулям отдельных кампаний.
Расширения могут быть как простыми, например предмет, доступный всем кампаниям, так и сложными, например новая глава с дополнительными областями, героями и т.д.
Официальные DLC Bioware являются типичным примером расширений.
Работа с модулем
- Процесс создания отдельной кампании достаточно прост, по крайней мере вы всегда можете использовать основные ресурсы игры (готовые постройки, существа, размещаемые объекты). Необходимо только создать локации, разместить НПС, существа, предметы, написать диалоги и т.д. В отдельной компании обязательно должна быть локация и точка, с которых начнётся приключение.
- В расширении необходимо использовать хотя бы одну точку входа, которая перехватывается в основной кампании, используя технику, именуемую PRCSCR. Например вы можете разместить дополнительных монстров в локации при её загрузке.
Файловая структура модуля
Обычно модмейкеру нет необходимости знать, где находятся ресурсы, так как файлами управляет тулсет, однако иногда это может быть полезным.
Модули организованы в файловую структуру, которая позволяет игре считывать требуемые файлы, а также иметь доступ к модульной среде. Для модулей основной кампании и основных ресурсов игры используются фиксированные папки.
Модули основной компании и основных ресурсов игры устанавливаются вместе с игрой и расположены:
*DragonAgeInstallDir*\modules\single player\ *DragonAgeInstallDir*\packages\core\
Это базовые папки, которые содержат все типы ресурсов, содержащихся в этих модулях. Однако для модмейкеров есть смысл использовать их только для извлечения ресурсов.
Новые модули и их ресурсы экспортируются в папку "Addins", которая содержит папки самого модуля ("module") и папку с ресурсами, доступными всем модулям("core"). Таким образом структура папок нового модуля такова:
*My Documents*\BioWare\Dragon Age\AddIns\*Имя модуля*\module\ *My Documents*\BioWare\Dragon Age\AddIns\*Имя модуля*\core\
Если же вы вносите изменения в основную компанию(Single Player) или в основные ресурсы(Core resources), используются следующие папки:
*My Documents*\BioWare\Dragon Age\modules\Single Player\ *My Documents*\BioWare\Dragon Age\packages\core\
После экспортирования модуль может быть протестирован в игре. А с помощью процедуры Builder to player можно создать архив формата dazip(тот же zip) для самостоятельной установки мода игроками.
Игра считывает ресурсы из любой папки "Override", определяя приоритеты папок (en) для разрешения конфликтов, возникающих в случае наличия двух ресурсов с одинаковым именем.
Свойства
⊟ | General | |
Client Script | Client scripts simulate user input | |
Include In Resource Build | This was used internally in the development of Dragon Age to determine whether a module in the designer database was automatically included in builds. | |
Name | The name of the module, used internally in the toolset title bar and as a fallback in the game if a description string ID has not been set. | |
Script | Event script assigned to the resource | |
Starting Area | The area that the player starts in when the campaign begins. | |
Starting Waypoint | The waypoint within the starting area that the player appears at when the campaign begins. This property is not used if the module is an add-on to an existing module. | |
StringID Begin | The line number in the talk table at which this module's text strings begins. Set to a very large random number to reduce the risk of conflict between modules. When building as a team, each builder needs to work with a different range and be aware of a potential bug. | |
StringID End | The end of the talk table line number range allowed for this module. | |
StringID Last Used | The last line number used by this module in the talk table. Determines the line number of the next text string created. | |
Type | Only the "Addin" type is supported by the end user toolset. The name "Addin" can be misleading, it's possible to create a stand-alone addin that appears as a new campaign. | |
UID | "Unique ID", this is not seen by the player. It is used in various configuration files and as the name of the directory that the module is stored in when exported. | |
⊟ | Info | |
Content Module | If this module is a PRC "offer" module, this indicates the module that it is offering for download. This is not likely to be used outside of BioWare. | |
Description | This property can't be set directly, it displays the contents of the description string ID set below. | |
DescriptionStringID | A string ID pointing to a short description of your module | |
DisplayName | This property can't be set directly, it displays the contents of the display name string ID set below. | |
DisplayNameStringID | A string ID pointing to the name of your module. | |
Extended Module | If the module is an add-on to an existing module (such as Single Player), select it from the drop-down list here. When this is set the module will be added to addins.xml when it is exported. | |
Game Version | ||
Image | An icon that's displayed in the installed content page | |
Presentation | If the module is an offer this bitmask indicates the various ways that the "hook" for the addin will be presented to the player in-game. 1: Chanter's board, 2: journal entry, 4: merchant, 8: world map, 16: NPC, 32: loot. You can logically OR multiple types together. | |
Price | The price of the module in points. This is only meaningful for modules offered by BioWare. | |
Priority | ||
ProductID | ||
Publisher | This property can't be set directly, it displays the contents of the publisher string ID set below. | |
PublisherStringID | ||
Rating | This property can't be set directly, it displays the contents of the rating string ID set below. | |
Rating Description | This property can't be set directly, it displays the contents of the rating description string ID set below. | |
RatingDescriptionStringID | ||
RatingStringID | ||
Release Date | The date the module was released in its current form | |
URL | ||
URLStringID | ||
Version | The version number you've assigned to the module's current state. | |
⊟ | Localization and VO Production | |
Requires Localization | [Undocumented] | |
Requires VO (Voice-Over) | [Undocumented] | |
⊟ | Modification History | |
Created By | User who created this module. | |
Created On | The date it was created on. | |
Last Modified By | The user who last modified the module. | |
Last Modified On | The date it was last modified on. | |
⊟ | Variables | |
Variable 2da | 2da file containing a variable table. Only the values in the table can be set and retrieved by scripting. | |
Variables | Opens the variable table for editing, allows the initial values of the variables to be defined. |
Variables
The module_var variables 2da contains a number of variables that are only used by the original main campaign for Dragon Age. Most of these can be ignored when creating other modules. In fact, the vast majority of the variables in this table are only referred to by core scripts; most modders will likely not need to worry about these.
Variable name | Type | Default | Description |
---|---|---|---|
ABILITY_ALLY_NUMBER | int | 4 | |
AI_DISABLE_TABLES | int | 0 | |
AI_PARTY_CLEAR_TO_ATTACK | int | 0 | 0 - non controlled followers should not attack yet. (can still run other non-offensive AI actions).
1 - non controlled followers are allowed to attack. |
AI_USE_GUI_TABLES_FOR_FOLLOWERS | int | 1 | |
ALISTAIR_FRIEND_TRACK | int | 0 | A variable related to one of the main party followers in Dragon Age: Origins. |
AMB_SYSTEM_DIALOG | int | 0 | |
APP_APPROVAL_GIFT_COUNT_* | int | 0 | A set of variables, one named for each of the possible main party followers in Dragon Age: Origins, for tracking how many gifts they've each been given. |
APP_APPROVAL_RATE_* | int | 0 | A set of variables, one named for each of the possible main party followers in Dragon Age: Origins, for tracking their approval score. |
APP_RANGE_VALUE_* | int | 0 | A set of threshold values for dividing party member approval scores up into "friendly", "warm", "neutral", "hostile" and "crisis". |
AREA_LOAD_HINT | int | 0 | Related to the text shown on the load screen between areas |
CHARGEN_MODE | int | 0 | |
CIR_FADE_FOLLOWER_* | int | -1 | A set of three variables related to a specific plot within the original campaign of Dragon Age: Origins |
CLIMAX_ARMY_CURRENT_AREA_BUFFER_SIZE | int | 0 | A variable related to a specific plot within the original campaign of Dragon Age: Origins. The current number of living army members in the current area of army deployment. |
CLI_ALISTAIR_AGREE_LEVEL | int | 0 | |
COUNTER_MAIN_PLOTS_DONE | int | 0 | |
CUTSCENE_SET_PLOT | string | NONE | Cutscene function will store a plot flag to be set after the cutscene plays. |
CUTSCENE_SET_PLOT_FLAG | int | -1 | Cutscene function will store a plot flag to be set after the cutscene plays. |
CUTSCENE_TALK_SPEAKER | string | Cutscene function will store a talk speaker who will speak after the cutscene plays. | |
DEATH_HINT | int | 0 | related to the text shown on the screen after the player's death |
DEBUG_ENABLE_PARTY_ITEM_SCALING | int | 0 | |
DEBUG_SKILL_CHECK_OVERRIDE | int | 0 | |
DEMO_ACTIVE | int | 0 | |
DISABLE_APPEARANCE_LEVEL_LIMITS | int | 0 | |
DISABLE_FOLLOWER_DIALOG | int | 0 | Make followers trigger soundsets instead of dialog when the leader is not the hero and clicked on (for example: climax defense) |
DISABLE_WORLD_MAP_ENCOUNTER | int | 0 | |
DOG_WARLIKE_COUNTER | int | 0 | |
HANDLE_EVENT_RETURN | int | 0 | |
LOG_ACTIVE | int | 0 | |
LOG_AI_CURRENT_LEVEL | int | 0 | |
LOG_PLOT_CURRENT_LEVEL | int | 0 | |
LOG_RULES_CURRENT_LEVEL | int | 0 | |
LOG_SYSTEMS_CURRENT_LEVEL | int | 0 | |
MODULE_COUNTER_* | int | 0 | Three generic "counter" variables |
MODULE_WORLD_MAP_ENABLED | int | 0 | |
NRD_BANDIT_BELT_COUNT | int | 0 | |
NRD_DIVINE_COIN_COUNT | int | 0 | |
NTB_* | int | 0 | Variables related to a specific plot within Dragon Age: Origins |
ORZ_* | int | 0 | Variables related to a specific plot within Dragon Age: Origins |
PARTY_BANTER_DIALOG_FILE | resource | NONE | |
PARTY_BANTER_ROTATION_COUNTER | int | 0 | |
PARTY_LEADER_STORE | object | 0 | stores the object ID of the leader that was chosen for being a leader, before it is switched (used in the climax) |
PARTY_OVERRIDE_DIALOG | resource | NONE | |
PARTY_OVERRIDE_DIALOG_ACTIVE | int | NONE | |
PARTY_PICKER_GUI_ALLOWED_TO_POP_UP | int | 0 | |
PARTY_TRIGGER_DIALOG_FILE | resource | NONE | |
PARTY_TRIGGER_PLOT | string | ||
PROVING_FIGHT_ID | int | 0 | Variable related to a specific plot in Dragon Age: Origins |
RAND_*_SET | int | 0 | |
RUNSCRIPT_VAR | string | When the console command "runscript" is used, this variable will contain a string with any parameters that the script was given. The script will need to retrieve and parse these itself. | |
STEALING_*_COUNTER | int | 0 | |
TRACKING_GAME_ID | int | 0 | |
TRACKING_SEQ_NO | int | 0 | |
TUTORIAL_ENABLED | int | 0 | |
TUTORIAL_HAVE_SEEN_LEVEL_UP | int | 0 | |
WM_STORED_AREA | string | last used area - will be triggered when returning from a random encounter | |
WM_STORED_WP | string | last used transition wp - will be used when returning from a random encounter | |
WORLD_MAP_STORED_PRE_CAMP_AREA | string | The WIDE OPEN WORLD area that was visited last. Used when leaving the camp so we can know if the player returns to it from the camp and then just directly transition there instead of travel. | |
WORLD_MAPS_TRIP_COUNT | int | 0 | counting the number of trips the player did in the world map, on any map in the game. Used to determine when to trigger random encounters. |
WRD_* | int | 0 |
Переводчики
kelamor / Страница / Почта / Как переводить DA Builder Wiki
Язык: | English • русский |
---|