Backend to BrowserQuest (http://browserquest.mozilla.org/) in Erlang/OTP.
We make use of Cowboy websocket handlers for communication with the BrowserQuest client. No modifications were done to the BrowserQuest Client except for ip configuration. The goal is to build a more scalable backend for websocket-based games.
Features: * Player login and movement works. Map collision detection and player start position generation. * Basic monster spawning and fighting. * Different architecture compared to original nodeJS backend; we hope to add more scalability features later on. The architecture is event-based and players, monsters and items are mapped as Erlang processes.
Future: * Support item drops and static NPCs. * Proper supervisor tree.
Installation: Backend:
- git clone git@github.com:Spawnfest2012/win.git
- cd win
- ./rebar get-deps
- ./rebar compile
- ./init.sh
- Launch a new terminal
- Start Client (see below)
Client:
- git clone git@github.com:Gustav-Simonsson/BrowserQuest.git
- Launch backend.
- Point browser to BrowserQuest/client/index.html
- If you cannot connect, check the config files in BrowserQuest/client/config for host/port settings. Default port in backend is set to 8000 but can be changed in the app.src
The original BrowserQuest repo is at https://github.com/mozilla/BrowserQuest