[CHAT/GEN/RPG] Courier v1.1.9 - In-game rendered mail letters [1.6.4-R2.0]

Discussion in 'Archived: Plugin Releases' started by troed, Dec 24, 2011.

  1. Offline


    Version: 1.1.9 (changelog)
    Download: Courier v1.1.9
    BukkitDev: Main page
    BukkitDev: Forum (includes roadmaps for future releases)
    BukkitDev: Bugs and suggestions

    NOTE: The main home for this plugin is on BukkitDev! Comments and discussion there, please :)

    Courier - An Item based player to player mail system for Bukkit Minecraft servers
    by defxor
    Allows creation of text note items and sending of letters to players no matter if they're online or offline. The letters are delivered by postmen at intervals specified in the config file, and letters can be stored and handled as any other item for later reading. We wanted something that not only allowed us to pass notes to each other, but also felt like it was part of the regular Minecraft environment.

    We believe we succeeded.

    For more information, see the BukkitDev description page.
    TheTimeG, UnDarkElder, Jdwede and 3 others like this.
  2. I want the postman to walk to the player - not to beam. How can i do that?
    thats my try:
        InitialWait: 60
        NextRoute: 120
        WalkToPlayer: true
        SealedEnvelope: true
        Type: Villager
        QuickDespawn: 3
        Despawn: 50
        SpawnDistance: 60
    Minecraft: 1.24
    Bukkit 1.2.4-R0.1 (Build #02117)

    thanks alot!
  3. Offline


    If I understand you correctly you'd ideally want the Postman to simply walk up to all players from afar, or at least for Courier to simulate that he/she would?

    I think there's a limit to the line of sight spawning at around 100 blocks or so, SpawnDistance 60 should work. The current mob AI has a detection limit that's only 32 (IIRC) though and thus WalkToPlayer wouldn't work (the Villager would simply not "see" the Player and thus not approach).

    The solution to that would be for Courier to include its own path finding and not blindly use whatever's in Minecraft. It's something that's been on the "cool!" list for a while, but I don't think it's something I'll have time to implement unless others join in on the development :)
  4. Thx troed. So with my settings from above, it should "work"? I wan´t, that the Courier walks to the player(not beam). So the Courier beams to the player, but the player proberply don´t see the beam, because the courier beams 60 blocks away from the player. And then the Courier walks to the player the rest of the way. So the player thinks, that the courier walked the complete way & he is not a wizard or something else.

    But with "SpawnDistance: 60" he beams not 60 blocks away from the player. He beams ca. 20 blocks away from the player.

    Do i have to set it to 32? Because otherwise the Courier wouldn´t find the player and beams anothertime after he beamed 60 blocks away from the player & couldn´t find him?

    And "Despawn 50" don´t works, too for me. After getting the mail, the courier beams away - 1-10 blocks away from the player.
  5. Offline


    I am wondering if the plugin can be modified such that the server can send letters to players too!
    I'm working on quest system on my server, it would be extremely helpful if there's something like :
    First the player accepted the quest, then there's a button beside the npc which player can hit to get the letter, and in the letter is the quest info.

    (The button is wired to a sign (where contents is) which is behind the dispenser OR The button is preset through commands such the whoever hit the button would receive a specific letter OR The button is linked to a sign (where contents is) which will give a the specified letter to the player immediately.)

    I can think of endless possibilities where this can go, I hope some of these ideas would help this plugin be even more powerful =)
  6. Offline


    Yeah the spawndistance is not a minimum but a maximum, Courier looks at line-of-sight and spawns the Postman the furthest out that's possible - but if there's a wall then it will spawn on the player side and this a lot closer than max.

    The AI built into Minecraft at the moment has a limit where mobs further away than 32 blocks can't "see" the player, and that's why you run into that issue.

    As to despawn, that's in seconds - not blocks.

    I understand the functionality you want to achieve but it's not currently possible. It requires changes to the AI either built into Minecraft of for me to wrap up my own in Courier. I like the functionality and at some unspecified point in the future it might happen, but don't expect anything soon :)

    Sure, it's on the list of suggestions :)
  7. Offline


    Thanks for this plugin!! It's exactly the type of in-game mail system I've been looking for and my players LOVE it. Keep up the good work. :cool:
    troed likes this.
  8. Offline


    Is there a command that makes me recieve no more mail, the server I play on charges no money for using and someone spammed like hunderds of mails. I am still recieving mail from 2 days back.
  9. Offline


    Sorry, but not yet. It won't help you now but the next major release will have commands for deleting mail to a specific user etc.

    The server admin can manually edit your entries in Courier's database (it's still a yml file in v1.1.6) but I'd only advice it for someone who knows what they're doing and, of course, make a backup first.
  10. Offline


    I'm getting an error with courier that means I can't seem to send messages any more. When I start the server I get the following message:
    14:54:52 [INFO] [Courier] Enabling Courier v1.1.6
    14:54:52 [WARNING][Courier] Trying to convert message database from x-MacRoman to UTF-8
    14:54:52 [SEVERE] org.bukkit.configuration.InvalidConfigurationException: unacceptable character '14:54:52 in " ", position 0
    14:54:52 [SEVERE]at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:55)
    14:54:52 [SEVERE]at se.troed.plugin.Courier.CourierDB.loadNonUTFConfig(CourierDB.java:132)
    14:54:52 [SEVERE]at se.troed.plugin.Courier.CourierDB.load(CourierDB.java:63)
    14:54:52 [SEVERE]at se.troed.plugin.Courier.Courier.onEnable(Courier.java:411)
    14:54:52 [SEVERE]at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215)
    14:54:52 [SEVERE]at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:336)
    14:54:52 [SEVERE]at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
    14:54:52 [SEVERE]at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:250)
    14:54:52 [SEVERE]at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:232)
    14:54:52 [SEVERE]at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:371)
    14:54:52 [SEVERE]at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:358)
    14:54:52 [SEVERE]at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:187)
    14:54:52 [SEVERE]at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:422)
    14:54:52 [SEVERE]at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    14:54:52 [SEVERE] Caused by: unacceptable character '14:54:52 in "<string>", position 0
    14:54:52 [SEVERE]at org.yaml.snakeyaml.reader.StreamReader.checkPrintable(StreamReader.java:70)
    14:54:52 [SEVERE]at org.yaml.snakeyaml.reader.StreamReader.<init>(StreamReader.java:50)
    14:54:52 [SEVERE]at org.yaml.snakeyaml.Yaml.load(Yaml.java:399)
    14:54:52 [SEVERE]at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:53)
    14:54:52 [SEVERE]... 13 more
    14:54:52 [SEVERE] [Courier] Fatal error when trying to read Courier database! Make a backup of messages.yml and contact plugin author.
    14:54:52 [INFO] [Courier] Courier is now disabled.'
    I fixed it. One of the sent messages had a " ' " character in it and I reckon that confused things. I just deleted the messages file and it works fine now!

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 22, 2016
  11. Offline


    Yeah that would make the file invalid YAML (the message about converting from Macroman to UTF8 is actually a fix for an unrelated issue that was harmlessly triggered by it), but it's still somewhat strange that it happened to begin with. Glad you got it sorted.

    (The next version of Courier will convert the existing yml database to SQLite and make this problem, if it ever appears again, moot)
  12. Offline


    Sick well this Work and a 1.2.5 sever
  13. Offline


    It would be awesome if there was also a command where you could ask for the postman, then throw items at him, use another command, and he would deliver the items to someone
  14. Offline


    the next version of MC (currently in snapshot releases), includes journal like books called "Book and Quill", could you use this item instead when MC/bukkit/other dependencies update? that way, maps can still be used as maps.
  15. Offline


    Or, you could use a default template to overwrite it so the data cannot be read again?
  16. You can use map already :)
  17. Offline


    do you think you can make it so i can read what my players are saying? every time i look at letter that was not sent to me it says "sorry, only <name> can read this letter'
  18. Offline


    Yes, I can understand the need for an OP override. It would be implemented as a specific permission, but it would be helpful if you created the ticket over at Bukkit dev (that's how I keep track of suggestions).

  19. Offline


    Courier v1.1.7 has been released.

    • Permission override for letter privacy (ticket #84)
    • Some server configurations disallow Postman mobs (ticket #81)
    • Portuguese translation by JohnPulse
    • Updated German translation by lordtobiMC
    • Villager postmen will trade (ticket #83)
    • Courier works badly in creative mode (solved by disabling delivery) (ticket #56)
    • Removed /mail and /note aliases due to clashes with other plugins
    Note: Released with less testing than usual due to incompatible changes in Bukkit v1.4.5 R1.0 forcing a new Courier release.
  20. i am using 1.1.6 with MC 1.3.2 & craftbukkit 1.3.2-R3.0
    Does 1.1.7 work with my versions, too? thx :)
  21. Offline


    I haven't tested it, but I don't think so. There were changes made in the Bukkit API between 1.4.5 R0.2 and 1.4.5 R1.0 that forced most plugins to update.

    (If anyone decides to test feel free to report back :) The area where the API changes are is when Courier blocks Enderman-Postman from picking up other blocks, which happen seldomly).
  22. Offline


    Courier v1.1.8 has been released:

    • Courier Letters can be put into ItemFrames - in effect creating posters/flyers (ticket #90)
      • One 'real' Minecraft map per Letter added to an ItemFrame will be used. This option is configurable (default: true) since many such Framed Letters in one small area might cause lag (untested).
    • Blank Parchment can now be crafted for use when writing Letters, instead of just having the specified resources subtracted from inventory (ticket #17)
      • This is set to false by default since it's a major change, but most RP servers that use Courier should find this very appealing - I hope.
    • Uses ItemMeta ('Lore') to show Letter info in inventory (ticket #89)
    • Letter fees can be deposited into Bank or Player accounts (ticket #78)
    • Config option to allow delivery in creative mode (default: true). See this forum thread)
    • Letter text layout should make better use of available width.
  23. Offline


    Possibly add mailboxes?
  24. Offline


    Courier v1.1.9 has been released:

    • Colour codes (&0-&f) can be used in Letters (ticket #50)
    • Don't let Postmen betray vanished players (ticket #51)
      • See new config option VanishDistance
    • Letters can be erased from the database by dropping them & letting them despawn, or actively burning them in a furnace
    • Letters are now rendered immediately instead of "striped".
    • If the Courier Map file in the World folder had been overwritten, all Letters were rendered blank (ticket #91)
    • If you installed a new Courier version before BukkitDev was updated, it would claim you needed to update (ticket #88)
    diannetea likes this.

Share This Page