Review of TA Spring

From Nick Jenkins
Revision as of 00:22, 29 April 2006 by Nickj (Talk | contribs)

Jump to: navigation, search

This is a review of TA Spring, an open-source game like Total Annihilation. The version reviewed is TA Spring 0.70b3.

What's to like

  • It's free (as in beer and as in speech).
  • It looks like TA. Since Total Annihilation is one of my favourite computer games, this is definitely a good thing!
  • It behaves like TA in some regards.
  • It's a fairly small download (around 35 Mb).
  • Rotating the scroll wheel changes zoom level.

What's not to like

A technical game-playing friend put it this way: "typical open-source project, the UI needs a lot of work".

My very non-techie girlfriend (who likes most RTS games) said: "Interface is critical; and the interface on this game majorly needs work". Also: "they've got all the fancy features, but have gotten the interface basics wrong". And: "it required the player to hang in there a little too long" (learning curve too steep). Also: "the screen is way too cluttered".

For both of these people, I asked them to be more specific, and vocalize exactly what they disliked, and be specific about how they would change it to solve the problem. I added my own thoughts, and tried to prioritize these. So, here is our list of things not to like in TA Spring, listed from most annoying to least annoying, with specific suggestions on how to fix them:

Inconsistency of left-click and right-click

In TA:Spring, left-click normally means "cancel", and right-click normally means "do something" (e.g. when ordering a unit to move or attack). Except when you're controlling a construction unit, and placing a building, in which case suddenly they invert it, and right-click means "cancel" and left-click means "do something". Same inversion happens when you're specifying a patrol path. This internal inconsistency gets very annoying very quickly. Please please please please: Pick one! Either left-click means cancel, or right-click means cancel. Either one is fine. But then please apply it consistently. (Seems others have mentioned this before).

Update: To the idea that users can learn to get used to this interface quirk after a 2 or 3 games, I simply say this: What users are effectively learning is to work around the UI issues. If you want to create an insanely great game, then the answer is to smooth out the UI issues, not to force your users to compensate for them.

Can't order units to do something using the mini-map

Should be able to select a unit, and right-click on the mini-map to move or attack, as per the normal map - but you can't. Consequently, you have to scroll to the location, and then right-click

... Except, do you right-click or left-click? Because clicking is inconsistent, I had several occasions of carefully selecting units, scrolling to other side of the map using the mini-map, and then accidentally cancelling the order and losing my selection! This is an example of two bad interface behaviours compounding together - 2 problems (inconsistent clicks + the mini-map not being useable to give orders) compounding to be especially frustrating.

Arguably, you should also be able to drag a box around units using the mini-map to select them.

Clarification: What I am suggesting is that right clicking on the mini-map should move the currently selected unit(s) to that location, but not change the view. Also, if you select a unit, and press the "Move" button, and then click on the mini-map (eitehr with left or right mouse button), then the unit will not move to that location - I am suggesting that it should.

Units do not obey you in battle

Units seem to have a mind of their own. I had a group of several gunship aircraft and some tanks. I ordered them to attack an enemy unit. 30 seconds later I see the gunships land, having travelled half way to the battle. Why? Attack means attack that unit. If that unit disappears, it means travel to it's last known location, and then attack any enemy units in the vicinity. Attack means attack.

Update: From chat in the battle room, evidently I'm not the only person to experience this:

[4:10:10 PM] <chapparal> You know what is BS?
[4:10:18 PM] <chapparal> Your 3k metal attack helicopter bombers.
[4:10:31 PM] <chapparal> When ordered to attack, they feel the unspeakable need to land.
[4:11:01 PM] <chapparal> They will stop whatever they're going to, and attack a nearby camera
[4:11:20 PM] <chapparal> i can live with the nukes, i can't live with my units not doing the things that i tell them!
[4:12:13 PM] <chapparal> It just brings me so much frustration...
[4:12:31 PM] <chapparal> Sooooo much frustration.

Update 2: It's a bit of a known problem, with gunships in particular.

Move means move

If you select 30 mobile units and accidentally include one building, you cannot move the group. The move order will have zero effect. The 30 units do not obey the move order. What should happen is that the building should ignore the move order (unless it is a factory, in which case future units produced should move to that location) - but most importantly, the mobile units should move. The alternative is having to carefully deselect buildings from the group, hoping that you don't miss a building.... whilst you're being attacked and your base is being destroyed. Not good.

Key bindings for newbies the won't switch to 3D First Person Shooter mode

Look, I agree that the 3D FPS mode is pretty cool as an idea, and it's cool technology, and good as a really cool hack to show what the original TA would have looked like in 3D mode.

The technologist in me is amused by it. However, the game player in me hates it.

It's just not particularly useful for gameplay. It doesn't in any way make it a better game. A good interface is an interface that is as simple as possible, and a FPS mode that's not helpful should be disabled (at least by default - i.e. in the out-of-the-box install, there should no key bindings for changing out of the original-TA isometric god perspective - if people want to customize their install to add this, then good luck to them).

