[ADMN] ModTRS v2.1 - Moderator Ticket Request System [1240]

Discussion in 'Inactive/Unsupported Plugins' started by Yetanotherx, Apr 4, 2011.

  1. Offline


    ModTRS - Moderator Ticket Request System:
    Version: v2.1

    On very large servers, people often require help from a mod. People find griefing, want to place a banned item, or want something moved. However, during peak hours, when people are requesting help constantly, it can be hard to keep track of the fast-moving chat. ModTRS aims to solve this issue. ModTRS allows users to file requests to the moderators, and have them saved in an organized manner until a mod has a chance to respond.

    This plugin is currently used on some very large, high-profile servers, including the Reddit Public servers, where it is being used effectively and easily by the mods.


    • Easy installation: Just install ModTRS.jar, and it takes care of the rest!
    • Logs username, time of day, location of request, a message, and more information
    • Ability to claim requests to prevent mods stepping on each others' toes
    • Send a private message to all the mods online
    • Teleport to the location of the request
    • List all online moderators
    • Useful help: /modreq help only shows commands you have permission for
    • Many more features...
    (Thanks, CyberSick99!)
  2. Offline


    Please update to latest recommended 617
  3. Offline


    I have updated the plugin to version 617. It is pretty much complete, and it just needs some real world testing before I declare it stable.
  4. Offline


    I see potential in this. I think there was a similar plugin too... just can't remember the name.
  5. Offline


    I can't seem to get it to work.
    CB 617
    Using any commands results in no response from the server. I'm using group manager and I have all the permissions.../check, /mod-broadcast, /modreq test just all do nothing.
  6. Offline


    Is anything reported in the console? Do you get a "Unknown console command" when you do them? Or is it just that nothing is happening?
  7. Offline


    Absolutely nothing is happening.

    Figured it out. It's looking for the SQLite library.
    Many other plugins use that, and I have it in my main minecraft directory. Perhaps you could look there as well since other plugins do that too?
  8. Offline


    i used the helpticket plugin so far, but this sounds way better.
    I havn't tried it yet because I am at work, so therefore I do not know if it does what i want:
    Does it display new tickets/requests?
    I mean, if there is a new ticket that it automatically displays.
    Or at least that it tells every 5 minutes that there is an open request.
    Thanks in advance
  9. Offline


    A way to view it through a browser would be amazing. Like how milkAdmin used to function. It would load up a page whenever the server was loading and bind it to a certain port. It would be useful for large servers as you wouldn't have to sort through all of them ingame.

    I don't know how it worked exactly, but couldn't you just have them call the same database?
  10. Offline


    I do not have a web interface at the moment. However, it is stored in a SQLite database with a very simple table structure, so an amateur programmer could write an interface for this.

    When a request is filed, it notifies all the mods. When a request is completed, it notifies the user and all the mods. When a request is claimed/unclaimed/held, all the mods are notified. When a mod logs on with new requests available, they are notified that there are open requests.

    There's a lot of notification. :)

    I've updated it using LWC's updater code. Please let me know if this works.

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


    An amateur programmer I am not...
  12. Offline


    thanks I use it
  13. Offline


    Can you please upload v0.1? I still run CB617.
  14. Offline


    It should still work on CB617, as I didn't have to make any changes to upgrade to CB670. I would strongly advise that you update ASAP, as CB669 and before have a critical security hole that was recently used to exploit a large number of servers. Link
  15. Offline


    Problem, when I give my mod group their commands, it says they have no permission to use it. Admins with all permissions can use it though. Was there a change in the permission nodes, or could it be group manager. I doubt its Groupmanager though because they have access to all the other commands I give them plus Admins, once again, have access to ModTRS.
  16. Offline


    I've pushed a stable version. If you downloaded a late beta, it should automatically download the ModTRS jar and update itself.
  17. Offline


    Nice! It works on CB617. Thanks alot! Is there anyway to reset the list back to #1? I had like 5 test requests and would not like the requests to start at #6.
  18. Offline


    This is intentional. It's useful to have an archive, so someone can always go back to read past requests. What more, from a programming standpoint, it's much more logical to do it this way. If you want to come up with a temporary solution, moving the plugins/ModTRS/modtrs.db file to another location should clear all the requests. Just do it when the server is stopped.

    A side note, version 1.1 will have the ability to move the database file while the server is running.
  19. Offline


    Thank you for this plugin! I have some questions =)

    1) What is the use on hold? for me it seems that it is an alias for /done cause if i set a request on hold it is hidden from the open request list. On hold should be visible in the list but marked as hold?

    With /claim its possible to make it visible again in the open-request list .. but then i must know the id.

    A /checkhold would be nice

    2) What about mysql support? In my opinion there should be an option for that.
  20. Offline


    Hold is designed to keep stuff off the short queue (say someone logs off and you need to ask them clarification). You can see all held requests by doing "/check t:held".

    MySQL support is coming in a future version.
  21. Offline


    Aahh okay ^^ thank you for pointing that out. Well, there is a modifier! Nice 0) That was all i need to know. (Maybe you could add this to your Usage Section in your Startpost ^^)

    MySQL support in a future version? Ill keep that in mind. I cant wait to play with it .. Imagine if someone wants to include this into a track frontend (like svn trac) and answer those tickets remotely ;)
  22. Offline


    Just barely updated it to link to the new usage page.

    One could also write a SQLite frontend. Although I do agree MySQL would be better. SQLite is just easier.

    Perhaps this is an issue with the GroupManager interface. I use Permissions for the most part, so I don't know what's working on GroupManager and what's not. I'll look into this. Do you use multiple worlds on GM?

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


    Actually got it to work, you should incorpirate gm, its actually not that different then permissions.
  24. Offline


    I tested it with GM once, so I assumed it was working. But because I never use it, I wasn't sure.

    Yeah, I searched for a long time, and couldn't find anything. This is turning out really well, so I'm optimistic about how this plugin will be used.

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


    Yeah "could" ;) Personally i prefer mysql over sqlite espacially if you want to store more than 100 lines in it. For a simple guestbook (if that diff applies) you probbably dont need the power of mysql but in case of accessing a huge amount of data sqlite slows down the process.

    Im not familiar with java and mysql implementation but differs sqlite and mysql that much? In my opinion sqlite is a smaller version of sql. The Querys should be the same i think (the Database is then a socket instead of a file handler). So implementing mysql should not be that hard. Okay .. you have to instruct the user to create a database manually and so on .. i babble .. thanks for your reply looking forward to see more ^^
  26. Offline


    All the SQL queries I use are likely to work on MySQL too. The issue with MySQL is that I have to use config values for username, password, etc. While that isn't difficult, when I was starting the plugin, I didn't have a config file set yet, so I just used SQLite to make life easier. Like I said, MySQL in a future version.
  27. Offline


    Great plugin! This will definitely help during the peak hours.
  28. Offline


    +1 for an awesome plugin that works very well!
  29. Offline


    So i have this installed and seems to be working, i get msg, and can claim and close them, but when i went to check the closed files i got this? Is it something i messed up?

    2011-04-14 09:07:35 [INFO] Willobe issued server command: check-done
    2011-04-14 09:07:47 [SEVERE] java.lang.StringIndexOutOfBoundsException: String index out of range: 2
    2011-04-14 09:07:47 [SEVERE]     at java.lang.String.substring(Unknown Source)
    2011-04-14 09:07:47 [SEVERE]     at yetanotherx.bukkitplugin.ModTRS.validator.CheckValidator.isValid(CheckValidator.java:16)
    2011-04-14 09:07:47 [SEVERE]     at yetanotherx.bukkitplugin.ModTRS.command.CommandHandler.onCommand(CommandHandler.java:127)
    2011-04-14 09:07:47 [SEVERE]     at yetanotherx.bukkitplugin.ModTRS.ModTRS.onCommand(ModTRS.java:156)
    2011-04-14 09:07:47 [SEVERE]     at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    2011-04-14 09:07:47 [SEVERE]     at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
    2011-04-14 09:07:47 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:254)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.NetServerHandler.c(NetServerHandler.java:596)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:559)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:553)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.Packet3Chat.a(SourceFile:24)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.NetworkManager.a(NetworkManager.java:198)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:72)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:368)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:283)
    2011-04-14 09:07:47 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:375)
  30. Offline


    If I enter /check # (#=id)

    This Error display
    2011-04-14 18:50:49 [SEVERE] java.lang.StringIndexOutOfBoundsException: String index out of range: 2
    2011-04-14 18:50:49 [SEVERE]     at java.lang.String.substring(Unknown Source)
    2011-04-14 18:50:49 [SEVERE]     at yetanotherx.bukkitplugin.ModTRS.validator.CheckValidator.isValid(CheckValidator.java:16)
    2011-04-14 18:50:49 [SEVERE]     at yetanotherx.bukkitplugin.ModTRS.command.CommandHandler.onCommand(CommandHandler.java:127)
    2011-04-14 18:50:49 [SEVERE]     at yetanotherx.bukkitplugin.ModTRS.ModTRS.onCommand(ModTRS.java:156)
    2011-04-14 18:50:49 [SEVERE]     at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    2011-04-14 18:50:49 [SEVERE]     at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
    2011-04-14 18:50:49 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:254)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.NetServerHandler.c(NetServerHandler.java:596)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:559)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:553)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.Packet3Chat.a(SourceFile:24)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.NetworkManager.a(NetworkManager.java:198)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:72)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:368)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:283)
    2011-04-14 18:50:49 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:375)

Share This Page