Tuesday, September 2, 2014
I'm not even sure what's happening anymore. I feel like I've been asleep for half a year. Wandering around in some haze, grasping for some blurry vision from a half-remembered dream....clinging to any half-baked idea that might get me an inch closer to the many-miles-away finish line. That's harsh, but I've always been harsh on myself and it works. Anyway. I'm not sure what happened, whether it was the two weeks of vacation, or the miraculous streak of luck that led me to LTSL, or the fact that I've crossed some threshold percentage of completion where it's finally possible to see the end result. Whatever it was, I'm happy. Every day the inspiration grows, like a cancer taking over my being. There's no turning back.
Anyway, today? Who knows. It was a blur. 18 hours of code..or something like that. I rewrote the interface, I pushed further into the 'real' UI with several new (scripted) widgets, I improved the performance of zones, and I continued to play with scripted combat scenarios. There's probably only one thing in that list that warrants some serious discussion. Yeah, I rewrote the interface. Again. Is that...the fifth time? I don't know.
Let's be real here folks. I love the nodal UI. I love the layer-based nodal UI, or whatever the hell I used to call that thing. But here's something I've learned about myself over these two years: when I stumble upon a new idea, I inevitably get too excited about it and try to push it further than it should go. That's a blessing and a curse. In some cases, more of one than the other. When I first started to develop the ideas surrounding the nodal UI, I looked at them as though they were the second coming of Christ. I believed that the nodal UI could fix everything that was wrong with LT, prevent all future rainy days, and allow me to grow wings and cruise at a comfortable altitude of 10,000 feet above the Earth. Here's the hard truth: it can't. The nodal UI brought a lot of really quality ideas to the table: the idea that a widget is representative of some object in the game. The idea that widgets are connected in a hierarchical structure that reflects some real structure of information, ownership, containment, etc. The idea that this structure should be dynamic and should change immediately to reflect structural changes in data. But the linear UI did what traditional UIs have been bred to do: it presented a lot of information in a compact way. It appealed to the modern consumer, who has become exceptionally proficient at navigating oceans of data with scrollable lists and windows. It wasn't afraid to introduce a custom aesthetic or layout to present a certain type of data in a unique way. Today I finally overcame my ego trip and brought the two together. I wrote a UI that keeps all of the elegance of the nodal UI, but maintains the simple and practical beauty of a traditional one. I knew that it's what I had to do to push further, because the idea that I must package all information in a neat, nodal bundle has been holding back my creativity for a long time. My religious belief that the nodal UI would lift me into the heavens prevented me from taking the actions necessary to move forward and finish the game. It's not the only belief that's been holding me back, but demolishing it is a good start.
That's the hard truth, and it's a truth that I confronted and took action against today. I'm back and I'm back in full force. Anything that holds me back from the completion of my dream game and the shipping of a beta is going to get obliterated. The strict belief that everything should be hard-coded was the first of many casualties, which has been ruthlessly slaughtered over the past two months. The strictly-nodal UI was another barrier that I sentenced to a speedy execution today. Luckily, I've already made concessions in the AI department, and I'm fairly proud of how well I've balanced elegance and practicality.
Not sure why it's happening, but I seem to be in a zone of unparalleled focus and drive to bring my Freelancer 2.0 online. Yeah, it's been a good week so far. Let's see how it plays out...hopefully there won't be quite as much blood
PS ~ I swear I'm not crazy. Don't give up on me