v0.4-alpha
Pre-release
Pre-release
In this release we have major improvements to the writing and detecting of the rosters. This now allows them to be read by BattleScribe.
Next release will focus on more Condition and Modifier implementation and there will be a roster importer tool in the very near future that should allow people to import rosters from plain text into BattleScribe directly.
Main Improvements:
- Rosters that are detected and written out are now compatible and can be loaded with BattleScribe.
- Roster detection has vastly improved.
Changes in this release:
- Switched roster writing to UTF8 without BOM like BS writes them out. Note: names are not HTML encoded like BS rosters.
- Entry Id and Entry Group Id can now be reliably generated from a NeedleStack/Needle which contains the path to the SelectionEntry. Examples in RosterReader/AbstractRosterReader.
- Roster detection now applies Modifiers at the end and can handle Conditions and ConditionGroups. Note: modifier and condition support has still a few unimplemented types.
- Roster detection can now swap selection entries if the order they are read in is not correct. It finds any empty selection groups to swap an existing entry to.
- Roster detection now adds automatically included entries like for example if exported using minimal output.
- Roster detection now has improved cost detection which is far more accurate.
- All XmlData classes now have a parent field and a GetParent() method all the way up to Roster/Catalogue/GameSystem.
- Added enums in Data/Enums which are based on the schema information. For example see: ConditionType and ConditionTypeConverter.Get() for usage.
- Added GuidGenerator, IGuidGenerator as a wrapper to generate guids and added a short guid generator similar to most guids in BS.
- Added ITransformable interface and allow some classes to be transformed although not completely implemented for all classes.
- Created RootContainer and made Roster extend RootContainer. RootContainer now holds GameSystemGroup.
- Added search method that takes a Predicate for name searching to allow for partial matches.
- Added SystemManager.GetActiveGameSystemGroup() for convenience.
If people have any suggestions or feedback let me know.
Binaries built in release targeting .NET standard 2.0