HtheChemist / BitBurnerCentralManager

A prototype thread manager for BitBurner
MIT License
26 stars 12 forks source link

Quick money hacks depleting funds of every available server #9

Closed ionori closed 2 years ago

ionori commented 2 years ago

I don't have a lot of threads (~15 servers hacked, no personal servers), and all the hacks that HackManager schedules are quick money hacks. About an hour of this depleted the amount of money on most servers from 5-10% to below 2%. Since grow adds a percentage of the current server funds (AFAIK), this is not a good long-term strategy.

I gather more experienced players have a lot more threads to work with, allowing full hacks to have better priority than quick money hacks.

I would prefer if instead of doing endless quick money hacks, the script picked the best server to pump and grew/weakened it until it reached nearly maximum money, then alternated between quick money hacking and pumping it back up.

Is there a way to achieve this via configuration, or is that something that would need to be implemented?

HtheChemist commented 2 years ago

This is something that I am aware and trying to find a solution for this. At the moment the I implemented a fallback to weaken (as to farm XP) if the hack chance is below a certain threshold. If you change export const MIN_HACK_CHANCE = 0.5 in the config to something larger than 1, it will weaken instead of hacking and will not deplete the money. However, at the moment it will not grow.

I could probably try to alternate between grow/weaken cycle, or grow if under a certain threshold. If you have any suggesion I am all ears.

ionori commented 2 years ago

I hear a ratio of 1 weaken thread to 8 grow threads is good to grow a server without raising its security level over time. Might be good to adjust the ratio in favor of weaken if the server is significantly above minimum security level.

HtheChemist commented 2 years ago

Since grow raises the security by 0.004 and weaken reduces it by 0.05, a 12:1 ratio would keep the server at its status quo. We could probably apply a linear function where it would prefer weakening if the security is too high, growing if the value is too low, and hacking if the value is high and security is low.

ionori commented 2 years ago

Sounds good! Just manually grew Phantasy to max money and drained it what seemed like under an hour using the script, but now it's just hammering quick money hacks on servers with 0-2% max money, because that's all that's available. Do you have a rough ETA for when the grow+weaken hack will be implemented? I'll use MIN_HACK_CHANCE = 2 for now.

HtheChemist commented 2 years ago

Sadly no ETA at the moment. At best, a few days. I will probably need to write a QuickHackConductor (which would actually be a good thing) and rework the Hacking selection Algorithm.

HtheChemist commented 2 years ago

@ionori I just pushed a new update with what I believe is a more efficient selection algorithm. It should grow server before hacking them.