hoverrace
Race against other hovercrafts from checkpoint to checkpoint.
Known instances
games.code-game.org/hoverrace
Usage
# Run on default port 8080
hoverrace
# Specify a custom port
hoverrace --port=5000
## Specify a custom port through an environment variable
CG_PORT=5000 hoverrace
Running with Docker
Prerequisites:
# Download image
docker pull codegameproject/hoverrace:0.4
# Run container
docker run -d --restart on-failure -p <port-on-host-machine>:8080 --name hoverrace codegameproject/hoverrace:0.4
Event Flow
- Send the
ready
command to the server when you think the game should begin.
- The
ready_players
event updates every player on the readiness of all players.
- The
checkpoints
event contains all checkpoints and the finish line position.
- The
countdown
event counts down 5 seconds.
- The
start
event is sent to every player when the race begins.
- Send the
control
command to set the target thrust and angle of your hovercraft.
- The
hovercrafts
event is sent repeatedly to every player to update them on the state of all hovercrafts.
- The
checkpoints
event is sent again when you cross a checkpoint.
- The
finished_players
event is sent to all players when a player crosses the finish line. It contains all of the players that have finished the race. The game keeps going until all players have finished or the optional time limit is reached.
- Send the
ready
event if you want to play again.
Building
Prerequisites
git clone https://github.com/code-game-project/hoverrace.git
cd hoverrace
codegame build
License
Copyright (C) 2022-2023 Julian Hofmann
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see https://www.gnu.org/licenses/.