THE STORY SO FAR
The Earth Space Exploration Organization (ESEO) announced that it has
reached Proxima Centauri. The space ship carries rovers which will be
used to explore the surface of Proxima's lone planet. The
objective is to discover new minerals and return them to the lander for study..
~~*~~
One of the problems a young software engineer must face is the apparent
lack if readily available, simple, and entertaining opportunities to
code. While some are able to use creativity and perseverance to
overcome this, others are not and require someone else to provide an
entertaining problem to solve while honing their programming skills.
GridRover will provide one such entertaining problem.
Several, in fact. GridRover will be a game in which a player (which may
be a human or a program) must guide a rover from its lander on the
surface of a distant planet along rugged terrain in search of
scientific samples and valuable artifacts to return to the lander for
study.
The rover's search area will be represented as a
grid (hence the name of the project) of squares, each with an altitude
and contents. Maps will be generated randomly in early development, but
as the program matures we plan to implement a file format for maps and
a method to load them. Hazards such as impassable terrain, steep
inclines, and perhaps alien beings or other rovers will challenge the
player to keep their rover functioning. The game will end when the
rover is destroyed or runs out of batteries.
Points will be assigned for the various objects
returned to the lander -- a different value for each type of object.
Objects can be roughly identified in the field using the rover's
built-in emitters and sensors. Each object type will have a unique or
almost-unique "spectrum" of emitters to which it reacts.
Ideally, a human would play GridRover themselves
a few times to learn the mechanics of the game. Then, they would use
the programming language of their choice to create a program to guide
the rover. They can then improve their program to get better and better
scores. Challenges they face would include identifying objects
accurately, not falling over cliffs, not getting stuck in pits the
rover can't climb out of, making it back to the lander to recharge the
rover's batteries (a maximum of, say, 3 times), and dealing with
unexpected situations.
~~*~~
Grid Rover is being developed under the GNU Public License.
To get a copy of this license you can find it online at http://www.gnu.org/copyleft/gpl.html or download the text file GNUPublicLicense.txt from the source tree.
Unless otherwise noted, all files in this repository are released under the GNU Public License.