The Past Ain't What It Used To Be... The first Command & Conquer received its last official update on the 21st of June, 1996. Since then, the game has been ported to Windows (as "Gold" version), and re-released in the big "The First Decade" collection pack, but has never received any more bug fixes. The C&C Gold Patch 1.06 project aims at bringing this classic into the new millennium, by fixing the old bugs, supporting higher resolutions, and adding new modding and mapping possibilities. It also contains an addon-based language system, allowing anyone to create translation packs for the game.
Let's take a look under the hood, and see how this old C&C game's engine block can be tweaked. Warning. Huge walls of text ahead.
Posted by Nyerguds on Jan 5th, 2011
The little project I've been working on for the past few days is now finished! Command & Conquer v1.06c revision 2 will have a brand new setup tool, written in C# by yours truly, with a shiny new icon courtesy of the Amazing Man Behind The Curtains, CCHyper.
So, let's go over all possibilities...
First we have the Resolution tab. Since the game resolution options have gotten an exciting new edge with the addition of hifi's CnC-DDraw project, there are literally tons of options here.
(Note that if you don't enable CnC-DDraw, the options here are replaced with those of the 'Screen Resolution' and 'Hardware Options' parts of the old CCSetup tool, with the addition of the custom height for the high resolution.)
As you see, the default 640x400, 640x480 and 1.06' added 1024x768 are all there. Nothing new so far. The new ones are the original aspect ratio ones, and the high resolution with custom height.
Okay, so, time for some history, again. Command & Conquer was made in a time when everyone had CRT monitors. These things had the odd property that pixels didn't have to be square. In fact, they weren't. DOS C&C's fullscreen mode was 320x200, while you'd need 320x240 to achieve the same surface with square pixels. What does this mean? Well, quite simply, that the game we see on our PCs today was made for elongated pixels, and now it isn't elongated anymore, the entire game is actually flattened a bit. Which is why I made the Original Aspect Ratio options. It will show 640x400 as 640x480 fullscreen, the stretched equivalent of the CRTs' elongated pixels, giving you the game as it was meant to be seen.
If you need more proof of the validity of my explanation, I suggest you compare the 640x400 C&C95 title screen with this version stretched to 640x480. Which one has a correct circle as logo? That's right, the stretched one. Not the original.
So, for 640x400 this was easy; the resolution was already there. All I needed to do was use CnC-DDraw's options to stretch it to 640x480. What about the 1024 version? Enter one of 1.06c's other new features, originally added for laptop screen compatibility: customizable height for the 1024 resolution. And just a bit of calculator work shows that, to get the same aspect ratio on 1024x768, you have to stretch it from 1024x640. So quite simply, the high resolution is cut off a bit and then stretched to full resolution again. Obviously these original aspect ratio resolutions are purely optional, but if you want to see C&C the way it was meant to be seen, I do suggest giving them a try.
Talking about stretching, you probably wonder how blurry or pixely this will make the game. Well, the choice between blurry and pixely is entirely yours, with the Scaling filter option.
And next, we have the option that made the entire Wall Of Text above possible: Stretch to custom resolution. This option is what allows you to stretch to original aspect ratio, or any other bizarre aspect ratio you want. Note that unless you enable windowed mode, there's no guarantee that the game will actually accept it though.
If you're still reading this, then yes, you did read that correctly. Windowed mode. I really wish I could take even the tiniest bit of credit for this, but no, this is the original reason CnC-DDraw was made, so all kudos and applause should be redirected to hifi.
Oh, and did I mention that CnC-DDraw also adds [Ctrl]+s as ingame screenshot saving shortcut? Bloody amazing.
So here we have the second tab, Game options. Language changing was already in 1.06b, and 1.06c added the ability to make user-made language addons to that. But it also added Japanese. For those who have already installed the patch and tried it out, or those who got their hands on a Japanese console (Sega Saturn or Playstation) version like I did, you know that this is just the voice sets (well, and videos); the complete user interface is simply in English. So you can imagine that, for example, German people who want the Godzilla feel, wouldn't appreciate the fact that the basic game interface language behind the Japanese is always English. So I changed that, and added a base language option to use as default layer under such partial languages.
On to the rest. The scroll blocking on buttons was a beta option that was hidden in the game, and which I reactivated. Make of it what you wish, the description speaks for itself. Death announcement is an option which someone requested to be in this tool, but which I personally find horribly annoying (it announces ALL deaths, not only your own losses). No-CD mode...
Well now. No-CD mode. Contrary to popular belief, I did not "crack" the game. I did not make a no-CD system in C&C95. Nope. I simply used the one that was already there, and extended it to settings in the game's configuration file. If there hadn't been one, I probably could have made it, but most likely not with such an elegant system. Credit goes to Westwood for leaving such an ovbious beta feature in the released game. As a little extra on this, once I get on with releasing language video packs, you'll be able to have a full C&C with all videos in all 4 official languages. (Note: I've seen that the Russians have made a fan dub, so you could have more). To achieve separation of different-language videos, there's the third noCD folder option, language code subfolder. This is a lot simpler than it sounds. If you set the game to French, it takes the subfolder FRE\ in the game folder to use as CD, and, if it contains loose video files, it'll use those. Change the game to Japanese, and it'll use JAP\ folder instead. This way, the videos never conclict, and the game automaticallly chooses the right collection.
On to modding. Well. not much to say about this yet. At the moment, only graphics, sounds, and the music list can be modded. See my forum for more information on that. I'm going for a full rules.ini system, but at the moment only the music can already do that. Still, the mod loading system itself (closely related to the language addons system) is pretty neat.
On to the last batch of this tab: music options. I originally removed those from the config file, and put them in the internal settings file (which I called rules.ini, hehe), but since not all people seem to like the remixed music that was hidden in DOS C&C, and liked the option to disable it, I decided to put them all back here. The Remixes one was another recovered Westwood beta option. I assure you though, the other three are all mine.
The last one, incrementing music, is especially nice. You can imagine that after messing with C&C for years, I grew a little tired of the default mission start music, Act on Instinct. But then, Zenix on the official boards told me that the Nintendo 64 version had its start music controlled by the mission number. So for example, mission 5 always started with the fifth music track. I loved this idea, and made a neat little logic to implement it. Of course, that wasn't enough. The Covert Operations still started with the same music all the time. so I expanded the Shuffle logic to work on that too. I also enabled this for multiplayer, but that turned out to be a recipe for desyncs on game launch, so it was removed in 1.06c. Still, just having music enabled in multiplayer is already nice.
Enter Tab The Third! Most of this is really just basic stuff. Multiplayer nickname, side, colour, and the network options which were already in the old tool, and of which no one is really sure what they do.
And then there's CnCNet. Let me tell you about CnCNet.
Originally developed by my good old friend Myg, and later continued by the man we already know from CnC-DDraw, hifi, this system basically cheats the game into filling its list of player IP addresses in a LAN game with online IP addresses instead of local ones. The game notices nothing, and you can happily play online through the LAN function. Compared with the official Westwood Chat, it has two big advantages:
There was just one problem with it, namely that it actually replaces LAN play, and with that, the dll file needed for LAN. Thanks to this new setup tool, the days of juggling around the two dlls are finally over though; the setup tool simply has them both stored inside itself, and just writes the correct one to the game folder.
If you're wondering about CnCNet's port forcing option... well, that's just cncnet stuff. Needs to be activated if you get a "random port detected!" warning when connecting to the lobby. It's related to your LAN router behaviour.
Well, that's it for today! At least I hope it's still "today" for you after reading all that.
This is Nyerguds, signing off.