Mindustry icon indicating copy to clipboard operation
Mindustry copied to clipboard

Reactivity and Assorted Changes

Open SomeonesShade opened this issue 3 months ago • 21 comments

Serpulo Balancing: Unit-Turret w/ Reactivity
Updated: December 3, 2025

Summary of Changes

  • Implemented Activation Time, which is when Turrets need some time before they activate.
    • This includes sprite changes similar to heat for turrets, a setBars(), and a setStats() to be extra clear and make players... not confused.
  • Implemented Deposit Cooldowns on a per turret basis (similar to itemDepositCooldown).
    • i.e. fuses may inflict a 1 second cooldown, while salvos being 2.0 seconds.
  • Also fixed turret overdrive boost and coolants getting chopped off from Math.min(), making multiplicative boosts not fall short.
  • Counterbalancing turret buffs, with swarmer/cyclone being overall nerfed (Same ish cyro performance, worse base performance) due to overdrive/coolant fix.
  • Added armorMultiplier for BulleType.java which multiplies the amount of armor used in armor calculations
    • Armor Weakness: (armorMultiplier = 1 to inf): bullet encounters more armor
    • Armor Pierce: (armorMultipler = 0 to 1): bullet pierces armor
    • Anti Armor: (armorMultiplier = negative value): bullet gains damage the more armor the target is
    • Armor Weakness is specifically used when the usual increase firerate and decrease damage approach is no longer applicable. Use this sparingly and only necessary.
  • Lancer has received this stat as a test drive, i don't think a tita-tech turret should have this much anti-armor, but making it shoot fast sucks. So hence this.

Rationale

  • The general summary is that turrets main disadvantage is the upfront cost the defender has to foot in, in exchange for great ammo cost to killed unit cost (otherwise you would be using units for defense). Reactive mechanics essentially bypasses the upfront cost; this is notorious for lancer/arc, or shockmines against Ground T1-T3.
  • Problematic mechanics that can't be managed with stat balancing... i.e. no wiring power turrets and item filling... needs to be managed.
  • This is the purpose of this pr, to allow future balance to be possible under the new stat framework given.
  • ...I wouldn't be able to get the numbers right the first time.
  • For the reload fix, it's to make the balancing more predictable, and players actually getting the advertised multiplied boost rate.

Details on Counterbalance

Analysis of pre and post fix image

  • Scorch, Ripple, Wave, and Tsunami getting buffed is fine, but Swarmer (x1.1352) and Cyclone (x1.2807) getting a buff is dangerous...
  • So... due to that... swarmer received a firerate nerf of 8 -> 7, resulting a total nerf of -0.67% for cyro performance and -12.5% for base performance
  • and cyclone received a 7.5 -> 6 firerate nerf, causing a total buff for cyro performance (2.46%) but complete nerf of base performance (-20.00%)

