Book Image

Building Minecraft Server Modifications

By : Cody M. Sommer
Book Image

Building Minecraft Server Modifications

By: Cody M. Sommer

Overview of this book

If you have ever played Minecraft on a public server then the chances are that the server was powered by Bukkit. Bukkit plugins allow a server to be modified in more ways than you can imagine. Learning to program your own server mods will allow you to customize the game to your own liking. Building Minecraft Server Modifications is a complete guide that walks you through the creation of Minecraft server mods. From setting up a server, to testing your newly made plugins, this book teaches you everything you need to know. With the help of this book you can start practising for a career in software development or simply create something awesome to play with your friends. This book walks you through installing your own Minecraft server for you and your friends. Once your server is running, it will aid you in modifying the game by programming Bukkit plugins. You will learn how to program simple plugin features such as player commands and permissions. You will also learn more complex features including listening for events, creating a configurable plugin, and utilizing the Bukkit scheduler. All of this will be accomplished while writing your own server mods. You will become familiar with the most important aspects of the Bukkit API. Additional API features will become a breeze to learn after tackling these more complicated tasks.
Table of Contents (17 chapters)
Building Minecraft Server Modifications
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Creating a BukkitRunnable class


We will start by creating the AlwaysDay plugin. All the code that we write for this plugin will be put inside the onEnable method. The first step to create a scheduled task is to create a BukkitRunnable class This can be done with the following line of code:

BukkitRunnable runnable = new BukkitRunnable();

You will be given a warning telling you to implement abstract methods. NetBeans can automatically add the needed methods for you. The new method that is added for you is run. This method will be called when the scheduler runs your task. For our new plugin, AlwaysDay, we want the task to set the time of each world to noon.

BukkitRunnable runnable = new BukkitRunnable() {
  @Override
  public void run() {
    for (World world : Bukkit.getWorlds()) {
      //Set the time to noon
      world.setTime(6000);
    }
  }
};

Note

Remember that time on a Minecraft server is measured in ticks. 20 ticks are equivalent to 1 second. The measurement of ticks is given as follows...