PaperMail
Introduction
With this plugin you can send other players items,texts, and money with a physical mailbox.
Every player has an default mailbox which can be accessed by left clicking a mailbox sign. Also a mailbox can be created from a chest to add additional space in a players inbox.
Items can be sent either through right clicking with an item or by right clicking a mailbox sign.
Texts which are sent through a command get converted to a physical letter and get placed inside the recipients mailbox.
Money may be sent through the ItemMail GUI by right clicking a mailbox or letterpaper. Inside the ItemMail GUI, there is now a gold Bar item that appears if Sending money is enabled in the config. You may left click to increase the amount and right click to decrease the amount. When you are done, click send and your money will be converted into a "Bank Note" item(a piece of paper) and be sent to the recipient! The recipient may then hold this Bank Note in their hand and right click it to deposit the money into their account.
Features
- Fully configurable default inbox
- Fully configurable sending window
- Sending items to other players inboxes
- Send texts as items
- Charge money to send text mail (v1.0.0.7)
- Charge money to send items, configurable per item or per mail. (v1.0.0.7)
- Send money through a Bank Note Item. (v1.0.1.3)
Screenshots and other images
Because pictures say more than 1000 words here some pictures:
Videos
Plugin Showcase by bobby1727mc :
Special thanks to ApacheMC and Sparky12387 for making this video!
Commands
- /papermail sendtext <PLAYER> <TEXT> Sends a textmail to the player
- /papermail createbox <PLAYER> Creates an InboxChest when typed while looking at a chest.
How to use
Item Mailing
To get started with the item mailing you need to create a mailbox sign or craft some letterpaper to send a itemletter.
You can create the sign by placing a sign and putting "[Mailbox]" in the second line, letter paper can be created by placing paper, a feather and an ink sac into the crafting grid in any shape.
When right-clicking, either the mailbox sign or with the letter paper, the mail window opens.
To define the recipient of the mail add a written book in the top-left slot of the window and add the other items you want to send.
When clicking the send button (the green wool on the right side) your mail will be sent.
Text Mailing
To send a text mail simply enter the command
/papermail sendtext
followed by the recipient and your message.
Permissions
papermail.send.text
Allows to use the command /papermail sendtext Is set by default
papermail.send.item
Allows to use mailbox signs or rightclick with letter paper to send items Is set by default
papermail.createchest
Allows to create inbox chests using /papermail createbox Is set by default
papermail.costs.exempt
Makes the user exempt from mailing costs. is false by default.
Configuration
general: EnableTextMail: true //Allow the use of Text mail messages with /papermail sendtext EnableItemMail: true // Allow the use of Item Mailing EnableEnderchest: true // Allow access to Enderchest from ItemMail GUI EnableMailCosts: false // Enable costs to send texts and Item Mails EnablePerItemCosts: false // Enable Costs per item instead of per mail instance EnableSendMoney: false //Enable the Ability to send Money through the PaperMail GUI CostToText: 0.0 // Cost to send Text mail messages with /papermail sendtext SendItemCost: 0.0 // Cost to send an item(or PerItemCost if PerItemCosts is enabled) MailWindowRows: 3 // Size of the mail window DefaultBoxRows: 4 // Size of the default inbox which is accessed by left clicking the sign EnderChestRequirementID: 368 EnderChestRequirementDV: 0 MailItemID: 339 // Item ID of the Item which is used to create item mails MailItemDV: 1 // Data value of the Item which is used to create item mails MailItemName: Letter paper // Name of the Item which is used to create item mails messages: inbox-full-send: The mailbox of %recipient% is full, the items have been sent back to you. // Message displayed when recipients mailbox is full ingredient-missing: You are missing %item% to create a new letter. // Message displayed when missing ingredients to create Letter Paper Item.
Depends
1.0.0.7 and above softdepends on vault if you want to use the MailCosts or Send Money options with an economy plugin. If no economy is detected but MailCosts is still on, Papermail will default to a Gold Ingot barter system.
To do
Add permissions .exempt for costsAdd ability to send moneyFix Items losing their NBTTag data when mailing items. (This plugin causes some special items created by other plugins such as the EpicItems from EpicBoss Gold Edition to lose their special tag abilities when mailed through the ItemMail system.Make barter item configurable instead of permanently set as GOLD_INGOT.- Create the ability to read from a language,yml to support multiple languages
Fix PaperMail mailing the signed book item also.Create a letterpaper dispenser sign that charges GOLD_INGOTS or money for letterpaper.- Change the Recipient Interface to SignGUI if possible
- Hook into GlobalMarket so you will only need one mailbox
- Create some kind of new mail notification system
- Make it that it doesn't take a command to create a chestbox (Chest on a fencepost)
- Create a command and permission to send money with command. Possible protocolib dependency for this as well? (Use sign GUI to get amount)
Source Code
Want to see the source code? Here it is! https://github.com/BukkitCodersUnited/paperMail
ATTENTION!!!
I REALLY NEED BUG TESTERS! IF INTERESTED PLEASE PM ME!I I WILL GIVE YOU CREDIT ON THE PLUGIN PAGE AND PLUGIN ITSELF FOR YOUR HELP! (This plugin is provided donation free. It takes a lot of time to code a plugin and testing for all possible scenarios is not easy for me :/ To Eliminate time with releasing stable copies of updated PaperMail versions with new features, bug testing helps alot, plus you/your server will have access to early releases of the plugin before they are hosted on bukkit.)
Acclamades
This plugin was featured on Curse! Check out the Spotlight here : http://www.curse.com/spotlight/bukkit-plugins/minecraft/49271-minecraft-spotlight-papermail
Testimonials
"I use a lot of plugins, but this has got to be the most awesome plugin I have ever used!" -DrkMatr1984
@DrkMatr1984
I realized that this lets you access your ender chest from anywhere as long as you are carrying a letter paper...
That's an exploit I'm glad my players do not know about.
@DrkMatr1984
Actually, you get the "send mail" gui by right-clicking with a letter paper...
You don't need a mailbox to send anything.
@Forecaster71
Yeah, it can, but then you have to send the letter through a mailbox instead of instantly. Of course, you still have to pick up your letter from a mailbox anyway... I'm not sure why the original author had it set up that way. I've actually been kicking around the idea of somehow using the written book to create the letter instead of the command. I'm not entirely a pro with the BukkitApi yet so if there's a way to do it I'll have to hit the forums up when I get to coding shortly. To be completely honest, A year ago I had no idea what I was doing with Java at all. I've come a long way and still have a long way to go with learning the language :) This plugin is actually my training so bear with me with some of the oddities here and there. I'm trying! XD
Oh yeah, The mail notification thing has been proposed before and I'm going to look into setting something up for that. But its kind of one thing at a time so it might be a few releases until we get there.
It would be great if you could be notified that you have stuff in your mailbox when you connect to the server.
Also, couldn't sending text be done through the book used to specify the recipient instead of with a command?
@Forecaster71
Easy enough to do! Especially since I'm working on the Language.yml next I can add that in there no problem. The permissions thing should also be kind of easy, I'll do that also :) It's a good idea, especially if people want to send messages to the admin.
I also discovered a few "other bugs" recently while reviewing the current code and have fixed those for the next release. I will release one more release for 1.7.2 and 1.7.5 and then all future releases will be 1.7.9 or higher.
Also, I'm thinking about creating a plugin called "ATM". Currently there are a few other plugins like thise, but I got some cool ideas. It would be a physical economy plugin that could be used with or without vault, much like Papermail.
I have two requests:
1. Have using just /papermail print out the available commands, and replace the useless "Missing arguments" and "invalid arguments" messages with something like "/papermail sendtext [player] [message]". The commands currently aren't very user-friendly without an accompanying wall of instructions when they could be. It would help immensely.
2. Add a permission node that overrides the cost of sending mail to that user for anyone. As in, I'd like for players to be able to send mail to me for free to be able to test the plugin as well as contact me when I'm not avaliable, while still having to pay the fee for sending mail to each-other.
Other than the first point I love this plugin! And with these two I will love it even more!
Alright guys! v1.0.1.4(file numbers 17 and 18, respectively) is finished for 1.7.2 and 1.7.5 and uploaded! Will work on updating it to the newest Craftbukkit versions immediately!
Also in the Process of creating a comprehensive Wiki! You can check out my progress here
https://github.com/BukkitCodersUnited/paperMail/wiki
Thanks everyone for your patience!
OH! I need good screen captures and videos of my plugin in operation, including some of the newer features, like charging to send items, sending money, and the default built-in economy system. I'm thinking of offering a contest with a $20 Steam credit Card as the prize. Anyone decent with Photoshop/Video Production software who reads this, leave a comment if you're interested, and if I get enough responses, I'll begin the contest with a list of rules and places to upload your work for Judging. I'll most likely run a poll and let the user's decide which is best! I suck at Photoshop so please please please help me!
Finishing up bug testing today and will release. Sorry for the delays.
@Aristoss That's a nice idea, although it might require a complete rework of the current code. Give me some time to think this over and what all it might entail programming and if I decide to give it a whirl it will be added to the To-do list. I don't mean to disappoint anyone, but I believe the next major upgrade I'll make after today will be the inclusion of a long awaited language.yml to allow my plugin to be used with different languages finally.
Hey there!
Very nice Plugin. We would love it if you would add a feature, that a player who sends a package can get "cash on delivery". This would be a very lorefriendly system for save trading.
If your interest "depends", pls contact me.
@DrkMatr1984
So happy to see that you're going to be updating this plugin soon. Saw that it hadn't been updated for a few months and almost decided to find another plugin, even though the plugin seems pretty cool!
Hope to see the update out soon! :)
@TheDedOne
Oh, and just for you I made the currency item configurable for the default economy system that kicks in when vault isn't detected :) Btw, you you guys like classic paperMail without and of these newer features, you can always disable mailing costs and sending money in the config file.
You will now be able to configure the Currency item via a CurrencyItemID number (From the Minecraft ID list).
http://www.minecraftinfo.com/idlist.htm
@DamaMariposa
I'm going to rush through the last of the bugs and some minor additions to features today and upload a build for 1.7.2 and 1.7.5 at the same time. Expect to see new versions in the next couple of days :)
Sooo, from all of the comments that I've read, Papermail isn't going to be quite ready for 1.7.5?
I'm working on my server, and love this plugin idea, but when it wasn't functioning properly on my server I came to get more details.
Dama
@TheDedOne
You should already be able to do that, just disable vault or use a currency plugin like Gringotts to link into vault and then into Papermail. Just change the Amounts to integer numbers in the Config. If it doesn't find vault it defaults to the barter system, and then runs a different set of code to take the emeralds out of the player's inventory. I think the money may have to be in your available inventory though, and not your backpack/inventory with crafting grid.
The money spent to send mail is currently lost, but I could implement a way to accumulate it somewhere. I can easily do that with vault. But with a physical currency and the barter system I would have to create some kind of an Admin Chest or Post Office Chest where the Emeralds are sent to. That's adding quite a bit, but it could definitely be done.
I got to work on this a few weeks ago and then kind of got lazy again. :P But I do appreciate the comments, so keep them coming. I'm not annoyed by them, actually they kind of guilt me into doing the work I've been procrastinating around.
@DrkMatr1984
Out of curiosity, will the final 1.7.2 build be able to change the barter cost for sending mail? And when there is a cost does the money spent just disappear or is there a way to accumulate it somewhere?
Our server mainly uses emeralds as a currency without any real economy plugin.
@Melonking
I think that is a 1.7.5 only error, but I will check it out anyway. I have a build in the works for 1.7.5 right now on GitHub, I just want to finish the final 1.7.2 build before I pump out the 1.7.5 build. Not much has changed so it shouldn't be too hard.
Player Login errors:
Hi, how is it going with testing your plugin? I would like to install it on the server of a friend and send you bug reports. If i have some upcoming ideas would you program them for me this plugin regarding?
@AT_HE
There's not really a way to fix that without taking away from some of the RPG type elements of the plugin. You could change the "MailItemID" in the config.yml to something less valuable on your server or something that is not able to be used in the crafting grid. You can find a list of items and their ID numbers here :
http://www.minecraftinfo.com/idlist.htm
But on further thought, I will also make the bank note item ID configurable so you can change that also.
@diannetea
Just fixed your bug with the textmails. It had to do with the cost being zero but enable mailcosts still being on. I will fix more bugs as I continue this update/bugfix.