Giter VIP home page Giter VIP logo

mineserver's Introduction

Mineserver

by Fador & Nredor and others

You can find the core team from #mineserver @ irc.esper.net
Also mail to [email protected] will reach us.

Copyright (c) 2010, The Mineserver Project

Custom Minecraft Alpha server software written in C++.

== NOTICE ==

Currently in (early) development. (Alpha stage)
Server still lacks some critical features and should be only used for testing.

Tested to build on

  • Windows (VS2010 and VS2008 projects included)
  • Linux (Makefile included)
  • Mac OS X
  • FreeBSD / PCBSD

We are trying to minimize memory and cpu usage compared to original Java server.

Features

  • Various chat commands, more to come..
  • NBT parsing/saving
  • Lightmap generation
  • Config file
  • Normal mining/item spawning/item pickups
  • Basic physics for gravel and sand
  • Experimental physics for water and lava
  • Flatland map generation
  • Working chests
  • Terrain generation

ToDo (Arranged by priority)

  • Getting furnaces and signs to work (In progress)
  • Plugin support (and Lua plugin for scripting)
  • Multithreading
  • Growing trees and cactuses
  • and more

Chat commands

For all players

  • /players : Lists online players
  • /about : Server name & version
  • /rules : Shows server rules
  • /home : Teleports user to map spawn location
  • /kit (name) : Gives kit. Items for kit defined in config.cfg with kit_(name) using itemId's

Admin only

  • %text : Servermessage
  • &text : Admin-only message
  • /kick nick (kickmsg) : Kicks user with optional kick message
  • /save : Manually save map to disc
  • /ctp x y z : Teleport to coordinates (eg. /ctp 100 100 100)
  • /tp nick : Teleport yourself to nick's position
  • /tp nick1 nick2 : Teleport nick1 to nick2
  • /reload : Reload admins and configuration
  • /give nick id/alias (count) : Gives nick count pieces of id/alias. count = 1 is used if it is not provided. Support for over 64 items. Aliases configurable with item_alias.cfg
  • /rules nick : Shows server rules (from rules.txt) to nick
  • /gps (nick) : Without nick shows own coordinates. With nick shows nick's coordinates

Compiling

Depends on (and tested with):

zlib 1.2.5
libevent 1.4.14b libnoise 1.0

  • Installing on Debian and Ubuntu:

    sudo apt-get install libevent1 libevent-dev zlib1g zlib1g-dev libnoise-dev

  • Installing on CentOS and RHEL

    # Install EPEL (Extra Packages for Enterprise Linux)
    sudo su -c 'rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm'
    sudo yum install git libevent libevent-devel zlib zlib-devel libnoise-dev

  • Installing on FreeBSD / PCBSD

    sudo pkg_add -r libevent

Compiling using linux (make & gcc):

  • Download and extract source or use git clone git://github.com/fador/mineserver.git
  • Go to mineserver/src/ directory
  • Run make
  • Run server with ./mineserver

Compiling using FreeBSD / PCBSD (gmake & g++):

  • Download and extract source or use git clone git://github.com/fador/mineserver.git
  • Go to mineserver/src/ directory
  • Run gmake
  • Run server with ./mineserver

Compiling using windows (VS2010/VS2008):

  • Download and compile zlib or use pre-built binaries
  • Add zlib libraries to project (zlibstat.lib or zlibwapi.lib which requires also zlibwapi.dll in the same dir with the executable)
  • Download and compile libevent
  • Download libnoise 1.0 and add header/library files to project
  • Add libevent library to project (libevent.lib)
  • Build
  • Run mineserver.exe

An example using commandline compiler available at http://www.microsoft.com/express/Windows/ Please change the ZLIB_INC_DIR, LIBEVENT_INC_DIR, ZLIB_LIB_DIR and LIBEVENT_LIB_DIR to those you keep the includes/libs.

call "%VS100COMNTOOLS%vsvars32.bat"
cl /I"ZLIB_INC_DIR;LIBEVENT_INC_DIR" /W3 /WX- /O2 /D ZLIB_WINAPI /D WIN32 /D NDEBUG /D _CRT_SECURE_NO_WARNINGS /EHsc *.cpp zlibwapi.lib libevent.lib Ws2_32.lib /link /OUT:mineserver.exe /LIBPATH:"ZLIB_LIB_DIR;LIBEVENT_LIB_DIR"

mineserver's People

Contributors

andrewfenn avatar fador avatar krono avatar mastercj avatar nredor avatar prophile avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.