I originally specified that a 1.0.0 release is scheduled for the end of August. So far, this is on track to be completed and finished by then ready to be published on haxelib. The 1.0.0 release will be most suitable for UI development with some game features. Some features will be implementing in later releases due to it not quite being as crucial for release.
The big win is the Dimensions API which will be fully documented prior to release.
Here are the versions and the plans for them.
1.0.0 Release
- Twinspire Core will be released with a fully documented API.
- Remove the Odin source code (to be given its own repo later).
- Features such as the so-called "Tracking Module" will be removed (this was the plan until
IdAssoc came along).
- General clean up of the codebase will take place, removing redundant code and other smaller features not worth mentioning.
Menu class will be removed for a game event refactor later, and all related APIs in UpdateContext.
ArrayUtils class removed, migrating functions to ArrayExtensions.
- Buffers will remain, but documented with TODO - implementation of this will come in 1.1.0.
- Dim Move animations currently using
MoveToAnimation class will migrate into the twinspire.events.game package and incorporated as a Timeline event, removing the UpdateContext overhead.
ComplexResult either gets removed or refactored.
- Smooth Scrolling implemented for containers
- Better
DimIndex management as currently you can only add them - removal functionality to be incorporated in GraphicsContext.
- Two-way
DimIndex referencing between GraphicsContext and user context to ensure DimIndex values are always correct.
- Depending on time, either Roped Strings will begin here but not fully completed until later, or completed at this stage. Roped Strings will require a completely different input handler system as the current one is only suitable for long strings (
Array<Int>).
1.1.0 Release
~November 2025
- Roped Strings and a
TextBuffer refactor should complete by now.
- Tile Maps implemented, complete with layers, buffered contexts and tile manipulation.
- Buffers for
GraphicsContext using beginBuffer / endBuffer calls should be implemented by now, and also incorporated into containers.
- Textured Buffers to be considered. This will basically involve free texturing, rather than pixel-to-pixel rendering with
Dim. Likely will involve another form of layout/positioning structure suitable for this behaviour.
- Game Event Timelines to have background tasks (
HTML5 Worker for the web, thread for native targets).
UpdateContext to be given touch events, pen events and gamepad events.
- Implement a hot key system.
1.2.0 Release
~March 2026
- Some mobile love.
UpdateContext touch and pen events will be fully tested and additional functions incorporated for better utility, such as pinch to zoom functionality.
- Pre-defined modular components for built-in multi-lingual virtual keyboards, virtual gamepads and console gamepad icons.
- Possibly other things...
This is the plan so far. Twinspire Web will get more work between 1.1.0 and 1.2.0, hence the longer release cycle. The plan will be to release 1.2 with a working copy of Twinspire Web, alongside a separate module, known as WebCore, allowing seamless integration between a Twinspire Core application and Twinspire Web website.
I originally specified that a 1.0.0 release is scheduled for the end of August. So far, this is on track to be completed and finished by then ready to be published on
haxelib. The 1.0.0 release will be most suitable for UI development with some game features. Some features will be implementing in later releases due to it not quite being as crucial for release.The big win is the Dimensions API which will be fully documented prior to release.
Here are the versions and the plans for them.
1.0.0 Release
IdAssoccame along).Menuclass will be removed for a game event refactor later, and all related APIs inUpdateContext.ArrayUtilsclass removed, migrating functions toArrayExtensions.MoveToAnimationclass will migrate into thetwinspire.events.gamepackage and incorporated as a Timeline event, removing theUpdateContextoverhead.ComplexResulteither gets removed or refactored.DimIndexmanagement as currently you can only add them - removal functionality to be incorporated inGraphicsContext.DimIndexreferencing betweenGraphicsContextand user context to ensureDimIndexvalues are always correct.Array<Int>).1.1.0 Release
~November 2025
TextBufferrefactor should complete by now.GraphicsContextusingbeginBuffer/endBuffercalls should be implemented by now, and also incorporated into containers.Dim. Likely will involve another form of layout/positioning structure suitable for this behaviour.HTML5 Workerfor the web,threadfor native targets).UpdateContextto be given touch events, pen events and gamepad events.1.2.0 Release
~March 2026
UpdateContexttouch and pen events will be fully tested and additional functions incorporated for better utility, such as pinch to zoom functionality.This is the plan so far. Twinspire Web will get more work between 1.1.0 and 1.2.0, hence the longer release cycle. The plan will be to release 1.2 with a working copy of Twinspire Web, alongside a separate module, known as
WebCore, allowing seamless integration between a Twinspire Core application and Twinspire Web website.