Skip to content
ZapskiRetro
Back to Blog
Game Reviews

Naval Hunter: The Game Boy Battleship That Hunts You

Pixel Pete
2 October 2026
7 min read read

A full 10x10 battleship for the original Game Boy — with an opponent that hunts the moment it draws blood, follows the line once it finds you, and plays the whole board on a probability map when you turn it up to HARD.

Naval Hunter: The Game Boy Battleship That Hunts You

Naval Hunter: The Game Boy Battleship That Actually Hunts You

Battleship is a game about guessing, and it has always been honest about that. You call a square, you miss, you call another. Somewhere around the third hit you convince yourself there's a system to it.

There isn't. That's the whole charm of the thing — two people taking turns being wrong until one of them stops being wrong first.

So when someone sits down to write a Game Boy version, the interesting question isn't the fleet or the grid. It's what you do about the guessing. And Naval Hunter, one of the homebrew titles we've built and put up on the site, answers it by making the computer opponent genuinely go looking for you.

The oldest rule in the book

It's a classic 10×10 battleship, and the set-up is exactly the one you'd write out on graph paper: a fleet of 5, 4, 3, 2, 2, 1, 1, with ships that never touch. That last rule matters more than it sounds like it should, and we'll come back to it.

On the boot menu you get a choice. Press A and the game lays out a random fleet for you. Press B and you place your own, turning and committing each ship with the d-pad and the two buttons, randomising whatever's left when you get bored. And then SELECT, which is the button you'll actually care about, because it sets how hard the computer is going to be.

Three brains, one button

The three AI levels aren't a difficulty slider in the usual sense — they're three genuinely different approaches to the same problem.

EASY fires at random. It is what it says on the tin, and it will still beat you occasionally, because that's battleship.

NORMAL hunts. Once it lands a hit it works the four neighbours around that square, and as soon as it figures out which way your ship is lying, it follows the line instead of re-checking squares it already knows about. This is the level where the game stops feeling random and starts feeling like someone is paying attention.

HARD keeps a probability map — it aims at whatever cell the most still-possible ship placements would cover. If that sounds like a lot to ask of a 1989 handheld, it is, and that's rather the point.

The thing I love about NORMAL is that it's smarter than it had to be. The game's own notes describe it as "moat-aware", and that's the no-touching rule doing quiet work. Ships never touch, which means every ship carries a ring of guaranteed-empty water around it. An AI that knows that can skip a whole square of tiles it would otherwise waste turns on. A restriction that exists to make fleet placement tidy turns out to be a gift to the hunter.

It knows it's on a Super Game Boy

There's a detail here that most homebrew doesn't bother with. Naval Hunter draws a custom porthole border and its own sea palette using Super Game Boy command packets — the little data channel the SGB used to tell a Game Boy cartridge it was running inside a SNES.

The in-browser emulator detects the ROM's SGB flag and starts with the border switched on, so it's the first thing you see. Press S to toggle it off if you'd rather have the plain screen. On original DMG hardware the game is completely unaffected — it just plays like a normal cartridge, which is exactly how it should be.

Hit flashes, last-shot markers, noise-channel sound effects, and a game-over screen that breaks down your shots, hits and accuracy. It's the kind of housekeeping old handheld games did well and modern ones forgot.

Written from scratch, and it shows

The whole thing is C on GBDK-2020 4.5.0 — no game engine, no art tools beyond Python and Pillow running on the build machine.

There's a lovely bit of discipline in how it's put together. The Game Boy's 160×144 screen is exactly 20×18 tiles and nothing in this game scrolls, so every element sits at a fixed tile row — no scrolling maths, no camera. And the fleet-placement rules were deliberately written to have no Game Boy dependencies at all, which means they're covered by ordinary unit tests on the host machine instead of needing an emulator to check. That's the sort of decision you only make if you've been bitten before.

You can download the ROM and read the source on GitHub if you want to see how the sausage is made.

How to actually play it

Click the screen first — the emulator needs keyboard focus before anything responds.

Arrows are the d-pad. X is A, Z is B, Enter is START, C is SELECT. In battle it's d-pad to aim and A to fire, and SELECT flips between the two waters so you can look at the board the way you want to. When it's over, START plays again and SELECT swaps the fleet view.

One tip worth knowing before you start: Backspace is rewind. If HARD starts dismantling you, you don't have to take it.

Go sink something

Naval Hunter is free to play in your browser, right now, on the Game Boy it was written for — emulated, nothing to download, nothing to install. It's the oldest of the six homebrew titles we've put up so far, and it's still the one I'd hand to someone who thinks a Game Boy can't do a proper strategy game.

Play it on EASY first and feel smug. Then put it on HARD and find out how much of battleship was ever really about luck.

Beat HARD without losing a ship? We want to hear about it — and we want to know which of the three AI levels actually gave you trouble.

Related Articles

Game Reviews
GB Racer: Pseudo-3D Racing on the Original Game Boy

GB Racer: Pseudo-3D Racing on the Original Game Boy

Three tracks, two rivals, traffic, hills and a road that bends towards the horizon, on a Game Boy with no 3D hardware at all. GB Racer is a proper arcade racer in a 128 KB cart.

Zapski Retro
1 Nov 2026
5 min read