thomasfn / ecosmarttaxmod Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
right now we have the "dumb" transfers that do not remember how much money should be transferred. A smart transfer that could queue e.g. 2000โฌ every 24h, to be fulfilled whenever the source account has funds, would be awesome.
Maybe via an extension to the chat command, e.g. /tax card <user>
to view someone else's tax card. Could be useful to help another player understand their taxes if they have a question.
Right now if a number of tax cards are due payments from a gov account which can't afford to pay them all, the tax cards with lower ids get priority over the payments. For example:
Gov account: $100
Tax card 1: owed $60
Tax card 2: owed $60
Tax card 3: owed $60
In the above case, the next tax tick will pay tax card 1 the full $60, tax card 2 gets $40 and tax card 3 gets nothing. Ideally it would instead pay each tax card evenly (weighted towards higher debts).
It would distribute a currency among an alias, using Smart Pay / Smart Tax mechanisms. Properties:
we had a situation where lots of money was owed by the state route account, and the states didn't know how much they had to put into it to clear all debts. It would be awesome if /tax govcard would also show outstanding payment and tax totals for this government account. Another use case would be seeing how much wages are owed in total, or how much abandonement tax the federal bank is missing.
Eco currently supports the following transfers of money:
government account -> person(s), which is a payment
person(s) -> government account, which is a tax
private/government account -> private/government account, which is a transfer
An action to send money from a person to another person is currently missing. If a citizen uses more than their personal bank account, the existing "transfer" action does not support tracking that wealth too, it can only be used to transfer an amount of currency from one specified account to another.
To properly support sending money from a citizen to another citizen, we need to do a workaround:
The query would be similar to query custom stat in that you can specify the time period to query in, or leave it at 0 to query lifetime. This would be helpful for accounting and refunding purposes (e.g. issue an exec action to refund everyone for all taxes of "Sales Tax" code in the last 24hrs, but not other tax codes).
Possibly also another set of game values for the government side, e.g. query how much revenue a particular tax has generated for a given gov account.
Maybe we want to add some view of this data to the tax card or tax log too so the player can view their aggregate stats at a glance?
They show up in the dropdown but clicking them appears to do nothing
with the tax framework, we were able to have the actual tree tax delayed until the next tax framework tick, so you were unaffected by it if you cleaned up your stuff fast enough. Smart Tax is collecting instantly, meaning a citizen will get taxed immediately.
That means we also have to do a "smart pay" instead of a "smart rebate" for giving back the money that was taxed, because otherwise citizens will be taxed their money but not given it back. The government has to actually give out money instead of future tax income.
It would be awesome if there was a way to delay a "smart tax" action without having to resort to the tax framework again, by e.g. saying "trigger 1h afterwards". Alternatively, there could be a counterpiece to the smart rebate to increase the tax burden for you by a certain amount but not collect these taxes immediately.
If the current "smart rebate" can already handle negative numbers (meaning, additional tax debt) then maybe it can be renamed to a "smart tax difference" or something like that to reflect that it can do both positive and negative changes in tax burden
Probably fixable by calling this.Changed(nameof(Description))
after any change to tax card data to flush the cache
I noticed there seems to be a somewhat minor issue, where if you change what is typed in the Tax Code field and then close the editing window, the next time opening it it will still display whatever the original input was when the law submitted(if brand new, it will always be blank). The same will also happen with a new block is added to the action "Then" block where the text will disappear.
However, this seems to only be a visual issue as submitting the change as a new law will have the action logged under whatever you last entered into the field.
The biggest problem with this is that it can be confusing to the user and can very easily lead to a mistake when you aren't aware of the issue.
The legal actions still record to the tax card even if the GameAction was prevented
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.