Red Alert!
EA recently released the original Command & Conquer: Red Alert as a download, both discs meaning the full game, as ISO’s. It is a promotion for Red Alert 3, but since I loved the game and after going back to it, still do for all it’s flaws, it was a good excuse to replay one of the campaigns.
I decided, why not write about the gameplay and AI in this classic? Well, why not indeed! This might also tempt you into trying it, if so, it does work on XP, with a note it can also crash for no reason, which I found out rather tediously. If you decide to play this on NT-based systems, prepare for saving a lot, since there are no autosaves. WINE is meant to work well with it too, which is nice.
Introduction
Text briefings?! in an RTS?! 🙂
Red Alert is a rather old RTS game, and we’re talking older-then-Starcraft RTS. It really only uses a few inputs – the mouse, and left mouse button only, the “Guard Area” (G), “Scatter” (X), “Force Move” (Alt) commands, and command group keys, which were Ctrl+Number to make a group of units be re-selected. No shortcuts for building things, or even moving around the map (which had to be done via. the mouse). The game did have some other rather less used things – waypoints (Q), and formation mode (F). There is also no tutorial – this is because the game manual (which I actually own, since I do own the original and expansions 🙂 ) was pretty hefty, and included a full tutorial for the first two allied missions.
The map is top down, preset to less then the full 640×480 resolution since it was cropped. The classic sidebar from the original Command & Conquer is there on the right, with buildings next to units. The units are selected as you’d expect, mostly with drawing a large box to select many. The graphics are great pixel-based sprites, speed is smooth even with a variety of visual effects and sounds. For the time, it looked rather outstanding for an RTS, with two theatres of war – snow and temperate.
Allied FMV
The game itself has 14 missions per campaign (Allies and Soviets), with around a quarter of those allowing a choice of two or three alternative maps – this was pretty neat, actually, and did offer some replay value (with some options actually being decidedly harder then others). Story generally appeared via. cutscene. For their brevity, the cutscenes were well done and added a sense of depth to otherwise arbitrary maps, and progression was rewarded with more progress through the war until the other side was defeated. I chose the Allied missions, so that’ll be what my analysis is based off – a good thing, the Soviets generally have the better, but more expensive troops and defences. The allies are cheaper, weaker, but in greater numbers. Many campaign maps however required specific use of key special units or small amounts of units.
Skirmish game
The game also has multiplayer/skirmish which I fondly remember playing a maximum of 2 hours of on direct dial up modem play with a friend. The AI in mutliplayer/skirmish I’ll explain at the very end, there is really no AI in the singleplayer game, as we’ll find out.
The game had the mission add on pack Counterstrike (no new units, but a fun Ants campaign and some tough singleplayer missions) and a much better expansion Aftermath, which had new units on both sides, more tough and varied singleplayer missions and many more multiplayer maps.
Gameplay
A sizeable tank force, but not enough for this level just yet.
“Tank rush” is one major phrase in this game. Since the buildings are based around power, there is no economic viability in actually using more then a few defensive structures once tanks are available except for the speed and ability to repair them against smaller forces. You can overwhelm anything with enough tanks. Infantry generally suck, although the AI uses them quite competently as we’ll see.
Limited-unit missions feature, here with Tanya
Apart from tank rushing, the gameplay isn’t too varied – it’s build up an economy, protecting your economy then building enough tanks to steamroll the opponent. In singleplayer, the later levels generally become this (if only because this is, in fact, entirely necessary) and multiplayer is it to a T. There is no viable use for infantry, so once the campaign gives you vehicles to play with you generally ignore them – the cost and vulnerability is too great. There are specific levels which involve limited supplies of troops and no base building – which need more expert attention, and some patience – infantry really do suck that much.
Singleplayer AI
There is absolutely no AI in the normal sense in the singleplayer campaign. Instead, we have a great deal of scripting to setup basic AI routines for normal “Base” AI’s with automated teams they send out in preconfigured attack waves, and more specific scripting for controlling specialised scenarios, such as an escaping spy.
These AI’s are all based on the game’s in built scripting system – which you can make your own maps with. I looked at it back in the day, and some of the features were pretty robust for using AI groups, and actually having legally-bound AI players (which use their resources correctly, and manage their base reasonably well). A funny bug however was that multiple production buildings if owned by one AI player meant that when one unit was produced, it came out of every building at once! 🙂
Generally the game was setup in a similar style to the original Command and Conquer (and many future singleplayer RTS campaigns), with the AI’s being passively aggressive and rarely sending a large enough force to destroy a base with some minor exceptions (mainly in the expansion packs which were much more aggressively paced). To do this, the AI’s, once put into production mode (which usually wasn’t immediate, as the player had to setup their own base first) built squads of troops, then sent them out where the scripting commanded them to follow specific waypoints and then usually at the end of the waypoints do an “Attack”, so the AI takes over and automatically attacks the enemy base. A sample bit of code, from the game’s own final level is below with comments and screenshots of it in action:
Code in the scenario ini file:
batk3=9,4,14,0,1,-1,-1,3,E1:5,4TNK:1,V2RL:1,6,3:12,3:68,3:26,3:27,0:5,0:1
Deciphered in a map editor:
Name: batk3 Owner: BadGuy Priority: 14 Max: 0 Num: 1 WayPoint: -1 Team: Rifle Infantry 5 Mammoth Tank 1 V2 Rocket Launcher 1 Orders: 0 Move to waypoint... 12 1 Move to waypoint... 68 2 Move to waypoint... 26 3 Move to waypoint... 27 4 Attack... Vehicles - any 5 Attack... Anything Options: Only autocreate AI uses this team type.
This one specifically was as basic automatically created AI team, which went as directed on the map below up to the general location where the enemy base should be (waypoint 27 is further north), and finally attacks it. On the way, resistance is also attacked but otherwise not pursued. The AI will choose a random attack group in it’s orders to use, so this is one of around 6 varieties this soviet force uses.
Map editor view – red lines are the waypoint usage. The last waypoint is a little further north, then automatic attack orders take over. The groups always wait for stragglers before continuing to keep in some form of formation.
The base which this enemy builds it’s groups. You can see some tanks and infantry ready to be put into groups.
The actual attack group from above, at waypoint 68.
There were also obviously ways for the AI to use it’s abilities such as the Iron Curtain, Paratroops and so forth, usually in the same group codes. Groups and pre-placed units could also do slightly more advanced things, such as “Area Guard” rather then the standard variation, which was much more intelligent about attacking things in the area it tries to protect, as well as “Guard Unit” where it could be the AI protects it’s ore trucks with some troops. Patrol routes could also be easily setup, meaning a good way to make spy missions with patrolling guard dogs in some cases. Interestingly, some units could be automated – planes and helicopters did their job adequately once built with no need for AI orders, automatically refuelling and attacking. Abilities such as paratrooper were also automatically used if not scripted. The AI will also, if allowed by their “AI level”, repair and rebuild its base structures.
Anything not under a specific group control would also be available to defend the AI’s base, which was do automatically. Generally, against smaller to medium forces depending on the mission the AI held up and unless wasn’t able to (due to the scripting) rebuilt its forces and base as it could. Against larger forces, it toppled easily and once key buildings were lost and finances ruined, it might sell everything and go into “Hunt” mode to suicide it’s remaining forces (and helpfully speed up the end of the game).
Obviously, it is an AI left to always fall to the player. There are rare occurrences of defensive missions, where the AI can if left alone build up a sizeable force to send against the player. A few missions also allow the AI to build up it’s base from scratch, meaning if left alone makes the players life hard with a fully operational (and rebuilding) base, with forces to match. These were more interesting cases, with one Soviet mission much more paralleling a standard multiplayer map, where the enemy AI didn’t have so many free reinforcements, and built up his own allied base before attacking, while the player did the same on his side of the map.
Still, it is all scripted behaviour. There is more interesting single-unit behaviour – the routines for scattering infantry, guarding areas and defending ore trucks were much less predictable and tough to beat. If you didn’t take that Ore truck out in one go, you’d see units following it later to defend it – and defend it quite competently. This also played into a key part of the game – you could actually cut off the AI’s funds and they’d definitely stop producing units – a good strategy on almost every level. Perhaps a problem was, in fact, they never rebuilt the ore trucks, oh well 😉
Victory! Soviet nukes stopped, London is safe!
The fully scripted missions with set forces all made good use of set pieces and special abilities. These could be the most fun and least monotonous – and certainly the hardest (many had time limits), where major unit management came to the fore, and the “lacking” AI which was much more tough when such small armies were involved, especially guard dog AI 🙂
I’d not give this any points for ingenuity, but for the missions it works – the game obviously is a little before AI that could reliably provide what the designers wanted (look at the multiplayer AI below), and with complete control it certainly is a polished and fun experience. The entirely extreme enemy bases were hard to attack with the AI as it is, and so only attacking groups really needed to be sent out from time to time, which scripting provides very adequately. The expansion packs generally had much tougher missions, with less resources for the player and much earlier and deadlier attacks and troop groups. Each level had limited replayability of course, and so usually once was enough to outwit the AI sides and move on.
Multiplayer AI
A first for the Command and Conquer series, the multiplayer AI was basic to say the least, but did function. It basically didn’t do much more then randomly choose units and buildings to place down – with percentages for the amount of a certain type of troop it could produce. At intervals the “Attack” command was called and the majority of the AI’s units beelined to the nearest base. The AI was unaffected by GAP generators, and didn’t need it’s map so the Radar was useless to it, and it never built sea units. As it went, it was an interesting diversion – the units all spread around its sprawling base, waiting for the attack order, making it look very disorganised to say the least – and in this case, the disorganisation always lead to its downfall.
These show the soviet base, over a period of a few minutes building, and an attack force from a different base. My game crashed, else I’d show you the sprawling mess a final base is. 🙂 – attacks, as long as you concentrate your forces, are usually pretty easy to deal with – as long as your own economy is as strong as the CPU’s.
Conclusions
I of course know good scripting can replace basic AI, and in this case it’s a well done case for it. For comparison, this was released in 1996. Age of Empires 1 was released in 1997 – which used some basic rule-based AI for it’s campaign and mulitplayer, and Total Annihilation was released in the same year with similar AI. Starcraft with more rule-based AI, were released in 1998. Age of Empires 2 with improvements to the rule-based AI, was released in 1999. To be honest, all of the titles generally stuck with scripting for the majority of behaviours (or at least, initializations for the AI), although most automated the base building and rebuilding, and unit production which Red Alert did with scripting.
Crushing defeat – poor soviets. Lets hope future RTS games’ AI’s are better!
Therefore, it provides a level of fun but no replayability, and certainly for me, no challenge in the base-building, tank-rushing levels. The “Hard” difficulty level doesn’t change the AI, only changes the cost of the players units and their strength (so, less in hard) sadly. With no reaction to my force, for instance not building anything to defend itself when under attack, or striking out at my army with much effort there isn’t much to comment on its ability. Do what you might, the same things will attack you, although leaving the AI alone usually means they’ll build up more defenders over time, merely delaying the inevitable.
Possibly, the game could be leveled as completely unbalanced, but in the favour mightily of the player. Which is fair enough, I found some levels quite difficult when I was younger, so they perhaps justifiably made the game easier in general 🙂
So, the campaign was rather fun – and the limited-unit missions tense and more fun then the others. Levels were designed well, and the expansions really mixed up some crazy stuff. Well worth a little play if you have an opportunity – but not for the AIs competence, or any kind of replayability 😉