Zeny vend/trade/character limitations need to be dealt with. I know our reality regarding zeny is not the same as kRO but it is a daily struggle for iRO.
And don't give me that integer limit crap, there are ways to work around that and they're not that complicated.
Off the top of my head, here's one way to do it
- Wherever the zeny value is kept in the database, add a seperate value that will store the amount of billions a character has.
- Add an npc, "Zeny Keeper", or whatever.
- NPC allows you to deposit/withdraw 1 billion at a time into that new billion value in the database, no ingame item needed here so no duping. Make sure to block withdrawing 1billion if it makes you exceed regular zeny limit...
- Integrate that new billion value to all the necessary trade/vend/etc. windows/functions to be traded at the same time as regular zeny. Increment/decrement it through transaction functions. (Either the same ones or make one more called at the same time for each situation)
- You can now have roughly 2,149* billion billions on any character.
We would basically trade two different values when vending/trading/etc. One still limited to 999,999,999 as it currently is and another one for the billions. Not ideal, could end up with 10b banked and 2b on character, but still perfectly functionnal. Simply don't overlap both, keep them split and not affect each other. Except for the deposit/withdraw part of course, but not transactions. As in don't allow trading 500m regular zeny if character already has 2bil and overflow it into the billions value, keep regular zeny count as is and add this additional billions layer.
Otherwise it would require to go much further into the logic and circumvent the integer limit by using text values when sending to transaction functions and then extract the billions/regular zeny parts of it and do all the calculations behind the scenes and return billions/regular values into the DB fields but that would be a lot more work and have more issues related to it. Trying to keep it easy for them.
Edited by Ilindith, 20 May 2019 - 02:18 PM.