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.
@masteryodaaa
I'm sorry, the time persistence aspect of the original release (v1.0) currently not available in the new betas :\ Thus, as I explained in the known caveats, the thread times get reset whenever the plugin is enabled/disabled. If you absolutely require time persistence, then you should use v 1.0, if possible.
The alternative is to modify your daily tax/salary into workable intervals.
For instance, our server wanted to do a 1000 coin tax every day. However, due to the current limitation, we arranged it so that it does 1/12 of the tax (42) every hour.
I haven't had time to work on adding it back in just yet... And this is one of the reasons why its labeled as a beta: due to the fact that it is not feature complete based on the standards of the original release.
It works great now this far =) how does it work if taxes is set every 24 hours and i do a server restart? does it start over after restart
@masteryodaaa
I think I've found the tax issue. It ought to have only affected users of iConomy 5. I'll upload another version, 1.0.3. Let me know if it resolves the issue regarding percentage taxes.
Ok thank you for you great work you put on this
@masteryodaaa
I closed the ticket because it resolved the iConomy 5 support.
The percentage issue I will look into.
And as I mentioned before, as well as in the known caveats section, that the null error on server shutdown is a known issue and will be resolved at some point.
Also, you can find you ticket is still around if you change the filter to show closed tickets.
I cant find my ticket but when i set 30% it dosent tax players that amount its some random amounts and i get error when shutting down the server. http://pastebin.com/RNYeiUyq
Just a note, if you're already on 1.0.1, you need not update to 1.0.2 UNLESS you use iConomy 5 (the only change for 1.0.2).
[EDIT]
On a side note, if you have an iConomy system that is Vault supported, but not working with CashFlow, please make a ticket on the issue.
@masteryodaaa
Can you make a ticket regarding this? Also add which permission group system you are using.
I'll try and take a look at this when I wake up.
My config looks like this and in console i get [cashflow] paying tax staten but when i look /money top its still the players amount havent change. And i imported all players with /cashflow addplayers <mainworld> And 30 does that means it takes 30% in taxes sorry for all this questions.
Thank you i just edited my questions after you answered i didnt see that thank you for your answers.
@masteryodaaa
As far as I know, Register and Vault do not conflict. Its just a matter of which API a plugin uses is all.
And no, you wouldn't give your users access to cashflow.basic... Unless you wanted your users to have the ability to enable/disable/restart all taxes. :\
Ok, I'm a bit confused for the last question, so I'll answer it in the two ways I can understand it:
1) the "setworld" command is legacy really. Its not really needed for the beta 1.0.1.
2) Unless you have some custom, per-world economy setup, it should already be "all worlds" since the taxes/salaries are applied to the player.
The whole reason for "setworld" before beta was for the plugin to read the player.dat files. This is no longer necessary for the beta and beyond since we keep a local directory of all known players in a SQLite database. This is why I recommend the /cashflow addplayers <mainworld> so that you add old player.dat info into the internal database. Else, it can't tax players in the case where they're not in the permissions user list.
I hope this answers your questions :D
I now use register for factions and vault for cashflow do they work toghether whit out problems?
Hey everyone. Just a note that beta version 1.0.1 has been uploaded for approval.
Please note the important, major changes as well as the known caveats section. It is tagged beta for a reason.
However, for those that are not affected by the caveats, I believe that this update includes a lot of what most of you have been asking for, such as Vault support, as well as other nifty updates.
So, once again as a reminder, due to the nature of this update, please read the changelog.
I agree. Please move to Vault.
Can this use Vault please? I would love to get rid of Register.
Hey dude, I really like this plugin-concept, can't wait til it gets updated!
One question: To what does one interval-unit correspond? (sorry for my weird englisch) I mean: If I define a interval of 1.0 in the config, is it one minute or one ingame day or whaat?
Cheers, Lasse :-)
Hey all, well I had sort of abandoned this for school related reasons but I'd like to come back to this with some help. I'm looking for a couple of intelligent, mature devs to help me out with this plugin. Extra points if you know anything about scheduling. Shoot me a PM if you're interested. I have no idea what Vault is but I'll take a look.
So im making a salary that pays everyone for just playing. Is there any way to set it to pay everyone so i don't have to type out every name?
How do you add players or groups to a salary?
15:34:06 [INFO] [CashFlow] Paying tax DerZehnte
15:34:06 [SCHWERWIEGEND] Exception in thread "Timer-7"
15:34:06 [SCHWERWIEGEND] java.lang.NumberFormatException: For input string: "6424,67"
15:34:06 [SCHWERWIEGEND] at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
15:34:06 [SCHWERWIEGEND] at java.lang.Double.valueOf(Unknown Source)
15:34:06 [SCHWERWIEGEND] at mveritym.cashflow.TaxManager.payTax(TaxManager.java:335)
15:34:06 [SCHWERWIEGEND] at mveritym.cashflow.Taxer$TaxTask.run(Taxer.java:68)
15:34:06 [SCHWERWIEGEND] at java.util.TimerThread.mainLoop(Unknown Source)
15:34:06 [SCHWERWIEGEND] at java.util.TimerThread.run(Unknown Source)
----------If i put "Tax: 10%" in config, it will crash, without that percentsign it works ! The input string 6424,67 above was exactly the 10% from the amount of the player, but the rest won't work.