SODA: Afterthoughts

After racing with my brother Nate, his sons Cale and Amos, and friends on this sim for a week, I have some further impressions to add to my original SODA review.

Graphics

First of all, the graphics: the giraud shading and texture mapping on the vehicles is excellent. And when you are following another vehicle closely, you can see the suspension bits working, the springs compressing, the control arms moving up and down as the wheels pound up and down over the terrain. Very impressive.

However, the portrayal of the terrain and scenery seems rather blocky and crude, lending a cartoonish quality to the environment. Now that I think of it, Wiley E. Coyote and the Roadrunner would seem right at home at the desert tracks. To simplify track creation and improve frame rate performance, the ground is built with relatively large polygons. This results in very unrealistic-looking terrain, particularly as the landscape features become more dramatic. Also, the textures on the track surface, as well as the appearance of many of the buildings and other features, are not really very convincing.

Compared to the lush, detailed, carefully rendered scenery in ICR2/Rendition and GP2, SODA clearly falls short. It's obvious why this has to be, at least in part: the CPU power consumed by the sophisticated 3D vehicle dynamics engine leaves a lot less for dealing with the zillions of polygons that would be required for really detailed scenery. The use of large polygons to describe the terrain saves CPU cycles (and disk space) but at the expense of ragged, blocky-looking ground and hills. You are never unaware that you are driving a simulation.

Realism

Aside from commercial banners and signs, there is no attempt to simulate a real race environment. There are no drivers' names, no realistic tracks, no realistic paint schemes. This removes one of the primary areas of appeal for me with other sims: being able to race on, and learn, the same tracks on which I see real race drivers racing on TV. This makes the real races much more enjoyable, since I can identify much more completely with the challenges faced by the drivers, and I can usually instantly recognize the spot on the track on which the cameras are trained. All this is completely absent in SODA. Perhaps this is by necessity, but I still miss it.

Tracks

I've now run on all of the tracks that came with the sim. Some of them are wildly imaginative and some are very dramatic. Devil's Bluff comes to mind as one of the most memorable. There is also a good mix of relatively difficult tracks and some that are easier. The ability to create your own tracks remains one of the major attractions; I think that we've spent almost as much time creating tracks as we have spent racing!

State of the Art Vehicle Dynamics Model

SODA is the first racing sim to define the vehicles' position as X, Y, and Z co-ordinates in space, the way flight sims do. ICR2, N2, and GP2 all track the cars' position relative to the centerline of the track. This is clearly more economical in terms of CPU utilization, but limits the realism in certain ways. For example, the SODA vehicles can not only leap into the air to any height you can push them, they can roll completely over, or tumble, or any combination of these. They can also travel anywhere in the three-dimensional space that defines the SODA simulated world.

The other sims cannot do any of these things. Their freedom of movement is limited horizontally by walls next to the track. ICR2 cars have no vertical movement at all, except a simulated dipping of the nose under braking. N2 crudely imitates curb hopping by changing the angle of view. GP2 does better, but "cheats" by using canned routines, and the cars cannot roll or tumble.

As always, there are trade-offs. SODA pays for its sophistication by consuming more CPU power than any of the others. It's the only sim with native Rendition support that we can't run with full graphics detail turned on, even with an AMD K6/200. ICR2/Rendition and N2 can run with full graphics detail on a Pentium 133.

Vehicle Dynamics Oddities

Nate pointed out something strange about the vehicle dynamics: there seems to be some bias built in so that the vehicles are much more likely to land upright after they've been launched or even rolled. You can come down at what seems to be 90 degrees to horizontal and the buggy or truck will smash sideways onto its "feet". If you get it rolling across the surface, it seems to stop when upright 9 times out of 10. If the buggy does happen to wind up upside down, it sits there rocking on its roll bar forever; there's no friction in the vehicle dynamics model here.

Also, we both find it frustrating that the grass is programmed to have much more drag than dirt or even mud. In the real world, my guess is that grass would be more slippery than the racing surface, with less grip but no more drag than dirt. The manual says they did this to prevent shortcutting, but careful track design can easily prevent shortcuts. All you have to do is put checkpoints or obstacles at the apex of each corner.

