Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Building Minecraft Server Modifications
Building Minecraft Server Modifications

Building Minecraft Server Modifications: Discover how to program your own server plugins and augment your Minecraft server with Bukkit

eBook
$9.99 $19.99
Paperback
$32.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Building Minecraft Server Modifications

Chapter 1. Deploying a CraftBukkit Server

The first step to modifying Minecraft with the Bukkit API is to install a CraftBukkit server on your Windows PC. A multiplayer server is essentially the same as single-player Minecraft but allows for more customization and is not limited to only people in your home network. The CraftBukkit server will load all of the plugins that you create and use them to change how Minecraft operates. It contains all of the code that is included in the vanilla Minecraft server. Most of these classes, methods, and variables are renamed to help us understand their purpose and how to use them correctly. craftbukkit.jar also includes additional code to aid plugin developers with completing certain tasks such as saving/loading data, listening for server events, and scheduling code to be executed. We will use this CraftBukkit server to test any plugins that you write. By the end of this chapter all your friends can log onto and play on your modified Minecraft server together.

  • Installing a CraftBukkit server

  • Understanding and modifying server settings

  • Using console and in-game Minecraft and Bukkit server commands

  • Port forwarding

Installation


CraftBukkit completely replaces the vanilla Minecraft server (mincraft-server.jar or minecraft-server.exe) which you may have downloaded from minecraft.net. The vanilla server is incapable of running Minecraft plugins. We will start from scratch to set up this new server. If you wish to use a preexisting world, you will be able to do this after creating a new CraftBukkit server. To start, let's create a new empty folder named Bukkit Server. We will run the CraftBukkit server from this newly created folder.

The main file that you will need to start your new server is craftbukkit.jar. A jar file is a Java-executable file. Minecraft, CraftBukkit, and any plugin that we will create are all written in Java and thus are run from a JAR file. The craftbukkit.jar file takes the place of minecraft_server.exe or minecraft_server.jar. The Bukkit team maintains the Bukkit project and releases the updates for the CraftBukkit server, as Minecraft itself is updated to newer versions. The newest version of CraftBukkit is always available for download at dl.bukkit.org/downloads/craftbukkit/. Go to the CraftBukkit download page and you will see the options Recommended Build, Beta Build, and Development Build. You should use Development Build only if another build is not yet available for your version of Minecraft. If you are unsure of your Minecraft version, it is displayed in the left corners of the Minecraft client. The client is the program that you use to play Minecraft, as shown in the following screenshot:

You can choose which version of Minecraft you play by creating a new profile in the Minecraft launcher, as shown in the following screenshot:

Download the craftbukkit JAR file and place it in the Bukkit Server folder. Its name may include a version number such as craftbukkit-1.6.2-R1.0.jar. For simplicity, we will rename the file to craftbukkit.jar.

Now we will create a batch file that we can double-click on every time we wish to start the server. In a new text document, type the following two lines:

java -Xms1024M -Xmx1024M -jar craftbukkit.jar
PAUSE

1024 tells how much of the computer's RAM the server will be allowed to use. You can change this number if you want the server to use more or less RAM. craftbukkit.jar is the name of your craftbukkit JAR file. If you did not rename the file earlier, then you will have to edit this batch file every time that you update your CraftBukkit version to ensure that the two names match. The rest of the previous lines will not concern you and should remain unchanged.

Save the text document as Start Server.bat, and be sure that it is in the same folder as craftbukkit.jar. Now you are able to run the server. Double-click on the batch file that you just created. It will then open up the command prompt and start creating the server files. It will look similar to the following screenshot:

There is no need to worry about the warnings that are printed at this time, as they are expected when you first start a new server.

If a window like the previous screen does not appear, then make sure that your batch file is called Start Server.bat and not Start Server.bat.txt.

Setup


