Daggerfall Mod:DFRemake/DFELibrary - Maps.bsa
The UESPWiki – Your source for The Elder Scrolls since 1995
< Mod / Daggerfall: Daggerfall Mod: DFRemake(Redirected from Daggerfall:DFRemake/DFELibrary - Maps.bsa)
Maps.bsa contains information to build complete locations (towns, dungeons, interior houses, etc...) from the component blocks.
General Design[edit]
- The location table (MapTable, MapNames) will be loaded and stored for all regions. This requires 40 bytes per location (slightly less if allocated strings are used) which requires ~500kB for the ~11,000 exterior locations. If memory is a concern this can be reduced to ~8 bytes per record (100 kb total) if the location name is not stored. Alternatively, the records can be loaded from the file as needed (the data is in fixed array format for each region so access time is relatively fast).
- The full record data (MapDItem, MapPItem) will be loaded for a region at a time as needed.
- Regions will be accessed by number, 0-60.
- Information will be transferred to DB by custom formatted memblocks.
Error Codes[edit]
The following table lists the Maps.Bsa related error codes:
Error Code | Value | Description |
---|---|---|
DFERR_BADMAPDITEM | -1101 | Failed to read the MapDItem file for the specified region! |
DFERR_BADREGION | -1102 | The given region number is not valid! |
Exported Functions[edit]
- DFEIsValidRegion : Checks if a given region index is valid.
- DFEGetRegionName : Returns a region name from its index.
- DFEGetFirstRegionLocation : Starts interating through exterior locations in a region.
- DFEGetNextRegionLocation : Continues interating through exterior locations in a region.
- DFEGetFirstRegionDungeon : Starts interating through dungeons in a region.
- DFEGetNextRegionDungeon : Continues interating through dungeons in a region.
- DFELoadRegion : Loads the location (MapPItem) and dungeon (MapDItem) data for the given region.
- DFEGetFirstDungeonBlock : Start iterating through block data in the currently selected dungeon.
- DFEGetNextDungeonBlock : Continue iterating through block data in the currently selected dungeon.