Skip to content

An online game where you control robots on distant planets... but you control them by programming in CoffeeScript

Notifications You must be signed in to change notification settings

howardabrams/veep

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Virtual Exoplanet Exploration Program

This game is solved by entering the right commands into a wheeled rover to accomplish missions for exploring virtual worlds. That’s right, the players learn to program while playing the game.

At least, that is the idea.

Playing the Game

If you are interested in playing the game, this site is built and running at geeklet.org/veep.

Building

I highly doubt that you’ll be able to build this project… you see, I’m really into literate programming, and this files are built using org-mode for Emacs. Each file either published as an HTML file (in the site directory), or tangled as a CoffeeScript file (into site/scripts).

However, the build.el file can be used within Emacs to build all of the files, and the build.sh script can be used to call Emacs to do this work.

Yeah, highly specialized, I know, but it sure if sweet once you drank this kool-aid.

Running

Once the files have been built, you can have any web server point to the site directory, or you can use NodeJS to start up a simple web server:

npm install
node app.js

Contributing

While the game is odd to build, the .org files are just text files, so forking and updating is an option.

Feel free to play the game and send me feedback.

General Thoughts

Each mission will be clearly explained, but still allow the player to experiment and try out ideas.

To keep each screen terse, but still provide enough information (some of which may include forgotten math), we’ll have pop-up dialog boxes with supplementary material.

Programming Notes

Each mission has a console where robot instructions can be entered and evaluated. The results of the mission are displayed in a tabbed section to the right of the console.

The CoffeeScript code entered has access to an rv library of functions. To keep the code the player has to enter simple, the library stores the ‘state’ of the robotic rover, and calling rv.dock() summarizes the mission.

The console.log() function is also overloaded, so it can be displayed in a tab.

About

An online game where you control robots on distant planets... but you control them by programming in CoffeeScript

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published