No description
Find a file
Romain Beaumont 7d876b9312 Merge pull request #189 from PrismarineJS/greenkeeper-minecraft-protocol-0.17.0
Update minecraft-protocol to version 0.17.0 🚀
2016-02-12 15:01:49 +01:00
config use new prismarine-provider-anvil to read/write the seed, use a worldFolder option instead of regionFolder option, fix #178 2016-01-14 19:18:01 +01:00
doc Release 0.5.1 2016-01-14 19:49:02 +01:00
examples use require-self for better consistency with external plugins 2015-12-10 01:25:33 +01:00
logs Added logs folder 2015-08-24 09:07:10 -04:00
src move to babel6 and bypass https://phabricator.babeljs.io/T6792 2016-02-12 14:02:05 +01:00
test make worldFolder optional, fix tests 2016-01-14 19:44:54 +01:00
world use new prismarine-provider-anvil to read/write the seed, use a worldFolder option instead of regionFolder option, fix #178 2016-01-14 19:18:01 +01:00
.gitignore update gitignore and npmignore 2016-01-14 19:27:22 +01:00
.npmignore update gitignore and npmignore 2016-01-14 19:27:22 +01:00
app.js fix settings, cleanup logs (fix #125) 2015-11-25 19:49:38 +01:00
circle.yml node >=4 2016-02-12 14:06:57 +01:00
gulpfile.js move to babel6 and bypass https://phabricator.babeljs.io/T6792 2016-02-12 14:02:05 +01:00
index.js go to es6 + use real prismarine-chunk and prismarine-world 2015-10-02 00:12:09 +02:00
LICENSE Create LICENSE 2015-08-25 17:35:16 -04:00
package.json Use 0.17.1 2016-02-12 14:58:27 +01:00
README.md add flying-squid-schematic plugin to plugins list 2016-01-17 18:07:14 +01:00
TODO.md Small fixes 2015-11-23 09:25:59 -08:00

flying-squid

NPM version Join the chat at https://gitter.im/PrismarineJS/flying-squid License Minecraft version Github issues Build Status

A semi-functional minecraft server in Node.js

Features

  • Support for Minecraft 1.8
  • Players can see the world
  • Players see each other in-game and in tab
  • Digging
  • Placing blocks
  • Player movement
  • World generation
  • Anvil loading
  • Multi-world

Test server

Building / Running

Before running or building it is recommended that you configure the server in config/settings.json

npm install
node app.js

Or try our autoupdating flying-squid server autonomous-squid

You can also install flying-squid globally with sudo npm install -g flying-squid and then run it with flying-squid command.

Plugins

  • flying-squid-irc a bridge between a irc chan and the minecraft server. Currently used between our test server (rom1504.fr) and our gitter room (through the official gitter irc bridge)
  • flying-squid-schematic Flying-squid plugin providing /listSchemas and /loadSchema commands. You can add schema through a simple http api and then add them in your world by just calling /loadSchema in game. Http api available in the test instance at flying-squid.rom1504.fr

Documentation

Documentation for how to operate and how to customize your server are coming soon!

Development Documentation

For development see API.md, CONTRIBUTE.md and HISTORY.md

Using as a lib

flying-squid is also a server lib. Here is a basic example of usage:

var mcServer = require("flying-squid");

mcServer.createMCServer({
  "motd": "A Minecraft Server \nRunning flying-squid",
  "port": 25565,
  "max-players": 10,
  "online-mode": true,
  "logging": true,
  "gameMode": 1,
  "generation": {
    "name": "diamond_square",
    "options":{
      "worldHeight": 80
    }
  },
  "kickTimeout": 10000,
  "plugins": {

  },
  "modpe": false,
  "view-distance": 10
});

You can add server plugins and player plugins in your package, following CONTRIBUTE.md.

Contributors

  • @roblabla for helping out with the protocols
  • @rom1504 for massive contributions to the code
  • @demipixel
  • The PrismarineJS team for creating prismarine-chunk and node-minecraft-protocol
  • wiki.vg for documenting minecraft protocols
  • All of our other awesome contributors!