You will see the server folder populated with several files and folders. I will go over a few of them now, as shown in the following list, but most of these files will not concern you at this time:

  • The plugins folder: This folder is where you will place all of the Bukkit plugins that you wish to use on your server.

  • The folders that begin with world (world, world_nether, and so on): These folders have been created that include all of the information for the new world of your server. If you already have a Minecraft world that you wish to use, then replace these new folders with your old world folders. Do not attempt to do this while the server is running, as it will cause problems.

  • server.properties: This file holds several options which allow changing how a Minecraft server operates. You can open it with any text editor. There are many settings and most of them are pretty self explanatory. I will go over a few settings in the following list that you may want to modify. For a full list of property explanations, you can visit www.minecraftwiki.net/wiki/Server.properties.

    • pvp=true: The pvp property can be set to a boolean value. PvP stands for player vs. player and sets whether players can attack and harm each other. You will want to set this to true or false depending on whether you want PvP to be on or off, respectively.

    • difficulty=1: The difficulty property can be set to a number 0 to 3. 0 means Peaceful, 1 means Easy, 2 means Normal, and 3 means Hard. Everyone on the server will be playing at this difficulty.

    • gamemode=0: This property determines which game mode players will start in. 0 means Survival, 1 means Creative, and 2 means Adventure.

    • motd=A Minecraft Server: motd stands for Message of the day. This message will be displayed when viewing your server in the Minecraft multiplayer server list as shown in the following screenshot:

    • It is a good idea to set this to a short description of your server, for example, Bukkit plugin testing.

    • online-mode=true: This can be set to false to allow players to connect to the server while in offline mode. This can be useful if http://minecraft.net/ is unavailable or your computer is not connected to the Internet. Running your server in offline mode can cause security issues, such as other players logging in to your account.

  • bukkit.yml: This file contains many more server options. These are the options that a vanilla server does not offer and are only available through running a CraftBukkit server. You will notice that this file is a YMAL (.yml) file rather than a PROPERTIES (.properties) file. When you open it, you will see how the two file types are formatted differently. The first difference that you will notice is that certain lines are indented. You do not need to fully understand the YMAL formatting, as it will be explained further as we progress through making the Bukkit plugins. There are a few settings in this file that I will bring to your attention, as shown in the following list. For a full list of these Bukkit settings you can visit wiki.bukkit.org/Bukkit.yml:

    • allow-end: true: A vanilla Minecraft server allows you to disable the nether world from functioning. A Bukkit server allows you to disable the end world as well. Set this to false to prevent players from traveling to the end.

    • use-exact-login-location: false: Vanilla Minecraft contains a feature that will prevent players from spawning inside a block. The player will instead be spawned above the block, so they will not suffocate and die. This can easily be exploited to be able to climb onto blocks that a player could normally not reach. Bukkit can prevent this from occurring by spawning the player exactly where they logged out. Set this property to true if you wish to prevent this exploit.

    • spawn-limits: Bukkit allows a server admin to modify how many monsters and animals are allowed to spawn within any given chunk. If you are unfamiliar with the term chunk, it is a group of 16 x 16 blocks from bedrock to the highest point of the sky. The following is a picture of a single chunk in Minecraft:

      If you feel that there are too many (or too few) mobs, then you will want to adjust these values accordingly.

    • ticks-per: autosave: 0: Unlike vanilla Minecraft, a Bukkit server will not periodically save your player/world data. Automatically saving may prevent the server from losing any changes that were made within the game if it were to crash or shut down for any reason (such as the computer losing power). Vanilla defaults this setting to 6000. There are 20 ticks every second. We can determine how long 6000 ticks is with the following math: 6000 ticks / 20 ticks/second = 300 seconds and 300 seconds / 60 seconds/minute = 5 minutes. From the previous calculation you should be able to calculate an appropriate time period that you wish your server to autosave. If your server lags whenever it saves, then you may want to increase this number. A setting of 72000 would only cause lag once every hour; however, if the server crashes right before it saves, then you may lose any progress you have made in the past hour.

Minecraft/Bukkit server commands


We now have all of our custom options set. Next, we are ready to log into the server and take a look at the in-game server commands.

To log into your server, you will need to know the IP address of your computer. Later in this chapter we will work through finding this essential information. However, I will assume that for now you will be playing Minecraft on the same machine that you are running your server on. In this case, for the IP of the server, simply type localhost. Once you are connected to your server, you will notice that the CraftBukkit server is essentially the same as a vanilla server. This is because you do not have any plugins installed yet. The first indication that the server is running Bukkit is that you will have a few extra commands.

