Builder to builder/ru

From Dragon Age Toolset Wiki
< Builder to builder
Revision as of 09:51, 15 February 2011 by Kelamor (Talk | contribs) (Создание архива для разработчика: Edit)

Jump to: navigation, search
Создание архива для разработчика
Начало / Русская DA Builder Wiki / Поделиться ВКонтакте [[Category:Перевод: kelamor / Переводим Wiki]]
Модули
Обеспечение совместимости между новым модулем и официальными DLC
Категория, содержащая описания и параметры событий модуля

"Builder to builder" это общий термин для определения процесса обмена игровыми ресурсами между разработчиками модулей, для примера между членами команды модмейкеров, работающих над одним модулем. О предоставлении готового модуля игрокам смотрите Создание архива для игрока.

Существует три основных типа ресурсов, необходимость обмена которых может возникнуть, в случае разработки модуля несколькими модмейкерами:

2DA-файлы и художка(графика, музыка) - это обычные файлы, хранящиеся на компьютере, и никаких проблем в обмене ими не возникает.

Другое дело - ресурсы базы данных. Если практически каждый пользователь знает как работать с файлами (а модмейкер просто обязан это знать), то опыт работы с базами данных есть далеко не у всех. К тому же ресурсы в базе данных тулсета пронизаны взаимосвязями, которые необходимо учитывать при редактировании ресурсов. Для упрощения обмена такими файлами тулсет имеет специальную процедуру для сохранения и загрузки выбранных ресурсов базы данных и их связей в файлы XML, и последующего их объединения в один архив, имеющий тип .dadbdata.

Внимание: Процедуры экспорта ресурсов для проверки в игре, либо для распространения среди игроков, являются отдельными процедурами.

Создание архива для разработчика

Обратите внимание:

  • Как правило, экспортируются только ресурсы вашего модуля, если у вас нет особых причин для экспорта основных ресурсов игры.
  • Вы можете выбрать ресурсов прежде чем запустить создание архива.
  • Как отмечалось выше, в архив для разработчика включаются только ресурсы из базы данных, так что обмен 2DA-файлами и художкой должен производиться в обычном порядке.

Когда вы убедитесь в правильности своего выбора, нажмите "Ok" и вам будет предложено выбрать путь для сохранения архива.

Импорт ресурсов базы данных

Importing resources is done via the "Builder to Builder Load" command under the "Tools" menu (there's also a B2B create command here, the same that can be reached via the palette right-click menu):

B2B load menu command.png

Again, note that this is a different set of commands than the main "export" commands.

You'll be prompted to select a database resource file generated by a previous export. When you do, you'll be presented with an options pane listing all of the resources present in the file:

B2B load panel 973.png

You can choose to import or not to import specific resources from this panel with the leftmost checkbox. Note that if you only import some of the files you may break dependencies. However, many of the dependencies in any significant export are likely to be core resources that you already have in your database and it's wise to avoid re-importing such resources unless you have a specific reason to.

You have the option to assign new string ids, or retain the original string ids, which allows you to maintain integrity of reference to the talk table. There seems to be a bug with "Use Theirs". See String ID for a discussion of sharing issues.

ResRefID is the identifier that the resource had in the database it was exported from. ResRefIDs must be unique within any given database, so these numbers will be reassigned automatically during the import process.

Resource name conflicts

The "Exists/New" column indicates whether a resource with the same name already exists within the destination database. This is a good way to identify common core resources that were included as dependencies on export but that you don't want to re-import.

In the event that you import a resource with the same name as an existing resource within your database, the default behavior is for the old resource within your database to be overwritten by the new resource coming in from the import. The last column, "create new", allows this behavior to be overridden. If you enable "create new" for such a resource, the imported resource will be renamed with "_1" (or a higher number as needed) and the old resource will be untouched. Any other new imported resources in the file that depend on the renamed resource will have their dependencies updated to refer to the new copy of the resource.

Note that if use "create new" when importing a resource's dependencies and then you later re-import the same resource the importer won't know that its dependencies have been renamed in this manner. It's best to avoid this situation as hard-to-debug problems can potentially result.

Resources with the same name that already exist in the destination database and that are checked out by other users aren't editable, so the "checked out" column will warn you of any resources that the import process will be unable to update. This is unlikely to be a concern when only a single user (yourself) has access to your database but may become significant in a more sophisticated multi-user collaborative environment.

Sharing a live database

If passing bundles of files around between builders proves to be a cumbersome means of collaborating, a more advanced alternative exists: sharing a single database repository.

With a default installation of the toolset on a user's computer, a database is installed on that local computer for that toolset's use. Using the toolset's configuration tool, however, it is possible to tell the toolset to use some other database instead - possibly on another machine entirely, provided it's accessible over a network. This is the collaboration mechanism that was used internally at BioWare during the development of the Dragon Age single-player campaign, along with a more traditional file repository for the art resources and 2DAs, and is the principal reason why the toolset supports the concept of "checking out" database resources for editing.

General considerations you'll need to take into account:

  • Firewall and router issues - The computers of all the various collaborators will need to be able to contact the central database. This may require port forwarding and other potentially tricky configuration settings.
  • Availability - If all work is being done on a single database, nobody will be able to do anything when that database is unavailable. It may be a good idea to set up a machine dedicated solely to running the database.
  • Security - You'll be exposing your database to potential intrusion attempts from the outside world, so make sure you understand the risks and the steps that can be taken to ameliorate them.

Though this is fully possible in principle with the existing toolset, the specifics for how to accomplish this outside the BioWare intranet haven't been tested yet so we don't have documentation for it yet.


Язык: English  • русский