Difference between revisions of "Builder to builder/ru"

From Dragon Age Toolset Wiki
Jump to: navigation, search
m (Edit)
m (Перевёл "Copying a Module")
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{rupage|Создание архива для разработчика|перевод: [[User:Kelamor|kelamor]] / [[Translation/ru|Перевод Wiki]]}}
+
{{rupage|Создание архива для разработчика|Модули}}
 
{{Infobox module/ru}}
 
{{Infobox module/ru}}
"Builder to builder" is a general term for the process of exchanging game resource information between builders, for example between several people who are collaborating on building a module. See [[builder to player]] for the process of packaging up finished works to distribute to players.
+
"Builder to builder", также известный как "B2B", это общий термин для определения процесса обмена игровыми ресурсами между разработчиками модулей, для примера между членами команды модмейкеров, работающих над одним модулем. О предоставлении готового модуля игрокам смотрите {{ulink|builder to player|Создание архива для игрока}}.
  
There are three basic sorts of game resources that might need to be exchanged in this manner:
+
Существует три основных типа ресурсов, необходимость обмена которых может возникнуть, в случае разработки модуля несколькими модмейкерами:
*Art resources
+
*{{ulink|Designer Resources|Ресурсы базы данных}}.
*[[2DA]]s
+
*{{ulink|Art Resources|Художка}}.
*Database resources
+
*{{ulink|2DA|2DA-файлы}}.
  
Art resources are self-contained files stored in the computer's file system in the standard way, and so are straightforward to share between builders. 2DAs are generated from Excel files that are also straightforward to share, especially when the capabilities of M2DAs are taken advantage of (see the [[2DA]] page for more detail).
+
2DA-файлы и художка(графика, музыка) - это обычные файлы, хранящиеся на компьютере, и никаких проблем в обмене ими не возникает.  
  
Database resources are trickier. Almost every computer user is familiar with how to manipulate files in their filesystem but fewer are familiar with databases, and there are many interdependencies within Dragon Age's database resources that need to be taken into account when making any edit. To simplify this process the toolset has the ability to save and load selected database resources and their dependencies into XML files, which are then bundled up into a single archive file for convenience.
+
Другое дело - ресурсы базы данных. Если практически каждый пользователь знает как работать с файлами (а модмейкер просто обязан это знать), то опыт работы с базами данных есть далеко не у всех. К тому же ресурсы в базе данных тулсета пронизаны взаимосвязями, которые необходимо учитывать при редактировании ресурсов. Для упрощения обмена такими файлами тулсет имеет специальную процедуру для сохранения и загрузки выбранных ресурсов базы данных и их связей в файлы XML, и последующего их объединения в один архив, имеющий тип '''.dadbdata'''.
  
'''Note:''' This is a different sort of export procedure than what's needed to make resources available for use in the game itself, either for testing by yourself or for distribution to players. For information on that see [[resource palette]].
+
'''Внимание:''' Процедуры {{ulink|Exporting a module|экспорта ресурсов для проверки в игре}}, либо для {{ulink|Builder to player|распространения среди игроков}}, являются отдельными процедурами.
  
== Creating resource files for transfer ==
+
== Создание архива для разработчика ==
 +
<gallery>
 +
File:B2B create menu command.png | Чтобы создать архив для разработчика выберите в {{ulink|resource palette|палитре ресурсов}} необходимые ресурсы и в контекстном меню выберите пункт "Builder to builder create".
 +
File:Builder to builder create via tools menu.png|  Также вы можете запустить создание архива для разработчика с выбором всех доступных вашему модулю ресурсов. Для этого в меню "Tools" выберите "Builder -> Builder to Builder Create".
 +
File:B2B_create_panel.png| В результате одной из предыдущих операций появится список ресурсов для экспорта.
 +
</gallery>
 +
'''Обратите внимание:'''
 +
*Как правило, экспортируются только ресурсы вашего модуля, если у вас нет особых причин для экспорта основных ресурсов игры.
 +
