v0.4.0 Experimental 1
Pre-releaseExperimental Release
This is an experimental release of a development branch. This version is released to allow people to test upcoming changes and should be considered unstable and buggy. Do not use an experimental release in any save you care about.
Highlights
- TestFlight API completely overhauled and is not backwards compatible
- Totally rewritten underlying core systems
- Migrated from a polling "pull" style system to a "push" style system where the individual parts are responsible for their own state, and the core manager/GUI only asks for that state when needed to update the GUI or save to disk
API Changes
The TestFlight API starting with this experimental version is not backwards compatible with previous versions
This experimental release contains a completely overhauled API and more changes will be made moving forward as I work towards implementing the new Reliability and Failure system as proposed. If you have written a module for TestFlight it will need to be updated to use the new API, and will probably need minor changes as we move through the next few releases.
The good news is that while the API got a lot more flexible and a lot more powerful,most of the changes for now are in the Core, not the plugin modules. Changes to compile against this experimental release will probably be minor. But do expect more changes coming.
Change Log
- Rewrote core scenario code. TestFlightManagerScenario is now only a data store for the persistent data, and contains no appreciable game logic
- Redesigned TestFlightCore API to accommodate both the new "push" method as well as upcoming changes to the underlying reliability and failure architecture
- Flight Data and Flight Time now stored as doubles
- Implemented brand new Test Flight API
- Changes to ITestFlightCore interface
- Changes to ITestFlightDataRecorder interface
- Changes to ITestFlightReliability interface
- Core system refreshes status more often now that there is less of a performance hit
- Changed method of configuring how FlightData converts into Reliability in the config files. This is now done using a FloatCurve which allows the modder to make it as simple or as complex as desired