Postal
There is no substitute for personal service.
New
- GPS address plotting and compass navigation, Detailed item shipment.
- New WorldGuard, Towny and Dynmap support. New bulk mailing capability.
Introduction
Postal is a Craftbukkit plugin dependant on Citizens2. It is a messaging system making it possible for Minecraft players to communicate with one another using the book and quill, written book item. These written communications may span worlds. Postal is an animated postal presence that may be added to any Minecraft town, settlement or mailroom. Chests are used as residence mailboxes as well as mail storage in local post offices.
Postal Pages | ||
|---|---|---|
| Getting Started | Permissions | Economy Support |
| Towny Support | WayPoint Editor | System Notes |
| Postal Wiki |
Postal Crew
Citizen2 based NPC’s are the Postal crew. They are the postmen spawned and dispatched by Postal. These NPC postmen walk regular routes in towns serviced by Postal post offices. A central post office connects all of the local post offices by teleporting a NPC worker called the PostMaster from town to town, or world to world. This central NPC continually monitors and moves out of town mail to the appropriate destination. The local NPC postman takes it from there. Pickups and deliveries are done on foot, cheerfully. They know how to open and close doors, and they are a wonder on stairs. They are polite.
Addresses
Postal has a two part address system it uses to plot the location of the mailbox it services, as well as define the post office that services the address. A typical address looks like this:
<PostOffice [Address]>
Postal commands generally accept addresses as one word, or two words. If one word is indicated as an address, it is assumed that the subject is a post office. A two word address is a complete address indicating a specific residential mailbox.
The exceptions to this rule of thumb are commands that imply a residence but accept a two word address specifying the post office. /setaddr is an example of this. Invoked with a one word parameter implies that the one word is an address name and Postal is to choose the post office.
There is no built in limit on how many post offices a server may have. The Postal system typically traverses worlds.
New post offices and addresses are created and deleted on the fly. These addresses and post offices are part of a tightly written, hierarchically-structured database. This database is designed to meet the requirements of a dispatcher bent on getting mail delivered efficiently. The post man likes to walk around the town when there is nothing better to do, but get out of his way if there is mail to pick up or deliver.
Geo-Aware
Postal always knows what post office or address you are close to when invoking commands and will be as helpful as possible to relieve you of name details. This help is contextual in nature which makes it possible to use commands without any parameters simply based on your location. Complimenting this ease of use is a command-confirm system that makes it possible for Postal to safely attempt to complete complicated names with just a few characters. This is because you have an opportunity to confirm the completed command with a single ‘/’. If the command didn’t come out right you can simply try again without confirming.
For Towny users, Postal always knows when it is on Towny soil and will defer to Towny hierarchy. All appropriate Postal commands are Towny aware and try to accommodate what Towny players need when used
Creating Addresses
The geographic awareness built into Postal makes it easy to create new addresses. To define a new address the only parameter required is the name you would like to use since Postal will automatically find the closest post office for you. Designing the route for the postman is even easier because Postal will figure out everything based on where you are standing. On a new address you will be teleported to the servicing post office, the beginning of the route, and given a compass pointing to your address. A modern HUD display is included to provide helpful stats while clicking on waypoints. Once you double click the final waypoint the postman will automatically appear using the route you just defined to initialize your mail box.
Finding Addresses
- / TLIST Short for town-list, will present the player with a formatted, alphabetical list of towns when entered without parameters. The closest 3 towns, in order of distance, are also shown. If entered with enough characters to identify a particular town, the addresses of that town are listed.
- / ALIST Short for address-list, will list the addresses of the closest town when entered without parameters. Like /tlist, it will list the addresses of a particular town if entered with enough characters to identify it. The two commands complement each other including details that the other doesn’t.
- / PLIST Short for player-list, lists the closes 8 players, in order of distance when entered without parameters. Along with the listed player is the Postal address he/she is closest to with the compass heading required to get there. If entered with enough characters to complete a player name, Postal will list any Postal addresses or post offices owned by the player.
- / GPS Lists the closest 8 post offices or addresses with their respective compass headings when entered without parameters. /gps may also be given the name of a post office, or an address pair to set your compass to this location.
- / GO Teleports to Postal locations. The type type of location is determined by the number of parameters entered. Entered with no parameters assumes the central post office. One parameter assumes a local post office or town. Two parameters indicates a full residential address. Complicated names are automatically completed, and full named locations, as completed by Postal, are displayed for confirmation before teleportation. These location types may be secured or require owner permission to use.
- Dynmap Postal uses Dynmap if it is installed. All addresses and post offices are plotted and labeled. The active routes and post man locations are shown in real-time.
Navigation
Your compass is calibrated to line up with the standard, Minecraft coordinate system when listing headings with the above commands. These are the same compass directions shown when pressing [F3]. So, with your calibrated compass and the distance and heading combination from the list, you have what you need to navigate to it. This is the way compasses are normally used outside of Minecraft. The benefit of navigating to a destination is that you remain aware of where you are in relation to all the listed destinations, as well as other distance and heading destinations received from other plugins ie: GPS, Pplot and gpsTowny.
Mail and Shipping
Postal letters are based on the written book item. This book will handle up to 50 pages of written correspondence. Item shipping is done with single chests. The two commands used for this have the built-in address finding and completing capabilities described above. Indicating desired addresses is done with the minimum amount of typing. The two commands are: /addr <PO [Address]> and /package <PO [Address]>
On servers that have economy turned on, both of these commands tell you the price of the postage or shipping and give you a chance to confirm it.
Once addressed, letters may be put in any accessible Postal mailbox, and Postal will take it from there. Shipments involve the creation of a shipping label which may be mailed like any letter. Once packaged, the shipment is sign-sealed and indestructible until the post man picks up the shipping label. The post man removes the chest at that point for transport to the recipient.
The recipient of a shipment may refuse the shipment. If refused, the shipment is returned to the sender.
Mass mailings sent to entire towns, even worlds are available to administrators, Towny mayors and post office owners. The /distr command facilitates this.
Capacity Management
Full mail boxes are managed. If the chest is full, the postman will delete the oldest junk mail if he finds one. If that doesn't create the room he needs, he will look for a non-book to delete. If unable to find room in a mailbox, the postman will continue trying to deliver until successful. Mail is otherwise held at the local post office.
Bulk distributions available to post office owners, Towny mayors, and administrators are sent with an expiration date. Regular information mailings therefore do not back up and become undesired clutter
Dispatcher
The NPC dispatcher provides regular coverage and route-walking, oldest next. This dispatcher is also preemptive in that it recognizes mail waiting to be delivered or picked up. The dispatcher manages the route walking schedule to favor actual mail movement over route-walking, or postal presence. Both the post men and the PostMaster are preemptively dispatched to keep the mail moving efficiently.
Chunk Manager
Postal has a chunk manager that monitors chunks required for postal routes. These chunks are automatically loaded and kept loaded. This makes it possible for NPC's to continue doing their job when there is no player in sight. NPC's have a tendency to go to sleep when no player is around. This chunk manager also facilitates the control of spawning monsters on Postal routes. There is a switch in the config file that controls this. By default, Postal routes are kept monster free.
WatchDog
Postal has an evolved watchdog, monitoring system. The Postal workers are vigilantly monitored. It is capable of respawning a NPC worker if something happens to it. It can restart itself if needed. Mail is always backed up. A Server crash or NPC griefing should not result in lost mail. The Citizens NPC’s are pretty reliable on their own.
General Notes
The Bukkit versioning that started early December 2012, applies to all plugins that go outside the Bukkit api to reach the Minecraft api. This started with 145.R1, the first recommended build for 145.
Coincidently, and the cause for much confusion here, The Bukkit api was expanded to include dealing with Book and Quill items. Pre 145.R1 Postal does go beyond the Bukkit api to deal with written books because it has to. Post 145.Ri uses the Bukkit api instead and is therefore exempt from the Bukkit versioning restrictions.
There are only two versions of Postal, delineated by an api improvement not a versioning requirement.
Citizens2 Note: At Citizens build 762 the NPCs underwent navigational, speed refinement. As this relates to Postal there is a modest speed change. It causes the NPCs to move a little slower. It can trigger watchdog activity by Postal since the NPCs don't seem to be on schedule. The fix is simple. Just change the Speed setting in 'Config.yml' from 1.0 to 1.2
Videos
YouTube Getting Started by Hmmcrunchy
-
View User Profile
-
Send Message
Posted Mar 8, 2013Hi, I'm using GriefPrevention. How can I use Postal with this and allow Postboxes to exist inside claims? I'm able to create addresses and routes fine. When the PostMan comes, he's unable to find the chest and then teleports away.
-
View User Profile
-
Send Message
Posted Mar 8, 2013@SturmZwerg
I ran a test, and your users are right, there is something wrong with /package'ing. It is indeed dropping some items. The test I ran is below. I couldn't duplicate the chests in personal inventory turning up missing.
As for the package disappearing; It is supposed to disappear when the postman picks up the mailed shipping label. The other possibility is that versions of Postal, excluding the current version, would replace anything in a player's hand when running /package. Starting with the current version, the player is forced to drop anything they might be holding, first.
Edit: actually, the above fix is not in a release version, it is still sitting on the pre-release link labeled 2.9x
I will fix the /package bug and put it on the Postal page on the Citizens2 site, the bottom - pre-release link. Either later today or to-morrow, AM.
Maybe your users can give me specific steps to dublicate the other two issues.
On survival mode, Bukkit 147
1) created full chest, 27 slots, many slots filled with stacks of 64
1a) /package poffice address
1b) shipping label created and put in my hand
1c) shipping label missing 3 items
1d) chest signed and sealed
1e) I had chests in my inventory - they are still there.
2) mailed the shipping label
2a) picked up by postman
2b) sealed shipment gone
3) gotoaddr poffice address
3a) shipping label in mailbox
4) accept shipping label
4a) all 24 items on the shipping label in the chest.
4b) extended definitions of some items lost. ie: red wool is delivered as simply, wool.
4c) all the chests in my personal inventory intact.
-
View User Profile
-
Send Message
Posted Mar 8, 2013@IrusVirus
I never thought about that combination. I guess I don't need to do anything to Postal to anticipate that possibility. If a user knows enough about Dynmap to turn a particular world off, setting a flag in Postal to accomodate it is not unreasonable.
I could have Dynmap default to false. My reasoning for having it default to true was based on Postal automatically turning Dynmap off if it was not installed.
I appreciate the report and will make a note of this possibility somwhere on this site. Btw, I hope you had a chance to look at Postal on Dynmap :-) It is a little different than other plugin implementations. I did a far more thourough job on it than I had planned to because of how well it fit Postal.
Edit: on second thought - I think I better have Postal check that the Dynmap world is turned on before trying to deal with it. There might be other worlds turned on that should be updated. So Dynmap false turns everything off, Dynmap true updates only the worlds Dynmap is set to report.
-
View User Profile
-
Send Message
Posted Mar 8, 2013@HiROs15
Here is the latest recommended 147 version on Bukkit:
http://dev.bukkit.org/server-mods/citizens/files/26-2-0-7-beta-update-recommended/
I am using the current dev builds here: (the ones with the blue dots)
http://ci.citizensnpcs.com/job/Citizens2/
Both work fine for me.
-
View User Profile
-
Send Message
Posted Mar 8, 2013@mcfacilitator
I know the error... I have set dynmap "true" and make a postal on a world who does not displays on dynmap, "world_test"... now in the "world" the error ist gone... THX =D
-
View User Profile
-
Send Message
Posted Mar 8, 2013Could you please link me a valid instalation of Citizens2 The one i have installed is working on my server but please link me one that this plugin is compatible with.
-
View User Profile
-
Send Message
Posted Mar 7, 2013Thx. Bukkit Build #2624 1.4.7 R-1.0 Postal: va_postal_29_146_plus.jar
-
View User Profile
-
Send Message
Posted Mar 7, 2013@SturmZwerg
I will run through your examples in the morning over coffee. I need to know what Bukkit version though. And to be complete, the name of the Postal file you are running.
-
View User Profile
-
Send Message
Posted Mar 7, 2013@IrusVirus
Postal is trying to plot a Dynmap route and generating a fault in the process.
First of all, set Dynmap to false in config.yml to temprarily work around this problem. It should go away.
Secondly, can you describe to me how this error emerges? ie: does it come up immediatelly, or does it take a while?...
On 147 you really need to be current on Dynmap. I am running the dev versions at :
http://www.minecraftforum.net/topic/1543523-dynmap-dynamic-web-based-maps-for-minecraft/
-
View User Profile
-
Send Message
Posted Mar 7, 2013Hey mcfacilitator, first of all it´s a great plugin, thanks for your job :) But i need some help, on our server it´s not possible to send more than 8 slots per package. If you use more than 8 slots, the other items will be gone at receiving the package. Further, our users complain sometime when they send a package (you place the chest, execute the /package command) all other chests in their inventory are gone. And the last problem is, sometimes the whole package is gone. :(
Thanks you! SturmZwerg
-
View User Profile
-
Send Message
Posted Mar 7, 2013@RetroCharles
You are very welcome, Glad you got it going.
-
View User Profile
-
Send Message
Posted Mar 7, 2013@HiROs15
HIROs15, I am sorry you are having problems, and thank you for trying Postal. I don't have enough information to help you other than to make sure you are running this version:
http://dev.bukkit.org/server-mods/postal/files/29-va_postal-vers-2-9-1-4-5-r1-rb-1-4-6-1-4-7/
But, before that, make sure you have a valid Citizens2 installation. It looks like you are struggling with a remote installation.
Btw, I do this uncompensated as a form of development recreation. I hate to feel the kind of pressure I am feeling here, but I do understand where it comes from.
Take it off your system, and let's try to work through this without the pressure and worry of disrupting your server. Then you can put it up when you are ready. OK? I will gladly help.
-
View User Profile
-
Send Message
Posted Mar 7, 2013PLZ HELP!!!! Im using CB 1.4.7 R1.0 and there is no postal dir in my ftp. When i type /postal [command] it just replies to me with /postal <Start,stop> ect... when i use any command that postal installs it does this plz respond asap plz im loosing money fast with this not working!!!
-
View User Profile
-
Send Message
Posted Mar 7, 2013Hi mcfacilitator :)
What does this error mean?
2013-03-06 22:44:35 [SEVERE] Exception in thread "Craft Scheduler Thread - 343" 2013-03-06 22:44:35 [SEVERE] org.apache.commons.lang.UnhandledException: Plugin va_postal v29_146_plus generated an exception while executing task 1988771 at org.bukkit.craftbukkit.v1_4_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.NullPointerException at com.vodhanel.minecraft.va_postal.common.Dynmap$2.run(Dynmap.java:352) at org.bukkit.craftbukkit.v1_4_R1.scheduler.CraftTask.run(CraftTask.java:58) at org.bukkit.craftbukkit.v1_4_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) ... 3 more
-
View User Profile
-
Send Message
Posted Mar 6, 2013@mcfacilitator
Thank so much for the fast reply! Amazing plugin! Great job :) I myself and other of the server (family members + friends) would like to say that you have a great plugin!
Thanks for making our server a bit more fun! :D
-Charles
-
View User Profile
-
Send Message
Posted Mar 6, 2013@Mannollo
The settings are in the 'config.yml' file, at the top, in the 'Settings' section. Postal automatically adds any missing settings. If you are not using the current version, you should update, The configuration file has always been backward compatible.
When you say 'I have 11 minecraft server on it' does that mean you are running 11 individual servers on one platform?
-
View User Profile
-
Send Message
Posted Mar 6, 2013@RetroCharles
You are running the wrong version of Postal. Try this one:
http://dev.bukkit.org/server-mods/postal/files/29-va_postal-vers-2-9-1-4-5-r1-rb-1-4-6-1-4-7/
-
View User Profile
-
Send Message
Posted Mar 5, 2013My server keeps crashing after I type /postal start
Here is my crash report, is there anything that I did wrong?:
Minecraft Crash ReportDon't be sad, have a hug! <3Time: 3/5/13 10:08 PM Description: Ticking entity
java.lang.NoClassDefFoundError: net/minecraft/server/NBTBase at com.vodhanel.minecraft.va_postal.booknote.ChestManip.po_create_log(ChestManip.java:1545) at com.vodhanel.minecraft.va_postal.booknote.ChestManip.po_create_and_install_postal_log(ChestManip.java:1515) at com.vodhanel.minecraft.va_postal.config.WalkTheRoute.start_postal_route(WalkTheRoute.java:356) at com.vodhanel.minecraft.va_postal.config.WalkTheRoute.run(WalkTheRoute.java:105) at net.citizensnpcs.api.ai.SimpleGoalController.addGoalToExecution(SimpleGoalController.java:39) at net.citizensnpcs.api.ai.SimpleGoalController.setupExecution(SimpleGoalController.java:159) at net.citizensnpcs.api.ai.SimpleGoalController.trySelectGoal(SimpleGoalController.java:173) at net.citizensnpcs.api.ai.SimpleGoalController.run(SimpleGoalController.java:143) at net.citizensnpcs.api.npc.AbstractNPC.update(AbstractNPC.java:204) at net.citizensnpcs.npc.CitizensNPC.update(CitizensNPC.java:207) at net.citizensnpcs.npc.entity.EntityHumanNPC.j_(EntityHumanNPC.java:159) at net.minecraft.server.v1_4_R1.World.entityJoinedWorld(World.java:1332) at net.minecraft.server.v1_4_R1.WorldServer.entityJoinedWorld(WorldServer.java:548) at net.minecraft.server.v1_4_R1.World.playerJoinedWorld(World.java:1313) at net.minecraft.server.v1_4_R1.World.tickEntities(World.java:1191) at net.minecraft.server.v1_4_R1.WorldServer.tickEntities(WorldServer.java:445) at net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:580) at net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224) at net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849) Caused by: java.lang.ClassNotFoundException: net.minecraft.server.NBTBase at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:70) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 21 more
A detailed walkthrough of the error, its code path and all known details is as follows:
-------------------HeadStacktrace: at com.vodhanel.minecraft.va_postal.booknote.ChestManip.po_create_log(ChestManip.java:1545) at com.vodhanel.minecraft.va_postal.booknote.ChestManip.po_create_and_install_postal_log(ChestManip.java:1515) at com.vodhanel.minecraft.va_postal.config.WalkTheRoute.start_postal_route(WalkTheRoute.java:356) at com.vodhanel.minecraft.va_postal.config.WalkTheRoute.run(WalkTheRoute.java:105) at net.citizensnpcs.api.ai.SimpleGoalController.addGoalToExecution(SimpleGoalController.java:39) at net.citizensnpcs.api.ai.SimpleGoalController.setupExecution(SimpleGoalController.java:159) at net.citizensnpcs.api.ai.SimpleGoalController.trySelectGoal(SimpleGoalController.java:173) at net.citizensnpcs.api.ai.SimpleGoalController.run(SimpleGoalController.java:143) at net.citizensnpcs.api.npc.AbstractNPC.update(AbstractNPC.java:204) at net.citizensnpcs.npc.CitizensNPC.update(CitizensNPC.java:207) at net.citizensnpcs.npc.entity.EntityHumanNPC.j_(EntityHumanNPC.java:159) at net.minecraft.server.v1_4_R1.World.entityJoinedWorld(World.java:1332) at net.minecraft.server.v1_4_R1.WorldServer.entityJoinedWorld(WorldServer.java:548) at net.minecraft.server.v1_4_R1.World.playerJoinedWorld(World.java:1313)Entity being tickedDetails: Entity Type: null (net.citizensnpcs.npc.entity.EntityHumanNPC) Entity ID: 2527 Name: §cPost§9Man Exact location: 286.00, 66.00, 50.00 Block location: World: (286,66,50), Chunk: (at 14,4,2 in 17,3; contains blocks 272,0,48 to 287,255,63), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Momentum: 0.00, 0.00, 0.00 Stacktrace: at net.minecraft.server.v1_4_R1.World.tickEntities(World.java:1191) at net.minecraft.server.v1_4_R1.WorldServer.tickEntities(WorldServer.java:445)Affected levelDetails: Level name: RetroMineCraft All players: 1 total; [EntityPlayer['ReTrOChArLeS'/1429, l='RetroMineCraft', x=286.96, y=67.00, z=52.20](ReTrOChArLeS at 286.95964290173464,67.0,52.20302832154377)] Chunk stats: ServerChunkCache: 665 Drop: 0 Level seed: 4310657093795215386 Level generator: ID 00 - default, ver 1. Features enabled: true Level generator options: Level spawn location: World: (246,65,319), Chunk: (at 6,4,15 in 15,19; contains blocks 240,0,304 to 255,255,319), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Level time: 25504309 game time, 505396546 day time Level dimension: 0 Level storage version: 0x04ABD - Anvil Level weather: Rain time: 169987 (now: false), thunder time: 94442 (now: false) Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: false Stacktrace: at net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:580) at net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224) at net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)System DetailsDetails: Minecraft Version: 1.4.7 Operating System: Windows 7 (amd64) version 6.1 Java Version: 1.7.0_05, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 890399080 bytes (849 MB) / 1956642816 bytes (1866 MB) up to 3817799680 bytes (3640 MB) JVM Flags: 2 total; -Xmx4G -Xms1G AABB Pool Size: 4666 (261296 bytes; 0 MB) allocated, 1928 (107968 bytes; 0 MB) used Suspicious classes: $Proxy3, $Proxy4, $Proxy17[com.avaje.ebean.EbeanServer], [com.avaje.ebean.config.ServerConfig], [com.avaje.ebean.config.dbplatform.DatabasePlatform, SQLitePlatform], [com.google.common.base.Predicate, Function, Joiner, ...], [com.google.common.cache.CacheLoader, SupplierToCacheLoader, FunctionToCacheLoader, ...], [com.google.common.collect.ImmutableCollection, ImmutableList, Maps, ...], [com.google.common.io.Files, InputSupplier, OutputSupplier], [com.google.common.primitives.Ints], [com.google.common.util.concurrent.UncheckedExecutionException, Callables], [com.mysql.jdbc.NonRegisteringDriver, Driver, StringUtils], [net.minecraft.server.v1_4_R1.ICommandListener, IMojangStatistics, IDataManager, ...], [org.apache.commons.lang.Validate, UnhandledException, StringUtils, ...], [org.apache.commons.lang.exception.Nestable, NestableRuntimeException], [org.bukkit.World, BlockChangeDelegate, Server, ...], [org.bukkit.block.BlockState, BlockFace, Block, ...], [org.bukkit.command.CommandSender, RemoteConsoleCommandSender, CommandException, ...], [org.bukkit.command.defaults.VanillaCommand, SaveCommand, SaveOnCommand, ...], [org.bukkit.configuration.ConfigurationSection, Configuration, MemorySection, ...], [org.bukkit.configuration.file.FileConfiguration, YamlConfiguration, FileConfigurationOptions, ...], [org.bukkit.configuration.serialization.ConfigurationSerializable, ConfigurationSerialization, DelegateDeserialization, ...], [org.bukkit.conversations.Conversable, ConversationCanceller, ConversationAbandonedListener, ...], [org.bukkit.craftbukkit.Main], [org.bukkit.craftbukkit.libs.com.google.gson.JsonDeserializer, JsonParseException, GsonBuilder, ...], [org.bukkit.craftbukkit.libs.com.google.gson.annotations.SerializedName], [org.bukkit.craftbukkit.libs.com.google.gson.internal.Excluder, $Gson$Preconditions, Primitives, ...], [org.bukkit.craftbukkit.libs.com.google.gson.internal.bind.JsonTreeReader, JsonTreeWriter, BigDecimalTypeAdapter, ...], [org.bukkit.craftbukkit.libs.com.google.gson.reflect.TypeToken], [org.bukkit.craftbukkit.libs.com.google.gson.stream.JsonReader, JsonWriter, MalformedJsonException, ...], [org.bukkit.craftbukkit.libs.jline.TerminalFactory, Terminal, Flavor, ...], [org.bukkit.craftbukkit.libs.jline.console.ConsoleReader, CursorBuffer, ConsoleKeys, ...], [org.bukkit.craftbukkit.libs.jline.console.completer.CompletionHandler, CandidateListCompletionHandler], [org.bukkit.craftbukkit.libs.jline.console.history.History, MemoryHistory], [org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader, Configuration, Log], [org.bukkit.craftbukkit.libs.joptsimple.OptionException, OptionParser, OptionSpec, ...], [org.bukkit.craftbukkit.libs.joptsimple.internal.AbbreviationMap, ReflectionException, Reflection, ...], [org.bukkit.craftbukkit.v1_4_R1.LoggerOutputStream, CraftServer, CraftOfflinePlayer, ...], [org.bukkit.craftbukkit.v1_4_R1.block.CraftBlock, CraftBlockState, CraftSign, ...], [org.bukkit.craftbukkit.v1_4_R1.chunkio.ChunkIOExecutor, ChunkIOProvider, QueuedChunk], [org.bukkit.craftbukkit.v1_4_R1.command.ServerCommandSender, CraftConsoleCommandSender, ColouredConsoleSender, ...], [org.bukkit.craftbukkit.v1_4_R1.conversations.ConversationTracker], [org.bukkit.craftbukkit.v1_4_R1.enchantments.CraftEnchantment], [org.bukkit.craftbukkit.v1_4_R1.entity.CraftEntity, CraftLivingEntity, CraftHumanEntity, ...], [org.bukkit.craftbukkit.v1_4_R1.event.CraftEventFactory], [org.bukkit.craftbukkit.v1_4_R1.generator.InternalChunkGenerator, CustomChunkGenerator, NormalChunkGenerator, ...], [org.bukkit.craftbukkit.v1_4_R1.help.SimpleHelpMap, CommandAliasHelpTopic, HelpYamlReader, ...], [org.bukkit.craftbukkit.v1_4_R1.inventory.CraftItemStack, CraftRecipe, CraftShapedRecipe, ...], [org.bukkit.craftbukkit.v1_4_R1.map.CraftMapView, CraftMapRenderer, RenderData, ...], [org.bukkit.craftbukkit.v1_4_R1.metadata.EntityMetadataStore, PlayerMetadataStore, WorldMetadataStore, ...], [org.bukkit.craftbukkit.v1_4_R1.potion.CraftPotionEffectType, CraftPotionBrewer], [org.bukkit.craftbukkit.v1_4_R1.scheduler.CraftScheduler, CraftTask, CraftAsyncTask, ...], [org.bukkit.craftbukkit.v1_4_R1.updater.AutoUpdater, BukkitDLUpdaterService, DateDeserializer, ...], [org.bukkit.craftbukkit.v1_4_R1.util.Waitable, ServerShutdownThread, TerminalConsoleHandler, ...], [org.bukkit.enchantments.Enchantment, EnchantmentWrapper], [org.bukkit.entity.Entity, Damageable, LivingEntity, ...], [org.bukkit.event.Event, Cancellable, Listener, ...], [org.bukkit.event.block.BlockEvent, BlockFadeEvent, BlockGrowEvent, ...], [org.bukkit.event.enchantment.EnchantItemEvent], [org.bukkit.event.entity.EntityEvent, EntityInteractEvent, EntityDamageEvent, ...], [org.bukkit.event.hanging.HangingEvent, HangingPlaceEvent, HangingBreakEvent, ...], [org.bukkit.event.inventory.InventoryType, BrewEvent, FurnaceSmeltEvent, ...], [org.bukkit.event.painting.PaintingEvent, PaintingPlaceEvent, PaintingBreakEvent, ...], [org.bukkit.event.player.PlayerEvent, PlayerInteractEvent, PlayerFishEvent, ...], [org.bukkit.event.server.ServerEvent, MapInitializeEvent, ServerCommandEvent, ...], [org.bukkit.event.vehicle.VehicleEvent, VehicleCollisionEvent, VehicleBlockCollisionEvent, ...], [org.bukkit.event.weather.WeatherEvent, ThunderChangeEvent, WeatherChangeEvent, ...], [org.bukkit.event.world.WorldEvent, WorldSaveEvent, WorldInitEvent, ...], [org.bukkit.generator.ChunkGenerator], [org.bukkit.help.HelpMap, HelpTopic, IndexHelpTopic, ...], [org.bukkit.inventory.ItemStack, Recipe, ShapedRecipe, ...], [org.bukkit.inventory.meta.ItemMeta, Repairable, BookMeta, ...], [org.bukkit.map.MapView, MapCanvas, MapRenderer, ...], [org.bukkit.material.MaterialData, Tree, Directional, ...], [org.bukkit.metadata.Metadatable, MetadataStore, MetadataStoreBase, ...], [org.bukkit.permissions.ServerOperator, Permissible, PermissionDefault, ...], [org.bukkit.plugin.ServicesManager, PluginManager, SimpleServicesManager, ...], [org.bukkit.plugin.java.JavaPluginLoader, PluginClassLoader, JavaPlugin], [org.bukkit.plugin.messaging.PluginMessageRecipient, Messenger, StandardMessenger, ...], [org.bukkit.potion.PotionEffectType, PotionEffectTypeWrapper, PotionBrewer, ...], [org.bukkit.scheduler.BukkitScheduler, BukkitTask, BukkitWorker], [org.bukkit.util.Vector, BlockVector, Java15Compat, ...], [org.bukkit.util.permissions.DefaultPermissions, CommandPermissions, BroadcastPermissions], [org.fusesource.hawtjni.runtime.Library], [org.fusesource.jansi.AnsiOutputStream, WindowsAnsiOutputStream, AnsiConsole, ...], [org.fusesource.jansi.internal.Kernel32, CONSOLE_SCREEN_BUFFER_INFO, COORD, ...], [org.sqlite.JDBC, Conn, SQLiteConfig, ...], [org.yaml.snakeyaml.DumperOptions, ScalarStyle, FlowStyle, ...], [org.yaml.snakeyaml.composer.Composer, ComposerException], [org.yaml.snakeyaml.constructor.BaseConstructor, SafeConstructor, Constructor, ...], [org.yaml.snakeyaml.emitter.Emitable, Emitter, EmitterException, ...], [org.yaml.snakeyaml.error.YAMLException, MarkedYAMLException, Mark], [org.yaml.snakeyaml.events.Event, NodeEvent, ScalarEvent, ...], [org.yaml.snakeyaml.external.com.google.gdata.util.common.base.Escaper, UnicodeEscaper, PercentEscaper], [org.yaml.snakeyaml.introspector.PropertyUtils, BeanAccess, Property, ...], [org.yaml.snakeyaml.nodes.Node, CollectionNode, MappingNode, ...], [org.yaml.snakeyaml.parser.Parser, ParserImpl, ParserException, ...], [org.yaml.snakeyaml.reader.UnicodeReader, StreamReader, ReaderException], [org.yaml.snakeyaml.representer.BaseRepresenter, SafeRepresenter, Representer, ...], [org.yaml.snakeyaml.resolver.Resolver, ResolverTuple], [org.yaml.snakeyaml.scanner.Scanner, ScannerImpl, ScannerException, ...], [org.yaml.snakeyaml.serializer.Serializer, SerializerException], [org.yaml.snakeyaml.tokens.Token, AliasToken, ScalarToken, ...], [org.yaml.snakeyaml.util.UriEncoder, ArrayStack] IntCache: cache: 0, tcache: 0, allocated: 1, tallocated: 63 CraftBukkit Information: Running: CraftBukkit version git-Bukkit-1.4.7-R1.0-b2624jnks (MC: 1.4.7) (Implementing API version 1.4.7-R1.0) true Plugins: { SkyDiver v1.4 me.SkyDiver [], bPermissions v2.10.5 de.bananaco.bpermissions.imp.Permissions [codename_B], StrangeWeapons v0.5.2 to.joe.strangeweapons.StrangeWeapons [Eviltechie], PickBoat v0.5 net.namedfork.bukkit.PickBoat.PickBoat [Jesús A. Álvarez], WorldEdit v5.5.1 com.sk89q.worldedit.bukkit.WorldEditPlugin [], BOSEconomy v0.7.3.1 cosine.boseconomy.BOSEconomy [Cosine], Vault v1.2.24-b304 net.milkbowl.vault.Vault [cereal, Sleaker, mung3r], SpearMod v1.0.0 com.youngbawss22.bukkit.Main [], SafeCreeper v1.3.6.9 com.timvisee.safecreeper.SafeCreeper [timvisee], Backpacks v1.1 com.rb2750.backpack.Backpack [], AntiFire v1.3.1 com.yahoo.phil_work.antifire.AntiFire [Filbert66], WorldGuard v5.6.5 com.sk89q.worldguard.bukkit.WorldGuardPlugin [], ThunderPlus v1.8.1 me.xboxhacks.thunderplus.TLCore [xboxhacks], dynmap v1.2-1438 org.dynmap.bukkit.DynmapPlugin [FrozenCow, mikeprimm], Chairs v1.18.1 net.spoothie.chairs.Chairs [spoothie, cnaude], Shopkeepers v1.11 com.nisovin.shopkeepers.ShopkeepersPlugin [nisovin], AntiBuild v2.2 com.mutinycraft.jigsaw.AntiBuild.AntiBuild [Jigsaw], DragonTravel v1.8.5 com.xemsdoom.dt.DragonTravelMain [XemsDoom & Phiwa & ellbristow], Sheath v0.1 me.braeden_mollot.sheath.Sheath [], ItemRename v2.0 com.gmail.lopezitospriter.ItemName.main [Lopezito], CraftBook v1839-a33c652 com.sk89q.craftbook.bukkit.CraftBookPlugin [], CityLanterns v1.3 me.ase34.citylanterns.CityLanterns [ase34], InfiniteDispenser v0.03 com.herpingdo.infinitedispenser.Main [herpingdo], ZavAutoMessager v2.4 com.zavteam.plugins.Main [ZavTeam, zachoooo, javoris767], Lockette v1.7.9 org.yi.acru.bukkit.Lockette.Lockette [Acru], SimpleSpleef v3.4.2 net.kaoslabs.simplespleef.SimpleSpleef Kaos, zorlax, tuxed, MobArena v0.94.4.95 com.garbagemule.MobArena.MobArena [garbagemule], WorldWarp v3.3 Raz.WorldWarp.WorldWarp [], Easy_Fireworks v3.8 at.xer0.EasyFireworks.Fireworks [Xer0], Essentials v2.10.1 com.earth2me.essentials.Essentials [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits, md_5, Iaccidentally], Citizens v2.0.7-SNAPSHOT (build 742) net.citizensnpcs.Citizens [aPunch, fullwall], Jobs v2.9.2.beta1 me.zford.jobs.bukkit.JobsPlugin [phrstbrn], EssentialsSpawn v2.10.1 com.earth2me.essentials.spawn.EssentialsSpawn [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits], RestrictCreative v1.5.4 main.java.net.endercraftbuild.Main [superpeanut911], Taxes v1.1 com.mistphizzle.taxes.Taxes [MistPhizzle], AnCasino v2.0-b1-0.6 me.darazo.ancasino.AnCasino [], va_postal v29_145_minus com.vodhanel.minecraft.va_postal.VA_postal [Vodhanel], ChestShop v3.50 t0049 com.Acrobot.ChestShop.ChestShop [Acrobot], EssentialsChat v2.10.1 com.earth2me.essentials.chat.EssentialsChat [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits, md_5, Okamosy, Iaccidentally],} Warnings: DEFAULT Threads: { TIMED_WAITING pool-1-thread-7: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Connection #3 read thread: [java.net.SocketInputStream.socketRead0(Native Method), java.net.SocketInputStream.read(Unknown Source), java.net.SocketInputStream.read(Unknown Source), java.io.FilterInputStream.read(Unknown Source), net.minecraft.v1_4_R1.org.bouncycastle.crypto.io.CipherInputStream.a(Unknown Source), net.minecraft.v1_4_R1.org.bouncycastle.crypto.io.CipherInputStream.read(Unknown Source), java.io.FilterInputStream.read(Unknown Source), net.minecraft.server.v1_4_R1.Packet.a(Packet.java:93), net.minecraft.server.v1_4_R1.NetworkManager.i(NetworkManager.java:190), net.minecraft.server.v1_4_R1.NetworkManager.c(NetworkManager.java:344), net.minecraft.server.v1_4_R1.NetworkReaderThread.run(SourceFile:93)], TIMED_WAITING Jobs-DatabaseSaveTask: [java.lang.Thread.sleep(Native Method), me.zford.jobs.bukkit.tasks.DatabaseSaveTask.run(DatabaseSaveTask.java:41)], RUNNABLE Attach Listener: [], WAITING Chunk I/O Executor Thread-1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source), java.util.concurrent.LinkedBlockingQueue.take(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-14: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-9: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-11: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Connection #3 write thread: [java.lang.Thread.sleep(Native Method), net.minecraft.server.v1_4_R1.NetworkWriterThread.run(NetworkWriterThread.java:38)], TIMED_WAITING pool-3-thread-3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source), java.util.concurrent.LinkedBlockingQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Dynmap Render Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source), java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source), java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-16: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-8: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Dynmap Render Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source), java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source), java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE pool-3-thread-2 Acceptor0 SelectChannelConnector@192.168.1.71:8123: [sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method), sun.nio.ch.ServerSocketChannelImpl.accept(Unknown Source), org.eclipse.jetty.server.nio.SelectChannelConnector.accept(SelectChannelConnector.java:104), org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:933), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Thread-11: [java.lang.Thread.sleep(Native Method), org.dynmap.AsynchronousQueue.sleep(AsynchronousQueue.java:148), org.dynmap.AsynchronousQueue.running(AsynchronousQueue.java:138), org.dynmap.AsynchronousQueue.access$000(AsynchronousQueue.java:9), org.dynmap.AsynchronousQueue$1.run(AsynchronousQueue.java:83), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-10: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Java2D Disposer: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.ReferenceQueue.remove(Unknown Source), sun.java2d.Disposer.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Keep-Alive-Timer: [java.lang.Thread.sleep(Native Method), sun.net.www.http.KeepAliveCache.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Server thread: [java.lang.Thread.dumpThreads(Native Method), java.lang.Thread.getAllStackTraces(Unknown Source), org.bukkit.craftbukkit.v1_4_R1.CraftCrashReport.call(CraftCrashReport.java:28), net.minecraft.server.v1_4_R1.CrashReportSystemDetails.a(SourceFile:74), net.minecraft.server.v1_4_R1.CrashReport.h(CrashReport.java:43), net.minecraft.server.v1_4_R1.CrashReport.<init>(CrashReport.java:30), net.minecraft.server.v1_4_R1.CrashReport.a(CrashReport.java:214), net.minecraft.server.v1_4_R1.World.tickEntities(World.java:1193), net.minecraft.server.v1_4_R1.WorldServer.tickEntities(WorldServer.java:445), net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:580), net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224), net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494), net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427), net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)], TIMED_WAITING pool-1-thread-12: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Citizens Script Compiler: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source), java.util.concurrent.ArrayBlockingQueue.take(Unknown Source), net.citizensnpcs.api.scripting.ScriptCompiler.run(ScriptCompiler.java:134), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Finalizer: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)], TIMED_WAITING pool-1-thread-18: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Listen thread: [java.net.DualStackPlainSocketImpl.accept0(Native Method), java.net.DualStackPlainSocketImpl.socketAccept(Unknown Source), java.net.AbstractPlainSocketImpl.accept(Unknown Source), java.net.PlainSocketImpl.accept(Unknown Source), java.net.ServerSocket.implAccept(Unknown Source), java.net.ServerSocket.accept(Unknown Source), net.minecraft.server.v1_4_R1.DedicatedServerConnectionThread.run(DedicatedServerConnectionThread.java:62)], TIMED_WAITING File IO Thread: [java.lang.Thread.sleep(Native Method), net.minecraft.server.v1_4_R1.FileIOThread.b(SourceFile:43), net.minecraft.server.v1_4_R1.FileIOThread.run(SourceFile:22), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Thread-9: [java.lang.Thread.sleep(Native Method), cosine.boseconomy.BOSEconomyThread.run(BOSEconomyThread.java:104)], RUNNABLE Connection #6 read thread: [java.net.SocketInputStream.socketRead0(Native Method), java.net.SocketInputStream.read(Unknown Source), java.net.SocketInputStream.read(Unknown Source), java.io.FilterInputStream.read(Unknown Source), net.minecraft.v1_4_R1.org.bouncycastle.crypto.io.CipherInputStream.a(Unknown Source), net.minecraft.v1_4_R1.org.bouncycastle.crypto.io.CipherInputStream.read(Unknown Source), java.io.FilterInputStream.read(Unknown Source), net.minecraft.server.v1_4_R1.Packet.a(Packet.java:93), net.minecraft.server.v1_4_R1.NetworkManager.i(NetworkManager.java:190), net.minecraft.server.v1_4_R1.NetworkManager.c(NetworkManager.java:344), net.minecraft.server.v1_4_R1.NetworkReaderThread.run(SourceFile:93)], RUNNABLE pool-3-thread-1 Selector0: [sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method), sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(Unknown Source), sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(Unknown Source), sun.nio.ch.WindowsSelectorImpl.doSelect(Unknown Source), sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source), sun.nio.ch.SelectorImpl.select(Unknown Source), org.eclipse.jetty.io.nio.SelectorManager$SelectSet.doSelect(SelectorManager.java:564), org.eclipse.jetty.io.nio.SelectorManager$1.run(SelectorManager.java:285), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Thread-5: [org.fusesource.jansi.internal.Kernel32._getch(Native Method), org.fusesource.jansi.internal.WindowsSupport.readByte(WindowsSupport.java:46), org.bukkit.craftbukkit.libs.jline.WindowsTerminal.readByte(WindowsTerminal.java:184), org.bukkit.craftbukkit.libs.jline.WindowsTerminal.access$000(WindowsTerminal.java:53), org.bukkit.craftbukkit.libs.jline.WindowsTerminal$1.read(WindowsTerminal.java:151), java.io.FilterInputStream.read(Unknown Source), org.bukkit.craftbukkit.libs.jline.console.ConsoleReader$1.read(ConsoleReader.java:167), org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:267), org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:204), org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readCharacter(ConsoleReader.java:995), org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readLine(ConsoleReader.java:1167), net.minecraft.server.v1_4_R1.ThreadCommandReader.run(ThreadCommandReader.java:31)], WAITING Timer-1: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Object.java:503), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], TIMED_WAITING pool-1-thread-13: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-4: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-15: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Connection #6 write thread: [java.lang.Thread.sleep(Native Method), net.minecraft.server.v1_4_R1.NetworkWriterThread.run(NetworkWriterThread.java:38)], WAITING Reference Handler: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Object.java:503), java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)], TIMED_WAITING Thread-8: [java.lang.Thread.sleep(Native Method), de.bananaco.bpermissions.imp.loadmanager.MainThread.check(MainThread.java:57), de.bananaco.bpermissions.imp.loadmanager.MainThread.run(MainThread.java:27)], TIMED_WAITING Thread-4: [java.lang.Thread.sleep(Native Method), net.minecraft.server.v1_4_R1.ThreadSleepForever.run(SourceFile:52)], RUNNABLE Signal Dispatcher: [], TIMED_WAITING Jobs-BufferedPaymentThread: [java.lang.Thread.sleep(Native Method), me.zford.jobs.bukkit.tasks.BufferedPaymentThread.run(BufferedPaymentThread.java:50)], TIMED_WAITING Dynmap Render Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source), java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source), java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-5: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING pool-1-thread-17: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING HashSessionScavenger-0: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], TIMED_WAITING pool-1-thread-6: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE DestroyJavaVM: [], TIMED_WAITING Snooper Timer: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)],} Recent tasks from 710-740{WorldEdit:com.sk89q.worldedit.bukkit.SessionTimer@749,WorldGuard:com.sk89q.worldguard.bukkit.FlagStateManager@749,WorldGuard:com.sk89q.worldguard.bukkit.FlagStateManager@769,} Profiler Position: N/A (disabled) Vec3 Pool Size: ~ERROR~ NoSuchFieldError: worldServer Player Count: 2 / 15; [EntityPlayer['ReTrOChArLeS'/1429, l='RetroMineCraft', x=286.96, y=67.00, z=52.20](ReTrOChArLeS at 286.95964290173464,67.0,52.20302832154377), EntityPlayer['aaron846'/1790, l='RetroAdventure', x=1183.65, y=58.00, z=241.30](aaron846 at 1183.6514419112211,58.0,241.29727720375493)] Is Modded: Definitely; Server brand changed to 'craftbukkit' Type: Dedicated Server (map_server.txt)-
View User Profile
-
Send Message
Posted Mar 5, 2013@mcfacilitator
I use 16 Gb RAM 4 cores processor under debian
I have 11 minecraft server on it, all 4 cores are use at 40%. When I put the plugin, one of them become 100% use. memory use is between 40% and 80%. I have around 16 players at same time.
I use the default config for now. I don't know how to set the Async or calibration mode ! maybe my config file is too old.
I will try different config.
thanks for your help
-
View User Profile
-
Send Message
Posted Mar 5, 2013@Mannollo
Hi Mannollo, good to hear from you. I'd be interested in your platform specs. Occasionally I do get comments like yours, and I need to start collecting platform data.
Try setting the heartbeat to Async. Turn the auto calibration off. Set the Heartbeat interval to 100 or higher, Turn Dynmap off if you don't need it.
You can go way slow by setting concurrent postmen to false. You will never have more than one postman walking a route at a time.