*Вы можете выбрать несколько ресурсов прежде чем запустить создание архива.
 +
*Как отмечалось выше, в архив для разработчика включаются только ресурсы из базы данных, так что обмен 2DA-файлами и художкой должен производиться в обычном порядке.
  
To create a resource file archive, select the resources in the resource palette and then in the right-click menu select the "builder to builder create" command:
+
Когда вы убедитесь в правильности своего выбора, нажмите "Ok" и вам будет предложено выбрать путь для сохранения архива.
  
[[Image:B2B create menu command.png|center|thumb|300px]]
+
== Импорт ресурсов базы данных ==
 +
<gallery>
 +
File:B2B load menu command.png | Импорт ресурсов из архива формата ".dadbdata" запускается выбором пункта "Builder to Builder Load" в меню "Tools -> Builder"
 +
File:B2B load panel 973.png | После выбора архива вам будет представлен список имеющихся в нём ресурсов.
 +
</gallery>
  
You'll be presented with a list of the resources to be exported:
+
Отметьте ресурсы, которые необходимо импортировать, с помощью самого левого чекбокса (колонка "Import"). Обратите внимание, что если вы импортируете не все ресурсы, то, возможно, будут нарушены связи между ресурсами. Однако, если в архиве присутствуют основные ресурсы игры, то скорее всего импорт их не обязателен, так как в вашей базе данных они уже есть, если, конечно, у вас нет веских причин для замены ваших основных ресурсов игры.
  
[[Image:B2B_create_panel.png|center|]]
+
В правой части окна есть опция, позволяющая вам импортировать ресурсы, использовав оригинальные идентификаторы строк, либо создав новые. Использование оригинальных строк позволит сохранить целостность ссылок на ТЛК-таблицу. Однако использование оригинальных идентификаторов строк может вызвать {{ulink|Bug:_Builder_to_Builder_Load_may_not_reproduce_resource_detail_correctly|некорректную загрузку ресурсов}}. Для поиска возможных ошибок с этой опцией и путей их решения смотрите {{ulink|String ID|Идентификаторы строк}}. 
  
Normally, you'll restrict the selection to your own module (unless you have a specific reason for exporting core resources).
+
ResRefID это идентификатор ресурса, который использовался в базе, из которой он импортирован. ResRefIDs должен быть уникальным для каждой базы данных, поэтому во время процесса импорта он присваивается автоматически.
  
Once you're done reviewing your selection, click "Ok" to export. You'll be prompted for a filename to put the resources into.
+
=== Конфликт имён ===
  
You can select multiple resources before doing builder to builder creation and they'll all be included in the B2B package.
+
Колонка "Exists/New" (имеется/новый) показывает, существует ли ресурс с таким же именем в вашей базе данных. Это хорошая возможность отследить основные ресурсы игры, которые хоть и связаны с новыми ресурсами, но не требуют импорта вашу базу данных.
  
Also, you can open a builder to builder creation window with all of your available resources in it by going to the Tools menu and selecting Builder -> Builder to Builder Create.
+
В случае, если вы всё же импортируете ресурс с повторяющимся именем, то по умолчанию во время импорта старый ресурс затирается новым. Чтобы изменить такое поведение, вы можете использовать колонку "Create New". Если вы отметите чекбокс "Create New", то импортируемый ресурс будет переименован с добавлением суффикса "_1" (в случае необходимости цифра будет увеличена), а старый ресурс останется нетронутым. Связи всех новых импортированных ресурсов, которые были связаны с переименованным ресурсом, обновятся для связи с его новой копией.
  
[[File:Builder to builder create via tools menu.png|center|thumb|300px]]
+
Заметим, что если вы используете опцию "Create New" во время импорта ресурса вместе со связанными с ним ресурсами, то в последующем, если вам понадобится заново импортировать только его одного, импортер не сможет прочитать его связей, так как они были изменены. Так что лучше избегать такой ситуации, чем впоследствии пытаться решить её.
  
