Skip to content

Redesign file system/resource system #43

@MrSapps

Description

@MrSapps

Current system is quite awkward because all games data is thrown into one big blob which can make picking the correct file tricky.

Need a system that:

  • Has a list of known data stores such as AoPc, AoPsx, AoDemoPc, AoDemoPsx etc.
  • Some big database of files to which LVL's the live in, this so CD1/CD2 files are picked correctly.
  • A way to have separate configuration of "mods" that can override any file, including a file, or file chunk/animation frame within a LVL. A mod will have to specify which data stores it depends on. Or this could be figured out automagically since we'll have the data base of files.
  • A mod should be able to include another mod for "layering" for example if someone has a custom path and someone else has a HD mod, then it should be possible to layer the HD mod on top of the new path.
  • Perhaps a higher level way of mapping resources, for example to give each animation a named ID and allow overriding in this way too. For example "kAbeWalkLeft" where overriding means something like providing a PNG with this name, otherwise the correct BND file, chunk and animation set is looked up.
  • Overriding should support new file types, for example overriding a camera should ignore the file extension in the comparison and then use the extension to select the correct loader. so if the real game had foo.cam and you had a remade version, then it should be possible to set an override of foo.cam to foo.png
  • Do some basic first run search for the game data, check steam location, registry keys etc.

Generating the file DB is possible to do via a tool, including generating the resource ID tables, there would then be a manual step of name the known animations and map AO to AE animations ids if they are not the same (not yet checked).

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions