Flying-squid ================ [![NPM version](https://img.shields.io/npm/v/flying-squid.svg)](http://npmjs.com/package/flying-squid) [![Join the chat at https://gitter.im/mhsjlw/flying-squid](https://badges.gitter.im/Join%20Chat.svg)] (https://gitter.im/mhsjlw/flying-squid?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Minecraft version](https://img.shields.io/badge/minecraft%20version-1.8-brightgreen.svg)](http://wiki.vg/Protocol) [![Github issues](https://img.shields.io/github/issues/mhsjlw/flying-squid.svg)] (https://img.shields.io/github/issues/mhsjlw/flying-squid.svg) [![Build Status](https://img.shields.io/circleci/project/mhsjlw/flying-squid/master.svg)] (https://circleci.com/gh/mhsjlw/flying-squid) [![Gratipay](https://img.shields.io/gratipay/mhsjlw.svg)] (https://gratipay.com/~mhsjlw/) 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 * rom1504.fr (Port 25565) using [auto-squid](https://github.com/rom1504/auto-squid) ## 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](https://github.com/mhsjlw/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](https://github.com/rom1504/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) ## Documentation Documentation for how to operate and how to customize your server are coming soon! ## Dev Documentation For development see [api.md](doc/api.md), [contribute.md](doc/contribute.md) and [history.md](doc/history.md) ## Using as a lib Flying-squid is also a server lib. Here is a basic example of usage : ```js var mcServer=require("flying-squid"); mcServer.createMCServer({ "motd": "A Minecraft Server \nRunning flying-squid", "port": 25565, "maxPlayers": 10, "onlineMode": true, "logging": true, "gameMode": 1, "generation": { "name":"diamond_square", "options":{ "worldHeight":80 } }, "modpe": false }); ``` You can add server plugins and player plugins in your package, following [contribute.md](doc/contribute.md). ## Contributors - @roblabla for helping out with the protocols - @rom1504 for massive contributions to the code - The PrismarineJS team for creating prismarine-chunk and node-minecraft-protcol - [wiki.vg](http://wiki.vg/Protocol) for documenting minecraft protocols