Based on https://github.com/aybabtme/bomberman but changed for purpose of SKSP2018.
- Hard-coded players.
- Can use many types of players.
- AI player.
- Keyboard player.
- TCP player
- Websocket player.
- Sample clients:
- Sample websocket based UI/client.
- Real clients:
- Python client: https://github.com/uiri/bombermanpy.
- Java client: https://github.com/aybabtme/bombjava.
- Ruby client: https://github.com/dylanahsmith/bombermanrb.
- ... make your own client!
You have two choices to implement a client for the language of your choice. Both are usable at this time, however the TCP interface should be prefered, simply because I don't forecast major changes in it's working.
- Use the TCP interface, docs here.
bombermanpy
uses this. - Use the websocket interface.
You can implement a native Go player if you respect the player.Player
interface:
type Player interface {
Name() string
Move() <-chan Move
Update() chan<- State
}
Details of Move
, State
and Player
.
If there's enough demand for it, I might be able to embed a Lua VM in the bomberman server and make it possible to run native Lua players.