The Game of Assault
The Game of Assault is a coding contest project. This version is being developed solely by me, kornypoet.
The Game of Assault is a much more a coding exercise than an actual game. The only real player in the
game is the program itself. A successful scenario is one in which the program is able to provide a solution
while adhering to the game rules.
The object of the game is very straightforward: there is a battlefield which will be represented by a grid
of squares with infinitely many rows and columns. The battlefield is divided into two halves by a horizontal
line known as the battle line. The upper half of the battlefield will represent enemy territory, while
the lower half will represent friendly territory. There will be viruses placed in enemy territory and
white blood cells placed in friendly territory. The object of the game is to place the white blood cells
in such a way so that they may eliminate all of the viruses.
In any given scenario, the outposts are always placed first. A virus is played within a square on the
battlefield in only enemy territory. Any number and configuration of viruses may be played. Next, any
needed amount of white blood cells may be played on squares only in friendly territory. Once all necessary cells
have been placed, they advance one at a time. In order to advance, a cell must jump over
another cell directly adjacent to itself, either vertically or horizontally, not diagonally. Once a cell
has advanced, the cell that was jumped over is removed, as if they were consumed in order for the other cell
to be able to move. A single cell may advance as many moves as necessary during a turn, provided there are enough
cells to jump. Once a cell has finished advancing, it is left on the battlefield, either in friendly or enemy
territory. All cells that have been jumped over are removed. At the end of an advance, if a cell is on the same
square as a virus, then that virus is considered dead. In order to complete a scenario successfully, all of the
viruses must be dead at the end of an advance. If a cell has killed a virus, but is then jumped over by
another cell, that cell is then removed and the virus is no longer dead. All viruses must have a cell on them
after all jumped cells have been removed in order for all viruses to be considered eliminated.
Currently, this project is still under development and as such, is not complete. This area of the README will
detail current progress of the game as it nears completion. Notes and thoughts about the game development can
be found here.
Clone the assault repository
git clone firstname.lastname@example.org:kornypoet/assault
Run the tests
Grade the code
testing git stash