GridControl is a Free-to-play In-browser Social Massive-Multiplayer-Online Game, where you control your bot using a specialized stack-based language (called gridlang) and your github account. Your bot can roam the grid, gather resources, and attack/avoid other bots. The best code wins!
GridControl Game! GridControl is a originally a project started during GitHub's Game Off 2012. It was not even in an alpha state by the end of the gameoff, but the vision has continues.
HOW TO PLAY
Log in with your github account at the test server.
Add a gist on github with the file extension .gridlang
Lasers were implemented. They're pretty awesome.
Players with a passion for c-syntax can use .gridc from gridc, a c-like language that compiles to gridlang.
SETTING UP GRIDCONTROL SERVER
To download source and set up environment:
Grab source from git: $ git clone firstname.lastname@example.org:GridControl-Team/GridControl.git Make a virtualenv or else $ mkvirtualenv gridcontrol Install other requirements: $ pip install -r requirements.txt Create local settings: $ cp gridcontrol/settings.py.sample gridcontrol/settings.py Edit that settings file and add the secrets you need: $ vim gridcontrol/settings.py Do djangoy setup $ python manage.py syncdb $ python manage.py migrate
The test server can live with python's built-in sqlite for the Django ORM, but the game itself requires redis. So grab redis however you need and run it on the default port.
GridControl: Public facing Django site that users see
GridLang: gridlang language vm and parser code
GridStream: tornado server using socket.io to stream realtime bot status
Run Dev Environment
supervisord method: $ ./runserver.sh
Supervisord is configured to automatically start the celery and tornado servers. The django site can be started with either start gridcontrol_gunicorn for production machines, or start gridcontrol_runserver for local development.
Or look inside of the supervisor conf to see the commands to run the separate services.