This file reflects changes at each project milestone.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning 2.0.0.
- This update changes the API in far-reaching ways in order to separate design-time and play-time concerns in map-related types.
- Adds Status type as a base class for all mutable-at-play types, analogous to Models.
- Derives a Status-based partner class for most Model classes.
- Adds Pack container type as base for ParquetModelPack and ParquetStatusPack.
- Adds LibraryState static class to track build and run characteristics, particularly Debug-vs-Release and Play-vs-Edit.
- MapModel abstract class, as there is only one map-related Model in the new hierarchy.
- Merges the definitional elements (procedural generation instructions and metadata) of MapRegion and MapSketch into single RegionModel.
- Merges the mutable elements (parquets and their statuses) of MapRegion and MapSketch into a single RegionStatus class.
- Changes MapChunk to a stand-alone class rather than a Model subtype.
- Renames namespace from Map to Region.
- Alters the BeingModel class family to better interoperate with the new RegionModel class family.
- Changes the name of Inventory class to InventoryCollection to avoid confusion in the BeingStatus classes.
- Updates the serialized example data for RegionModel and BeingModel class families.
- Reimplements cloning to enforce deep copying.
- Many minor fixes and corrections along the way.
- General purpose Tags collection to the base Model type.
- ItemModel.ItemTags collection, as Model.Tags makes it redundant.
- Roller command line utility. It is now built as part of Scribe instead.
- Major mechanical systems.
- Many small changes to support Scribe GUI editor.
- Models for all major game systems.
- Roller command line utility.
- Initial commit.