Posts Tagged ‘minecraft’

The Minecraft 1.4 Beta is now live. Improvements from the changelog.txt include: -

- Added tameable wolves.
- Added cookies.
- Sleeping in a bed now resets your spawn position (reported not to be working).
- New Minecraft logo.
- Holding shift while climbing will hang on to the ladder (may have broken water ladders).
- Spiders will no longer trample crops.
- Lots and lots of infrastructure for Statistics lists and Achievements.
- While most of the code is written, statistics and achievements won’t show up until the next update. We didn’t quite have time to finish them this week, and didn’t want to delay the update longer.

Extra changes:
- Brown sheep. Source.
- Cocoa beans in dungeon chests.

Login to grab the update or get it here. Keep in mind that if you are running a Minecraft server, you will also need to update the minecraft_server.jar from the download page.

Minecraft is one of the first major success stories for indie gaming this decade and frankly, when I thought hard about it, the potential of this game is really amazing. If you’ve been living in a cave for the past year then here is the general gist…

Minecraft is a game about blocks. The world is made of blocks, the water and…well…everything. The game is an FPS with a curiously charming 8-bit asthetic. I’m not sure if there is a story or not and really, it’s irrelevant. It’s really hard to explain, so I’ll let Wikipedia explain it for me.

Since this game is written in Java with the OpenGL-binding Light-Weight Java Game Library (LWJGL), it’ll run on pretty much any computer. Minecraft being grass-roots project, comes in two flavours – Classic and Beta. Minecraft is notable in that, although the game is for sale, it isn’t actually finished yet. Classic is the free version which you can either download as a Java ARchive for (OSX and Linux) or the executable (Windows). If you fancy buying it, it’s very cheap – about £12.79 or 14.95 Euros. I will say that it seems stable enough on the several systems I’ve tried it on and since you have to register in order to purchase, your login details are used to update the game whenever you’re online so you get constant updates.

For running Minecraft under Linux, you will of course need the Java Runtime Environment installed from Java’s new overlords, Oracle. While you can run the Apache Foundation’s OpenJDK (apparently getting a new lease of life due to Oracle’s bitter battle with Google over Android and Java licensing) it’s recommended that you run the official Sun JRE for now and performance on the beta isn’t silky-smooth. If you’ve already got the JRE installed, skip to the next bit. I’ll go into the process of installing the JRE in rather more detail than is necessary as eventually I’ll go through how to install the Java Development KIt (JDK) as this will be required for Android development stuff. But that’s another article….:-)

I’d recommend the non-RPM download for Linux, simply because not everyone here will be using a Red Hat-based system. Once you’ve downloaded the BIN file, you’ll need to su to root and move the file to the location you want it. I usually put the JRE in /usr/local.

Once you’ve moved it, you’ll need to make it executable with the command:-

chmod u+x jre-6u24-linux-i586.bin

Now run the installer with: -

./jre-6u24-linux-i586.bin

Click through the legalese, and the file will be uncompressed to /usr/local/jre-6u24 or something similar. I usually bung in a symbolic link here to a shorter directory path using: -

ln -s /usr/local/jre-6u24 /usr/local/jre

As we want the JRE to be available system-wide, we’re going to add the JRE to the system path environment variable. You’ll still need to be root to do this.

First, edit the file /etc/profile (under Fedora) or /etc/environment under Ubuntu.

vi /etc/profile or vi /etc/environment

Add the line somewhere near the bottom where the $PATH environment variable is declared. After this, put in the line:-

export PATH="/usr/local/jre/bin:$PATH"

This has appended the /usr/local/jre/bin directory where the Java interpreter executable resides to the system path. Save this and logout of root. Log back in and type: -

echo $PATH

You’ll see the JRE path has been added to the variable. Right – ready to run Minecraft! :-)

EIther download the Classic version, or signup and buy the Beta. I bought the Beta and haven’t regretted it. Either way, you’ll end up with a Minecraft.jar file. As the official Minecraft site states, run the game with: -

java -Xmx1024M -Xms512M -cp Minecraft.jar net.minecraft.LauncherFrame

This looks complex, but all it’s actually doing is assigning more memory than the default to the JVM. Put this line into a bash script file called “start.sh” or something if you prefer…

And you should now be able to start playing Minecraft! Build a shelter before nightfall and refer to the Minecraft Wiki if you need help or instructions.

Right, now one of the cool things you can do with Minecraft is set up a multiplayer server. This creates a Minecraft world on your server that anyone can login to and build (or destroy) anything. Good for co-op battle against zombies or collaberative building :-)

To install the Minecraft server software, download the Linux server software JAR here. Put it somewhere logical (me, I put it in /usr/local somewhere) and load it with: -

java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui

This will load everything and also create a file called server.properties. This is simply a text file that has the default settings for your Minecraft server and can be edited with vi or similar to change any settings. You’ll need to restart the server for the settings to take effect.


#Minecraft server properties
level-name=MyMineCraftServer
hellworld=false
spawn-monsters=true
online-mode=true
spawn-animals=true
max-players=20
server-ip=
pvp=true
server-port=25565
white-list=false

As you can see, the default port for the Minecraft server is 25565 – you’ll need to open a TCP port for this in your iptables firewall: -

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 25565 -j ACCEPT

Also, if you’ve got a static IP address, you’ll want to open an identical port in your router firewall and NAT the port to your server.

If you’ve changed any settings in the server.properties file, you’ll need to search for the process and kill it.

ps -elf | grep java

Make a note of the process ID (PID) and kill it with: -

kill [PID]

Load up your Minecraft client and select multiplayer from the menu and type in your hostname or IP of your server. Note: I really wouldn’t recommend running the server and client software on the same machine! The Minecraft server software, being Beta grade, needs a good 1GB of RAM to run and I really wouldn’t recommend less than that, especially for 10 or 20 players all at once. Now you can build stuff with friends!
A list of server commands can be found here – although I’m running the software as a background process, so don’t know if I can bring it to the foreground without killing the service :-)

Markus “Notch” Persson, Minecraft’s creator has quit his day job to work on Minecraft and has this to say about the future.

I plan on developing Minecraft until it’s a finished complete game, with a downloadable client (with fullscreen mode), custom key re mappings and possibly modding support.
For as long as people enjoy and purchase the game, I will develop extensions after the game is done.

Once sales start dying and a minimum time has passed, I will release the game source code as some kind of open source. I’m not very happy with the draconian nature of (L)GPL, nor do I believe the other licenses have much merit other than to boost the egos of the original authors, so I might just possibly release it all as public domain.

Minecraft has built up a really strange and cool subculture based on building things in Minecraft. Go to YouTube and type in “minecraft” to come up with a great load of user-created content. The guys over at Linux Outlaws also have a dedicated Minecraft server set up at alain.sixgun.org.

Also, you’ll be pleased to hear that Minecraft is coming to Android! :-) You can even use mineserve which is a server-side app plus an Android app that lets you admin your Minecraft server from your phone. Neat eh?

Search The Node
XBox LIVE Gamertag
The Node Downloads
Mini Tweets

Switch to our mobile site