The forum is a place to speak about our games, make suggestions, report bugs, and so on. To post a message, you need to be logged in.


(killer user)
Last login: 124d 6h
Last forum reset: 819d 9h
Membership: 5819d 18h

Void Patrol Clone - a program for playing with the VP rules

Message 2065, 4604d 2h ago.
Hi everyone,

I believe mentioned a few days ago that I'd written some code that duplicates some of the game logic from Void Patrol. Seeing how my smart missile thread is getting more attention, I thought I'd share it with you, so you can try those missiles out.

My project is named (for the moment) "Void-Patrol-Clone" and it's hosted at the website You can visit the project page at:

Here's the contents of the README file for the project (sorry about the double spacing forced by the forum):

Void Patrol Clone

This is a project to replicate some of the elements of the game
Space Wing: Void Patrol from (
in a stand alone program. The program can be used to learn better
piloting skills and to test out game ideas, but at this time is is not
a game that it is much fun to play.

This Project is Copyright 2008-2010 Steven Barker (
It may be used, modified and/or redistributed under the terms of the MIT
License, see the COPYRIGHT file or the following web site for details:

The project was inspired by Space Wing: Void Patrol which is Copyright (, but no code or art from that
game has been used.


This project is written in Python. To run it you will need a copy
of the Python interpreter which can be downloaded for most operating
systems from the Python website (
Currently a 2.x version of Python is required, but support for 3.x
versions is planned for the near future.

The game also requires a version of the Pygame library that is
compatible with your version of Python. Pygame can be downloaded
from the Pygame website (

How to Play

Run the program by executing the file "". You'll see a hex grid
displayed on the screen, with your ship located in the center (shown by
a triangle). All of the locations you can move to will have one or more
angled lines drawn on them, showing the possible facings your ship can
reach. When you ship has gained some speed, you'll also see the potential
locations you'll be able to go to on the following turn (in a lighter color).

Your ship can be controlled by pressing keys on the keyboard using either
of two systems:

First, the keyboard shortcuts used on the regular Void Patrol site will work:

(thrust forwards+left) (boost forwards) (thrust forwards+right)

(turn left) (thrust forwards) (turn right)

X Enter
(cancel orders) (advance to next turn)

Alternatively, a similar scheme using the keyboard number pad can be used
(but notice that the keys for boosts and forwards thrusts are swapped).

(thrust forwards+left) (thrust forwards) (thrust forwards+right)

(turn left) (boost forwards) (turn right)

NP0 NPEnter
(cancel orders) (advance to next turn)

Several of the function keys on the keyboard can be used to trigger
special functions:

F1 - Switch to a Badger-like fighter with maneuvering code 4S1(3)
F2 - Switch to a Javelin-like fighter with maneuvering code 6S2(4)
F3 - Switch to a Sparrowhawk-like fighter with maneuvering code 4D1(3)
F4 - Switch to a Lone Wolf-like fighter with maneuvering code 5D2(4)

F5 - Launch a 5 thrust "smart" missile
F6 - Launch a 6 thrust "smart" missile

All of the fighter switching commands will move the ship back to the
starting position at the center of the screen. Missiles will also appear
there, and will seek on the player's ship until they hit it.

Missiles will be drawn with their starting and ending velocities shown by
extra lines on the hex map, as this makes it easier to see how they are
attempting an intercept.

To Do

This program is a work in progress. Feedback is appreciated!

Here are some of the things planned for improving the game:

Allow both berserk and "smart" missiles to be launched at the same time
(currently the choice of which type is hard coded).

Make it possible to move the viewport so that the fighter and missiles
are always on the screen.

Clean up the simulation code. It's really ugly.

Move most of the python files into a package so the main directory
is cleaner.

Port to Python 3.x. Pygame recently released a 3.x version, but it may
not be complete yet. See if we use anything that is missing (unlikely).


It is understood that in submitting material (like suggestions, comments and proposals on our games) on this forum you are giving up any copyright claims, allowing us at to freely display, copy, distribute, alter, transform, and build on this material, for the purpose of improving our site and games. We cannot guarantee that all proposals and requests will be developed, of course. In addition, we cannot guarantee that your contribution will be credited esplicitly, though we usually try to do that. However, we intend to keep the forum publicly available, so other players will always be able to know how and when you contributed to this site's growth. It is understood that we will make use of your suggestions to improve the site to the best of our abilities and time available. Your contributions will be rewarded with big smiles, , warm hugs, and no money.