Bukkit inherits all of the Minecraft server commands. If you have ever played on a Minecraft server, then you have probably already used some of these commands. In case you have not, I will explain some of the more useful ones. These commands can be typed into the console or in-game. By console I am referring to the command prompt that is running your server. CraftBukkit has a built-in permissions system that limits players from using specific commands. They cannot use a command if they do not have the necessary permission. We will discuss this in further detail in a later chapter, but for now we will make your player an operator, or op for short. An operator automatically has all of the permissions, and will be able to execute all of the commands that will be presented. To make yourself an operator, we will issue the op command to the console:

# op <player>

Replace <player> with your player name. See the highlighted command in the following screenshot for an example:

Once you have been opped, you are ready to test some of the server commands in-game. In order to understand how to use commands properly, you must understand the command syntax. We will look at the gamemode command as an example:

gamemode <0 | 1 | 2> [player]
  • < > indicates that it is a required argument.

  • [ ] indicates that it is an optional parameter. For this command, if the player parameter is not included, then the game mode of your own player will be set.

  • | is a known symbol for the word or. So <0 | 1 | 2> indicates that either 0, 1, or 2 can be entered. They represent survival, creative, and adventure, respectively.

  • Parameters must always be typed in the same order in which they are displayed. Usually, if you enter an incorrect command, a help message will appear reminding you of how to use the command properly.

Take note that when you issue a command in-game, you must start with /, but when issuing a command from the console, / must be left out. A proper use of the gamemode command would be /gamemode 1, which will set your game mode to Creative, as shown in the following screenshot:

Another example of this command is /gamemode 2 Steve, which will find the player whose username is Steve and will change his game mode to adventure.

Now that you understand the basic syntax for commands, I will list some other useful server commands, as shown in the following list. Most of these commands are present in Vanilla Minecraft. Only a few of them are specific to Bukkit servers.

  • (For vanilla) gamerule <rule> [true | false]

    The rule parameter can be set to any of the following:

    • doMobSpawning – Whether mobs will naturally spawn

    • keepInventory – Whether players will keep their items if they die

    • mobGriefing – Whether mobs such as creepers can destroy blocks

    • doFireTick – Whether fire should be spread

    • doMobLoot – Whether mobs should drop items

    • doDaylightCycleWhether the day/night cycle is in effect

    • For example, /gamerule mobGriefing false

  • (For vanilla) give <player> <item> [amount [data]]

    • For example, /give Codisimus wool 3 14, gives Codisimus 3 red wool

  • (For Bukkit) plugins

    • For example, /plugins or /pl, displays a list of all the plugins that are installed on your server

  • (For Bukkit) reload

    • For example, /reload or /rl, disables all plugins and reenables them

    • This command is used to load new settings for a plugin without shutting down the entire server

  • (For vanilla) spawnpoint [player] [x y z]

    • For example, /spawnpoint, sets you to spawn where you are standing, if you die

  • (For vanilla) stop

    • For example, /stop, saves and shuts down the server

    • This is how you should stop the server to be certain that all data is saved

    • You will lose data if you simply close out of the command prompt, by clicking on X

  • (For vanilla) tell <player> <message>

    • For example, /tell Steve my secret base is behind the waterfall, sends a message that only Steve will be able to see.

    • Take note that these messages will also be printed to the console

  • (For vanilla) time set <day | night>

    • For example, /time set day, sets the time of the server to 0 (daytime)

  • (For vanilla) toggledownfall

    • For example, /toggledownfall, stops or starts rain/snowfall

  • (For vanilla) tp [player] <targetplayer>

    • For example, /tp Steve Codisimus, teleports Steve to Codisimus' location

For more information regarding these and other commands please visit wiki.bukkit.org/CraftBukkit_commands. Both these commands and the property files mentioned earlier give you a lot of control over how your server functions.

Port forwarding


Where's the fun in running your own Minecraft server when no one else can log into it? I will now explain how to allow your friends to connect to your server so that they can play with you. In order to do this, we must first find your IP address. Much like your place of residence has a street address, your computer has an address on the Internet. This is what your friends will type into their Minecraft client to find your server. To find this, simply search IP on Google. At the top of the results will be a line that states: Your public IP address is XX.XX.XXX.XX (the Xs will be replaced with numbers and its overall length may be different). You can also visit www.whatismyip.com to find your IP address.

