Welcome to the R.O.B.E.R.T Dojo!
The Dojo is a training ground for tackling various challenges and games, guided by R.O.B.E.R.T. (Robotic Overlord Bent on Enslaving and Ruling Technology). Test your skills, compete in challenges, and explore new ways to interact with R.O.B.E.R.T.
R.O.B.E.R.T Dojo is a modular server project designed to host different games and challenges. Currently, the only server available is the Tank Game, a form of FPS game where we use the USB camera of the Raspberry Pi to aim and shoot, and the BuildHAT’s LEGO motors to move.
Future Plans:
As more game servers are added, we may refactor the project to include a Central Controller API. This controller would unify the servers under a single entry point, simplifying user interactions and enabling shared functionality like session management and progress tracking.
/robert-dojo/
│
├── /servers/ # All game servers organized by name
│ ├── /tank-game/ # Folder for the Tank Game server
│ │ ├── app.py # Main Flask app for Tank Game
│ │ ├── requirements.txt # Dependencies for Tank Game
│ │ └── README.md # Specific documentation for this server
│
├── /common/ # Shared resources across all servers (optional for now)
│ ├── utils.py # Utility functions
│ └── config.py # Global configuration
│
├── README.md # Main project README
├── LICENSE # GPL License file
└── requirements.txt # Global dependencies (optional)
- Python – Core language for the Tank Game server.
- Flask – API framework used for building the Tank Game server.
- SQLite/MySQL – Database for storing game-specific data if needed.
- HTML/CSS/JavaScript – For any web-based interfaces that interact with the Tank Game server.
- Raspberry Pi with Raspberry Pi OS (if running on Pi)
- USB camera and BuildHAT with LEGO motors
- Python 3.x and required packages (see
requirements.txtin the Tank Game server folder)
-
Clone the Repository:
git clone https://github.com/r-/robert-dojo.git cd robert-dojo -
Install Dependencies: Navigate to the
tank-gameserver folder and install Python dependencies:cd servers/tank-game pip install -r requirements.txt -
Run the Server: Start the Flask app for the Tank Game:
python app.py
By default, Flask servers run on
localhost:5000. Configure it to run on a specific port if needed. The Tank game run on port 5001
-
Access the Tank Game server directly by navigating to its URL (e.g.,
http://localhost:5000or your configured port like 5001 etc.). -
Follow the game instructions in the Tank Game README (
servers/tank-game/README.md).
Contributions are welcome! To add a new game server, create a new folder under /servers/ and follow the Flask API template. Submit a pull request when ready.
- R.O.B.E.R.T Control Dashboard – A PHP-based interface for monitoring and controlling R.O.B.E.R.T.
This project is licensed under the GNU General Public License (GPL). See the LICENSE file for more details.