RPGCore
RPGCore copied to clipboard
Create RPGCore.DataEditor to edit and maintain game data
Features:
- [x] Basic data editing of lists, dictionaries, objects, and values
- [x] Support for editing data structures as defined in C#
- [x] Saving and loading data to and from files
- [x] Support for editing comments
- [x] Support for abstract and unknown type editing
- [x] Support replacing value types with an alternate type
- [ ] Enum data types (serialized as both string and number)
- [ ] Support change events and model binding
- [ ] Support for generic types
- [ ] Support for data variants
- [ ] Support for polymorphic types
- [ ] Undo/Redo history
- [ ] Support resetting values to their default state
- [ ] Support data variants inside a larger container (e.g. prefabs in the context of a scene)
- [ ] Unique identifiers for values in hierarchy (URLs)
- [ ] Move to a Command/Procedure API for data editing
- [ ] Networked data editing
For Blazor and other modern .NET UI libraries, I should implement INotifyPropertyChanged so that my models can be used in data binding.
I could also explore some alternate data binding approaches.