Design draft 2, as I’m calling it now, was finished this week. For readers at home, “draft 1” is the build that we had at the end of last year. I’ve reduced it to 30 things that need to get done to have it implemented. That leaves roughly two days per thing to get draft 2 playable this year. It’s going to be rough since several items on the list are almost certainly going to take more than two days. Please enjoy watching this blog document my drift towards going further and further off the schedule.
Looking over the finished product, it’s nice to observe how much of it is directly derived from tests of the first draft. Some small sense of validation that the unending tunnel of development was not a waste. The other thing that I like about it is that all of the pressing questions from the previous draft are answered in this. I had no idea what we were going to do with status effects last time, this one clearly outlines their purpose and how to deal with them. If it all works together well enough, we can finally start honing what is there instead of shooting wide and throwing most of it away.
On the programming side of things nothing terribly exciting happened. The location finder was updated to use the same method of finding a location as the node generator does to validate its generation constraints. Not strictly necessary, but it’s a logical place to re-use code and it allows the location finder to easily take advantage of new node features like tags. The distance finder is also a little smarter in this version, optimizing for furthest or nearest node as desired when a node isn’t within the range.