As most of you should know by now we have successfully ported CSPromod from the older Half-Life2 Episode 1 to the newer Episode 2 Source Engine more commonly known as Orange Box version. Hence all the orange, go figure.
We have been orange for a while now, but the paint still has to dry. Just made it official now as everyone was thirsting for information even though there is not much to show at this point - more about that later.
Why the port and why now?
We've been wanting to bring our codebase over to the newer engine version for quite some time now and have put some thought into delaying beta 1.04 for the sake of an "up-to-date" (the engine is roughly three years old by now) CSPromod. Part of this thinking was due to our desire to add our custom 1.6-styled models with their new animations. As the 2007+ SDK code uses a newer Team Fortress 2 (and Day of Defeat: Source) animation system and since we were going to make the move sooner or later we didn't want to waste any time working on animations for our EP1 codebase or merging back the more recent animation code into our outdated code just to end up on Orange Box some day anyway.
However as animation progress was slow and we did not have Mazzer yet we figured it would be our best option to just release what we had, what the public was eager to get their hands on - they have been waiting for a good while anyway. This allowed us collect lots of feedback and in the meanwhile go about porting to an updated SDK.
In March I began bringing the mod over to the new engine. What this means is basically make sure everything we had in 1.04 (plus all the changes we've made in February) gets integrated into the new SDK code and is working properly on the new engine. Depending on how much you have drifted from the original (EP1) Source SDK code layout and how much the base SDK code and engine interfaces themselves have changed, this can be a rather difficult and time consuming task. Fortunately I already had experience in porting to Source Engine 2007 so it was mostly just time consuming and boring.
Apart from simply putting 1.04 exactly on OBox I used this opportunity to optimize some of our code, re-write the "netcode" and apply some other tweaks and feature improvements. Also lots of bugs and exploits have been squashed in the process.
Enough with the talk, I demand screenshots!
Yes of course you're right, they have been lacking. This is what you came here for after all, isn't it? Let's get right to it then:
Ah beautiful isn't it? 1.04 can not compete!
So much has changed in our current build of 1.05 dust2.
Take a closer look before reading on (click on the images). If you are wondering what the heck I'm so exited about then congratulations, you have at least one working eye... fact is there isn't any noteworthy difference in those two 1.04 / 1.05 comparison pictures as of yet. Besides some changes in (ambient) lighting apparently, easier to notice on the dust2 shot. I find the skybox background is also looking a tad nicer in 1.05. Further down there are two more images in which you can see this more clearly!
Other than that, pretty much a boring media release right? Which - aha! - is exactly why there haven't been any media updates thus far! You might as well just open up 1.04 and look at the maps yourself. So please forgive us but this is all it boils down to at the moment. Now we still have a few things around the corner, like recompiling the maps with the OrangeBox SDK tools with might add some more detail - but for your own safety have low expectations, unless we physically improve the map visually (using new Source Engine features for example) it is probably not going to be worth a plethora of screenshots. Also the next devlog (most likely) will be very animation-centric and should supply your overdue CSP media fix. You can look forward to it.
Okay fine, but where is my point release?
Ah yes, the alleged 'point release'. Truth is there never was one. We only had a small patch that we gave to the testers after a while which also lead to some rumors about a release. The plan was while I was porting the code Mack and Mike would focus on bug fixes and tweaks we had not already done in February. This way we would have originally release a patch in between the 1.04 and 1.05 releases. But things sadly did not go as planned as nearly all of us took a forced turn onto a speed bump paved highway of real life. Be it studying, exhausting work or other demands, occasionally spare time was a luxury amongst the dev team and what little free time we had had to partly be put into non-CSP-related things such as real life goes. Around mid April most of our schedules cleared up a bit and everything calmed down again. This coincided with CSPromod being fully orange, so this and the fact that we had well overshot our internal deadline for a public 1.04 patch release made us drop the patch and concentrate on oranges at hand.
The next true point *cough* release will be beta 1.05 which's ETA is TBD, before you start asking (=no release date yet).
'The paint still has to dry'?
While the overall process of porting everything over to Orange Box itself was about done in mid April there were and still are things that need to be taken care of before this beast can be released to the public. Finishing off and tweaking the animations (more about that in the next devlog) making sure the Windows and Linux dedicated servers run smooth and overall just testing, tweaking and more testing. Also the CSPromod options tab had to be disabled for now as due to some changes in closed engine code it is currently crashing the game, so that also has to be rewritten.
At the same time other remaining bugs from 1.04 are being fixed and new features being added. I won't go into any detail, the next (at least two) devlogs will shed some light on some key features of our upcoming release.
And what's new with this update?
The engine update from EP1 to EP2 has been fairly decent: soft particles, new rendering features like fast self-shadowing bump maps, distance-coded alpha masking, blend modulation textures and other improvements. In case you're wondering multi-core support is not yet a real option, there is only experimental support so you might be able to enable it (we will supply instructions) but at this stage it can be a bit instable. We are hoping that with the SDK update for Mac portability this feature might be upgraded to full support, as it has been done with TF2 or L4D. Performance overall seems pretty smooth with what little testing we were able to do but as far as frame-rates are concerned we still need to do some extensive testing. It is well known that the Orange Box has higher system requirements than the previous EP1 Source Engine so we are expecting frame drops in some areas but are hoping for an overall improvement. We will also be ridding *our* code of any remaining and unneeded SDK code bits to further lower the processing needs. We'll keep you posted as we progress.
We didn't only do this to get new shiny graphic effects or possible performance improvements, this was also about updating for the sake of updating. EP1 has been around a long time now and (we have been using CS:S engine binaries) even if there have been a few updates to fix some crashes or exploits, the most recent engine version available to modders for us is the way to go! Especially if you're a server hoster/admin you probably have to fight with server- or even client-side exploits all the time. If such exploits are fixed chances are Orange Box is the place, even though Counter-Strike: Source might receive the update as well... some time later.
In the end it's also nicer for us to work with the newer SDK and that we were able to use the opportunity to clean up our codebase and rewrite certain aspects of it during the port.
Another important advantage coming with being on the more recent SDK is the soon to be Mac OS support. A lot of you probably haven't even thought about this point, but once we have the opportunity we would like to try and get CSP to gamers who prefer running things on their Macintosh. There are indeed quite a few people running around with their Macbook Pros having Windows installed just to play Counter-Strike.
There is also a whole bunch of other smaller new features and improvements like the new chat UI and extended netgraph which you might know from TF2.
So this is it, we have 'switched' engines so to speak, hooray for Orange Box etc. etc.
I hope have enjoyed this read (if not, well then just try again next time) and that you now have an idea of what has been going on these last months and some understanding as to why there haven't been any big updates from our side. As mentioned in several comments on the news post leading up to this devlog we are now in a positions to present development updates more frequently and we are trying to do just that.
On that note I would like to point out our new behind the scenes dev update site where we leak small bits of more or less useful information every now and then. The 'devlogs' such as this one will still be around and are not being replaced by our fancy update site. The devlogs are supposed to be larger blog-like articles posted at longer intervals which you can comment on etc. whereas the dev site focuses on frequent, bite-sized information though with more than twitter could handle. (Also it includes certain twitter posts and will feature an RSS feed in the future.)
And just real quick: No, you the player do not need an Orange Box game, all you need is CS:S.
To summarize real quick:
- CSPromod updated to famed "Orange Box" Source Engine.
- Still a few things to sort out (options menu, maps, dedicated server, ...).
- Intensive testing necessary, especially performance analysis to improve upon.
- Going to make use of new features to enhance CSP visually if needed.
- Currently adding in main praised feature: custom models+animations!
- Need to continue fixing remaining bugs, glitches and exploits and implement as much new features as possible.
- Some time not too far away release Promod beta 1.05!