Builder for Citizens2

Builder for Citizens2

Builder is a character plugin for the NPC plugin Citizens2. With Builder, A NPC can be given a mcedit/worldedit schematic file and build it block by block. Builder NPCs can also maintain an existing building, replacing changed blocks or removing new ones.


Builde' NPCs can:

  • Build MCEdit/Worldedit schematics, block by block.
  • Rebuild an existing structure, fixing anything that has been changed.
  • Require players to supply the building materials before starting to build.


  • Install Citizens2 Please use Latest Dev Builds
  • Unzip to your minecraft /plugins/ directory.
  • This will install Builder jar, create the Builder/schematics/ folder and put house.schamatic in it.
  • Start your server.


  • Create a NPC with Citizens and give it the 'builder' trait.
    •  /npc create Bob --trait builder
  • Load a schematic with /builder load, Example:
    •  /builder load house
    • This will load the included example house.schematic file.
  • Position the NPC in the center of the area in which it should build.
  • Start the NPC building with:
    •  /builder build

More detailed instructions and other commands can be found on the Citizens 2 Wiki


Q: How can I use multiple builders on one project?

A: You can use up to 4 builders on one project by giving them all the same schematic and origin, but different build patterns. You can also manually split your schematic into multiple parts with WorldEdit or MCEdit.

Q: How can I make builders go faster?

A: Use the /builder timeout command to set the max time between blocks. You can also make the builder walk faster with "/npc speed"

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

  • Avatar of jolbol1 jolbol1 May 31, 2013 at 13:48 UTC - 0 likes

    I Get Error 29.05 23:45:56 [Server] SEVERE at org.bukkit.command.SimpleCommandMap.dispatch( 29.05 23:45:56 [Server] SEVERE at org.bukkit.command.PluginCommand.execute( 29.05 23:45:56 [Server] SEVERE at net.citizensnpcs.Citizens.onCommand( 29.05 23:45:56 [Server] SEVERE at net.citizensnpcs.api.command.CommandManager.executeSafe( 29.05 23:45:56 [Server] SEVERE at net.citizensnpcs.api.command.CommandManager.execute( 29.05 23:45:56 [Server] SEVERE at net.citizensnpcs.api.command.CommandManager.executeMethod( 29.05 23:45:56 [Server] SEVERE at java.lang.reflect.Method.invoke( 29.05 23:45:56 [Server] SEVERE at sun.reflect.DelegatingMethodAccessorImpl.invoke( 29.05 23:45:56 [Server] SEVERE at sun.reflect.NativeMethodAccessorImpl.invoke( 29.05 23:45:56 [Server] SEVERE at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 29.05 23:45:56 [Server] SEVERE at net.citizensnpcs.commands.NPCCommands.create( 29.05 23:45:56 [Server] SEVERE at net.citizensnpcs.api.npc.AbstractNPC.addTrait( 29.05 23:45:56 [Server] SEVERE at net.jrbudda.builder.BuilderTrait.onSpawn( 29.05 23:45:56 [Server] SEVERE java.lang.ClassCastException: net.jrbudda.builder.Builder cannot be cast to net.jrbudda.builder.Builder

    BFAK:90617352,07369ef89b9e3575ea825a67fdc64f46a5ddd639a0e70487ab97448697800308 Hello There! ;)

  • Avatar of ChanceLune ChanceLune May 25, 2013 at 18:36 UTC - 0 likes

    Excellent Plugin ! Very good ;) ( And sentry )

  • Avatar of jdb200 jdb200 May 25, 2013 at 12:54 UTC - 0 likes

    @Mr_Wired: Go

    Yes, it works quite well with Sentry. I suggest using it as builder and sentry to keep mobs, animals, and players away from the project.

  • Avatar of jrbudda jrbudda May 24, 2013 at 21:17 UTC - 0 likes

    @Silversbane: Go

    Ive actually moved away from that and implemented a custom supply mode list so you can configure exactly which item each block requires. This will be in the next update. However for now I'm still only matching on block ID. Future update I will add support for matching on ID and data.

  • Avatar of Silversbane Silversbane May 23, 2013 at 19:57 UTC - 0 likes

    @jrbudda: Go

    Add server-wide setting so that Supply mode requires exact blocks.

    I saw this on your most recent update. But I am not sure what it means. I am trying to force people to place specific blocks for example - spruce wood over oak wood. Or stone slab over wooden slab and so on.

  • Avatar of Mr_Wired Mr_Wired May 21, 2013 at 02:31 UTC - 0 likes

    Does this work alongside Sentry for Citzens2?

  • Avatar of craftovski craftovski May 19, 2013 at 18:50 UTC - 0 likes

    @kin61: Go

    MoveTimeoutSeconds: 0.1

    0.1 = Fastest possible

  • Avatar of craftovski craftovski May 19, 2013 at 18:28 UTC - 0 likes

    I would like to make a suggestion when donating/supplying blocks to builder, to make new players.yml data file or whatever where would be listed all players who donated and number of blocks donated, and if possible there could be a command that calls that list to be displayed in scoreboard or in chat, ofc not all players, lets say top 5 or top 10.

    I would rly appreciate if this was no problem to add, if not scoreboard/chat list but just store data who donated and how much blocks so i can manually reward top players.

    Ty and i hope you would consider this.

  • Avatar of kin61 kin61 May 19, 2013 at 03:38 UTC - 0 likes

    wanted to know if you make builders have a config where you can make them speed up faster to finish ? :D

  • Avatar of o0oRyano0o o0oRyano0o May 14, 2013 at 01:04 UTC - 0 likes

    Im sorry but this plugin is....

    AMAZING dude thats so cool!


Date created
Sep 11, 2012
Last update
Jun 03, 2014
Development stage
Public Domain
Curse link
Builder for Citizens2
Recent files