The final release of the "tech demo" development cycle has been posted to GitHub (v0.0-demo10). This version includes swimming and drowning mechanics as well as the big under-the-hood change for vector-based movement.
While I am still not happy with the vector-based movement (there are some troubling de-sync possibilities), this did clean up a great deal of code (since not everything which takes time is responsible for checking on motion) and avoid a potential "soft cheating" avenue (a client could "fail to fall" until a block is placed under it). This new approach should make some of the AI single-step movement planning more correct (as there were some unavoidable failure cases, previously).
Looking forward, the end of the "tech demo" phase of development means that core mechanics are now all present. Work will now shift to the "pre-release" development phase, where the existing mechanics are improved and fleshed out, as well as further work related to performance, scalability, and overall game balance.
The first plan is to fix the AI to properly account for swimming but also to seem less "jittery" (there is a lot of "jump back and forth when you have nothing to do"). I also plan on reducing the spawn rates a bit, too, since the world is currently rather crowded if you step out of the light.
Beyond that, overall balance and change rates for internal counters (food, health, breath, etc) are planned for the first pre-release.
In general, the pre-releases should be a little less structured than the demo releases since they aren't specifically tied to mechanics, but more about a general set of improvements, which are likely to be continuously refined across multiple releases (it is more of a dynamic priority list, as opposed to a static TODO list).
So far, so good, but there are lots of questions related to AI intention planning which need to be sorted out now that swimming is a concept.
Jeff.