As noted above, this only exports design resources from the database, so in addition to sharing the .dadbdata file created in this process, builders also need to exchange any simple files containing 2DAs and art resources.
+
В случае совпадения имён ресурсов также обратите внимание на колонку "Checked Out", которая сигнализирует о том, что другой пользователь, имеющий доступ к вашей базе данных, сделал процедуру "Check Out" этого ресурса, и он не может редактироваться вами, в том числе и обновляться при импорте. Эта проблема актуальна только при совместном доступе к базе данных, если же доступ к базе данных имеете только один пользователь, эта проблема не возникнет.
  
== Importing database resources ==
+
== Копирование модуля ==
  
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):
+
Вы можете скопировать модуль на новую машину, в новую базу данных или базу данных другого моддера.
  
[[Image:B2B load menu command.png|center|]]
+
Создание архива B2B является хорошим способом для создания резервной копии вашего модуля, его передачи или восстановления.
  
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:
+
Если вы знаете диапазон строк в исходном модуле, то вы можете установить такой же диапазон в целевом модуле.
  
[[File:B2B load panel 973.png|center|]]
+
Если вы не знаете диапазона идентификаторов строк в оригинальном модуле, то:
 +
*В новом модуле укажите диапазон с 1 до оооочень большого значения, чтобы быть уверенным, что строки в архиве не выйдут за диапазон.
 +
*Загрузите архив в базу с использованием старых идентификаторов.
 +
*В редакторе строк (String Editor) посмотрите диапазон строк новых ресурсов и установите для модуля диапазон на порядок шире.
  
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:_Builder_to_Builder_Load_may_not_reproduce_resource_detail_correctly | 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.
+
В случае обычной установки тулсета на пользовательский компьютер, база данных устанавливается на локальный компьютер, откуда её и использует тулсет. Однако, используя утилиту "ConfigureToolset", поставляемую вместе с тулсетом , возможно настроить тулсет для доступа к базе данных, находящейся на другом компьютере,  при условии наличия сетевого соединения. Этот механизм использовался BioWare во время разработки основной кампании Dragon Age наряду с традиционным использованием медиаресурсов и 2DA-файлов. Именно возможностью использования базы данных в совместном доступе обусловлено наличие концепции "Check In/Check Out", позволяющей организовать работу нескольких пользователей над одним ресурсом.
  
=== 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.
+
Хотя эта возможность и существует, хочется отметить, что пока этот метод применялся только во внутренней сети BioWare, что обусловливает отсутствие какой-либо информации о возможных проблемах.
 
+
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.
+
  
 
{{Languages|Builder to builder}}
 
{{Languages|Builder to builder}}
 
[[Category:Database]]
 
[[category:modules]]
 

Latest revision as of 02:09, 18 June 2013

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

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

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

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

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

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

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

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

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

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

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

Отметьте ресурсы, которые необходимо импортировать, с помощью самого левого чекбокса (колонка "Import"). Обратите внимание, что если вы импортируете не все ресурсы, то, возможно, будут нарушены связи между ресурсами. Однако, если в архиве присутствуют основные ресурсы игры, то скорее всего импорт их не обязателен, так как в вашей базе данных они уже есть, если, конечно, у вас нет веских причин для замены ваших основных ресурсов игры.

В правой части окна есть опция, позволяющая вам импортировать ресурсы, использовав оригинальные идентификаторы строк, либо создав новые. Использование оригинальных строк позволит сохранить целостность ссылок на ТЛК-таблицу. Однако использование оригинальных идентификаторов строк может вызвать некорректную загрузку ресурсов. Для поиска возможных ошибок с этой опцией и путей их решения смотрите Идентификаторы строк.

ResRefID это идентификатор ресурса, который использовался в базе, из которой он импортирован. ResRefIDs должен быть уникальным для каждой базы данных, поэтому во время процесса импорта он присваивается автоматически.

Конфликт имён

Колонка "Exists/New" (имеется/новый) показывает, существует ли ресурс с таким же именем в вашей базе данных. Это хорошая возможность отследить основные ресурсы игры, которые хоть и связаны с новыми ресурсами, но не требуют импорта вашу базу данных.

