Jammer - A server for your game jam
Jammer is a ready-to-use game server to speed up game creation in the context of game jams.
It is written in Javascript so it focuses on web based games.
It is designed for games with multiple players playing simultaneously on the same screen.
Install
Install node.js, then:
npm install jammer -g
Usage
jammer
This will generate all the files you need in the current working directory and run npm install automatically:
public/game.html
public/player.html
public/js/gameClient.js
public/js/gameServer.js
server.js
package.json
node_modules/
Then:
node server.js
And you have a server listening on port 4321. To start the server listening on port 7890:
node server.js -p 7890
To generate the files at a specific path:
jammer /path/to/destination/
Documentation
Examples
The generated files include an example showing the basics.
public/player.html
public/game.html
They include or the Javascript files:
public/js/gameClient.js
public/js/gameServer.js
There is a global depedency on socket.io, so make sure to include it (see example).
Game examples using jammer
- TwinFusion: made at a game jam, but using a previous version (different API).
- Squame: proof of concept for jammer.
GameServer
var gameServer = ;var players = {};gameServer;gameServer;
GameClient
var gameClient = ;gameClient; // join the game 12gameClient;gameClient;
List of defaults events and actions
On the game side
gameServer;gameServer;gameServer;
On the player side
// join game number 2gameClient;gameClient;
Motivation
A game jam is all about making a great game fast, so you shouldn't spend to much time in repetitive and time consuming tasks. If you want to go for a multi-player game, you are going to spend quite a lot of time on the network part, testing it, debugging it.
This idea popped up after using HappyFunTimes in a game jam. HappyFunTimes is great, but is limited to a local network. The missing part for us was to be able to put the game online to make it accessible by everyone. Jammer uses game sessions to make it work with multiple game running at the same time.
License
MIT