[INACTIVE][CHAT] ThunderGhast - Standalone mail plugin [740]

Discussion in 'Inactive/Unsupported Plugins' started by Hretsam, Apr 27, 2011.

  1. Offline

    Hretsam

    ThunderGhast - Standalone mail plugin
    Version: v1.1

    This was a request of shadrxninga.

    ThunderGhast is a plugin that allows the users to mail eachother. You can do most of the basic mail functions like: send, reply, delete & store.
    This can be an great admin tool to! As users are able to send mails to admins about griefers

    It works both with MySQL & SQLLite. I am working on adding flatfile support.
    There are still some things left to do to polish it up (ea. make it fully configurable). But its working as it supposed to. I will make sure that no data gets lost when you update this later.

    If you got suggestions, i am all open for it.

    Features:
    • Send, reply, store & delete mails.
    • Possible to limit mails for certain users
    • Has permission support, but also works without
    • MySQL can be integrated with an existing database
    • Can be used on multiple server with MySQL.
    Download file here. (version v1.1)

    Source code (github)

    The commands for this plugin:
    CommandList (open)

    • /tgcheck - checks if you got unread mails
    • /tgmailbox [boxname] - opens the mailbox with the name given (inbox if no boxname is given)
    • /tgread <mailid> - Shows the mail with the given id
    • /tgstore <mailid> <boxname> - Stores the mail in the given box
    • /tgreply <mailid> <message> - Sends an reply of the mail
    • /tgmail <playername> <subject> <message> - sends an mail to the given user
    • /tglongmail <playername> <subject> - Sends a long mail to the given user. (this overrides the chat for the user, to fill the mail. Use the command again to send it)
    • /tgdelete <mailid> - Removes the mail with the given id


    Config file, if you want it:
    config.yml (open)
    Code:
    ## Version of the config file, do not touch
    configversion: 1
    
    ## This chooses where the program stores the emails.
    ## sqllite or mysql
    mail storage: sqllite
    ## Settings for mysql (if used)
    ## Make sure the user can select, update, delete, and create a table!
    mysql location: localhost
    mysql username: root
    mysql password: root
    mysql remote: false
    mysql database: thunderghast
    mysql mailtable: mails
    
    ## Use permissions
    use permissions: true
    ## Enable users to make long emails
    enable longmails: true
    ## show unread mails on login
    show message on login: true
    
    ## This sets the max amount of mails a user can have
    ## only used if permissions is off
    mailboxsize: 20
    ## how long unread mails should stay in the inbox
    ## Upcomming feature, is not ready yet
    storage length: 30
    
    ## For permissions
    nodes:
      ## groupname, not used yet
      user:
        ## same as above
        mailboxsize: 20
        ## the permission node for this group
        node: thunderghast.usernode
      admin:
        mailboxsize: 0
        node: thunderghast.adminnode
    
    Upcoming & Buglist (open)


    Upcoming:
    • More adaptable to personal likings. (change colours, messages)
    • Improved GUI
    • Admin commands
    • Webaccess with MySQL (With help of White Sheep)
    • Auto remove old mails
    • Iconomy Support
    • Mailbox block or Mailman NPC?
    • Flatfile Support
    • Ability to send items
    • Add help page
    BugList:
    • Some things (like an other plugin) can freeze the longmail, making the chat unusable
    • An reply for a mail is send to the person who replied (to yourself)
    • If an users try to read a mail that isn't theirs, it throws a Exception
    Changelog:

    Version 1.1:
    • Fixed bug where "_" was considered as an illegal character
    • Fixed missing message at /tglongmail
    • Fixed small error in default config file (admin group had thunderghast.usernode as node)
    Version 1.0:

    • Initial Release
     
    jasonznack likes this.
  2. Offline

    L24D

    Hmm, it refuses to allow me to send mail.
    In the chat it tells me it cannot send, (/tgmail, /tglongmail)
    and i get this in the console:

    2011-04-29 01:23:31 [SEVERE] [ThunderGhast] - Unable to save mail! near "m": syntax error
     
  3. Offline

    Mentioum

    I think he means being able to send mail to permission nodes. So for example a user can go /tgmail Moderator subject message. It would be sent to all users in the moderator group. Kind of like mailing lists. Handy :p Especially if users can make their own groups like "friends" or "xyzproject"

    A feature I would like to see is a mailbox list feature... to list your mailboxes or make it show them when you to /tgcheck.

    What about the /tgreply problem I'm having?

    I would also like to put my hand up and go... physical mailboxes and item sending with iconomy tie in please!
     
  4. Offline

    Hretsam

    The group idea is a nice idea. as for the reply problem, i dont know will also look into it.
    I will see if i can recreate the problem, and fix it.

    Hmm, to bad sql errors are not very clear on this kind of things. do you use Mysql or SQLLite?
     
  5. Offline

    paully104

    Great plugin works with the database fine however there is one [SEVERE] error I've noticed. Say i have a user named TestSubject1 and i do /tgmail Test Yo YO, it says to TestSubject1 he got mail however he has none in his inbox. If i do /tgmail TestSubject1 yo Yo then he receives the mail. If you can make it so you dont have to type out the full name i would be very appreciative.
     
  6. Offline

    L24D

    @Hretsam
    I'm using SQLlite... so yeah. :p
    MySQL never works... so i don't even bother with it.
     
  7. Offline

    Hretsam

    Ooh the message is linked with a check if the user is online, i forgot that bukkit auto adds usernames.
    I can add it, this would however require the users to register in some way
     
  8. Offline

    paully104

    Would be fantastic if you can do so, i have it installed on my server running for a good couple hours and its a great way to leave messages on work status and stuff for rpg's
     
  9. Offline

    holland6045

    Cant wait to try this out on my server. Thanks in advance bro :D
     
  10. Offline

    firefly_goat

    Can you make so you can send items, and send money with BOSEconomy?!
     
  11. Offline

    Greylocke

    My preference is to have as few console commands as possible, and to keep everything 'in-game'. Of course this is pretty difficult to do with something like a mail program, but having physical mailboxes would be cool! Maybe something like Lockette does with signs? (First line of the sign would say [Mailbox], 2nd line would have the owner's name.)

    I like the NPC "mail carrier" idea. How about carrier chickens? :) When you send a mail from your mailbox, A chicken is spawned, and then it runs off into the distance. hehe...
     
  12. Offline

    DannyCare

    From what I can see, Essentials doesn't have a system in which you can send mail to a whole group. If your plugin does I stand corrected however I haven't seen it :)
     
  13. Offline

    Steve7596

    I'll find out what it says as soon as possible... kinda busy right now.

    Alright I got the error message from the console... here it is.

    15:44:20 [INFO] tgread 3
    15:44:28 [INFO] tgread 2
    15:44:28 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'tgre
    ad' in plugin ThunderGhast v1.0
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:85
    )
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:2
    55)
    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.
    java:675)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:638)

    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:632)
    at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
    at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    Caused by: java.lang.NullPointerException
    at com.bukkit.hretsam.thunderghast.Commands.CommandRead.run(CommandRead.
    java:28)
    at com.bukkit.hretsam.thunderghast.ThunderGhast.onCommand(ThunderGhast.j
    ava:113)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    ... 12 more

    I was able to read my 3rd mail but not my second....

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

    Hretsam

    Yes, this is an bug when you try to open a mail that is not yours..
     
  15. Offline

    Abteen

    Hey great plugin...
    I just had two problems...
    Whenever me or someone else uses the /tgread command, it comes up with an internal error. This happens to everyone.
    Another problem is, that my users dont understand the mail id... (Yes, they are noobs)
    Code:
    16:19:25 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'tgread' in plugin ThunderGhast v1.1
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:85)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:255)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:675)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:638)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:632)
        at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
        at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    Caused by: java.lang.NullPointerException
        at com.bukkit.hretsam.thunderghast.Commands.CommandRead.run(CommandRead.java:28)
        at com.bukkit.hretsam.thunderghast.ThunderGhast.onCommand(ThunderGhast.java:113)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
        ... 12 more
    16:19:29 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'tgread' in plugin ThunderGhast v1.1
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:85)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:255)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:675)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:638)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:632)
        at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
        at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    Caused by: java.lang.NullPointerException
        at com.bukkit.hretsam.thunderghast.Commands.CommandRead.run(CommandRead.java:28)
        at com.bukkit.hretsam.thunderghast.ThunderGhast.onCommand(ThunderGhast.java:113)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
        ... 12 more
    >
    
    That is the error code i get when try and use /tgread
     
  16. Offline

    stalkingwolf

    I like this plugin, but since you are the only standalone I can find this gave me a great idea. We use phpbb3 on our website which the mc server is for the staff. If this plugin could tie into the phpbb3 private message feature...

    Just an idea.

    -Stalkingwolf
     
  17. Offline

    sweetswear4665

    It will say "your arguments contain illegal characters" when I try to send a mail to a friend with an underscore in his name. Can you please fix this? Other than that great mail plugin!
     
  18. Offline

    Kimberly2000

    I don't see the permission nodes, can you tell me what they are?
     
  19. Offline

    MineralMC

    Couldn't get longmail working, it sends the message but locks the client into the 'longmail' mode, they have to rejoin to get their chat back to normal.
     
  20. Offline

    Yahiko911

    HY! I have a problem. I cant see the mailid. when i use the /tgcheck, there are no mailid. i was read the mail, which had mailid 1 .. i dont understand it how can we know what id have the mail >.<
     
  21. Offline

    Hretsam

    use /tgmailbox

    " node: thunderghast.adminnode"
    That is the permission node, you can config to whatever you like

    Wierd, you use a chat plugin?
     
  22. Offline

    MineralMC

    Yeah, I'm using HeroChat (and CraftIRC, although I imagine that wouldn't affect it).
     
  23. Offline

    Mentioum

    same problem, also using herochat!
     
  24. 12:15:34 [SEVERE] [ThunderGhast] - Unable to save mail! You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'music hall' a good idea? /msg me for details ', -1, 'inbox' , CURRENT_TIMESTAMP)' at line 1
     
  25. Offline

    Hretsam

    Wierd, somehow the message got past the checker for the ' symbol. What command where you using?

    Yes somehow the HeroChat isn't reacting good to my chatlistener. I am busy fixing this.

    To the rest,
    I have been busy this weekend, so i couldn't work on it. Now i got some spare time, and i am working hard to get this updated soon.
    I am at 40% for the update.
    Did take a look at Iconomy, shouldn't be to hard to implement.
     
  26. Offline

    Mentioum

    if you are having trouble contacting Niji IRC is awesome for him as long as you are polite he'll always help you out.
     
  27. Offline

    Hretsam

    Thanks, i'll keep that in mind
     
  28. Offline

    ArcadEd

    I am new to have a minecraft server so please bear with me :). I installed sqlite.jar and Thunderghast. Everything loads up fine on server restart. When I log into game and type /tgcheck I get this error "an internal error occurred while attempting to perform this command"

    Thanks,
     
  29. Offline

    Mentioum

    I thought since I'm so interested in this plugin (and so are the lpminecraft users) I would post some information about what we are all hoping for if that isn't too presumtuous?

    1. Looking forward to the IConomy hook in. If possible please make it so that you get charged by mail length in characters and/or number/value/weight of items (configurable) - just a value for each item id would be great.
    2. Post boxes which activate the access the commands for mail sending and receiving (configurable - so you can check you have mail but you need to go to the post box to read it - for example) for a set period of time when clicked with an item (configurable - I'd choose a book or paper but I'd also like to be able to choose any item so as not to have plugin compatibility issues.) - Possibly include a chest as part of the post box so you can put the item in there and then click a button above it to send it.
      1. Walk over to a postbox which consists of a chest and a
    3. Item sending (as I mentioned above in the iConomy hook in.) Item cost to send = Base rate + (item configurable cost x item number) :)
    4. Optional time period for recipient to have to wait. I would probably disable this on my server.
    Thanks very much and I hope you continue to work/play on this plugin haha!
     
  30. Offline

    The PC Tech Guy

    YES! I was looking for a plugin like this for a while. I don't want, plan to, or need Essentials as I use a server wrapper.
     
    chrisc97 likes this.
  31. Offline

    chrisc97

    Is it possible to make it so that we can configure the colour for ThunderGhast's messages to show up in, and also possibly the title? Some of my users don't like the bright blue, and I'd quite like to change its name to make it 'fit in' with my server (branding, that sort of thing). Thanks :p
     

Share This Page