Mega Wing

Saved games stay in this browser only.

About the game

You fly a small ship up the screen over a scrolling starfield, and enemies drop in from the top in waves. They come in three kinds, they fire back, and the longer you survive the faster they arrive and the more armour they carry: the difficulty level goes up every fifteen seconds or so. Every enemy you shoot down adds to your score, and the tougher ones are worth more.

There is no end, only a score to beat. A hit ends the run, the game goes back to the title, and Enter starts the next attempt at once, so it is the kind of game you play in short bursts to improve your best. The pace is fast and the screen fills with bullets, as the title promises, but the hit box of your ship is small and the patterns can be read.

Mega Wing was written by Takashi Kitao, the creator of the Pyxel engine, as one of the sample games for a book about making games with Pyxel, and it ships with Pyxel as an example app.

Playing it here

The first time you click Play the page downloads Pyxel and the Python runtime (about 15 MB), which takes a few seconds; after that the game shows a "click to start" prompt, and one more click starts it with sound. Nothing is loaded from other sites, and nothing is saved: the score is shown during the run and starts again from zero.

On the web we turned off the Esc key that closes the game on the desktop, because on a web page it would only freeze the screen. After a game over the game goes back to the title by itself, and Enter starts again.

Controls

Input Action
Arrow keys move the ship in all four directions
Space (hold) fire
Enter start from the title screen
Gamepad d-pad, A and Start the same, on a connected controller

A few things worth knowing

Stay low and move early. You see the bullets coming from above, so slide sideways before they reach you instead of at the last moment.

Keep firing. The weaker enemies die in one hit, but the armoured ones need several, and holding Space does not cost you anything.

The score is the goal. There is no last level, so the only thing to beat is your own best.

Frequently asked questions

Is there an end? No. It goes on until you are hit; the difficulty keeps growing for as long as you survive.

Is my score saved? No, the score is only shown during the run.

Does it work on a phone? The game was made for a keyboard or a game pad. The page offers an on-screen pad on touch devices, but we have not tested the game with it.

Why does it say "click to start"? Browsers only allow sound after you interact with the page, so the Pyxel launcher asks for one click before it starts the game.

Is it free? Yes: the game is under the MIT licence and the source of this build is available from this page.

Credits and licence

Mega Wing was made by Takashi Kitao, the creator of Pyxel, who also drew the art and wrote the sounds in the app's Pyxel resource file. It is distributed in the official Pyxel repository as an example app, with the header "license: MIT". The licence text and what we changed are in the licence file. The build served here changes a single line, turning off the Esc key that quits; the original app, the patch and the build scripts are hosted alongside the game.

It runs on the Pyxel engine (MIT) and the Pyodide runtime (MPL-2.0), whose licences and source are linked from the Licenses page.