I thought that there was an update for this month already, but that is apparently not true... Anyways, here's another update on the internal state of TridentSDK.
First, I'm hopeful we can release Trident (yes, Trident, the implementation) at the end of February, however I am plagued with doubts on whether we can do it or not. The limited amount of sheer manpower and support is , unfortunately perturbing. For those who are interested, simply sharing Trident is enough if you aren't able to assist programmtically. Otherwise, there are things you can do if you are a developer.
In this post, I mention the list of things to do before we try to release:
1. There are TODOs in the code
2. Preventing the NPE if a player joins twice without restarting the server
3. Creating a default world if none exists
4. Block manipulation
5. Correctness of concurrency
6. CPU and memory usage analysis
7. API structure
This is not particuarly in order by priority. Before I move on to explain, let us pause and look at what the 3 of us in TridentSDK are doing. We are all currently working on fixing bugs with general player joining, including world generation, chunks, and world saving. Mazen is core bug fixing, Mythbusterma develops the implementation, although he has some IRL incidents which impedes his work. We are both (Mythbusterma, and me) going over concurrency, performance, and memory. That given, we are trying to complete multiple steps of the release todo list at once, between only 3 developers. I expect the first release to be for testing purposes, to flesh out all of the bugs that we haven't caught ourselves. The two that we'd like to finish are numbers 2 and 3 on the release todo list. If help can be found for what we are currently doing with world and chunk sending, that would be awesome as well.
I have also expressed interest in contacting competing development teams and previous generation developers to attain both feedback and faults in our code, as well as things we can learn from previous APIs. Because only the 3 of us make executive decisions, there is no feedback from the community, and we continue on to develop the API the way that we all would like, not what the community would like. This is why sharing Trident is important, because we are striving to perfect the API before it is released. The API is designed around the way it best fits the implementation, while making it essentially unextensible as a result (which, again we are juggling to figure out what we want - extensibility or conformation).
Second, I am personally going to be less active for this week, as it is semester finals for Science/Math/French, as well as starting a new online course in preparation for the case which we might move to a new district.
xTrollxDudex, Developer of Concurrency/Testing