Filed Under: Journal - Development
Is that all? This post is amazingly overdue so I'm going to try to cover everything as quickly as I possibly can. One thing at a time, so here we go:
Jimmy's World isn't actually dead. It looks dead, and it acts dead... and if one was to measure usefulness, or recentness, or value it would seem dead. It isn't. Trust me. Jimmy's World suffers from misfire problems. I've started at least 30 articles and written several pages only to realize I have neither the time nor the inclination to do the research necessary to cover the ground I wish to cover with the credibility that I feel I need to have. That is, I run the site like kindergartner but demand the accuracy of a university thesis. This results, somewhat predictably, in nothing ever being finished and published.
I have no solution for this. I state it only for the limited value of acknowledging it. Solutions are in the works, but, well, don't hold your breath.
I have no idea where to find the time to work on this project, but it has the potential to piss off too many people for me to just let it go. See Jimmy's World above for where this site sits. Not dead, just in carbon freeze.
The Unfortunately Esoteric Tale of libN2L-4, n2l5
LibN2L-4 is the backbone of Onyx and is a beautiful mess of poorly thought out dependencies, inappropriately categorized functionality, needlessly verbose code and really, really cool stuff. LibN2L-4 gave birth to DynVars, the ResourceManager and countless other really awesome chunks of code that I am going to labour very hard to finally give legs to. Enter n2l5.
The revised name, n2l5, is a symbol of where libN2L is going in the near future. It will be an improved, but smaller and more streamlined version of everything LibN2L-4 meant to do. The prefix 'Lib' is extraneous, the final 'L' of the acronym stands for library. A standing sentinel of duplication which had no business being there to begin with. The dash was syntactical complexity for no perceivable reason, a sign of ideology over reason. The four represents a fourth generation, when we all know that a fifth generation is bound to be better. You see how n2l5 fixes all these horrible mistakes.
In seriousness n2l5 will seek to cut the fat of LibN2L-4 and simplify the syntax while focusing on the functionality that should be in an underlying library. Where does that culled functionality go, you ask?
orange, and Orange
Orange was a codename assigned to a new game meant to occupy the Life2130 universe circa 2060-2100 shortly after the First Solar War as a sort of SimCity in space. The game lives on in a semi-mature design phase, renamed to ... something and Orange moves forward as the engine that will drive the games to come. Orange is the glue that LibN2L-4 inappropriately sought to be.
Designed and developed to simultaneously support Onyx, Onyx: Free Trader, Life2130 and orange (the first iteration): Orange will be the environment which will connect the power of n2l with the assets of already designed games. It will combine function with design.
Life2130 is evolving yet again. Yeah, I'm not talking about Life2130 yet.
The current codebase was declared dead as of 1:17am March 29 2007. the new codebase was born 1:17am March 29 2007. Onyx is dead, long live Onyx.
While long have I whined about the technical inadequacies of Onyx, particularly the physical and graphical inadequacies, on paper and in implementation Onyx had always been intended to pad my resume with game development goodness. It has totally and completely failed to do so. Now I realize I don't even want a game development job, and irregardless Onyx never fit the bill since as much as I may be proud of everything it was and everything it could do it simply doesn't look formidable enough to be worth anything.
Onyx was a failure and a success. I'm proud of what I accomplished on some levels, but what I accomplished has no externally visible value to speak of. Finally recognizing and fully digesting that fact leaves me with the inescapable conclusion that I need to close the book on Onyx the implementation and decide how I want to tell Onyx the story, if I want to tell its story.
Onyx the story is a story of the years 2108 to 2148 in the Life2130 universe and not 115,762 lines of C++, 71,541 lines of definition files and 850 meg of data. Realizing and accepting that lets me tell the story and divorce myself from the learning experience.
From this moment on Onyx will be restarted in concert with other projects and it will be back better, stronger and more descriptive of the universe it occupies.
And so JwGames moves forward. To define this turning point one needs to really define Onyx as an experience. How does one define Onyx? Onyx was a painful, bloody and crushing experience. Onyx was a vessel into which was poured the ill-conceived and outdated objectives of an extinct set of childish goals. Onyx became bitterness and cynicism crystallized. Onyx was a horrific, life-adjusting mistake. Onyx was and is a war that occupied 1370+ days, nearly 15% of my life and resulted in failure.
Onyx is an opportunity, and it sure as fuck isn't over yet.