The Battl3ship game is like regular Battleship but with 3 twists - you shoot thrice each turn, but only get the lengths (and not the position) of any hit or sunk ships.
The first player to sink all of their opponent's ships wins!
- The goal of the game is to sink all your opponent's ships.
- First you place your boats (4 x length 1, 3 x length 2, 2 x length 3, 4 x length 4) so that:
- No ship can have another ship in any of its surrounding squares
- No ship can be entirely placed on the edge
- In each turn, you shoot on 3 cells. However, you get imprecise results, combined for all 3 shots:
- For example, the result "H1 S4" means that you Hit a boat of length 1, and Sunk another of length 4.
- As another example, "S3" means you sunk a ship of length 3. Note that you will get an identical result if you hit that ship multiple times this turn or only the last remaining square.
- If you hit the last two remaining squares of a ship (e.g. of length 3) in the same turn, you will receive "S3", but not any "H3" corresponding to that ship in that turn.
- Try to make it difficult to guess where your ships are placed:
- Use horizontal and vertical ships
- Arrange your ships in seemingly random locations
- Python >= 2.7 or 3.x: Windows Installer, Mac OSX Installers, installed by default in most Linuxes.
- The Tornado python library. You can either:
- Execute
install_dependencies.py
- or run
pip install tornado
- or go to http://www.tornadoweb.org/en/stable/ and follow their instructions
- Execute
- Download the code, decompress and go into
src/
- Execute
httpserver.py
- Go to localhost:8080
- Other players can join you at http://Your_public_IP:8080
- Play!
Notes:
-
You will have to configure your firewalls to let traffic through port TCP 8080. You may need instructions for MacOS(not mine) or instructions for Windows (also not mine). Don't forget to forward ports in your router, too!
-
This project is no longer maintained, and there are some deprecated features. Still, you can play a game in 2023!