So I’ve finally had some time to work on Astra Terra… I was pretty much stuck on it for the first half of the winter semester and then Will flew in to visit, and we had some fun but didn’t work on the game much. He has a computer (obviously) but I highly doubt it would have fit in a carry-on —it’s a huge gaming rig— and who knew, only having one computer makes it difficult to work on two different things? What we did get done, during that time, however, was finishing teaching Govind Rust, got him started on a mini-project in the codebase again (more about the 7th circle of Hell worth of woe that brought about later), and designed a new title screen! I recently updated the WordPress version of this site (which I maintain on my personal server) and as a result of that can’t seem to figure out how to get things to upload. So for now, you guys won’t be able to see the kickass title screen Grish has made. In the meantime, you’ll have to satisfy yourself (and let’s be real here, nobody even cares at this point, the home page has all of 261 views, so ‘you’ is basically me while proofreading) some updates on the last few commits.
Lists are good things! I’ll make a list of some changes we’ve made.
- We are now using Stable Rust, and Edition 2018!
- We have animations working for map tiles, but I’ve moved AI-specific animation to the AI’s themselves, so now they have to manage that, if they want it.
- New title screen, as mentioned.
- Rotating the camera is now cumulative (so we get 90, 180, and 270 degrees of rotation!) and stays centered on where you were looking originally. 180-degree rotation is still a bit strange though?
- Govind has created a very slow, very bloated library for Voxel chunk storage and management, and a Dijikstra Map implementation. We were planning on using this for AI pathfinding, but it turned out to be impossibly slow and memory-expensive.
- So, I created a custom true-3D A* implementation, and used diagonal movement cost as a heuristic, fixing some problems we had before
As you’ll notice, a few bits of of nice stuff, making the game more polished and setting the foundation for further development, but not a lot of really new stuff, like actually getting the AI working or something. The frustrating part there is, as soon as pathfinding starts working again, we’ll have tree cutting, mining, stockpiling and building done (although that last one needs testing). More frustratingly though, I have to maintain all that code in the meantime, and every once in a while test it, to try to avoid bitrot.
Okay that’s it.