Bug: Builder to Builder Load may not reproduce resource detail correctly

From Dragon Age Toolset Wiki
Jump to: navigation, search
  • Version found: 1.0.1008.0 (Installer Version 1.01)
  • Status: Open

Description

A Builder-to-Builder Load may result in resources that have missing detail.

For instance,

  • A female NPC may load as a male with the default head and no inventory.
  • All lines may disappear from a conversation.
  • All flags may vanish from a plot.
  • A cutscene may load without its dependent resources - consequently, it does nothing when viewed.

These are just examples - in general, the unwanted result is a "default" (blank) resource with no properties.

Sometimes, there are no error messages. In other cases, there is a cryptic message "Unable to load" for each resource affected. Neither situation achieves the expected result, or provides an adequate explanation.

Other symptoms include alarming messages about core resources being loaded when none have been selected, and changes to the check in/out status of core resources. To date, there's no evidence that this has harmed anything, but at the very least it's bad for builder confidence.

The string id aspect

One aspect of this bug seems to be String ID incompatibility between modules.

Builder-to-Builder Load has two options for string ids (Create New or Use Theirs).

To isolate this aspect, when loading, Show Dependencies and ensure only the new resources are checked.

If we try to load to a new module with a different string id range in the module properties, Create New works perfectly, but Use Theirs seems to fail for any resource that has text content - a default resource is created, with "Unable to load" message.

Since the only difference between the successful and unsuccessful loads is the string id range, it seems that the toolset is bouncing resources whose string ids are outside of the range set for the module.

Workarounds

This doesn't seem to happen if you choose the following options:

  • Show Dependents (which is not the default)
  • Create New (strings)
  • Do not select any resources which already exist (default)
  • Ensure all new resources are selected

See String ID for further discussion of the string options.

If you want to overwrite some resources which already exist, check them in first, then select them for load.

If the target data base already contains a resource named X within module A, don't attempt to load X to module B. If A is not a parent of B, depending on the resource type, the toolset may report an error or attempt to work around the name duplication by creating a resource X_1. This can make the above-mentioned bug even worse (though it is not the sole cause).

A new resource x_1 also results if you attempt to force the load of a checked-out resource by selecting Create New at the resource level on the load screen.

Language: English  • русский