Once you have your IP address, try using it to connect to your server rather than using localhost. If you are able to connect, then your friends will be able to, too. If not, you will have to take additional steps to allow other players to connect to your server. This will be the case if your computer is attached to a router. We must let the router know to point other Minecraft players towards your computer that is running the server. This process is called port forwarding and to do so, we will first need some additional information.

We need to know the IP address of your computer on your local network. This IP will be different from the address we obtained earlier. We will also need to know the IP of your router. To find these, we will open up a new command prompt window. The command prompt can be found at:

Start Menu/All Programs/Accessories/Command Prompt

You can also search cmd.exe to find it. Once the command prompt is open, type:

# ipconfig

Then, press Enter. A screen will be displayed similar to the one in the following screenshot:

In the previous image I have highlighted the two IP addresses that you are looking for. The numbers will most likely be very similar to these sample numbers. IPv4 Address is the address of your computer, and Default Gateway is the address of your router. Take note of both of these IPs.

Next, we will log into your router. In any web browser, type the IP address of the router (192.168.1.100 in our example). If you did this correctly, then you will be prompted with a login form asking for a username and password. If you do not know this information, you can try admin for both. If that is unsuccessful, you will have to find the default username and password, which can be found in the paperwork that was provided with your router. This information can usually be found online as well, by searching the name of your router along with the terms default login.

Once we are logged into the router, we must find the area that includes the settings for port forwarding. There exist many brands and models of routers in the world and all of them present this option differently, so I cannot provide a specific walkthrough of how this page is found. However, you will want to look for a tab that says something along the lines: Forwarding, Port Forward, or Applications & Gaming. If you do not see any of these, then expand your search by exploring the advanced settings. Once you find the correct page, you will most likely see a table that looks like the following one:

Application Name

External Port

Internal Port

Protocol

IP Address

Bukkit Server

25565

25565

TCP and UDP

192.168.1.100

Fill in the fields as it is shown in the previous table. Of course, the layout and formatting will differ depending on your router, but the important details are that you forward port 25565 to the IP address that you found earlier (192.168.1.100 in our example). Be sure to save these new settings. If you have done this correctly, then you should now be able to connect to your server using your public IP address.

Summary


You now have a CraftBukkit server running on your PC. You can inform your friends of your IP address so that they can play on your new server with you. You are now familiar with in-game commands and how to use them, and your server is ready to have Bukkit plugins installed onto it as soon as we program them. To prepare ourselves for programming these plugins, we will first become familiar with the Bukkit API, and how it can be used.

Left arrow icon Right arrow icon

Key benefits

  • Create your own Minecraft server mods
  • Set up a Bukkit server that all your Minecraft friends can play on
  • Step by step instructions guide you through the creation of several unique mods

Description

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.

Who is this book for?

Building Minecraft Server Modifications is great for anyone who is interested in customizing their Minecraft server. Whether you are new to programming, Java, Bukkit, or even Minecraft itself, this book has you covered. All you need is a valid Minecraft account. If you are interested in software development then this book will help you get started. If you are simply interested in playing Minecraft with your friends then this book will help you make that experience even more enjoyable.

What you will learn

  • Set up a Bukkit-powered Minecraft server including port forwarding
  • Download and set an IDE to prepare for programming using the Bukkit API
  • Get to grips with the process of installing and testing server mods on your Bukkit server
  • Learn the basics of the Java programming language to begin writing your plugins
  • Handle Bukkit events that occur on a Minecraft server
  • Create customizable plugins to please multiple users
  • Set up permissions on your server and include permission checks in your projects
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Sep 25, 2013
Length: 142 pages
Edition : 1st
Language : English
ISBN-13 : 9781849696005
Languages :
Concepts :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Publication date : Sep 25, 2013
Length: 142 pages
Edition : 1st
Language : English
ISBN-13 : 9781849696005
Languages :
Concepts :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 103.97
Building Minecraft Server Modifications
$32.99
Instant Minecraft Designs How-to
$21.99
Raspberry Pi cookbook for Python programmers
$48.99
Total $ 103.97 Stars icon
Banner background image

Table of Contents

