node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป




A Minecraft 1.6.2 Server in Node.js

BurningPig is a custom server for the creative game Minecraft:


I had originally forked the nodecraft project as the start of a modern Minecraft server. That project looked like it was originally built for Node v0.4, and Node has seen alot of improvements since then. I also wasn't happy with the way the protocol was being handled. They tried to staticly define it, and enough packets are dynamic based on their content that I didn't want to try and fix it.

BurningPig is a fresh start using Node v0.8+ and the goodness it has to offer, like streams!

Version 1.6.2 support is basic at the moment.

Node v0.10. is now required for streams2 support!* - I'll add backwards compat soon.

Current Features

  • The vanilla client can connect and donwload the (boring) terrain
  • Time, so day and night happen
  • Chat messages are sent to all connected clients
  • Player positions sync'd across connected clients
  • Server settings are now stored in 'settings.json'.
  • Digging! & persistent terrain
  • Protocol encryption
  • Player validation against
  • Node v0.10.* is now required!

What's Next

  • Player inventory (only current session, not persisted yet)
  • Pickups after digging
  • Placing blocks

On The Way

  • Persisted Players & Inventory
  • Terrain generation

Server Settings

The settings that control the server options are stored in the settings.json file.

Current settings: serverName - The name of the server that shows up in the Multiplayer server screen.
listenPort - The TCP port the server listens on.
maxPlayers - The maximium number of players the server supports.
gameMode - The game mode
dimension - The dimension of the world
difficulty - World difficulty


    "serverName": "BurningPig DevServer!",
    "listenPort": 25565,
    "maxPlayers": 8,
    "gameMode": 0,
    "dimension": 0,
    "difficulty": 1

Installing BurningPig

Using NPM, installing is as easy as: npm install burningpig

Live Test Server

Once I get a little further along, I will put up a test server where people can check out the latest version.


BurningPig is MIT licensed. You know the drill. Enjoy!