Minecraft Community Server

Auf dem Public Server ist ja die Hölle los, nach etwas mehr als 6 Stunden herrscht dort absolute Anarchie. Genaueres dazu in ein paar Tagen.

Da mich ein paar Leute gefragt haben ob sie auch irgendwo ohne die freundlichen Griefer bauen können (Griefer = Spast der sich freut dein Haus abzureisen) habe ich noch einen Server eingerichtet.

Server #3 ist nicht in der offiziellen Serverliste zu finden, sondern nur über folgenden Link zu erreichen:

Klick

Eine Map gibts dazu natürlich auch auf der Minecraft Unterseite.

Mal schauen wie lange das die Griefer abhält 😉

Minecraft

Minecraft ist ja gerade groß im kommen.

Um es kurz zu fassen: Man läuft in einer 3D-Welt herum und kann dort Klötze bauen oder zerstören. Ganz einfach eigentlich, oder?

Wer es ausprobieren will ist eingeladen dies auf einem der skyLab Server zu tun. Den Link zu dem Server gibt es auf der Minecraft Unterseite. Bitte darauf achten, dass ein Account auf minecraft.net dazu benötigt wird. Das ganze kostet nix. Wer es aber nicht tut, landet im hügeligen Singleplayer und verpasst damit den halben Spaß. installieren muss man im übrigen auch nix.

Auf der Unterseite hier im Blog gibt es zusätzlich noch die Liveansicht der Karte. Es laufen momentan zwei Server. Der öffentliche ist für alle zu finden und dementsprechend auch ab und zu Opfer von Griefern, die eure Bauwerke wieder kaputt hauen. Und es gibt den privaten Server. Wer da rauf will, der soll sich einfach melden.

Howto use isocraft timelapse for minecraft on a linux box

Isocraft is a tool which creates an isometric map of a minecraft map file.

This guide will show you how you can use it to periodically make pictures of your servermap. This is usefull if you want to make short timelapse movies which shows the progress of your map or to provide a live view into your server from the web. The guide will also show you how to avoid making images if no one is on the server.

Here is sample how such a timelapse movie could look like:

So, lets start:

I assume the minecraft server is already running. If not, take a look at my guide for this.

So, first you need to get isocraft. Latest should be here.

The package contains two JAR files. We will use the timelapse.jar. If you take a look into the readme file, it will tell you that you have to include the com folder from the server.jar file into the timelapse.jar.

To do this, go to minecraft.net and download the server software. Please note: a JAR file is nothing other than a packed zip file with a different file extension. So your first task is to extract the timelapse.jar and minecraft-server.jar. Then copy the COM folder from minecraft-server.jar into the extracted folder of timelapse.jar. At last, you need to compress the folder again and name it timelapse.jar. If you did everything right, the following should work. If not, try again 😉

Now copy your modified timelapse.jar + the tileset files into the directory of your minecraft server. To test if everything worked, type the following:

java -Xms128M -Xmx1024M -cp /yourpath/timelapse.jar timelapse

If you did everything right, you should find a bmp file (which is indeed a png file) in your directory.

Our goal is that this timelapse.jar is automatically called every x-minutes. To do this, we’ll use the cron deamon. I’ve written a small bash script which takes care that the timelapse is only called when there are people on the server, otherwise it would create thousands of images which are the same. The script also copies the latest image to a seperate directory and renames the suffix to png since the file is a png file (I think the author just forget this).

The script follows:

#!/bin/bash
cd /home/minecraft/server1
# this checks the server.log if there are people on the server
if tail server.log -n2 | grep -c “0/” > 0
then
echo “Server1 is empty”
else
echo “Server1 is growded. Doing timelapse stuff”
# run timelapse
java -Xms128M -Xmx1024M -cp /home/minecraft/server1/timelapse.jar timelapse
# copy latest file
find /home/minecraft/server1/ -mmin -1 -type f -name “*.bmp” -exec cp “{}” /home/minecraft/isocraft/latest.png “;”
fi

Save it as a textfile, name it cronscript.sh or something. Don’t forget to change the path to your needs!

Finally we need to add the script to our cronscripts. Type:

crontab -e

Add the following line if you want to run the script every minute:

*/1 * * * * /home/minecraft/cronscript.sh >/dev/null 2>&1

And thats it. I finally did a softlink from my webserver’s public directory into the directory where the latest image gets copied to:

ln -s /home/minecraft/isocraft/latest.png /var/www/public/minecraft

Any questions?

Howto host a minecraft server on a linux box in the background with screen

This guide will show you how to host a minecraft server in a screen session on a linux box.

Note: You should NOT run the server as root! Create a special user for this, name it e.g. minecraft.

First, make sure you have java installed. If not, use your package-managment tool to install it, e.g.

aptitude install java5

Get the classic server package from minecraft.net & copy it to your server.

If you try to start the server with

java -cp minecraft-server.jar com.mojang.minecraft.server.MinecraftServer

, you may notice that your shell is blocked. If your user session is closed, the server is a well. To avoid this we’re gonna use screen. So first make sure screen is installed:

aptitude install screen

After that, start the server in a screen session:

screen -dmS minecraft java -cp minecraft-server.jar com.mojang.minecraft.server.MinecraftServer

You have to detach this screen session. To do this, press ctrl + a, d (for detach).

If you want to get an overview over running sessions, type

screen -list

To re-attach a running session, type

screen -r

Ok, the server is running.

Head over to the Isocraft guide to get a nice liveview of the map on your webseite.