Super Cars III: A Glorious Recreation

top

Super Cars II, from the famous dev team Magnetic Fields (the same guys who released the Lotus trilogy), was one of my favorite games ever on the Amiga. Seriously. A couple of days back, PtitSeb has finished porting Super Cars III, a recreation of the original Super Cars I & 2, and now with this game the Pandora is the best portable handheld EVER.

It’s difficult to show you a screenshot of Super Cars II and convince you it’s a great game in a matter of seconds. Let’s be honest, it has NEVER looked GREAT (even at the time of the Amiga release), but once you get into it and start understanding the underlying mechanics, the splendor of its design will appear. But first things first, what is Super Cars about ?

A dangerous track with gates to take shortcuts... beware of when they close on you though...

A dangerous track with gates to take shortcuts… beware of when they close on you though…

In few words, it’s a top-down racing game with weapons. Yeah, you can race in a typical way by overtaking everyone else or you can go for the obliteration of your opponents as you go. And they usually try to destroy you anyway, so it’s mutual. Truth is, the game is as much a skill based game as an investment strategy one. Your car is not indestructible, and every time you hit stuff on the track, you lose a bit of durability. If you get hit by a missile or run over a mine, you lose a lot more “energy” but you nevertheless respawn, at least until you have “energy” left. At the end of the race, you earn some cash based on how well you fared on the finish line.

Buying stuff to survive in the next race.

Buying stuff to survive in the next race.

Cash is extremely important, because all of your resources are limited. First, you may want to spend your hard-earned cash on repairs. If you get destroyed a lot, you will need to spend most of your earnings on that. With what you have left, you can decide to go for upgrades, such as :

  • Front Missiles
  • Rear Missiles
  • Homing Missiles
  • Mines
  • Engines
  • Turbo
  • Armour
  • Ram

And more stuff… you will quickly realize that success is very much correlated with your ability to save up and build “capital” – i.e. upgrade your car progressively and only use missiles and other harmful devices when you really need it.

Soon you’ll be thinking, before firing your next missile, “oh wait, this missile has cost me 200 dollars, am I wasting it?”. And the game’s smarts do not stop at that. Prices actually fluctuate through the game, making it necessary for you to kind of know when items are cheap or expensive to obtain, something you will gain with experience. Just like daytime traders!

Your choice: take the long way around or jump above the track...

Your choice: take the long way around or jump above the track…

The races are actually quite challenging as well. This is not your regular track – there are jumps that need sufficient speed to cross over. And rail tracks to go through as well. Rail tracks are the best, since trains pass by during the race and force you to slow down to a stop to avoid crashing into them… but you can always try to be a hero and cross the track just before the train comes.

I'm on the left, in the explosion, as I was run over by a train.

I’m on the left, in the explosion, as I was run over by a train.

And if the game is already extremely fun in single player, it gets completely mad when you play with a partner on a split screen. Imagine your friend stopping in front of a railtrack to avoid the upcoming train, and you pushing them with your car against the wagon for good measure. It gets hilarious and the game provides many ways to take revenge on your friend, like dropping a mine behind you as they follow your car, or using front missiles if they manage to pass you. I have not tried the two player mode on the Pandora (it may need some controls remapping for the second player) but PtitSeb confirmed the mode should work as well.

It may not look like much, but PtitSeb did a lot of work to make this game run in full screen. It uses Java and as with Gods previously it has been showing odd behavior when trying to run it in full screen modes, but he managed to find a trick.

PtitSeb: The fullscreen is what took me the most time. There are many aspects of it. First, to get fullscreen, you just need to pass the “-full-screen” parameter and it should be enough. But at first it just failed because the 640×480 resolution does not exist. I switched to 800×480 and then it worked. It almost worked. In fact the taskbar was still present (like with the Gods remake). To get full screen with no taskbar, I tried many things, but nothing seemed to work. SC3 is based on the Golden T Game Engine Java library (v0.23, the last one). During the game initialization, the fullscreen mode is requested, with the following code:

game.setup(scgame, m_dimension, opts.full_screen, false /* double buffering */);

PtitSeb: And there is nothing more to do. So I downloaded GTGE engine and took a look at the fullscreen code. But in the code, all that should have been done was already done.

this.frame.addWindowListener(WindowExitListener.getInstance());
this.frame.setResizable(true); // non resizable frame
this.frame.setIgnoreRepaint(true); // turn off all paint events
// since we doing active rendering
this.frame.setLayout(null);
this.frame.setUndecorated(true); // no menu bar, borders, etc

...

// enter fullscreen exclusive mode
FullScreenMode.DEVICE.setFullScreenWindow(this.frame);

PtitSeb: So i tried to add “this.frame.setAlwaysOnTop(true);” to put the window in front of the Taskbar, add some delay between the command… Nothing worked. So in the end, I have used an external software to handle the fullscreen mode. There is a software called “wmctrl” (here: http://tomas.styblo.name/wmctrl/) that can change attributes of a windows by command line. So I compiled that one, and then, in SC3, after the creation of the fullscreen window, I just added:

String[] cmd = {"/bin/bash", "-c", "wmctrl -r \":ACTIVE:\" -b add,fullscreen"};
Runtime.getRuntime().exec(cmd);

PtitSeb: Et voilĂ , real fullscreen! And it should work on all Java apps refusing to go in real full screen mode (or to force fullscreen if it doesn’t support it).

Once the game could run in fullscreen, PtitSeb was almost done with the port. Except that some of the graphics were explicitly made for lower resolutions and had to be moved and scaled to be properly positioned on the Pandora screen.

PtitSeb: After switching to 800×480, everything but the gameplay was stuck in left part of the screen. So I had to scale and or center thing (most screen are designed for 640×400, reminissent of the antic 320×200 resolution). Centering a 640×480 screen to 800×480 is mostly a matter of adding 80 to X, so it was easier then with Gods deluxe (this one was fully 640×400 designed, so I scaled more than centered)… But sometime, you don’t want to just center (like for the repair/trade screen), but then, that implied some pixel art.

This is what PtitSeb refers to. The Repair screen looked like that a couple of days ago. Totally functional, but off and not filling the screen completely.

msg-5182-0-54275300-1416345835

I have spent some time to turn that source image into a full 800*480 picture, in Gimp, with a lot of work at 800% to get the pixels more or less right. It’s certainly not as good looking as the original, but the illusion kind of works. I will let you judge:

msg-5182-0-49652400-1416345836

That’s it. Now you know what you have to do next. Get the PND from the repo and enjoy the game!

One thought on “Super Cars III: A Glorious Recreation

Leave a Reply

Your email address will not be published. Required fields are marked *