For 1.9/1.10 Spigot, see if you wish to support us! Here ($2.50), alternatively Here (Free), which is free.

CraftBook is a heavily customizable plugin that adds a number of new mechanics to Minecraft with no client mods required. As one of Minecraft's oldest mods/plugins, we were the first to bring you Minecraft computers, Redstone ICs, moving bridges, and more! Here's a short list:

  • Modular, and extremely light on your server.
  • Enable features that you need, disable ones that you don't. Even tweak features to your liking.
  • Adds heaps of mechanics that allow you to mimic large portions of FTB/Tekkit with a vanilla client.
  • Redstone ICs (Logic gates, Sensors, Many others)
  • Elevators for your server so people can jump between floors quickly. (Or smoothly, if you choose so)
  • Working cauldrons so players can cook inside them.
  • Your own custom crafting recipes.
  • Hidden switches for players.
  • Togglable areas and bridges.
  • Chairs you can sit on.
  • Working pipes that can transfer items from place to place.
  • Footprints where your players walk.
  • Mobs and players drop their heads.
  • The ability to bind commands to items, with cool-downs, permissions and timers.
  • And much more... (Seriously, check the wiki)

The CraftBook wiki is currently being revamped! Progress can be viewed here! If you find any issues with the wiki (Especially in pages marked 100% of missing), please report them here.

Want to script plugins without knowing Java? Consider CommandHelper. Want to add /homes /warps /tp /bring, etc.? Try CommandBook.

Getting Started


