CashFlow
CashFlow is an economy plugin that lets you create taxes and salaries that pay out at an interval you set. Compatible with iConomy 4, 5, & 6+, BOSEconomy 6 & 7, Essentials Economy 2.2.17+, and MultiCurrency. Permissions plugin optional but recommended - pick from PEX, bPermissions and PermissionsBukkit.
Requirements:
- Register (Versions 1.0.1 and up use Vault)
- An economy plugin - BOSEconomy, MultiCurrency, Essentials Eco, iCo4/5/6
- A permissions plugin - PEX, bPermissions, PermissionsBukkit
Features:
- Uses the Register API, so it is compatible with multiple economy plugins.
- Supports PEX, bPermissions, and PermissionsBukkit.
- Create multiple taxes with different amounts, intervals, and players receiving the tax (or no player receives the collected tax). Apply taxes to one group or many. Gives you the ability to add players to an "excepted players" list so if someone isn't going to play for a while you can freeze their tax without having to remove them from a group.
- Create multiple salaries with different amounts, intervals, and players paying out the salaries (or no employer). Apply salaries to one group or many. Add players to an "Excepted Players" list so you can freeze their payment if they're going to be away, without having to remove them from a group.
- Hits offline players.
- Set salaries and taxes to pay only to players who have been online within a certain number of hours.
- Supports non-player economy accounts.
Commands and Permissions
Tutorial
To Do:
- Commands to edit taxes (maybe).
- A little code cleanup.
- More permission nodes
- Percentage based salary
Trello Dev board
Visit the Trello board to see the current todo list for all projects.
You can comment and vote on any of the topics there.
All changes on the Trello board are in real-time.
If you decide to download this plugin please leave me a comment to let me know how it works for you so I can improve it! And if you like this plugin, please consider donating. It's a big incentive to continue this, and it helps me pay for things I need for school.
I was just just curious because I was going through the config and saw 'world: '. So I was just curious if it was working for all my worlds.
@Objit
Err... which economy system is world specific? o.O
I mean, if Vault is hooked into economy, it ought to work. But if it doesn't, let me know.
Does this support multiple worlds? If so can you please tell me how to do it.
thank you so far, nice! I will add the plugin to the server within the next few hours. This is really what I was looking for for a long time, nice that some people have same ideas AND the knowledge to make things possible. now our server can have like all kinds of taxes, no limits =) too bad im German and we have such a weired, heavyset tax system and now I can transfer it into the game xD kidding, really thank you!
@ToddVee
Language localization might take longer, if I'm to allow all modification of any output string (including menus and whatnot).
In the meantime, I did the other half of your request, and now the money display should be correctly formatted. I've submitted the version to BukkitDev, but if its not available when you check, you can also get it from GitHub: https://github.com/mveritym/CashFlow/downloads
@ToddVee
Yeah, I didn't fix that out of laziness. Sorry. I really should get around to fixing that...
Uh... I don't think we did custom localization... It wasn't in the original plugin and I didn't think to make the messages also custom...
So, I'll get working on it and let you know when I submit the updated version.
this plugin can dramatically change our servers tax system and I am looking forward to definitively using it! There are some minor things I want to discuss and ask: Is it possible to define the numbers or the layout of the numbers that people see? I mean I payed 9.549375$, but I think it would be enough to know it was 9.55$. Everything else seems funny I guess. And the other thing is that I like to change the text messages the mod shows. I would like to change it to German (could translate it also), but for now, it seems to be impossible to change the messages. Or did I just miss it? Thanks a lot for such a nice mod!
@Mitsugaru
My workaround for now seems to work.
One rank gets 500.
The next gaining 500 from the first and an additional 500.
Rather than them gaining 500 and 1000.
@Jaiimc
Hmm, sounds like its including inherited groups.... :\
Looks like I won't be able to use Vault's built-in method as I had hoped.
I'll try and work on it tomorrow.
@Mitsugaru
2012-04-09 03:08:11 [INFO] [CashFlow] Paying salary egsalary
Except... I was in Owner group. I got paid.
I moved myself from EG to Owner before testing this.
Possibly the data is being read in and not being changed as my files are?
WorldGuard had similar problems - they added in /wg flushstates name to fix it.
Edit #2: My other warden got paid too.
Edit #3:
I promoted a few people to test.
Elite Guard gets tgsalary, pgsalary and egsalary.
Patrol Guard gets tgsalary and pgsalary.
@Jaiimc
Uploaded revised version here: https://github.com/mveritym/CashFlow/downloads
Try the fire command again. Let me know how it goes.
@Mitsugaru
http://pastie.org/3752996
You can find me on the Essentials IRC if you need to talk in depth. I can help with GM testing.
Edit: I can report that I did get it working on my localhost test server. Once implemented in to the real server is when I came across this error.
@Jaiimc
GroupManager support is a work in progress. Thanks for helping with testing it out.
When you do the following command:
/salary fire egsalary
Does it say anything in the console?
Perhaps its not grabbing players from the group specified... The good news is at least groups are being recognized correctly.
I will work on it and reply with an update when I can.
Groupmanager, latest stable release.
Bukkit 1.2.5.
Cashflow v1.187
Essentials Economy
/cashflow setworld world
/salary create egsalary 1500 0.1
/salary apply group egsalary EGuard
/salary enable egsalary
/cashflow enable
/cashflow restart
Should - in theory - pay out to "EGuard" every 6 minutes.
It doesn't.
Edit:
Managed to get it working - it'll 'pay' now.
2012-04-09 02:08:44 [INFO] [CashFlow] Paying salary egsalary 2012-04-09 02:08:44 [WARNING] Task of 'CashFlow' generated an exception java.lang.NullPointerException at mveritym.cashflow.PermissionsManager.getGroupManagerUsers(PermissionsManager.java:318) at mveritym.cashflow.PermissionsManager.getUsers(PermissionsManager.java:357) at mveritym.cashflow.SalaryManager.getUsers(SalaryManager.java:489) at mveritym.cashflow.SalaryManager.paySalary(SalaryManager.java:496) at mveritym.cashflow.Taxer$Task.run(Taxer.java:161) at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:126) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:517) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
... or at least try?
@skylakewalker
Can you make a ticket with a copy of the console output on startup? There has to be an error reported there.
@Mitsugaru
i get the same issue the server isnt even generating a config file and ive tried installing this on two hosted servers so i dont know what im doing wrong
GroupManager users, try using this version and let me know how it goes: https://github.com/mveritym/CashFlow/downloads
@Torlen
Sorry for not replying soon. What does the console say? I need the stacktrace.
@niko_of_death
It reads groups based off of your permission group system plugin.
Current supported plugins for the updated betas are:
How do you create groups?