Romhack Thursday: DKAFE

On Romhack Thursdays, we bring you interesting finds from the world of game modifications.

We’ve not done Romhack Thursday for a while. As the winds of the ‘net, and my attention, blow around randomly, sometimes there’s more things that seem worthy of posting than others. This one definitely fits the bill though.

We’ve posted about 10yard’s intriguing Donkey Kong hacks Galakong and Vector Kong before. I don’t think they’re actually hacks in the classic sense of the term, modifications of a game’s software intended to run on its original hardware, or at least an emulation or simulation of it. Galakong might, and Vector Kong definitely does, rely on Lua support in MAME to produce, respectively, a version of Donkey Kong where Mario teams up with the ship from Galaga, and another version of Donkey Kong limited to the Girders stage, a.k.a. Ramps, but with sharp colorful line-drawn artwork akin to that produced by Atari’s later Vectorscan monitors.

10yard let us know that they have produced a front-end to a variety of Donkey Kong romhacks, 90 in total. It runs on Windows an Raspberry Pi, although if it runs on the latter I suppose it must also be possible to get it to work on Linux? Maybe?

It’s not just a front end though. It presents all of its mods through an interface that itself plays like Donkey Kong! You move Mario around the levels of the classic arcade game (they’re connected vertically), and each is littered with arcade machines. You can play them with coins collected them as DK rolls them through the boards, and also earned by getting good scores in each game. Collecting more coins not only gives you more chances to play, but it unlocks further games in the collection.

You download the package from the Github page linked above. You must also provide the MAME-compatible romsets for Donkey Kong, Donkey Kong Jr. and Donkey Kong 3. (It might work without without all of them, but fewer games will be available.) Of course, it’s up to you to rip, or otherwise provide, those files. If you provide them, it’ll handle all the patching for you automatically. It even includes its own custom version of MAME to play them.

Both Galakong and Vector Kong are among the hacks provided, but there’s so much more to see and play besides those, including Halloween, Christmas and Doctor Who themes hacks. There’s really too many to mention here, and I’ve only started unlocking games myself. I’ll leave you with the closing link, and some screenshots of the hacks included that I’ve managed to unlock so far.

DKAFE (by 10yard, for Windows and Raspberry Pi, on Github)

Most of the hacks include a screen like this one, that tells you what scores you must reach in order to earn coins. 3rd place usually isn’t terribly difficult to reach. For many games, a 1st place score will be reached around the time of the Conveyors board in Level 3.
This is the game selection mode. Coins you earn are rolled down the ramps from the top of the screen; you have to collect them in order for them to count!
Before starting each hack, you’re presented with a text description of the game and how it plays, and who made it.
Here’s Galakong, which has been linked from this site before. The game is slightly easier, objectively speaking, than standard Donkey Kong, but it’s easy to get your attention split between the ship and Mario and make mistakes because of it.
Pac-kong replaces the roaming fireballs with the ghosts from Pac-Man. They move mostly randomly, like the fireballs, did, but they’re much faster. You can become invincible by collecting an Energizer, which turns Mario into Pac-Man temporarily. Pac-kong’s one of the harder hacks present.
Donkey Kong Anniversary Edition changes the boards slightly, and replaces the bonus items with presents and balloons. In case you didn’t know: you can collect items off the edges of girders by jumping at them: if you hit the edge of the screen during your jump, Mario will be bounced back to around the place he leapt from, and will (usually) be unharmed!
Donkey Kong Wizardry changes the Girders level substantially. They add new pits to leap over, changes to the way the ramps tilt, and adds other surprises. You get an advantage though: if you press the Player 2 Start Button (the 2 key), it’ll freeze the fireballs for several seconds.
Donkey Kong Lava Panic adds a tide of deadly fluid constantly rising up from the bottom of the screen. It becomes important to get the lower rivets on the Rivets board before they become submerged!
The Halloween and Christmas-themed hacks change the Girder stage greatly. When barrels (or whatever analogue that hack uses for them) fall off of a gap in the middle of the screen, they may randomly decide to go either direction, adding even more uncertainty to Mario’s progress. Be careful!

The “No Fire” Trick in Galaga

Arcade Galaga has an interesting bug that’s been known of for a long time, that can be taken advantage of to cause the enemies to stop firing. The inner workings of the bug are explained on its page on the website Computer Archeology, but here it is in brief: on the first level, if you leave the bugs at the far left or right sides of the formation alive and wait long enough, 10 to 15 minutes, just surviving their attacks, then eventually the enemies will stop firing all together, and will never fire again for the rest of the game.

Why does this happen? Galaga reserves eight hardware sprites for the shots of the enemy bugs. Galaga’s graphics hardware has no way to disable the displaying of a sprite, so if something isn’t supposed to be visible it’s kept off screen, at horizontal coordinate zero. A shot sprite at that coordinate is never updated, and never moves. This is in addition to the game’s internal records of which shots are in use. When a bug wants to fire a shot, the game looks at which shots are available, and if one isn’t in use, it puts it at the proper place, and sets its velocity (X and Y deltas). From then until it leaves the screen, it’ll be updated every frame. When it is detected as having gone off-screen, it’ll be marked as out of play, and its X coordinate will be set to 0. Shots at X=0 are never updated.

