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 10, 2013@mcfacilitator
my config: http://pastebin.com/tySvjRwM
my server logfile: http://pastebin.com/DqJ97MdY
If I wait outside my house, the postman never comes... but when i teleport me to the posthouse, he will start walk... "/back" (to my house) the postman stops to walk and spawn by the posthouse... what's wrong?!
(You can visit me on my server + teamspeak...)
-
View User Profile
-
Send Message
Posted Mar 10, 2013@RetroCharles
No problem.
Postal only handles items, by the root number. This was a design decision based on being able to fit all item details like quantity and description neatly on one line of the statement.
You are the very first person to point this out, so you get to feel special ;-)
This is not set in stone. Anyone else care more about receivng night vision potion instead of a water bottle than they do a neat statement?
-
View User Profile
-
Send Message
Posted Mar 10, 2013Thanks for the help! I forgot to delete since I figured it out. But that is amazing that you reply to all/most of people responses.
Although I had some complaints about other sending enchanted/costumed items. Is there anyway of fixing this? or has this issue been brought up before.
PS. If you did notify us about this issue in the description of the plugin, I apologize I might of missed it.
Thanks a bunch! Great plugin. -Charles
-
View User Profile
-
Send Message
Posted Mar 10, 2013@macfisherman
Glad you got it working.
-
View User Profile
-
Send Message
Posted Mar 10, 2013@Bastikeks
See my comment to IrusVirus. It is automatic. There is a setting in 'config.yml' named 'settings.chunk_overlap' that defaults to 0. Increase it to increase the width of the protected area, which basically covers all the routes. This should not be necessary, however.
That setting is intended to compliment the 'settings.allow_monster_spawn' switch that prevents monster spawning on Postal routes. You can increase the chunk overlap to increase the monster free zone.
-
View User Profile
-
Send Message
Posted Mar 10, 2013@RetroCharles
Just destroy them. It takes OP, postal.admin or owner permissions to break them. Postal make admins type '/postal override' first to prevent accidental breakage. '/postal override' opens up a window of time, a few minutes, to break it, then closes the window.
Owners are considered more responsible and are not required to do this. Besides, they often relocate their mailbox as property improvements take place. This is routine, and should be followed up with '/setroute' to change the last few waypoints leading to the new location. Owners are permitted to use the '/setroute' command on addresses they own, only.
-
View User Profile
-
Send Message
Posted Mar 10, 2013@IrusVirus
'[WATCHDOG External] Cancel route: Erzwall, Irusvirus, 32'
That message means address 'Erzwall, Irusvirus' was canceled at waypoint 32
Routes are canceled when Postal detects a navaigation problem. Postal automatically monitors chunks on a route and keeps them loaded, although I guess it is possible for another plugin to interfere. I have only seen this happen with the likes of Spigot. I don't think NoLag is a problem. I will try to make Postal work with Spigot when the time is right.
Anyway, a route is canceled as a last resort by Postal to get things back on track. That means that Postal wasn't able to tp the npc to the next point. 'postal wtalk' for more clues. Are you running the pre-release with the reworked watchdog yet?
-
View User Profile
-
Send Message
Posted Mar 9, 2013@mcfacilitator
Sorry for the late reply. It works fine. The issue was the Central Postoffice chest couldn't be found. Once I fixed that, it worked! Sorry about the false alarm.
-
View User Profile
-
Send Message
Posted Mar 9, 2013Nice Plugin so far. But i have the same problem with "unloaded chunks" like IrusVirus...
Is it possible to let the plugin load the chunks for the route, before the postman passes it? Also it should be possible to disable the log-books, because everyone -also guests- can get a copy of it...
-
View User Profile
-
Send Message
Posted Mar 9, 2013how to remove mailboxes? I deleted the address. But it is still there.
-
View User Profile
-
Send Message
Posted Mar 9, 2013[WATCHDOG External] Cancel route: Erzwall, Irusvirus, 32
He cancel the route because..? (because the chunks are not loaded?)
-
View User Profile
-
Send Message
Posted Mar 9, 2013@IrusVirus
Probably. Postal will open a chest if the sign is clicked on. Another plugin might be able to cancel this, maybe not. I haven't tested this. It is normal behaviour for Postal to allow viewing of maibox contents to be able to see recipient addresses. Anything beyond that requires appropriate Postal permission. Postal's mailbox/address data object is comprised of chest/postal-log/sign plus yaml. It expects to have normal access these combinations with 'Postal' on the sign. I haven't done anything to make Postal the highest priority on it's own data objects, but I probably should.
-
View User Profile
-
Send Message
Posted Mar 9, 2013Is it possible that server stranger (no permissions) can open the mailbox although the chest ist protected by LWC?
Other question... is it possible to deactivate all logfile books in the mailboxes?
-
View User Profile
-
Send Message
Posted Mar 9, 2013@IrusVirus
Stuff like that is fixed in the pre-release sitting on the Postal wiki on the Citizen's website. I just have a few odds and ends to tie up and a little more testing, and it will be submitted here, compiled for all Bukkit versions. But, 147 is there right now.
You did find a good one though, with your long cooling delays. I need to have the watchdog specifically ignore cooling npc's.
Those extended delays will make a lot of sense when interaction with the postman sitting in his office is in place. Ie buying stamps, etc...
We will be able to stop the postman for interaction too.
@Mannollo
I hope you see this. I forgot to mention that the amount of time the postman, and postmaster spend in their post offices may be set. A good way to slow things down. Good because both the postman and the postmaster are preemptively dispatched with real mail movement taking precedence over postal presence. So the mail will keep moving even when the postman takes long breaks.
-
View User Profile
-
Send Message
Posted Mar 9, 2013I've found a bug!
if I take the shipment book out of the box and then the log book (same menu slot selected), the shipment book is overwritten with the log book and is lost. How can I get the shipment book again?
-
View User Profile
-
Send Message
Posted Mar 9, 2013@mcfacilitator
gotcha! It works...
the error comes from the "Postman_cool_sec:" and "Central_cool_sec:"... what is the max? I try it with 300 (5min.) and that doesn't work ^^
-
View User Profile
-
Send Message
Posted Mar 9, 2013@IrusVirus
That is a symptom of a Citizen's navigation problem. If I remember correctly you are using 147. Use the Citizens links 7 messages down.
Set debug false, that is way too much info to watch. When your server starts, enter 'postal wtalk' at the console and you will see the watchdog activity. When Citizens is functioning normally, you will see nothing, but I bet you will see a lot. That is the best clue I can give you with the info I have.
Also, I want to verify that you have Dynmap false.
-
View User Profile
-
Send Message
Posted Mar 9, 2013Ok, now I have the problem that the Plugin doesn't start InGame... /postal start (debug is true) and in the console: VA_Postal started. 'postal talk' to see activity. ... but InGame it happens nothing xD
1 Central 2 Local (3route and 1route)
perhaps this error comes from your plugin too?
09:36:11 [INFO] [Dispatcher] Activity timeout for job queue. 09:36:11 [INFO] [Dispatcher] Re-starting server.
-
View User Profile
-
Send Message
Posted Mar 8, 2013@macfisherman
I'm surprised another plugin can interfere with Postal. Can you confirm this behaviour by running with GriefPrevention disabled?
Another question; regular Bukkit, or a Bukkit compatable like Spigot?
-
View User Profile
-
Send Message
Posted Mar 8, 2013@SturmZwerg
OK, the fix is up on the Postal Wiki (Citizens2 website)
It will be released here soon.
Versiom 2.9x
Clicking on a postal log formally drops any item the player may have in hand before putting the postal log in the player's hand. This prevents loss of player inventory. The same safety precaution has been applied to shipping labels before they are placed in the player's hand.
New config.yml setting 'lookclose_on_route'. 'true' is the default. 'true' makes the postman aware of other players while walking his route. He will look at the player and appear a little distracted by other players, but stays on route. Seems more human and less programmed. 'false' causes the postman to be more focused, and generally does not acknowledge the existence of players aside from mouse clicks. In the postoffice, waiting for the next route lookclose is turned on regardless of this setting.
Fixed bug with /package command excluding items when itemized on the shipping label. Pages on the written book were exceeding their character capacity and being truncated when many items with long names were on the same page.
Stamped statement now replaces the un-accepted statement in player's hand on /accept instead of going into the accepted chest. This facilitates the sending of completely full chests and is probably more intuitive to the player.
/accepted chest no longer signed when accepted. It is not necessary. It was also, upon opening being incorrectly labeled as a Postal mailbox.