Development Diary: Major update almost ready for first public release

Major update almost ready for first public release
kveroneau(Game Creator)
Feb. 22, 2017, 3:18 a.m.

I have been working very hard over the past couple of days on the next major release, and a lot of progress has been made. If you haven't been following some of the discussions on this major release on the discord chat channel, here are some of the juicy details. There might also be some new interesting information for those who are following along on discord as well.

The new modular code base which separated the frontends(Telnet, Websockets, etc...) from the backend code(Game engine and Virtual machine hypervisor) is working almost identical to how the current non-modular code is currently working. I am able to connect to a front-end, which then connects me to the backend game engine. Logins work, chat channels work, and various other OOC and IC commands function as expected. I haven't had time to do extensive checks on all the functionality. Some of the code needed to be rewritten due to the separation and the entirely new event-based network handling which is now being used. Before the code used a couple threads to manage several different tasks behind the scenes. This ended up causing some unexpected issues, such as the occasional server hang and general instability of the server code. The new networking handling code should be much more resilient, and will also allow for future front-ends to be easily created down the line, such as the highly requested SSH front-end, among others I plan on implementing. All the networking blocking I/O code has been completely rewritten to event-based non-blocking network I/O code. This will also eliminate any of the hangs and instabilities seen in the currently released version of the engine.

My current focus as of this writing, is to update the 65c02 virtual machine code to use a block device as a storage medium, as well as updating the host metadata saving/loading to be event-based non-blocking. Once this part of the code has been updated, I will only need to test it, then I can send up the release onto the server for the current beta testers to give it a try.

I don't expect this to take very long, so expect this major release to be out and available for the general public very very soon. Again, I really thank you for your patience, as developing such an ambitious game does take a lot of time.