Rainbow Islands

The Amstrad CPC Rainbow Islands (1989), remade in PHP and playable for free in your browser, with its original graphics and music.

▶ Play

Computer, phone or gamepad · nothing to install · no sign-up

Bub on the first island, between the castle towers, with a rainbow cast in front of him

Climb before the water rises

Bub must climb to the G sign at the top of each round while the sea rises behind him. His weapon: rainbows. They stun enemies, work as bridges and stairs, and if you land on one after a jump you break it: it falls and turns the enemies it crushes into diamonds.

7 islands, 28 rounds, a boss at the end of each island, fruit, bonuses, the HURRY! warning, the continue screen and the ending.

The original Rainbow Islands loading screen on Amstrad CPC
The loading screen from the 1989 disk, as is.

The seven islands

Each island has its own colours, enemies and boss. Screenshots of the game as it runs in the browser.

Round 1, Insect Island: the castle and its flags
Insect Island · round 1
Round 6, Combat Island: pink blocks on an orange background, two rainbows
Combat Island · round 6
Round 10, Monster Island: a haunted house at night
Monster Island · round 10
Round 15, Toy Island: dice and playing cards in the sky
Toy Island · round 15
Round 19, Doh's Island: bricks from a brick-breaker game
Doh's Island · round 19
Round 26, Dragon Island: a wall of red bricks
Dragon Island · round 26
The boss of the first island, a giant spider
The first boss · round 4
The dragon, the last boss of the game
The last boss · round 28

Controls>

Keyboard>

← → walk
↑ or Z jump
Space or X rainbow
P or Esc pause

Gamepad>

Stick or d-pad to walk, A to jump, X or B for the rainbow, Start to pause. Plug it in before or during the game.

Phone>

A joystick appears under your left thumb, anywhere on the left half of the screen; on the right, the JUMP and RAINBOW buttons. Hold the phone sideways.

▶ Play now

How this remake was made

Nothing was redrawn: the original disk ran in a headless Amstrad CPC emulator that recorded every memory write and every note played. The maps of the 28 rounds, the tiles, sprites, font, palettes, music and sound effects were extracted from it.

The game is then rewritten in readable PHP with the JumPHP engine: the same code runs in a window on desktop and in the browser, where PHP is compiled to WebAssembly.

The extraction tools are published in dsk2jumphp, and the game's code in rainbow-island.

The title screen with the original CPC font
The title screen, with the CPC font extracted from the disk.

Questions>
Do I need to install anything?

No: the game runs in your browser, on a computer or a phone. The first load downloads about 10 MB (PHP in WebAssembly and the game), then everything is cached.

Is this the original game?

It is a remake: the program is rewritten in PHP, but the maps, sprites, font, loading screen, music and sound effects come from the 1989 Amstrad CPC disk.

Are scores saved?

Your best score and options (volume, language) stay in your browser.

Can I play outside the browser?

Yes: with the source code and Docker, bin/jumphp run rainbow-island opens the game in a window, with sound. See the GitHub repository.