Caveats and Disclaimers

  • Activation Time will brick your savefiles if you downgrade, according to Anuke this is fine but something to keep in mind when working with different beta versions/forks...
  • Deposit Cooldown is set as opt in for pvp servers to utilize... I wanted to make the setStats() update depending on the current rule set... but I'm unable to so its hidden by default (see needed feedback).
  • A shockmines fix hasn't been done yet, since there is a stat based solution for it, I'm thinking of (spikeweed shockmines or iirc see Blackberry's mega pr)... but I'm on hiatus so this is not something I'm prioritizing for this pr.

Needed Feedback

Stuff I need to answer or ask... I may answer these on my own, but these reflect the current thoughts I have on my mind regarding this pr...

Activation Time

[Status: Ready to Merge]

  • Activation Time is applicable to non-power turrets as well... I wonder if it's okay for those types since this can be applied to mods or future turret balancing.
  • Are the sprites good (shape, color, and execution)? Its more placeholdery with how I did it...
  • default is currently Color.white and the sprites reflect it... should be fine?
  • Parallax can have the feature as well, but... if it isn't here, better done alongside a balance change to parallax on a different pr?
  • Value Adjustment: the current values aren't fine-tuned, but more of a PoC value set. This can be adjusted in tandem with other stat changes for any future pr...

Deposit Cooldown

[Status: Ready to Merge, feedback remaining]

  • Should this be opt in and not opt out? (The change doesn't make sense in campaign so yeah)
  • I know that the feature could be better communicated as it doesn't have a setStats() entry, its tricky if this needs to be made clear.
  • Should the gamerule be visible in the rules dialog area? (I would probably put it beside the core deposit rule set)
  • Long name for the gamerule... hmm...
  • Value Adjustment: the current values aren't fine-tuned, but more of a PoC value set. May or may not be too significant.

Reload Fix

[Status: Ready to Merge, can be changed from feedback]

  • Only concern is if the swarmer/cyclone nerf is appropriate, its non-boosted form is nerfed, but the boosted form is kept the same ish.

Proof of Function

Footage of Reactivity (from jehosula) Defenses are placed reactively and not preemptively. This can be problematic as the turret and unit dyanmics of upfront cost is no longer at play.

https://github.com/user-attachments/assets/a2997f11-e7ab-40ff-b346-aa0db03923aa

Activation Time

https://github.com/user-attachments/assets/943af6c0-fb8c-48b7-8010-6a15024d9d6c

Yes, they don't shoot if inactive

https://github.com/user-attachments/assets/096a0205-f441-4137-8100-63c88034eecb

No Block Status

https://github.com/user-attachments/assets/f86079c0-4e51-487c-accc-96268747054d

Stat Screens

image image

Deposit Cooldown on an Enabled Map

https://github.com/user-attachments/assets/bc2145c0-f3bc-42cf-89ba-3d6297796af6

Coolant Fix (quick runs of data... since the difference is high (60fps footage)) Top has coolant and overdome (expected value is 5.875x)

Before image

image

After image

image

Armor Weakness (4) image

Armor Piercing (0.5) image

Anti-Armor (-1) image

[No Video Footage of Armor Multiplier]

Post Dev Notes

Finally finished this feature (activation time), the epiphany when I saw the heat of turrets, and realizing I don't need to go under part progress stuff is nice and finished it.

As of writing, about 1-3 weeks back I went under hiatus as I have left the mindus discord to take a break and move on for a little while. I should've done it after this pr so that I could get the feedback answered there rather than posted here... but it's fine. I got a lot of the conceptual feedback before then.

Btw, thanks Anuke to the initial feedback on making activation time clearer and the serp community for the initial feedback while the concept was developing. Deposit Cooldown being turret specific allows reactivity to fine-tuned (i.e. scatter should be reactive against air); and the sprite concept from Sire on making the turret grey tone was excellent. Also thanks to RZ for the advice regarding reactivity as an issue itself. I really hope this completely makes the game healthy as reactive turrets are now balancable!

This isn't the end of the battle against reactivity, but this is a nice steppingstone for it.

Activation Time is ready, but I'm not sure on Deposit cooldown, hence the pr being set to draft... maybe in 1-3 weeks this pr becomes open? depends on if there are any major issues here.

After this pr, I would only start once I come back and ready to be in the community (if ever, the hiatus is indefinite). I'm still happy with my contributions here.

If your pull request is not translation or serverlist-related, read the list of requirements below and check each box:

  • [x] I have read the contribution guidelines.
  • [x] I have ensured that my code compiles, if applicable.
  • [x] I have ensured that any new features in this PR function correctly in-game, if applicable.

SomeonesShade avatar Sep 27 '25 16:09 SomeonesShade

After some reevaluation... yeah a counterbalance may be needed for the fix? Still thinking about it...

I was hoping a counterbalance really isn't needed (i don't wanna do the dps adjustments since I'm busy), but it may be necessary sigh

SomeonesShade avatar Sep 27 '25 16:09 SomeonesShade

Okay... made it now on the BaseTurret Level (all turrets have access to the variable), and with some changes, parallax can have the thing as well... (with a sprite and a simple stat change)

I won't put it on the Block level though (even if shockmines may need something like it, it would have its own implementation prob) I don't think it's useful for a graphite press or a wall to have an "activation time". Maybe like a cool sequence of a block starting up? but its more cool for something like a turret...

Hmm got me thinking, I wonder if its compatible with any part progress moving the turret parts around... hmm... Thats a food for thought for now...

SomeonesShade avatar Sep 28 '25 07:09 SomeonesShade

Please anuke it will be a blessing for pvp

Leyn-pl avatar Sep 28 '25 15:09 Leyn-pl

Please anuke it will be a blessing for pvp

The changes in this PR do not provide any benefits to PvP at all, especially when the enemy deploys a T4 crawler unit to sneak past your defenses but cannot use the Lancer. The same applies to naval units. The Lancer, which uses electricity as ammunition, is designed for quick response. I believe this change is not ideal and may require alternative methods (for nerfs). Perhaps the Lancer doesn’t need to be nerfed at all—what should be nerfed is the elemental reaction. @SomeonesShade

DeterMination-Wind avatar Sep 29 '25 13:09 DeterMination-Wind

Please anuke it will be a blessing for pvp

The changes in this PR do not provide any benefits to PvP at all, especially when the enemy deploys a T4 crawler unit to sneak past your defenses but cannot use the Lancer. The same applies to naval units. The Lancer, which uses electricity as ammunition, is designed for quick response. I believe this change is not ideal and may require alternative methods (for nerfs). Perhaps the Lancer doesn’t need to be nerfed at all—what should be nerfed is the elemental reaction. @SomeonesShade

You do realize the tech difference between an Arkyid (Phase Tech) and Lancers (Titanium) right?

The main issue is that reactivity is currently unbalancable via stat changes. Ground Units is the concern here, T1, T2 and T3 Ground gets specifically hard countered by reactive mechanics because lancer/arc only target ground. Alongside any additional stat changes, you change the activation time so that if the turrets need some level of reactivity larger or shorter than the current one, then the activation time can be adjusted. (If you do have a follow up, I'll create a suggestion post in detail for this.) @DeterMination-Wind

Also, any stat styled nerfs is out of scope for this pr, it's been rushed outside of Project MIA since the changes should be compatible with any balancing framework...

SomeonesShade avatar Oct 04 '25 23:10 SomeonesShade

Please anuke it will be a blessing for pvp

The changes in this PR do not provide any benefits to PvP at all, especially when the enemy deploys a T4 crawler unit to sneak past your defenses but cannot use the Lancer. The same applies to naval units. The Lancer, which uses electricity as ammunition, is designed for quick response. I believe this change is not ideal and may require alternative methods (for nerfs). Perhaps the Lancer doesn’t need to be nerfed at all—what should be nerfed is the elemental reaction. @SomeonesShade

You do realize the tech difference between an Arkyid (Phase Tech) and Lancers (Titanium) right?

The main issue is that reactivity is currently unbalancable via stat changes. Ground Units is the concern here, T1, T2 and T3 Ground gets specifically hard countered by reactive mechanics because lancer/arc only target ground. Alongside any additional stat changes, you change the activation time so that if the turrets need some level of reactivity larger or shorter than the current one, then the activation time can be adjusted. (If you do have a follow up, I'll create a suggestion post in detail for this.) @DeterMination-Wind

Also, any stat styled nerfs is out of scope for this pr, it's been rushed outside of Project MIA since the changes should be compatible with any balancing framework...

I believe the fatal weakness of the Lancer (i.e., why it performs so poorly in PvE) is its excessively long charging time, which leads to ineffective targeting. Until this issue is addressed, the Lancer can only be used in PvP for quickly eliminating ground units.

Additionally, if the goal is to make the Lancer more balanced, why not adjust its cost (which I think is a great idea)? It takes at least 20+ Lancers to kill a T4 unit, and appropriately increasing its cost (for example, by raising the titanium or silicon required to build it) could effectively limit its abuse—if a player can afford it, then they should be able to defend against enemy units even if they do not have the capability to produce T4 units. This, in turn, leads to the discussion of whether same-level turrets should necessarily be stronger than units, a point I largely agree with (same-level turrets should indeed be stronger). @SomeonesShade

DeterMination-Wind avatar Oct 05 '25 00:10 DeterMination-Wind

Please anuke it will be a blessing for pvp

The changes in this PR do not provide any benefits to PvP at all, especially when the enemy deploys a T4 crawler unit to sneak past your defenses but cannot use the Lancer. The same applies to naval units. The Lancer, which uses electricity as ammunition, is designed for quick response. I believe this change is not ideal and may require alternative methods (for nerfs). Perhaps the Lancer doesn’t need to be nerfed at all—what should be nerfed is the elemental reaction. @SomeonesShade

You do realize the tech difference between an Arkyid (Phase Tech) and Lancers (Titanium) right?

The main issue is that reactivity is currently unbalancable via stat changes. Ground Units is the concern here, T1, T2 and T3 Ground gets specifically hard countered by reactive mechanics because lancer/arc only target ground. Alongside any additional stat changes, you change the activation time so that if the turrets need some level of reactivity larger or shorter than the current one, then the activation time can be adjusted. (If you do have a follow up, I'll create a suggestion post in detail for this.) @DeterMination-Wind

Also, any stat styled nerfs is out of scope for this pr, it's been rushed outside of Project MIA since the changes should be compatible with any balancing framework...

I believe the fatal weakness of the Lancer (i.e., why it performs so poorly in PvE) is its excessively long charging time, which leads to ineffective targeting. Until this issue is addressed, the Lancer can only be used in PvP for quickly eliminating ground units.

Additionally, if the goal is to make the Lancer more balanced, why not adjust its cost (which I think is a great idea)? It takes at least 20+ Lancers to kill a T4 unit, and appropriately increasing its cost (for example, by raising the titanium or silicon required to build it) could effectively limit its abuse—if a player can afford it, then they should be able to defend against enemy units even if they do not have the capability to produce T4 units. This, in turn, leads to the discussion of whether same-level turrets should necessarily be stronger than units, a point I largely agree with (same-level turrets should indeed be stronger). @SomeonesShade

Lancer's charging time is fine if its does more to counteract it's weakness (i.e. remove the pierce cap it has to have more effective dps at the cost of being more positional), the problem is real the but the solution can vary as always...

I'm not against cost nerfs, or any other idea you could think of that buffs or nerfs with (buffing damage, power nerfs, water-coolant buffs), etc. etc. Since...

We could go on and on here on how lancer should perform relative to other turrets (Inter-Turret Balancing); the general Turret to Unit Power and how much of a lean is healthy respective of tech level etc. (Unit-Turret Balancing); and of course, how reactivity, pre-planted defenses, the current map, and current economic strategy influences when each turret or unit comes into play (Tempo Analysis).

However...

My goal isn't to balance Lancer stat wise with this pr (check out Blackberry's Pr in that case), I'm trying to enable future balance prs to nerf or buff reactive mechanics as much as they can because I don't want lancer or arc to be the go-to options for T1, T2 and T3 rushes respectively if I try to buff its survival capability. If I buff Lancer more in the DPS spectrum, Reactive Lancer may become more nuts. If I Nerf Lancer's Cost, Hail, Salvo, or Ripple might become better options for pre-placed defenses.

Rather than do the headache of navigating through the awfully small sub-space of "balanced lancers", I would instead propose future balance to.

  1. First Balance Lancer via Inter-Turret or Non-Reactive Unit-Turret, make its power and cost in line with the others.

  2. Balance Lancer's Reactivity via Activation Time, for Reactive Unit-Turret.

Do you see how much easier to balance a turret under this framework? Stuff that future balancers and players can easily adjust without compromise nor controversy?

The purpose of this pr is to allow this balancing strategy to take place. Well, you could incorporate cost nerfs but they don't have to be extreme to be effective. (High Activation Time with Small Cost Nerf vs Low Activation Time with High Cost Nerf, well to begin with you already "nerfed" the cost in the Inter-Turret Stage, so make the Activation Timer fit the current cost.)

This would probably be my last reply in a while, I'm curently busy. @DeterMination-Wind

SomeonesShade avatar Oct 05 '25 05:10 SomeonesShade

Okay dealt with that....

from here... it's a reevaluation of the code now, as I need to make it more understandable and less jank of a system?

I do not want to add in tech debt...

SomeonesShade avatar Nov 10 '25 13:11 SomeonesShade

okay... from a fruitless attempt, reloadShots is unremovable, I need to deal with the case when time.delta() becomes usually large (maybe due to a lag spike or something), or if excessReload becomes significantly larger than one reload cycle... I think that puts the reload code for Turret.java into being accurate once I fix by using int division and % for capReload()

I think the only way, other than imprecision from delta.Time(), would make the firerate inaccurate is if there aren't enough frames to fire the bullets (untested)

also I think I'm going to make the turret's deposit cooldown override item deposit cooldown, to make the latter free to change

SomeonesShade avatar Nov 10 '25 16:11 SomeonesShade

just in case if a bug has arrived like a turret dealing insane amount of dps, the buffer 100 can be reduced to a lower value... I've tried a lot to prevent that scenario from happening, but there is a possibility that a lag spike triggers, causing delta.time to be insanely high, then the turret expels a lot of bullets w/in to try to keep the average dps to be the same even if it was dealt in an impulse....

I can't confirm it... but maybe i'll the buffer to like 10 when the pr gets cleaned/finalized if I think its still a strong possibility

image

SomeonesShade avatar Nov 10 '25 17:11 SomeonesShade

mainly just skimming #serpulo-balancing during the interim/bored,

image

Looks like I have to improve the visual, maybe make it opt out rather than opt in, (still indecisive) I'm probably going to do something else (maybe the blue box having a loading bar and transaprency), hopefully this isn't going to be ui hell

SomeonesShade avatar Dec 01 '25 14:12 SomeonesShade

cringe defensive in pvp already too weak like how you gonna defend t2 boats on 4:30 when you don't even have plast ? the old already not very well working solutions were arcs and mines but If arc is afk for 3 seconds boats will just move back by like 10 blocks and be fine. Same goes for fuses for zeniths because even with v8 zenith nerf they still pretty good

Pulsar6 avatar Dec 01 '25 22:12 Pulsar6

cringe defensive in pvp already too weak like how you gonna defend t2 boats on 4:30 when you don't even have plast ? the old already not very well working solutions were arcs and mines but If arc is afk for 3 seconds boats will just move back by like 10 blocks and be fine. Same goes for fuses for zeniths because even with v8 zenith nerf they still pretty good

Isn't the issue then boats being too strong?, the reactivity nerfs is meant to be for ground not getting screwed over by arc/lancer dominant. There is going to be an ugly phase, but i'm leaving the groundwork for future balance, it can be less than 3 seconds, but it can't be 0.

This would be my reply in a while (im busy) if you try to respond, please read the previous conversation I had with another user

SomeonesShade avatar Dec 02 '25 02:12 SomeonesShade

cringe defensive in pvp already too weak like how you gonna defend t2 boats on 4:30 when you don't even have plast ? the old already not very well working solutions were arcs and mines but If arc is afk for 3 seconds boats will just move back by like 10 blocks and be fine. Same goes for fuses for zeniths because even with v8 zenith nerf they still pretty good

Isn't the issue then boats being too strong?, the reactivity nerfs is meant to be for ground not getting screwed over by arc/lancer dominant. There is going to be an ugly phase, but i'm leaving the groundwork for future balance, it can be less than 3 seconds, but it can't be 0.

This would be my reply in a while (im busy) if you try to respond, please read the previous conversation I had with another user

i read them but it doesn't change anything.

1: you should not be able to attack a fully functional base IN 1 DIRECTION and expect your attack to be successful it doesn't matter what kind of units you have if enemy has he's megas/polys and economy to build def he always should be able to defend (unless you have like 30+ t5) Dumb attack on 1 front should never be successful when enemy has everything

2 : split ground units are pain in the ass because you have to have defense at least on 1 side of the base. Rn in pvp we definitely don't have problems with def being to powerful competed to meta units what we should do is buff useless units like t2-t5 crawlers t2-t5 daggers and untumbras. with this change early split attacks will become even more impossible to defend we already have problems with fact that you can't defend t1 without mods to autofill turrets. AND YOU STILL HAVE TO BE GOOD TO DEFEND flares on 1:50 and daggers and crawlers on 2:30 especially consider that units build speed is x2 in pvp. I'm telling it as one of the best ranked pvp players rn

Pulsar6 avatar Dec 02 '25 23:12 Pulsar6

1: you should not be able to attack a fully functional base IN 1 DIRECTION and expect your attack to be successful it doesn't matter what kind of units you have if enemy has he's megas/polys and economy to build def he always should be able to defend (unless you have like 30+ t5) Dumb attack on 1 front should never be successful when enemy has everything

Sure, i'm not arguing on that front

2 : split ground units are pain in the ass because you have to have defense at least on 1 side of the base. Rn in pvp we definitely don't have problems with def being to powerful competed to meta units what we should do is buff useless units like t2-t5 crawlers t2-t5 daggers and untumbras. with this change early split attacks will become even more impossible to defend we already have problems with fact that you can't defend t1 without mods to autofill turrets. AND YOU STILL HAVE TO BE GOOD TO DEFEND flares on 1:50 and daggers and crawlers on 2:30 especially consider that units build speed is x2 in pvp. I'm telling it as one of the best ranked pvp players rn

Okay, assuming that the above is applicable, even if you go full defense with preplaced defences (which from my own experience is a nutty thing to even visualize as I know intimately the limits of units against preplaced), I'm willing to nerf T1 production or T1s directly, Also, unit buffs are out of scope, I'm just here to make preplaced defenses a thing to begin with. Ask #serpulo-balancing on what they're doing if you wanna make things move along. wait a minute...

units build speed is x2 in pvp

oh. so that's why. I was assuming regular vanilla balance w/ my assumption. If you wanna keep that, data patch in T1 nerfs, since again. this is server specific. Or just revert this. Of course, you would get overwhelmed if each unit fac produces twice as fast. Tempo is altered insanely under that change for T1 balance lol. @Pulsar6

SomeonesShade avatar Dec 02 '25 23:12 SomeonesShade

this is not server specific. x2 set BY DEFOULT when you set game mode to pvp

Pulsar6 avatar Dec 03 '25 00:12 Pulsar6

1: you should not be able to attack a fully functional base IN 1 DIRECTION and expect your attack to be successful it doesn't matter what kind of units you have if enemy has he's megas/polys and economy to build def he always should be able to defend (unless you have like 30+ t5) Dumb attack on 1 front should never be successful when enemy has everything

Wouldn't the reactive nerf of this pr cover this? On your own words it s pretty clear reactive defenses are incredibly strong. About the t2 boat part a -2.5 range for minke's antiground weapon change is planned for the future, since currently it outranges even hail and swarmer (making 90% of turrets obsolete against it)

EggleEgg avatar Dec 03 '25 00:12 EggleEgg

1: you should not be able to attack a fully functional base IN 1 DIRECTION and expect your attack to be successful it doesn't matter what kind of units you have if enemy has he's megas/polys and economy to build def he always should be able to defend (unless you have like 30+ t5) Dumb attack on 1 front should never be successful when enemy has everything

Wouldn't the reactive nerf of this pr cover this? On your own words it s pretty clear reactive defenses are incredibly strong. About the t2 boat part a -2.5 range for minke's antiground weapon change is planned for the future, since currently it outranges even hail and swarmer (making 90% of turrets obsolete against it)

reactive defenses are incredibly strong. BUT T1 and t2 are even stronger

Pulsar6 avatar Dec 03 '25 01:12 Pulsar6

this is not server specific. x2 set BY DEFOULT when you set game mode to pvp

if this is true (headache) urgh I can't believe Survival/Attack already mismatches PvP here, ill be doing some thinking in the background because T1/T2 nerfs negatively impacts those two even more, yet PvP is working with faster production rates...

Reactivity nerfs is here to stay, i can't stress the importance of preplaced defenses where upfront cost is the main downsides of turrets where they dominate against units. However, I'll bring a discussion up at a later date discussing "if this is an issue? if so, ideas on counterbalance", probably get RZ, sire, etc. on board.

Thanks for the information. The pr is still mergable, but counterbalance is needed if this is an issue.

  • Shadow

SomeonesShade avatar Dec 03 '25 02:12 SomeonesShade

this is not server specific. x2 set BY DEFOULT when you set game mode to pvp

if this is true (headache) urgh I can't believe Survival/Attack already mismatches PvP here, ill be doing some thinking in the background because T1/T2 nerfs negatively impacts those two even more, yet PvP is working with faster production rates...

Reactivity nerfs is here to stay, i can't stress the importance of preplaced defenses where upfront cost is the main downsides of turrets where they dominate against units. However, I'll bring a discussion up at a later date discussing "if this is an issue? if so, ideas on counterbalance", probably get RZ, sire, etc. on board.

Thanks for the information. The pr is still mergable, but counterbalance is needed if this is an issue.

  • Shadow

i guess it's fine as long as it's changeable though CP. I have 0 believe in to anuke making normal balance for pvp so ranked pvp server probability will use CP to reverse some changes and fix broken balance

Pulsar6 avatar Dec 03 '25 03:12 Pulsar6

Okay the pr is a mess, I'll add to my todo a restructuring on the post, as there are way too many parts and elements and needs to separated out.

I'll also not continue on the depositcooldown visuals (since i think the depositcooldown stuff is a hidden game rule) but feel free for feedback.

Still ready to merge, just yeah

SomeonesShade avatar Dec 09 '25 12:12 SomeonesShade