Declan Hopkins

software & game developer

[7] Grubbnet

10/13/2019, 04:57pm

This week I worked on bug fixes, refactors, and finally put some new art in the game. Since there are no new features, there isn't a ton to talk about. I'm not sure if this art style will be final, but it's within my artistic abilities, so it will stick around for now.

I fixed a couple smaller bugs, such as players being able to attack themselves, and players not being able to carry more than 16 coins. I also did some work on client disconnects, implementing a timer so that players don't disappear from the world instantly when they logout. This prevents players from just logging out to save themselves when combat isn't going so well for them. This also indirectly fixed some bugs that were preventing the player respawn system from kicking in for players who logged out just after they died.

The rest of my time was spent working on and quietly publishing the Grubbnet crate, which is the same networking crate that the Antorum game server uses under the hood. It is only an initial version, so I need to work on documentation, improved examples, and cleaning up the API a bit. For now, though, it's available for use by other Rust game developers.

There's more bugs to fix, and some more refactoring I need to do before I add any new features (I'm trying to avoid broken windows in the codebase). If I finish that stuff up, then a stretch goal for this month is to get some actual terrain into the game, and fix up the movement system so characters can properly traverse it. I'm sick of fighting giant rats in this tiny pit.

As a final note I'll mention that I have been slowly moving towards hosting an Antorum server for the general public (whoever happens to be following these posts). Part of the fun of this task is that I got to set up a VM and test the game with some real latency, and it seems to hold up well! I've been a Digital Ocean customer for about 4 years, but now I'm moving everything over to Azure, mostly because it's more cost efficient for me, but I guess also because I work at Microsoft. I use Azure and various Azure resources every day, but this is the first time I have set up a VM in the Azure portal, and it was very pleasant.