Bukkit is currently required.

  1. Install WorldEdit first. (DON'T FORGET THIS)
  2. Install any other plugins required for specific features you want.
  3. Download CraftBook and copy the .jar into plugins/.
  4. Run your server once to generate the files.
  5. Edit plugins/CraftBook/config.yml to your liking, and enable anything you want to use.
    Note: For optimal performance, only enable what you need. If you are running a version prior to 3.8.1, check the config to see if any features are enabled that you don't want.
  6. Restart the server for the settings to take effect.

You'll have to read the wiki (see below) to find the permissions you need.


For Permissions, Configuration, A list of features and more, check out the wiki

Read the Wiki Chat with Us Report a Bug Source Code

Learning More
  • Project leader: Contact Me4502 on Twitter
  • Lead developers: Me4502, Dark_Arc
  • Project started: On October 22nd 2010 (Bukkit was started January 2011)
  • Official Discord Server: Click here!
  • Official Minecraft Server: Come join us at
Quote from metrics:

We use metrics to collect stats! We only collect basic things such as version type, and players online. Visit if you would like to learn more about the stats collected. Go into /plugins/PluginMetrics/config.yml to disable stat collecting if you wish.

Quote from auto updater:

We use an auto updater to check for updates! If you wish to disable it, set update-check: false in the config.yml file.

Quote from testimonials:
  • CraftBook is an amazing plugin helping our users build amazing creative structures all over EcoCityCraft. Highly recommend this to other owners/communities. — andrewkm of EcoCityCraft
  • CraftBook is great, we've used it for more than 3 years and we recommend it to everyone. — sawine of MineTown
Thank You

Thank you to the following individuals and organizations (Any donation of $30 or over qualifies you for this list)

Want to support CraftBook yourself? The best way to thank us for working on CraftBook, is to donate. We greatly appreciate it!


You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Vert3xITA Vert3xITA Sep 22, 2016 at 20:48 UTC - 0 likes

    <<reply 2867998="">>

    Hello. Is there some bukkit way to detect if the target entity with ENTITY_(SOMETHING) is only certain? I need to create a command item that removes primed tnt on right click using minecraft:kill command but I cannot specify anyway which entity to target. I though this is possible only using actions so please tell me something to set there to let it detect if the entity is a PRIMED_TNT.
    Edit: I must report that using CLICK_RIGHT_BLOCK so not using BLOCK_PLACE click type the command doesn't get executed if the block isn't placed and I don't want this, I tried using a TRIPWIRE_HOOK with specific name and lores and I'd like to let it convert TNT blocks with metadata value of 1 to 0 (letting TNT that acts as on alpha versions turn to the normal one)
    Edit: can a click type as "PROJECTILE_FLYING" be added? I'd like to let that play particles and so on. Other things I'd like to speak about are:
    1) Movement of the held item (only on default F5 screen mode): I see the item like replacing when the assigned command is triggered, I think this is something you want and I like that as effect to play when triggered but sometime as in things that won't trigger commands instantly (par example BLOCK_PROJECTILE's) or PASSIVE click types it's pretty annoying to see your item moving with no reason, I don't ask to remove it from certain types but just to let it be a true/false value to set for each command item. I like that for something and I don't like for other things. Logically I know that clicking in certain ways minecraft vanilla provides an item movement that cannot be cancelled from bukkit but for other cases where it can be toggled let it do for each command item should be an interesting feature!
    2) Force player to hold the command item to let the command be executed also if it is a click type that may not happen instantly like BLOCK_PROJECTILE's and others. Can this be another option for each command item that let commands perform after their times also if player de-selected the command item's slot for whichever reason if set on false (if par example its name is require-item-hold or similar).
    Edit2: a "Bug report" if that's a bug: the generic "CLICK_RIGHT" I think that should trigger commands on whichever right click type but it doesn't work if I right click on an entity, I'm using a gun with CLICK_RIGHT but it doesn't shoot if I'm clicking directly on the entity (so if by chance I'm in a > 6 radius compared to the entity).

    Last edited Sep 24, 2016 by Vert3xITA
  • Avatar of Me4502 Me4502 Sep 21, 2016 at 00:06 UTC - 0 likes

    @Vert3xITA: Go

    To get the position of the block you use @b.x/y/z. AIR is meant to only occur in the air, the events mirror what the Bukkit events do.

    @Vert3xITA: Go

    FastCraft completely reimplements the recipe system in the game, which is why that works.

    I don't exactly have time to reimplement the entire crafting system in CraftBook at this stage, but I'll try looking into it when I get a chance. I'll be at MINECON this weekend, and I'm in the middle of Uni assessment, so I've been very busy. BFAK:Me4502,29161,4f0de51cb88cee87b6bde141dc91aad088e966ece17f83fc6225cb872dcbc2c8 Donate Moving from FalseBook to CraftBook?|My website!|Quality server hosting!

  • Avatar of Vert3xITA Vert3xITA Sep 20, 2016 at 15:39 UTC - 0 likes

    <<reply 2867091="">>

    A lot of plugins bypass the API: par example FastCraft's custom recipe generator allows to specify nbt tags and I like it also if it haven't some feature that CraftBook's one have.
    Edit: and it also reduces the time while the red zero appears. Anyway if you can please find any method to remove that, creating par example a custom api for custom crafting recipes. I really hate it.

    Last edited Sep 20, 2016 by Vert3xITA
  • Avatar of Vert3xITA Vert3xITA Sep 20, 2016 at 15:38 UTC - 0 likes

    <<reply 2866826="">>

    I think it's just because I cannot let the commands run at the same time: I use a teleport bow that teleports me at the arrow location when it lands on a block stopping ( see below a thing about the arrow stop click type) and I'd like, if it shoots entities, to let it swap the position of the entity with mine one and same for me.
    About BLOCK_PROJECTILE_* I say that the BLOCK_PROJECTILE_AIR executes also if the projectile stops on a block, and BLOCK_PROJECTILE_BLOCK doesn't execute never the command. I had an idea to create a bow which projectiles destroy the block they hit but I cannot get the air block to break that but the projectile stops only that way. I tried using different placeholders to get coordinates but noone gets the hit block of the projectile.

  • Avatar of Me4502 Me4502 Sep 18, 2016 at 13:20 UTC - 0 likes

    @ketchupcoke: Go

    RecipeManager doesn't use Spigot to do it, it bypasses the API. That won't be added to CraftBook until it's possible to do with the API, for comparability reasons.

  • Avatar of ketchupcoke ketchupcoke Sep 17, 2016 at 14:33 UTC - 0 likes

    Hey, just found out it's possible to hide default attributes from minecraft in crafting recipes - RecipeManager has a flag @hide all which does this to the result Would a similar thing be possible to add to CB?

  • Avatar of Me4502 Me4502 Sep 17, 2016 at 14:10 UTC - 0 likes

    @Vert3xITA: Go

    How exactly would you do that with commands? If you tell me that I can investigate how to use it with CommandItems

  • Avatar of Vert3xITA Vert3xITA Sep 17, 2016 at 13:26 UTC - 0 likes

    <<reply 2866329="">>

    ok the problem is that I'd like to let an entity teleport to my location but that doesn't happen...

  • Avatar of Me4502 Me4502 Sep 15, 2016 at 22:08 UTC - 0 likes

    @Vert3xITA: Go

    The problem with changing the CraftBook selectors is they've been that way for 4 years, changing them would break all current servers.

    And yes, the UUID selector has always been there

  • Avatar of Vert3xITA Vert3xITA Sep 15, 2016 at 19:55 UTC - 0 likes

    <<reply 2866135="">>

    Ok but you could also try to change placeholders instead but if you prefer to use @e anyway just let me use it also with mc arguments.
    Edit: is "@d.u" placeholder existing? (to get the targeted entity's uuid)

    Last edited Sep 15, 2016 by Vert3xITA

What is the hardest or most confusing feature of CraftBook to use or setup with help from the wiki? (Please explain reasoning in comments)

  1. Choice:

  1. Results
  2. 32 comments


Date created
Aug 25, 2011
Last update
Jun 17, 2016
Development stage
  • enUS
GNU General Public License version 3 (GPLv3)
Curse link
Recent files



Required dependency
Optional dependency