Inactive [ADMN/ECON] PayDay v0.3.1 - User payouts by group (iConomy) - automated - synchronization[1000]

Discussion in 'Inactive/Unsupported Plugins' started by TZer0, Apr 10, 2011.

  1. Offline

    TZer0

    Check this plugin instead: http://dev.bukkit.org/server-mods/payday/

    Support for this plugin has been discontinued. If you wish to take over, please contact me.
    "It is pay day."
    -Dungeon Keeper 2

    Note: I'm going to rewrite/refactor my plugin once I get better (having a rather interesting fewer right now). This may take some time, but it will be worth it. Once this is done, the plugin will be released on bukkitdev.

    Note 2: I think that I will make a system that uses permission-nodes instead.


    Version: 0.2.10
    Downloads:

    Jar (Github),
    Jar (Dropbox),
    Source (GitHub)

    old (iConomy 4): jar(Github)
    old (iConomy 4): jar(Dropbox)

    Features:
    • Automated paydays!
    • Allows you to administrate your users' income. (allows negative income!)
    • Separate groups for players - easily imported from Permissions. Use worldconf to choose worldname.
    • Lots of, lots of aliases!
    Dependencies:
    Permission-nodes:
    Commands (all start with /pd for in-game help - say /pd):

    Remember: if a parameter contains spaces, surround it with quotes, that is: this chracter: "
    Show Spoiler

    • For non-admins: /pd shows the time to the next payday.
    • time - for admins: shows the time to the next payday.
    • checkerrors - checks for errors in the config-file
    • players [#] - shows number # page in the list of players
    • groups [#] - shows number # page in the list of groups
    • payday - pays everyone their money, won't run if checkerrors fails
    • payday [#] - same as above, but does it # times. (can be run for -1 times etc.)
    • set group name value - creates a group with earns value per payday
    • set player name groupname - assigns a player to a group
    • mv groupname1 groupname2 - moves all players from one group to another
    • delete player/group name - deletes a group/player
    • searchdelete player/group name - wildcard delete (may delete multiple entries, this is a powertool and should be treated as such)
    • sync [overwrite] - imports players and groups from iConomy and Permissions, if overwrite is given, players lose their current group and get a new group from Permissions. Group-names are also added with an income of 0 if not present.
    • recurring - see how to set up recurring payments
    • onlinemode [f/t] - only online players get paid.
    • lastperiodmode [f/t] - only players who have been online in the last period get paid, overrides onlinemode.
    • interest [value] - sets or displays interest (it is in percent, the amount paid will be (value/100)*money_in_account at each automated payday). Interest is paid out to ALL accounts, not only those registered in PayDay.
    • worldconf [worldname] - sets or displays what permissions-configuration is to be used in PayDay.
    • message [message] - sets or displays payday-message.
    • Aliases:
      • player = pl,
      • players = pl
      • groups = gr
      • group = gr
      • checkerrors = ce
      • payday = pd
      • set = s
      • delete = d
      • move = mv
      • sync = sy
      • overwrite = ow
      • sd = searchdelete
      • recurring = rec
      • onlinemode = om
      • time = t
      • lastperiodmode = lpm
      • interest = i
      • message = msg
      • worldconf = wc (oh wow! :p)
    Player names are CASE SENSITIVE, group names are CASE INSENSITIVE and for simplicity - I recommend using /pd sy or /pd sync



    How to set up recurring payments
    Show Spoiler

    Note: this is a bit untested but should work, please report any bugs ASAP
    The command is /pd rec mode arg
    There are 3 modes:

    deactivated
    Alias: d = deactivated

    Deactivates recurring payments
    usage: /pd rec d

    relative
    Alias: r = relative
    Sets recurring paydays relative to the current time. For instance: /pd rec r 10:1:3 will set paydays every 10 min, 1 hour and 3 days (or 263400 secs).
    /pd rec r 1 will set a payday every minute
    usage: /pd rec r minute:hours:days

    static, usage: /pd rec static (hour,day,week,month)
    aliases: h = hour, d = day, w = week, m = month, s = static
    Static will always happen on the first minute of the hour, month,
    day or week, depending on what you choose.
    Example: "/pd rec s d" sets the recurring payments to happen every day.

    Q&A
    Ohnoes, I've broken my settings without knowing it and then set up a recurring payday, what should I do?
    Don't worry: the system will tell the console and anyone who has the "payday.admin"-permission that something has gone wrong and prompt them to run /pd ce to fix things.


    Tricks:
    • /pd s gr epicgroup 10000 = /pd set group epicgroup 10000
    • /pd s pl TZer0 epicgroup = /pd set player TZer0 epicgroup
    • /pd pd = /pd payday
    • /pd d gr epicgroup = /pd delete group epicgroup
    Changelog:
    • v0.3.1
      • Bug fix related to changes in code due to adding Essentials-support.
    • v0.3
      • Added customizable messages.
      • Starting to add essentials-support (experimental version included, don't try this unless you're adventurous)
      • Fixed issues involving dots in names
    • v0.2.10
      • If an account holds negative amount of money after a PayDay, it is set to zero instead.
    Previous changes (open)

    • v0.2.9
      • Interest
      • Customizable world-name.
    • v0.2.8
      • Fixed upper and lower case-issues
      • Added handling of quotes
    • v0.2.7
      • Fixed /pd time for static modes.
    • v0.2.6
      • Let the admins know how long payday has been failing so that they can easily compensate the users' losses and how long ago the last successful payday was.
      • Payouts for people who have been online in the last period.
      • Commands which allow players and admins to see how long it is to the next payday (/pd for normal users, /pd t or /pd time for admins)
      • Undo and multi-payday
      • Removed player or group-payday.
    • v0.2.5
      • Removed a debug-message and a call to a deprecated function.
    • v0.2.4
      • Removed a debug-text.
    • v0.2.3
      • Onlinemode - enable to only pay people who are online.
    • v0.2.2
      • Re-enabled sync!
    • v0.2.1
      • iConomy 5, deactivated sync
    • v0.2
      • Recurring payments!
    • v0.1.6
      • Added negative payouts
    • v0.1.5
      • Fixed what v0.1.4 should've fixed.
    • v0.1.4
      • Fixed bug when running without Permissions.
    • v0.1.3
      • Foolishly discovered that I should've blacklisted "nation-" as well.
    • v0.1.2
      • Fixed /pd players 2+ giving an error, /pd ce now gives warnings when seeing accounts starting with "town-" (also blacklisted when importing), wildcard delete added.
    • v0.1.1
      • Fixed possible sync issue.
    • v0.1
      • Initial release.



    Q&A
    Show Spoiler

    Q: Do I get money while I'm offline?
    A: If online-mode is off (default), yes.

    Q: When is <feature> going to be implemented?
    A: I go for the "release it when it is done" way of doing things and I generally don't schedule things, if I say that I'll do it - it will be probably done within 24 hours, if I say it goes on the todo-list, expect some waiting-time. Currently, I'm rather busy so I only update the most important things or things which are really simple to add but add lots of value.


    Todo:
    • [medium] Player-owned companies where players pay other players for doing jobs etc. with easy administration + ranks.
    • [low/maybe] Might add BOSEconomy-support. BOSEconomy kind of has this including sync - but I might add this just for the sake of portability.
    • [low/maybe] Essentials Eco-support?
    Please leave feedback and any errors which should happen to pop up, but read Q&A before you ask a question.
     
    DoomLord likes this.
  2. Offline

    2Bucks

  3. Offline

    antfry256

    Woot thank you very much!! you'v made me happy :)
     
  4. Offline

    renxwar

    Me likey. Thank you!
     
  5. Offline

    justinchiuex

    Someone help?
    When i type /pd payday

    Code:
    10:34:45 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'pd' in plugin PayDay v0.1.1
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:254)
        at net.minecraft.server.NetServerHandler.c(NetServerHandler.java:596)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:559)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:553)
        at net.minecraft.server.Packet3Chat.a(SourceFile:24)
        at net.minecraft.server.NetworkManager.a(NetworkManager.java:198)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:72)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:368)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:283)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:375)
    Caused by: java.lang.NoClassDefFoundError: com/nijiko/coelho/iConomy/iConomy
        at tzer0.PayDay.PayDay.onCommand(PayDay.java:128)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
        ... 12 more
     
  6. Offline

    TZer0

    I believe you are missing iConomy. "Caused by: java.lang.NoClassDefFoundError: com/nijiko/coelho/iConomy/iConomy at tzer0.PayDay.PayDay.onCommand(PayDay.java:128)". Line 128 in PayDay.java gets the iConomy bank and nothing more ("Bank ic = iConomy.getBank();").
     
  7. Offline

    Cyberpew

    Oh my god! Thank you so much for this plugin. Exactly what I was looking for.
     
  8. Offline

    thepackett

    Doesn't BOSEconomy have this already built in?
     
  9. Offline

    TZer0

    Kinda, but not sure if it syncs with Permissions. Hmm. Oh well.
     
  10. Offline

    City Builder

    Hi,
    Can this be used as a tax system where it removes money from each account based on a percentage of how much iconomy money each player has?
     
  11. Offline

    TZer0

    Not at the moment, adding as a possible todo.

    Though, I would question the reason for doing so - if you're running with a chest protection mod, people will just dispense all their money into material and keep them in said chests, if you're running without a chest protection mod, people will be put in an annoyingly tight spot where they must choose between the possibility of having their chests looted and the guaranteed loss of cash.

    However, if you want to give your players a reason to get money out of their accounts, then you might want to try my other plugin: Money2XP (depends on mcMMO by nossr50, awesome guy)
     
  12. Offline

    thepackett

    it does, i used BOSEconomy until i switched to iconomy because of all the additional plugins for it.
    EDIT: actually now that i think about it BOSEconomy had this except it occurred after a set period of time instead of initiating it with a command.
     
  13. Offline

    TZer0

    Thanks for the info - updated the todo accordingly.
     
  14. Offline

    Samsone

    Hey when I try to use command sync I get this any way I can fix it?
    Thanks :D

    Code:
    >pd sync
    04:14:02 [WARNING] Unexpected exception while parsing console command
    org.bukkit.command.CommandException: Unhandled exception executing command 'pd'
    in plugin PayDay v0.1.3
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80
    )
            at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:2
    46)
            at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:391)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:377)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:283)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:375)
    Caused by: java.lang.NullPointerException
            at com.nijiko.permissions.Control.getGroup(Control.java:568)
            at tzer0.PayDay.PayDay.onCommand(PayDay.java:99)
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
            ... 6 more
     
  15. Offline

    TZer0

    Are you running v0.1.3?
     
  16. Offline

    Samsone

    Yes just downloaded it the same day.
     
  17. Offline

    TZer0

    By looking at the stack trace.. this kind of looks related to permissions - if you're running 2.6 and have several worlds, have you remembered to peek into every world-config file and change copies='' to copies='world'?
     
  18. Sounds fair enough, but could you make a community based system, meaning a player can create a company pay group, where they can hire / fire people. And decide what to pay themselves? And maybe like payout on fridays or something automatic.
     
  19. Offline

    TZer0

    Interesting idea! Added to todo.
     
  20. Offline

    Apasalic

    I didnt get the CONFIG file :/
     
  21. Offline

    TZer0

    It is autogenerated.
     
  22. Offline

    Apasalic

    It didnt auto generate at me...... and I got iConomy, and it even said it was "ENABLED" - in server console it said that your plugin were enabled.
     
  23. Offline

    TZer0

    You get a config-file the moment you invoke a function which needs to store something. For instance - a sync. I mean, there's a reason I don't provide a config-file, why should I? (minecraft/plugin/PayDay/config.yml)
     
  24. Offline

    Apasalic

    I seem to have fixed it - and I got money/payed.

    But how can I block Default Users to use the command? I have no permission node added to the Default Group.
     
  25. Offline

    TZer0

    Fixed, get v0.1.4.
     
  26. Offline

    Apasalic

    Same problem occur - Default users can still use the command, even though they don't have the permission node.
     
  27. Offline

    TZer0

    Ah, right, should be working now.
     
  28. Offline

    Horia0310

    Ah! So this is like a paycheck system per 24/7?. Is there a way to payperrealhour? Like SA-MP paychecks.
     
  29. Offline

    TZer0

    Nope, not yet - but I could add some kind of recurring payment system.
     
  30. Offline

    Horia0310

    How often do I receive the income?
     

Share This Page