Update: I don't think the 3D FPS feature should be removed, I think that maybe the default key bindings to switch to 3D FPS mode should be removed. I'm not sure on this point though, and I recognise that there are valid counter-arguments that you don't have to use 3D FPS mode if you don't want to.

No way to make a LAN game in the default install

If you want to play a LAN game against someone sitting next to you, you might well do this: Run the "TA Springs Battleroom", then go "Battle screen", then go "Host battle". However if you do this, you will get an error message that says: "you must first log onto server". It appears that all the players need to logon to the Internet server, create an Internet game (which can have a password to keep other people out), and then play that game. I.e. there appears to be no standalone "LAN game" mode.

Update: LAN only mode is possible, but you need to download the separate server. It would be better if the "TASServer" software needed to do this (which is very small at 122 Kb) were included as part of the default Windows install, with an icon in the "TA Spring" program group for "LanServer.bat" that was labelled as "Start LAN server".

Getting stuck in first-person mode

The game features a first-person mode, where you can "jump" into the perspective of one of your units by pressing the "c" key. Pressing the "c" key then toggles back to the normal top-down isometric view. The person I was playing against did this, and the unit they were "in" was destroyed. They pressed "c" to get back to the normal view, but it didn't work. They were stuck in first person mode. They tried pressing every key on their keyboard, and eventually got back to normal, but had no idea how they did it. Pressing "c" should always go back to the normal view if you are in the first-person view.

To see this, select a unit in the normal view, then press Ctrl-D to commence self-destruct, then press "c" to jump into their view. After the unit has been self-destructed, pressing "c" again will not return you to the normal top-down view.

Don't jump to "Free Look" mode on exiting FPS mode

Jumping out of FPS mode should not switch to "free look" mode, where you cannot select any units. It's very confusing to beginners, and not obvious to them how to get out of it. If you won't get rid of it, please make it disabled by default so that it requires the user to enable it.

Clarification: Free look mode per-se is fine, it's that Free Look mode is selected when jumping out of FPS mode that I have the problem with. If free look mode was like FPS (don't have to use it if you don't want to) then I would have not really have a problem with it. But if you get out of FPS mode, you have to use Free Look mode. That's what I object to.

Units sometimes get stuck

Units that can't reach their destination. Examples are "Anaconda: Can't reach destination!". An Anaconda is a hovercraft (I think), so it should be able to get most places. Another example is Kbots on the "small divide" map will get stuck in the trees, and give the same "Can't reach destination!" error message. If they were able to get into that location, and the path in has not been altered, then surely they should be able to get back out again?

Occasional weird errors

Specifically this error was repeated about 40 times on the console: "Error: got patrol cmd with less than 3 params on Brawler in mobilecai".

Also on self-destructing a PeeWee KBot, I get this error on the console: "GlobalAI0: Error: ARMPW didn't have handler".

Less clutter on the screen

What does "nickj 6% 1" at the bottom of the screen mean? And can it please be off by default? And if it can't be off, can it at least have a tooltip defined that explains what it means?

Update: It means "your name, cpu usage %, and ping". It can be disabled by typing ".info". Is there any chance it could maybe be disabled by default though please?

Update 2: Is there a startup script? (Like quake3 had a ".cfg" file that would run commands on startup to configure your environment the way you like it). If so, then the user could add ".info" to that startup script to always prevent this appearing, without having to do it every game.

Left-clicking on the mini-map should move to that location

Yes, left-click normally means cancel, but if you do it on the mini-map, you probably wanted to see that location, not cancel your current action.

Please include Key Reference in program group, and add missing keys

A key reference / cheat-sheet would be very helpful, especially because there are some differences between the original TA and TA:Spring.

Note: Pages 40 and 41 of the original TA manual list the key commands, but a more complete version is available on this web page (need to scroll to middle of page).

Update: Turns out there is a TA:Spring key reference. In that case, please include it in the "TA Spring" program group, with an icon that says "Key Reference".

Update 2: The TA:Spring key reference is missing some keys that work, but which are not listed in the key reference, namely:

  • SHIFT : Hold down to queue up multiple commands.
  • CTRL-A: Select everything - all units and buildings.
  • CTRL-C: Select and centre on Commander.
  • CTRL-Z: Select all units of same type as currently selected.
  • -  : Reduce game speed.
  • +  : Increase game speed.

Keys which worked in TA but which are missing in TA:Spring

  • comma  : Select the previous menu for a unit.
  • period : Select the next menu for a unit.
  • F5-F7  : Map bookmarks.
  • Ctrl-S : Select all units in current view.
  • Ctrl-V : Select all aircraft.
  • B  : Select the build menu for a unit (currently shows a ball around each unit instead).
  • C  : Give a capture order (currently changes camera angle).
  • N  : Scroll to and select next unit off-screen.

