Game Stages 2.0
Darkhax opened this issue ยท 1 comments
The demands and needs of this API have changed a fair bit since it was originally released. To help adapt to these changes I am planning to release a 2.0 version of this mod which will address the compatibility and performance issues some people have run into. The purpose of this issue is to discuss the upcoming changes, and gather feedback for this release.
Notable Issues
- You can't get a list of all the known stages. Makes things like #1 hard to implement.
- Stage data re-syncs when the player respawns or changes dimensions, however there is no strict reason for this other than ensuring the capability is in sync.
- Syncing on respawn and dimension change introduces a race condition where some addons can run before the sync takes place.
- Lack of persistent global database, making things like fake players annoying to work with.
- Several areas of the code in the main mod and addons will always fail for fake players due to strict checks.
Planned Changes
- Move from player capabilities to a global system similar to the one in prestige. This will make it easier for TileEntities to act on behalf of their owners. It will also reduce the amount of syncing needed and eliminate a few race conditions.
- Create a public facing class with static methods for doing simple things. Hopefully people will use this rather than the hacky solutions they have been using.
I have an early version of these changes built, which you can find attached. The zip contains sources, deobf, compiled and javadocs. You can compile your addons against this version right now to see how broken things are going to be. Please make sure to thoroughly test your addon to make sure everything is working as intended before this goes public.