Trip on the Funny Boat
Saved games stay in this browser only.
About the game
You are the captain of a small steamboat on a very wavy sea, and everything out there wants to sink you. The ocean rolls up and down under the boat, so your cannon points up on a rising wave and down on a falling one, and you aim by choosing when to fire. Sharks leap out of the water, naval mines drift in your way, seagulls dive-bomb you and pirate ships answer your cannonballs with their own.
There are two ways to play. Story mode takes you through five phases of enemies and then to a boss in the sixth, starting easy and getting hard near the end. Endless mode never stops: wave after wave over twelve phases, and it is the only way to reach the big scores. You have five hearts, and little hearts float by that give one back, so grab them.
It was written in a single week for the second PyWeek competition, in 2006, by three friends, and it has the bright, slightly silly look to go with it.
Playing it here
The first time you click Play the page downloads the Python runtime and the pygame library (about 23 MB), which takes a few seconds; after that a "click to start" message appears, and one more click opens the menu. The download is kept by your browser, so the other pygame games on the site open faster. Nothing is loaded from other sites. Your options and your two high-score tables (story and endless) are saved in this browser only. "Quit" in the menu simply brings you back to it, and the online score table of the original has been taken out.
Controls
| Key | Action |
|---|---|
| Left / right arrow | steer the boat |
| Up arrow | jump |
| Space | fire the cannon |
| Hold Space for 3 seconds, then let go | special shot |
| P | pause |
| Up / down, Space or Enter | move through the menus and choose |
| Esc | back / leave the game |
A few things worth knowing
Mines hate jumpers. A mine cannot hurt you if you are in the air or riding a high wave when it reaches you, so learn to jump a moment before it arrives.
Pirate ships take two hits. They also shoot back, but touching one does not hurt, so you can sail through if you time it between their cannon shots.
The special shot is worth the wait. Keep Space held for three seconds and let go to fire a big blast, then get ready, because the next one needs another long hold.
Frequently asked questions
Does it save my score? Yes, both tables are kept in this browser; clearing the site data erases them.
Does it work on a phone? It needs a keyboard, so not really.
Is it free? Yes: the code is free software under the GPL version 2, and the pictures, sounds and music are under the MIT licence.
Credits and licence
Trip on the Funny Boat was made by Pekka "pekuja" Kujansuu (code, graphics, sound effects), Olli "Hectigo" Etuaho (graphics, code) and Joona "JDruid" Karjalainen (music) for PyWeek 2, and later improved by Konstantin Yegupov and others. The code is under the GNU GPL version 2, the graphics, sounds and music under the MIT licence, the text font is Bitstream Vera, and the collision code is John Eriksson's PixelPerfect library, in the public domain. This is the 1.5 release as maintained on GitHub and converted to Python 3, with a few more changes to run in a browser (the complete source, the changes and the licence texts are linked from the Licenses page). The game runs on pygame-ce (LGPL-2.1) and CPython, whose licences and source are linked there too.