The ssl-refbox replacement that will be introduced at RoboCup 2019.
If you just want to use this app, simply download the latest release binary. The binary is self-contained. No dependencies are required.
- No software dependencies (except for development, see below)
- 64bit Linux, Windows, OSX (32bit would be possible too, but we are in 2018...)
- Display Resolution of at least 1440x720 (unless better scaling is implemented)
- A reasonable Web-Browser (mostly tested on Chrome, please do not try IE...)
There are some reference clients:
- ssl-ref-client: A client that receives referee messages
- ssl-auto-ref-client: A client that connects to the controller as an autoRef
- ssl-team-client: A client that connects to the controller as a team
The ssl-game-controller replaces the ssl-refbox. With the introduction of automatic referees, there was demand for several new features. To accommodate these, the ssl-refbox has been rewritten to take advantage of modern technologies.
The referee message, that is send to the teams, has no breaking changes. Teams do not need to change their systems. Additional data will be send with the referee messages though. To read those changes, teams can update their .proto
files from this repository to take advantage of it.
Teams will also have the possibility to connect to a new interface, where they can change their goalie number during Stoppage. Additionally, there will be an advantage rule, where teams can decide to let the game continue on certain fouls.
List of new features:
- Modern, scalable Web-UI
- More control of the state (change almost all values)
- Automatically save and restore state
- State history with undo button
- Includes state that was previously located in all autoRefs
- New Game Event concept for better interaction with multiple autoRefs
- Game Log that documents commands and events
- New interfaces for autoRefs and teams
- A graphical client can be integrated
You need to install following dependencies first:
- Go >= 1.9
- NPM
Download and install to GOPATH:
go get -u github.com/RoboCup-SSL/ssl-game-controller/...
Switch to project root directory
cd $GOPATH/src/github.com/RoboCup-SSL/ssl-game-controller/
Download dependencies for frontend
npm install
Run the backend:
go run cmd/ssl-game-controller/main.go
Run the UI:
# compile and hot-reload
npm run serve
Or use the provided IntelliJ run configurations.
First, build the UI resources
# compile and minify UI
npm run build
Then build the backend with packr
# get packr
go get github.com/gobuffalo/packr/packr
# install the binary
cd cmd/ssl-game-controller
packr install