September 8, 2014

Hello again, since I spoke last, I’ve been working on a couple of different things.

First, there was the new status system for players, npcs, and monsters which has been written and integrated into Player, but for right now it sits in its own branch awaiting a couple more things.  The new system is basically ready, but there is a lot to the old status system which is needs conceptual reworking because it just wasn’t working out or wasn’t fun.  The biggest example of this is the heat / warmth system, which will probably be replaced by something much simpler.  The system is ready, but merging it to master is going to happen once metadept arrives in the UK and we can sit down together and make some design decisions and implement the scripts to drive them.  In any case, the system is cool, it works very much like tech that you don’t actively control (player effects that involve movement == tech, player effects that don’t involve movement == status).

Oh and by the way!  Metadept is moving to the UK to work with us in our physical actual corporeal office, and be a real life employee.  He arrives on thursday and I am super thrilled, because you just can’t beat working together in person.  Right now starbound programmers in the UK are pretty thin on the ground (me alone) so having me + metadept will be amazin’.

Other than status, I think you heard a little about the whole Star::Root threading debacle.. the important bit is that it’s fixed, and the atomic_store / atomic_load thing with shared_ptrs turned out not to even be needed.  Now *every* database in Star::Root is updated through Read Copy Update, not just the few with the problems, and Root locking is avoided entirely.  This fixes the problem without causing rendering slowdown, and actually speeds things up in a lot of places.

Other than THAT, I’m working on a few items in the starbound 1.0 todo, mission things and some boring technical ones involving Drawables and Particles.  When I’m done, rain will NOT slow down your game to a crawl, which is nice.  Next week, once metadept and I are both in the office, we’re going to start focusing very very hard on getting a new stable patch out, with all the save file compatibility fun that will go along with that.

Aaaaand in case you haven’t heard, Chucklefish is making a new game!  It’s called Wayward Tide and, you should check out the Chucklefish blog post about it here.  Development on Wayward Tide is *entirely* parallel with Starbound, a whole separate team in fact with Palf as the programmer.

In a technical sense, Wayward Tide is kind of cool for Chucklefish, because it represents a radical departure from the way starbound was developed, and if it works out it may very well be the way that Chucklefish makes games from now on.  It’s entirely written in Haskell, primarily based on Functional Reactive Programming, and it’s really really cool.  I would tell you more about it but I’m sure Palf will want to tell everyone more about it at some point in the near future.