Skip to content

Outburst is a 3D real-time multiplayer game that combines the best of a tower defense and a “twin-stick” shooter.

Notifications You must be signed in to change notification settings

eirikurn/Outburst

Repository files navigation

Outburst

Requirements

To run this project, you should have a recent stable version of NodeJS (f.ex. 0.4.11) as well as the npm package manager.

Setup

Enter the folder of this repo and install dependencies with npm. Then use make to start the server.

npm update
make

That's it! Then visit http://localhost:8000/game/ to play.

Project structure

The game server is in /gameserver. The code for the game itself is in /public/game/scripts.

Some of the gameplay is done in shared code in /public/game/shared. The rest is done only on the server, with the state transferred to dumb clients.

Game loop

Look at /public/game/shared/constants.coffee to see that currently the game processes inputs and calculates world changes 50 times per second, and sends input and world packets 25 times per second.

The game server uses setInterval to run a onTick function in /gameserver/main.coffee while the game requests an animation frame from the browser to run the onFrame function in /public/game/scripts/main.coffee.

About

Outburst is a 3D real-time multiplayer game that combines the best of a tower defense and a “twin-stick” shooter.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published