GeneSys

From Burnout Wiki
Revision as of 18:20, 30 October 2023 by Burninrubber0 (talk | contribs) (Created page with some initial information.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

GeneSys is a general-purpose object-oriented database used in Need for Speed Hot Pursuit and Need for Speed Most Wanted. It is a complete replacement of, advancement of, and successor to the AttribSys/Vault database, which has only vestigial remnants in the aforementioned titles.

Purpose

AttribSys saw use in Burnout Paradise for vehicle performance, sounds, and one-offs such as the surface list. In that system, the vault/bin resources contained the data. Each resource was entirely self-contained and nothing outside that resource could be referenced, leading developers to create multiple additional systems to do so. The hardcoded schema defined the types and tables used by the resources; no changes were possible without regenerating every resource.

By contrast, GeneSys uses individual resources ("definitions" or "types") to define types and tables. These are imported on an as-needed basis by the data resources ("instances" or "objects"). There is no overarching schema, though there are some predefined types. External resources can be referenced without issue. Properties can be updated without affecting resources that import the host resource, and new tables can be created without any other changes needed until they are used. Derived types are possible and even common.

These changes have some implications:

  • Many more resources are created than if AttribSys were used. Indeed, GeneSys resources are the most common type in both games.
  • GeneSys can be used for more things than AttribSys. In Most Wanted, it is used for UI and progression in addition to everything it was used for in Burnout Paradise.
  • For Criterion, the development process was more efficient (and quite possibly more streamlined as GeneSys was likely integrated into Chameleon).
  • For modders, GeneSys is far more friendly than AttribSys. Structures are clearly defined and can even be modified (though this is unlikely to have any effect in-game without further changes).

Versions

GeneSys has two known versions. The first version is used in Hot Pursuit, where its resource types are GeneSys Definition and GeneSys Instance. The second version is used in Most Wanted, where its resources types are GeneSys Type and GeneSys Object. Neither of these have extensive public documentation at this time, so this section will be filled in later.