We really miss the ability to nip across an apex, or let the outside rear wheel touch the grass when driving on the limit. Touching the apex can reward you with a spin, and touching the outside at the exit of a corner or on the straight can "snag" the buggy or truck and pull it sideways, deeper into the grass, or even cause a spin. Very annoying! Perhaps in a future version the developers could provide an option to switch to realistic drag and grip values on grass.

Nate noticed another hint of bias which appears intended to enforce better racing: if you run into another vehicle from behind, either driven by AI or by a human, you are much more likely to spin out than the other vehicle. I'm not sure how it is in real off-road vehicles, but in everything I've raced, and everything I've watched, bumping from behind seems much more likely to take out the "bumpee" - the car in front - than it is to take out the "bumper". I'd rather do without this bit of enforced big-brotherism.

Also, collisions with fixed objects like rocks, trees, or the checkpoint posts(!) seem to have an arcade-like quality. Instead of causing you to bounce off and go spinning away in a realistic fashion, the impact seems to displace you sideways a bit, absorb almost all your energy, and leave you moving at a crawl, usually stuck in the grass. Perhaps this is because you've crushed your bodywork, which absorbed all your kinetic energy? Doesn't seem quite right.

But still, the joy of sideways motoring is reproduced incredibly accurately here. The "guts" of the vehicle behavior - how it behaves over the bumps and at the limit of adhesion - seems perfect. In a roaring, leaping, sideways powerslide, sawing at the wheel as I fight to get my buggy straight before the next jump, battling to hold off that mean ol' rotten nasty son of a gun who's hot on my tail, none of these nits matter a bit.

I haven't had this much sideways fun since my dirt track karting days!

AI Behavior

The Artificial Intelligence in this sim is among the best I've experienced in a sim. Not only does the sim actually generate AI for new tracks you create, but the behavior of the computer-controlled cars is remarkably well done. They are aggressive, but not overly so. They will push to get past, but they will back off if I shut the door. Similarly, if they sense me behind them, they'll move over on me to shut the door. They seem to have just as much trouble getting by me as I have getting by them.

They also make mistakes, crashing out or spinning, frequently enough so that it doesn't seem like a miracle when it happens (unlike ICR2, in which the AI cars hardly ever make a mistake on their own). I even won one race by staying right on the leader's tail, pressuring him until he went off. Amazing!

Multiplayer

We experienced some difficulties with networked play, mostly related to impatience - trying to start the race before the other player was fully "on board" - or waiting too long while deliberating which track to race on, which caused the sim to time out. I also continued to find the complete lack of results reporting after the end of a race to be quite annoying. The abrupt termination of the winner's race display followed by a post-race screen completely innocent of either position or fastest lap left me frustrated after many races.

We also experienced a mysterious degradation in frame rate after a long period of networked racing on an IPX LAN. Terminating the sim on both machines and logging off and back onto both of the computers seemed to help. Perhaps memory or swap space became fragmented.

Memory and Disk Space

Speaking of swap space, I found that, on a system with 24 mb of memory, at least 24 mb of hard disk needed to be free before starting the sim. While racing, all of this space was consumed by the swap file; only after terminating the game was this space returned to the free block chain. If I wanted to run with replays turned on, I needed even more free space.

Conclusion

I like this sim a lot, despite the imperfections I've mentioned here. The flaws are small and few in the light of the overall quality, particularly in the all-important area of vehicle dynamics.

Also, kids love this sim. It's forgiving enough to give them a rewarding experience right away - and it gives them the opportunity to have really spectacular crashes, which of course they find delightful. Also, the kids in our "test group" took to creating tracks with a vengeance. Even my six-year-old nephew, Amos, created quite an acceptable track on his first try. I found it quite a moving experience to watch him win his first race, against an opponent nearly twice his age.

In my opinion, SODA is a masterful piece of work. It proves that a small team of developers (there were only two programmers for the entire project!) can still create a significant product, even in these days of spiraling application complexity.

SODA is a worthy addition to the serious sim racer's library. I expect I'll be racing it for a very long time.

Other SODA Sites

These sites have some original tracks:

  • The Unofficial SODA Track Archive
  • XrHarry's SODA Tracks Page