10 Chapters
Deploying a CraftBukkit Server Chevron down icon Chevron up icon
Learning the Bukkit API Chevron down icon Chevron up icon
Creating Your First Bukkit Plugin Chevron down icon Chevron up icon
Testing on the CraftBukkit Server Chevron down icon Chevron up icon
Plugin Commands Chevron down icon Chevron up icon
Player Permissions Chevron down icon Chevron up icon
The Bukkit Event System Chevron down icon Chevron up icon
Making Your Plugin Configurable Chevron down icon Chevron up icon
Saving Your Data Chevron down icon Chevron up icon
The Bukkit Scheduler Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
(6 Ratings)
5 star 50%
4 star 33.3%
3 star 0%
2 star 0%
1 star 16.7%
Filter icon Filter
Top Reviews

Filter reviews by




Stew Beauchamp Oct 30, 2013
Full star icon Full star icon Full star icon Full star icon Full star icon 5
After reading the first 3 chapters I was able to create my first sample plugin for the Minecraft Bukkit (CraftBukkit) server software.Building Minecraft Server Mods is the first book by Cody "Codisimus" Sommers. A great piece of technical writing by a beginner, the first version of the book does suffer from a few editing errors, but I believe that to be a problem caused by the publisher and should not be held against the author.This book is not for beginners, and Cody explains that very early on. I have a bit of experience with Java and I teach computer programming so I had no trouble following the explanations. Cody explains just enough to you to complete the things you need without making it too complicated. I did have a few problems at the start because I tried using Eclipse (which I am not very familiar with) instead of NetBeans which Cody uses throughout the book but I was able to get everything working. He even provides a link to his website where readers can learn basic Java if they don't have experience with the language.The examples are simple enough to understand but complex enough to make them useful and to give you more meat to work on for developing your own plugins or using his examples as a base to start from. The prose of the book is very informal and should be easy to understand for most readers.I was quite happy to start learning how to create plugins for Minecraft servers and the ideas provided in Cody's book have really got me excited about starting some projects. Great work by a new author!
Amazon Verified review Amazon
Jennifer Y. Nov 06, 2016
Full star icon Full star icon Full star icon Full star icon Full star icon 5
It shows a lot of what to do and I think it is good if you are making a server
Amazon Verified review Amazon
PaulB Nov 02, 2013
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Great book! Ever wanted to learn the ins and outs of a Minecraft server? Find all the information in one place can often be challenging. This book walks you through setting up a Craftbukkit server and essential plugins. Then it takes you further into explaining how you too can build custom plugins to work with Minecraft. I am only currently half way through the book, but am totally delighted. I have read and reviewed other books thinking I just wasted so much time and it didn't even deliver what the title promised. I am very pleased with this book so far. If you are excited and want to learn about Minecraft multiplayer servers I recommend this title.
Amazon Verified review Amazon
Larry Mar 22, 2015
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
It is short, but it really has the important points that I needed for a minecraft server setup.
Amazon Verified review Amazon
No One Jun 09, 2015
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
This a good way to get started learning the Bukkit API. It does have its flaws. The first (though beyond the author's control and probably not a problem when it first came out) is that its becoming outdated.The first plugin you write assumes a method that now returns a collection will return an array. Fortunately its not easy to convert, but you have to know enough Java and be familiar enough with your IDE to to figure it out. Someone who wasn't yet comfortable with these things could be lost.Another is the paradox of saying you should know Java before hand for the book to be useful, and then assuming you don't and teaching a lot of Java basics. I know this probably isn't really completely a flaw, as many may read don't have this knowledge, but for me it did at times feel like too much hand holding on knowledge I thought would be assumed. I would say that if you want to do much with Bukkit of Forge you should know or learn Java -- it will really open up possibilities, and is really the only way you can fully understand anything you aren't spoon-fed.The third is that it spend too much time just talking about servers and how to run them for my taste. Again, like with the Java basics this cuts both ways as many are likely to pick this up because they are into the game and dream of running a server and having custom plugins without actually having run a server before.Slow is something that cuts both ways, depending on how much you know -- for many it may be a good things -- if you know how to run servers and know Java (I've been using Java for years, have run a couple small servers, and written Forge mods, so I probably was ahead of many readers) this may seem to go to slow and the first three chapters may be skipable, but its still does a good job introducing Bukkit). If you are completely new to all this, then this will get you started, as long as your willing to keep learning.Over all its a good book, a good way to get started with the Bukkit API; also, the Kindle version is an excellent deal and lack the flaws found in Kindle editions of some books. Just be warned that in the future Bukkit itself my come to be replaced by a newer API called Spoonge.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela