I’d like to begin by offering an apology of sorts to the Warsow team for being a bit incendiary in my critique of their recent release. I’ve played it quite a bit now, and feel that my assertion that it was “hastily thrown together” was in fact, hasty on my part. I had based my comments largely on what their community was saying, and I should have waited to do more playtesting on my own to make such a judgement. The truth is, Warsow is a rock-solid game that seems to be improving at a good clip, and from what I can tell, development seems to picked back up after having some slow times. The engine runs very smoothly, looks great, and it looks like they are going to write a new GUI(heh, now that truly is a coincidence, as we are doing the same!). All in all the future of Warsow looks very good, as does Xonotic. In the case of Xonotic, I hope they truly take their time and get it right, and so far that looks promising. There is still much to do, but so far…so good!
As for Alien Arena, after a short, but much needed break, we are back to some hard-core development. Blackice has implemented the beginning stages of the new GUI, which if his previous work is any indication, promises to be a major improvement. Our GUI was quite antiquated(it was a modified and expanded version of the original id source), and was far inferior to other games like Nexuiz/Xonotic and Sauerbraten. It was long overdue, and should give the game a very fresh look. The renderer is another area of focus, and while there isn’t a lot to do in the way of new features, there definitely is a lot to do to get things to run more efficiently. A good amount of the code has been reorganized, and a ton of cruft was removed. Along the way I managed to squeeze out a few more frames per second, maybe in the neighborhood of 5%. While that doesn’t seem like much, all these little improvements tend to add up. More importantly, I discovered some other inefficiences which led to me getting some major performance increases.
One area I worked on was the use of vertex buffer objects(VBO). I’m still not convinced there is much use for these. On some cards, I found them to be actually quite a bit slower than compiling the vertex arrays, on others I saw it to be about the same. We’ve had VBO for some time, but disabled the code for 7.50 after discovering said slowness. Currently we have the option to load the static geometry into a VBO, and while it works, it may not provide much of an advantage. So for now, I am looking at other ways to increase speed. The mesh rendering is likely about as fast as it can be for now, but there were definitely areas in the bsp rendering that needed attention. In the end, I wound up completely gutting the bsp rendering routines, and by the time I was finished, the end results were a stuning 50% increase in frame rates!
I’m also devoting some time to revamping a number of levels in the game. This is something we’ve always done, and some times this has been met with resistance from the community, especially if the design is radically altered. Dm-saucer is a prime example, where people still prefer the old bland version to the new one. On other occasions though, the revamps are well received, such as the new version of Dm-babel, or Dm-Warmachine. What I’ve tried to do in most revamps is retain the layout, while improving the visual quality, as well as expanding some areas if I feel the map could use more size, or better fluidity. Babel and Warmachine were very good examples of that approach. Nearly every map in the game has been revamped at some point, and while most of the “2k7” maps have been already revamped, we are now coming to the point where the “2k8” maps are starting to show their age. One such map was Dm-Dismal, which historically has been one of my personal favorite maps, and also a community fave as well. This map was one of the first of the “new breed” in 2008, where we started with a more UT influenced design, with the larger scale, and insanely detailed geometry. The initial iteration of this map wasn’t really that great, and in fact was a catalyst of debate at that time, that led to some division in our community in regards to the direction the game was going. Consequently the map was quickly revamped, adding a new section with a teleporter to improve the fluidity, and a few other nuances to make the map much better.
Now, Dismal is receiving it’s second facelift, and it’s pretty major. I’m making much use of light volumes(which weren’t available at the time of the previous revamp), as well as static meshes. I also added a completely new section, further connecting some of the remote corners to one another, which IMO really improves the gameplay dramatically. I suspect that this may wind up being my best work, and hopefully a community favorite. As much as I love Dm-Annihilation for it’s gritty, raw beauty and exciting layout, I think this one is going to be better. For starters, this map is *large*, not just in size, but also in scale. It’s one of those maps that just feels massive, a major contrast to say Dm-Neptune, which has tight, confining gameplay(which some love, others not so much). Dismal really contains a variety of gameplay features. In the elevator areas, the map is very vertical, with a variety of vantage points. The connecting corridors are not terribly long, but they are fairly wide, allowing for a lot of free movement, which some players adore. There are also the tighter areas, as well as the tricky ramp area, and the outer corriders at the top and near the teleporter. The effects and detail make this a technological beauty, with no sacrifice to free movement or gameplay.
Dismal may be only the first of a number of maps receiving some love. I’ve been considering others such as Crucible, Vesuvius, Violator…maybe some others. Some such as Bloodfactory, Leviathan, Atlantis, and Turbo would only get very minor changes, only to improve performance and perhaps replace the weapon pads and jump pads. Of course we also want to compile all new maps with deluxemapping, which will result in an increase of performance over the fallback realtime lighting routines that non-deluxemapped levels currently use. I’ll also likely be adding in the final base player character, the alien-brain boss(you might recall the original model of this guy in the pre-2008 versions of the game). The new version will continue with the 2008-on look of “updated retro”. I say this is the last of the base player models because I’ve always had a set limit for these, to ease issues of precaching at map load time. I think this will give it a good variety of character types. This would give us two aliens, three humans, one alien cyborg, and one man-made cyborg. This was the plan from day one back in 2008, I just never got around to this last model till now.
The next release won’t be as dramatic as this past one, but it’s sure to be a major step forward as far as polish and playability goes. We have lots of new toys to play with, and will certainly be putting them to good use!