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

Types of data that can be saved


If you recall from the previous chapter, only certain data types can be stored in a YAML file. These include primitive types (such as int or boolean), strings, lists, and types that implement ConfigurationSerializable (such as ItemStack). For this reason, we are only able to store these specific types of data.

You may find yourself wanting to save other types of data such as a Player object, or in the case of our teleportation plugin, a Location object. These may not be stored directly, but can usually be broken down in order to save the important values that are needed to load it later. As an example, you cannot save a Player object, but you can save the player's name which is a string. Their name is unique, so it is the only information we need to be able to refer to that specific player later. Similarly, a Location object can be broken down to its world, x, y, and z coordinates, yaw, and pitch. All of these but the world are simply numbers which can be...