Difference between revisions of "Builder to builder/ru"

From Dragon Age Toolset Wiki
Jump to: navigation, search
m (Edit)
m (Перевёл "Copying a Module")
 
(3 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", также известный как "B2B", это общий термин для определения процесса обмена игровыми ресурсами между разработчиками модулей, для примера между членами команды модмейкеров, работающих над одним модулем. О предоставлении готового модуля игрокам смотрите {{ulink|builder to player|Создание архива для игрока}}.
 
"Builder to builder", также известный как "B2B", это общий термин для определения процесса обмена игровыми ресурсами между разработчиками модулей, для примера между членами команды модмейкеров, работающих над одним модулем. О предоставлении готового модуля игрокам смотрите {{ulink|builder to player|Создание архива для игрока}}.
Line 28: Line 28:
  
 
== Импорт ресурсов базы данных ==
 
== Импорт ресурсов базы данных ==
 +
<gallery>
 +
File:B2B load menu command.png | Импорт ресурсов из архива формата ".dadbdata" запускается выбором пункта "Builder to Builder Load" в меню "Tools -> Builder"
 +
File:B2B load panel 973.png | После выбора архива вам будет представлен список имеющихся в нём ресурсов.
 +
</gallery>
  
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):
+
Отметьте ресурсы, которые необходимо импортировать, с помощью самого левого чекбокса (колонка "Import"). Обратите внимание, что если вы импортируете не все ресурсы, то, возможно, будут нарушены связи между ресурсами. Однако, если в архиве присутствуют основные ресурсы игры, то скорее всего импорт их не обязателен, так как в вашей базе данных они уже есть, если, конечно, у вас нет веских причин для замены ваших основных ресурсов игры.
  
[[Image:B2B load menu command.png|center|]]
+
В правой части окна есть опция, позволяющая вам импортировать ресурсы, использовав оригинальные идентификаторы строк, либо создав новые. Использование оригинальных строк позволит сохранить целостность ссылок на ТЛК-таблицу. Однако использование оригинальных идентификаторов строк может вызвать {{ulink|Bug:_Builder_to_Builder_Load_may_not_reproduce_resource_detail_correctly|некорректную загрузку ресурсов}}. Для поиска возможных ошибок с этой опцией и путей их решения смотрите {{ulink|String ID|Идентификаторы строк}}. 
  
Again, note that this is a different set of commands than the main "export" commands.
+
ResRefID это идентификатор ресурса, который использовался в базе, из которой он импортирован. ResRefIDs должен быть уникальным для каждой базы данных, поэтому во время процесса импорта он присваивается автоматически.
  
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|]]
+
Колонка "Exists/New" (имеется/новый) показывает, существует ли ресурс с таким же именем в вашей базе данных. Это хорошая возможность отследить основные ресурсы игры, которые хоть и связаны с новыми ресурсами, но не требуют импорта вашу базу данных.
  
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.
+
В случае, если вы всё же импортируете ресурс с повторяющимся именем, то по умолчанию во время импорта старый ресурс затирается новым. Чтобы изменить такое поведение, вы можете использовать колонку "Create New". Если вы отметите чекбокс "Create New", то импортируемый ресурс будет переименован с добавлением суффикса "_1" (в случае необходимости цифра будет увеличена), а старый ресурс останется нетронутым. Связи всех новых импортированных ресурсов, которые были связаны с переименованным ресурсом, обновятся для связи с его новой копией.
  
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.  
+
Заметим, что если вы используете опцию "Create New" во время импорта ресурса вместе со связанными с ним ресурсами, то в последующем, если вам понадобится заново импортировать только его одного, импортер не сможет прочитать его связей, так как они были изменены. Так что лучше избегать такой ситуации, чем впоследствии пытаться решить её.
  
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.
+
В случае совпадения имён ресурсов также обратите внимание на колонку "Checked Out", которая сигнализирует о том, что другой пользователь, имеющий доступ к вашей базе данных, сделал процедуру "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.
+
Вы можете скопировать модуль на новую машину, в новую базу данных или базу данных другого моддера.
  
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.
+
Создание архива B2B является хорошим способом для создания резервной копии вашего модуля, его передачи или восстановления.
  
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 ==
+
Если вы не знаете диапазона идентификаторов строк в оригинальном модуле, то:
 +
*В новом модуле укажите диапазон с 1 до оооочень большого значения, чтобы быть уверенным, что строки в архиве не выйдут за диапазон.
 +
*Загрузите архив в базу с использованием старых идентификаторов.
 +
*В редакторе строк (String Editor) посмотрите диапазон строк новых ресурсов и установите для модуля диапазон на порядок шире.
  
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:
+
В случае обычной установки тулсета на пользовательский компьютер, база данных устанавливается на локальный компьютер, откуда её и использует тулсет. Однако, используя утилиту "ConfigureToolset", поставляемую вместе с тулсетом , возможно настроить тулсет для доступа к базе данных, находящейся на другом компьютере,  при условии наличия сетевого соединения. Этот механизм использовался BioWare во время разработки основной кампании Dragon Age наряду с традиционным использованием медиаресурсов и 2DA-файлов. Именно возможностью использования базы данных в совместном доступе обусловлено наличие концепции "Check In/Check Out", позволяющей организовать работу нескольких пользователей над одним ресурсом.
*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}}
+
Хотя эта возможность и существует, хочется отметить, что пока этот метод применялся только во внутренней сети BioWare, что обусловливает отсутствие какой-либо информации о возможных проблемах.
  
[[Category:Database]]
+
{{Languages|Builder to builder}}
[[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  • русский