В случае, если вы всё же импортируете ресурс с повторяющимся именем, то по умолчанию во время импорта старый ресурс затирается новым. Чтобы изменить такое поведение, вы можете использовать колонку "Create New". Если вы отметите чекбокс "Create New", то импортируемый ресурс будет переименован с добавлением суффикса "_1" (в случае необходимости цифра будет увеличена), а старый ресурс останется нетронутым. Связи всех новых импортированных ресурсов, которые были связаны с переименованным ресурсом, обновятся для связи с его новой копией.

Заметим, что если вы используете опцию "Create New" во время импорта ресурса вместе со связанными с ним ресурсами, то в последующем, если вам понадобится заново импортировать только его одного, импортер не сможет прочитать его связей, так как они были изменены. Так что лучше избегать такой ситуации, чем впоследствии пытаться решить её.

В случае совпадения имён ресурсов также обратите внимание на колонку "Checked Out", которая сигнализирует о том, что другой пользователь, имеющий доступ к вашей базе данных, сделал процедуру "Check Out" этого ресурса, и он не может редактироваться вами, в том числе и обновляться при импорте. Эта проблема актуальна только при совместном доступе к базе данных, если же доступ к базе данных имеете только один пользователь, эта проблема не возникнет.

Копирование модуля

Вы можете скопировать модуль на новую машину, в новую базу данных или базу данных другого моддера.

Создание архива B2B является хорошим способом для создания резервной копии вашего модуля, его передачи или восстановления.

Если у вас есть голосовая озвучка, то необходимо обеспечить сохранение идентификаторов строк (в противном случае вам придется переименовать все файлы голосовой озвучки).

Если вы знаете диапазон строк в исходном модуле, то вы можете установить такой же диапазон в целевом модуле.

Если вы не знаете диапазона идентификаторов строк в оригинальном модуле, то:

  • В новом модуле укажите диапазон с 1 до оооочень большого значения, чтобы быть уверенным, что строки в архиве не выйдут за диапазон.
  • Загрузите архив в базу с использованием старых идентификаторов.
  • В редакторе строк (String Editor) посмотрите диапазон строк новых ресурсов и установите для модуля диапазон на порядок шире.

Совместный доступ к базе данных

Если же вышеуказанный способ представляется слишком трудоёмким, либо объём обмениваемых ресурсов слишком большой, то существует более продвинутый альтернативный путь: организация совместного доступа к хранилищу базы данных.

В случае обычной установки тулсета на пользовательский компьютер, база данных устанавливается на локальный компьютер, откуда её и использует тулсет. Однако, используя утилиту "ConfigureToolset", поставляемую вместе с тулсетом , возможно настроить тулсет для доступа к базе данных, находящейся на другом компьютере, при условии наличия сетевого соединения. Этот механизм использовался BioWare во время разработки основной кампании Dragon Age наряду с традиционным использованием медиаресурсов и 2DA-файлов. Именно возможностью использования базы данных в совместном доступе обусловлено наличие концепции "Check In/Check Out", позволяющей организовать работу нескольких пользователей над одним ресурсом.

Общие вопросы, которые необходимо учитывать при организации совместного доступа:

  • Файрволл и маршрутизатор - Компьютеры разработчиков должны иметь сетевой доступ к базе данных. Это может потребовать переадресации портов и других потенциально сложных настроек.
  • Постоянный доступ - Так как все разработчики будут работать с одной базой данных, то необходимо обеспечить постоянную её доступность. Это может потребовать выделение отдельного компьютера, используя его только для этой цели.
  • Безопасность - База данных станет доступна для внешнего доступа, который может быть и злонамеренным, так что вы должны понимать риски и принимать необходимые меры.

Хотя эта возможность и существует, хочется отметить, что пока этот метод применялся только во внутренней сети BioWare, что обусловливает отсутствие какой-либо информации о возможных проблемах.


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