The engine doesn't support changing setting while in game

Cannot jump out of a game to change settings (e.g. game screen resolution), and then resume the game.

Some bugs on goto source of last message function

Pressing F3 means go to source of last message command, and select that unit. However, the F3 function sometimes doesn't seem to work very well. To see what I mean, select your commander, press Ctrl-D to activate self-destruct, then cancel it with Ctrl-D again. Now press F3. It should stay focussed on your commander, since he was the source of the last message, but instead (for me at least) it flies off to the top left of the map.

Left-hand unit action window looks transparent, but it is not transparent to actions

The left-hand unit action window (that shows buildings that can be built, stop/patrol/attack, etc) is transparent (shows the terrain underneath). However, you cannot click through it (i.e. it catches any clicks). This window should not look transparent if it does not behave transparently. It should be a solid colour instead (e.g. black), so that the way it behaves matches the way it looks.

Tooltip area should pass-through clicks, like the console

To see what I mean, select a unit, and order it to move to the location behind/underneath the console/message window. This works. Now order the unit to move to the area behind the tooltip window. This does not work - the tooltip window "captures" the click. I think it should pass all clicks through, like the console does, because I can't think of any situation where the tooltip window itself needs to respond to mouse clicks. The behaviour of the tooltip window should match the way it looks (i.e. transparent behaviour for transparent appearance).

Define two tooltips

  • Placing your cursor over the "You won the game" popup shows "No tooltip defined" in the info box on the bottom left of the screen.
  • Placing your cursor over the tooltip window that shows tooltips says "No tooltip defined". :-)

Stop Resources indicator from being a Draggable window

Parts of the interface are draggable, so you can customize your interface, in the same way that the toolbars in MS Word can be dragged around the screen. For example, the resources indicator showing how much energy or metals you have can be dragged around the screen. I can't really see the point of this. The mini-map can be dragged and expanded. This is potentially useful, although this could probably be removed too with no reducation in gameplay.

Update: I retract this item. It doesn't hurt dragging the toolbars, and you don't have use it. Expanding the mini-map can be useful. So please disregard this point.

Pressing Shift-Escape should probably prompt

Pressing Shift-Escape quits the game without prompting or confirmation - it would probably be best to prompt to confirm this.

Update: I retract this point - pressing Shift-Escape during a game does not end the game (it jumps to the Windows desktop, and keeps the game running).

Should indicate when units have been selected for attack

This relates to the confusion over the inconsistent left-click and right-click. The problem is that the user gets no visual confirmation of a successful attack order. Now, when you click to attack an enemy unit, you find yourself wondering: did you successfully issue an attack order, or did you just cancel your order? It's not immediately obvious. Age Of Empires gets around this by displaying an animation of some arrows pointing at the enemy unit that has been selected for attack. Something like this (or displaying the attack icon above the enemy unit) could be helpful to visually indicate a successful attack order.

Minor polish things

  • In the "battle window", clicking on the "ready" marker next to your name should do the same thing as clicking on "I'm ready" at the bottom of the screen.
    • Update: These are two different kinds of ready. One is "I'm ready to start the game and place my unit". The other is "I've placed my unit and am ready for the game to start". Understand now that they are different, but it is a little confusing - maybe using two columns for the two different "ready" states would be less ambiguous?
  • The resource bars jump up and down instead of increasing or decreasing smoothly. Makes it hard to visually see what's going on with your resources.
    • Update: I personally don't have any preference on this item, it was just something my techie mate mentioned that bothered him.
  • When my commander died at the end of game, the energy and metal scrollbars went way off the screen (looked like they went to infinity). Happened on a game starting with 10,000 resources, so maybe that was the issue.
    • Update: When you have 0 storage capacity of a resource, the resource bar graphically goes haywire. It's an extremely minor bug though.

Smoother unit tracking

If you track/follow an aircraft using the "t" key, the screen jitters a bit. The original TA from 1997 played pretty smoothly on a PC with one tenth the CPU speed of my current one, and little or no 3D graphics acceleration - so it should probably be possible to do this on a reasonably modern PC with a 3D graphics card.

Conclusion

From all of the points above, you might think you should give TA Spring a miss. I disagree. The game is definitely worth checking out, and it could be truly fantastic, if only they would fix some of the above problems.

What's really amazing to me is that not only has the TA game been recreated using a new engine, but some really technically fancy stuff (like jumping into 3D FPS mode inside a unit) has been added. This must have taken a huge amount of effort, and is technically very impressive. But on the other hand, it makes the above points all the more frustrating. If the really hard stuff can be done, surely the simpler UI stuff that really makes the user experience can done too?

Some of the point above are about doing less, not more:

Some are about making the game internally consistent with itself:

Some are about better user feedback:

Some are glitches or omissions in the current game:

Some are about making it easier for the user to play:

... but all are about giving a better user experience.