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 4, 2013I and all children of my server really loves this plugin !!!
Thank you so much for all this very good work !
I actually use this plugin on my heavier server because there is a lot of shops and NPC around. For 11 minecraft server, my processor is only 40% use, but when I put this plugin, it becomes 100%. Is there a way to not make postmen running when there is no mail to deliver in order to reduce the processor use ?
All postmen running is a real pleasure to see but it makes enderdragons to get really slow ... It would be great there is some possible optimizations of processor use.
Thanks a lot for all your wonderful job !!
-
View User Profile
-
Send Message
Posted Mar 2, 2013@mcfacilitator
I completely agree with you, I think this is the best way to add Dynmap is to include it in Postal! No additional plugins! And I think you did an excellent job as well coding Postal, especially since I would not be able to write any plugin nor do I possess the knowledge of any coding in full.
Yes! A break indeed! Otherwise, like with all things, we may become complacent or bored. I look forward to your next update, and possibly the option to configure (from Dynmaps marker library) what markers are used.
Great job on this plugin and do enjoy yourself and your family!
Thank you, Ho'onui
-
View User Profile
-
Send Message
Posted Mar 1, 2013@Ho_onui
Dynmap on/off is the only setting right now. I'm not sure if it is worth making the icons configurable. I stayed with the built - in ones to keep things as trouble free as possible. There are only three, the world, the home icon, and a sign icon. The world icon seems to work for for the post offices because they have a global feel to them. Same for the postmaster, but I think I will highlight the postmaster with a trasparent sphere.
I just looked at the line count for my dynmap class in the Postal source, it is about 650 lines. That doesn't include the hooks built right into the Postal code. I did all this because I wanted Dynmap for Postal, and felt building it in was the most efficient, and optimized way to do it. I am very pleased with the results. They surpass anything I originally envisioned. But it is good to take a little break from it. I will revisit it refreshed for the next Postal cut, and your comments are very welcome.
And, no problem using the Postal logo.
-
View User Profile
-
Send Message
Posted Feb 28, 2013@mcfacilitator
Thank you for the quick response. Yes I did overlook the Dynmap setting in the config, skimmed right past it! What I wanted to ask is, how can I configure the icons that Postal is set to choose to display on the map itself. For example the current default for the post master is the same globe icon that Dynmap uses for the world spawn (or the house icon for the mail box, as I'm sure that you are aware of), and I would like to change it so that Postal uses different icons as I have created a set of icons for Postal that resemble the Postal services respectively.
Also if I may have your permission to use your Postal logo as a part of my new icons for Dynmap please?
Thank you, Ho'onui
-
View User Profile
-
Send Message
Posted Feb 28, 2013@Ho_onui
There is a new setting in config.yml, Dynmap true/false. You don't have to do anything because it defaults to 'true'. The release notes I was referring to are the notes you see in the files section when you click on a particular file.
This is the same resposne I sent to your private message, just coping it here.
-
View User Profile
-
Send Message
Posted Feb 27, 2013Question about the Dynmap Configuration / usage.
I know the description says "Postal now does Dynmap! See release notes for version 2.9" and that is the version I am running, however I am unable to find any configuration information in the plugin and/or in the notes page linked on the Postal overview page.
Could I please get some more information on the Dynmap area of this plugin?
Thank you, Ho'onui
-
View User Profile
-
Send Message
Posted Feb 25, 2013@humzaf
Pastebin is a popular way to post big logs without spamming forums:
http://pastebin.com/
Or Email it to me if that is easier. May as well include 'config.yml'
-
View User Profile
-
Send Message
Posted Feb 25, 2013@mcfacilitator
Sorry for the late post again, but whats pasetbin????
-
View User Profile
-
Send Message
Posted Feb 25, 2013@sternurich
Update to what? 'va_postal_29_146_plus.jar' is good for all Bukkit versions starting at 145.R1 and newer. 'va_postal_29_145_minus.jar' is good for all Bukkit versions starting at 145.R0x and earlier. You are covered if you are using a version of Bukkit that will run Citizens2.
The Bukkit versioning started early December and 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 is exempt from the Bukkit versioning restrictions.
So, there are only two versions of Postal delineated by an api improvement, not a versioning requirement. I don't blame anyone for being confused about this, it makes me dizzy sometimes.
-
View User Profile
-
Send Message
Posted Feb 25, 2013A message for Windows users, will include Linux later.
Ever hit that X in the upper right hand corner of your Bukkit server by accident? I run my Bukkit servers in an RDP session on the console of the server itself to keep them out of harms way, but even then it occasionally happens. Bukkit wrappers generally cause more problems than they solve in my experience. But I found a simple and elegant solution. A utility that disables that window close option. It is called ConsoleNoClose.
Just put it in the Bukkit directory and include the line:
ConsoleNoClose /1
at the top of the batch file. The cmd session will have to close under batch control. Taskmanager is the other way, but no more accidents.
Need a server RESTART command? (btw, never use reload - causes memory leaks). Need to translate Postal commands to your own language, or to suit your taste? Check out my other plugin ShellReact.
-
View User Profile
-
Send Message
Posted Feb 24, 2013une mise a jour silvouplais
-
View User Profile
-
Send Message
Posted Feb 24, 2013@paragonxx99
In a word, 'Yes'. The address may be assigned to a particular player, and that would make that player the owner of the address. Owning an address does many things for the owner. First of all the mail and mailbox is protected. Address owners are able to move their mailboxes, and modify the route the postman uses to get to the mailbox. The player is notified of new mail sent to the owned addresses, both online, and when joining the game. Addresses owned by a player may be globally searched by player name. Unowned addresses default to server ownership, and are open, and unsecure.
Postal facilitates multiple geographical addresses (spanning worlds), tied to a single player. We use it successfully with Towny on our private server.
Post offices may be owned as well, with it's set of privileges including quality of service.
Sorry for babbling on here, but questions like that are appreciated because they help complement the documentation, and help others as well.
-
View User Profile
-
Send Message
Posted Feb 23, 2013I have one question that before I download this plugin. I am using residence, and as you may know, residence has a rent and buy system. Lets say I create with residence a region called house1, with a mailbox in front of it. If a person buys that region, will that person be able to send mail utilizing that mailbox with his/her name?
-
View User Profile
-
Send Message
Posted Feb 23, 2013@humzaf
Yes, start a new server log and run it until that error shows up. Don't turn on Postal talk or anything. Make sure there is nothing proprietory in it and pastebin it. Thanks.
-
View User Profile
-
Send Message
Posted Feb 23, 2013@mcfacilitator
Sorry for the late reply but i tried the thing you said and it didn't work, have any other tricks up your sleeve?
-
View User Profile
-
Send Message
Posted Feb 21, 2013@TheDirtyPirates
I need more info. The log you posted clearly indicated an attempt to use the Postal version for 145 and earlier on Bukkit 147.
So, better start with the new log. Would you make a pastebin of your complete log file (delete and create clean one), and include the contents of your config,yml?
-
View User Profile
-
Send Message
Posted Feb 21, 2013@mcfacilitator
I've changed to the version you stated in the link, but am still having server crash when I run /postal start.
-
View User Profile
-
Send Message
Posted Feb 21, 2013@TheDirtyPirates
You have a version mismatch. Use the version of Postal for 146 and newer.
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 Feb 21, 2013Hi,
Having an issue where I have Citizens 2.0.7 Installed as well as postal, I've created addresses and routes but when I say /postal start my server crashes. I've looked through the crash logs and I've found the following.
<<code
Minecraft Crash ReportUh... Did I do that?Time: 2/21/13 8:19 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:38) at net.citizensnpcs.api.ai.SimpleGoalController.setupExecution(SimpleGoalController.java:125) at net.citizensnpcs.api.ai.SimpleGoalController.trySelectGoal(SimpleGoalController.java:137) at net.citizensnpcs.api.ai.SimpleGoalController.run(SimpleGoalController.java:109) at net.citizensnpcs.api.npc.AbstractNPC.update(AbstractNPC.java:204) at net.citizensnpcs.npc.CitizensNPC.update(CitizensNPC.java:211) at net.citizensnpcs.npc.entity.EntityHumanNPC.j_(EntityHumanNPC.java:158) 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(ClassLoader.java:423) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) ... 21 more>>
<</code>>
I don't know if I'm messing something up or I'm truly receiving an error/bug.
Thanks in advance. Chris.
-
View User Profile
-
Send Message
Posted Feb 21, 2013@humzaf
Might be worth a clean plugin test ie: rename plugins to plugins.sav. Create new plugins folder. Copy the va_postal directory, the postal plugin, citizens plugin and vault. This will either eliminate interaction with other plugins as a possibility, or narrow the problem down.