The loading process depicted by the Niotso engine
I’ve been busy with two things: studying for my 5 AP tests (albeit calculus and computer science are gimmies) and preparing for my Google Summer of Code project—which was just accepted.
FileHandler now supports PNG, JPG, and BMP (24-bit uncompressed, 8-bit uncompressed, and RLE8) for images and WAV, MP3, XA, and UTK for sounds. The login screen has been 100% cloned up until the dialog. I know, not much. I’ve been stuck on attempting a simple fade-out with XAudio2. Sadly, under the API’s constraints, I’ll have to come back to that later. To get the cursor to be clipped within the window border, it needs to be drawn as a texture, so I need a cur parser, which won’t take me more than an hour. This and TGA will both output to BGRA32 (as opposed to BGR24), which means I have to add in the proper functionality to that on the client end. (FileHandler is all set up for that.)
FileHandler now only exports its public functions, so the DLL has shrunk down to 331kB.
This leads me into the UI subsystem. I will not get to participate much on this until after May 7th: the day of the chemistry test. Pic related.
Niotso has always been a personal project with seemingly no end. At last, there’s somebody skilled who actually wants to help: rothn, of TSO Restoration and Vitare.
With simultaneous contributors to the codebase, the days of coming home from school, knowing exactly what my code does and where all of its functionality is derived from, abruptly end. Suppose we get a team of 50 “valuable” members, and together we finish the project in about a year. In that time, I will have worked on 1/50th of what I wanted to work on.
My purpose here with Niotso was always to learn how an entire game is coded from bottom to top, and at the same time I managed to supply a few things: documentation, teasers, and competition. The model I intended was that people can submit new code to a patch tracker (example), where I can review patches and either accept or reject them. This way I still have full knowledge of what everything is doing. But if this model is incompatible with the public interest, maybe the project never should have gone public, and never should have competed with Project Dollhouse, which can already primitively display an ingame lot with a fully functional UI. Or maybe this project is not what I honestly thought it was. If I reject the most immediate form of help, I’m preventing the game from coming back.
And yet all of the programs I make here are open source. Anybody can already take my code and, after learning from it, make improvements to it. But before dropping changes into my own personal workspace, I want the opportunity to review it. Patches don’t make it to the Linux kernel until the meaning and consequence of every last line has been assessed by the inner circle. I’ve set up Niotso Trac to let anybody do just that.
I am not taking away the right for others to assemble and, still, try to bring back the game ASAP. But do remember: I’m still working.