ID:116612
 
Keywords: design, motivation
Last week, I've pretty much managed to meet my goal of never stop coding. I hoped to have a playable game to show for it, but instead what I spent the time doing was mostly involving making it run a whole lot faster.

Basically, I did a stress test last Monday and realized that the whole idea of having "navigation objects" just wasn't going to pan out because of the sheer scale involved made it so I could not keep those in scope constantly. If I have a 25x25 turf universe, and each turf has a system with up to 8 planets, and each of those planets have 10 plots of land, that's 50,000 obj needed, running dangerously close to the obj cap, and that's not even play pieces. So the revision I made last week was to move all that to "cosmos" datums, and only instance navigation objects when the players need to manipulate the contents of that particular system, planet, ect.


My God, it's full of stars. (Graphics not finalized.)

I really did not expect it to take a week to get all that done. However, the results speak for themselves: it used to take several minutes to generate a universe full of systems. Now, when I start up dream seeker, I generate the necessary solar systems and planets in under 5 seconds. Not a single navigation-related obj is created until the player tries to access them (the above screenshot mentioning "nav/obj" is text I have not updated on the debugging verb) and those obj are removed when no longer needed. I even created my own dynamic linked list datum so none of the necessary lists on those cosmos datums would take up part of the list limit.

Before I restore the last level, the "personal" level that NPCs walk around on, I decided that I need to to make some hard decisions about how to bring the game together into a playable product. This is typically where I'll quit. Not because I don't know how to make a game, but because I start to doubt my ability to make a game that I think is good.

Focus has been difficult today, I didn't quite get a full night's sleep last night, and I only managed to get rid of a few errors relating to the automatic creation of navigation objects. With any luck, I'll do better tomorrow. My goal right now is simply not to quit again until I have a playable game. If nothing else, working on a game is very good mental exercise, the brain is starting to thaw from its stupor of self-imposed isolation, and I wish to continue that.