The problem is, it’s possible for bugs to fire shots while they are at X position 0. This happens most commonly when bugs at the far left and right extremes of the board attack. The shot is marked as in-use, but it’ll never be updated, and so it’ll never be cleaned up and set back to be available for firing. When all eight possible shots are in this limbo, the bugs can’t fire any more. The machine resets the shots at the end of a game, so the problem won’t affect subsequent plays.

Ben Golden Diamond performed the trick in a Youtube video, and he manages to get it to happen in around seven minutes. He doesn’t explain the precise criteria for doing the trick, but his description will still work, it just has unnecessary steps. It will work on any level, but it’s easiest to do on the first. In the video, sometimes the bugs fire wraparound shots from off-screen. That’s a good indication that the bugs are sometimes firing from the 0 coordinate.

Keep in mind, performing the trick on purpose will disqualify a score for world records. The scoreboard on a local Galaga machine probably won’t care, though.

Jordan Dorrington’s Galaga Strategy Tips

In this video from four years ago, top-level Galaga player Jordan Dorrington gives us advice for how to get far into the venerable arcade classic.

Some of the tips given:

  • On the first level, enemies never shoot as they enter. Shoot as many of the bugs as you can as they enter the screen.
  • Boss Galagas never try to capture your ship if there’s only one remaining.
  • On the first two Challenging Stages, if a double ship is positioned exactly in the center of the screen, you can stay there to shoot the bugs fairly easily and get an easy Perfect.
  • Starting from Stage 4, some extra will be among the ones that will swoop around entering formation, and will leave the attacking ranks to rush you.
  • After the first three stages, the game settles into a pattern of four stages. The first three stages of each set have distinct patterns, followed by a Challenging Stage.
  • The first stage in each set of four has the bugs entering in two mirrored processions from the sides of the screen. The second stage has them entering from one side in double rows. On the third stage they enter from the side in one long string.
  • Galaga kill screens are difficulty dependent. There’s a game-ending screen on difficulty levels (or “ranks”) A and C. The other difficulty levels loop and continue indefinitely
  • Basic strategy for cleaning up the remaining bugs is to start at one edge of the screen, and as they fly down at your ship, to move towards the other side a tiny bit at a time, to avoid the shots coming at you, and shooting to eliminate as many of the bugs as you can in the process.
  • If you survive a long time on a single wave, there’s a well-documented bug in the code that causes the enemies to shoot less and less, and eventually cease firing completely. In casual play that’s great, but Twin Galaxies rules are that you cannot take advantage of this bug intentionally.
  • If you get really good at Galaga, it’s best to play as Player 2, as the first player’s score rolls over after six digits, but the second player’s score records seven digits.
  • The game’s difficulty stops increasing at Stage 31.
  • If you’re playing on a difficulty without a kill screen, after Stage 255 you’ll progress to Stage 0. It throws many players off in that the bugs travel at the slowest speed, but their shots are extremely rapid.
  • The hardest part of the game is recovering from losing a double ship. The game is much harder in single ship play.

Galaga Strategy Tips from Pro Player Jordan Dorrington (Youtube, 14 minutes, from Tim’s Tiny Arcade)

Galakong

Another LUA-based game hack from 10yard! This one’s a mashup of two perennial arcade favorites, Galaga and Donkey Kong. Each level has a chevron powerup somewhere in it. When Jumpman picks it up, he’s joined by the spaceship from Galaga. The jump button is also the fire button! Further, the ship’s shots are piercing, and can destroy more than one enemy with a single blast.

You’d think it’d make the game much easier, but the difficulty of the game has been subtly increased to make up for it, plus controlling the ship as well as ol’ Jumpy is a distraction, so it’s still pretty challenging.

In addition to Donkey Kong, the hack’s github page notes that it works in Donkey Kong Jr. as well!

Galakong (github)

Namco’s Sci-Fi Arcade Timeline

Galaga bugs (image from ricedigital.co.uk)

According to the people at Rice Digital, many of Namco’s games set in the future, including Galaxian, Galaga, Gaplus, Bosconian, Baraduke, Burning Force, and many more, are all part of a common timeline! Namco calls it the UGSF History. Due to the inclusion of Kissy from Baraduke, which was named to be Susumu “Mr. Driller” Hori’s mother, it also drags in the Mr. Driller games, and even Dig Dug! You can read about it on their site here. Namco’s own site concerning it is here.

Hiromi Tengenji of burning force (image from ricedigital.co.uk)

According to their timeline, the earliest game chronologically is Ace Combat 3 (which is not an arcade game), and the latest is Galaga ’88!

Homebrew Atari VCS/2600 Arcade Ports

The long-running Atari fansite AtariAge sells a number of carts that run on classic Atari VCS systems that make it do things you might not expect that system could do. Some of the most impressive of these are remakes of classic arcade games that go far beyond what was possible at the time. A number of these were developed by Champ Games. Here are links to a number of videos showing them off, although sone of the may not currently be in their store:

Galagon” – Wizard of WorZoo KeeperAvalancheScrambleSuper CobraMappy (especially this one!)

A few others, not from Champ Games: Aardvark (Anteater) – Venture ReloadedSpace Rocks (Asteroids) – Star CastlePac-ManDraconian (Bosconian)