Slimecalc! The slime... calculator. Such original, wow.
This is a tool for finding the best (i.e. cheapest) way to boost Slimetube ML for a specific turncount.
It's designed for use with Alhifar's slimetube-running script, so it's best if you have that one set up already, but this script will try to generate some max/min ML outfits for you if you don't already have them.
Install with this CLI command:
The basic CLI command is "slimecalc [number of turns]" to aim for a certain turncount. Default is 229, for a slimeling, but this may be impossible if you don't have enough Slime Hates It gear.
svn checkout https://svn.code.sf.net/p/guyymafia/code/slimecalc/
Normally it just simulates, so add "run" to the command, ex. "slimecalc run [turns]", to actually buy and use items. You'll need to open up the Tube yourself, but the script will do everything else (squeeze a gallbladder if necessary, set up effects, use a bundle of chamoix, restock on tatters), so you should be ready to run the Tube when it's finished (again, relay_slime.ash is strongly recommended for the turn-burning part). Check for any alarming red text in the CLI before you start smacking slimes.
Other things can be added to the command for fancier effects:
- gong -- use Llama Lama gongs for Unpopular (spends turns).
- [#]full, [#]drunk, or [#]spleen -- limit use of each consumable. 15full prevents counting extra Pantsgiving fullness, for example.
- [#]squeeze -- use slime squeezers. Default is 1 (yourself).
- presqueeze -- assume you already squeezed, or will hire someone to do yours, so you don't spend any turns.
- empty -- pretend that your stomach/spleen/liver are empty, and you haven't used any once-daily things yet.
- cleesh -- if you plan to cleesh slimes instead of using tatters. Turncount may not be very accurate with this method, so use carefully.
- Add a list of items in brackets ex. "[bitter pill, old candy wrapper]" to NOT use the specified items (useful if the mall runs dry).
Tedious notes and junk:
Technically not a glorified maximizer! Instead of aiming for a specific ML for the whole run (expensive!), it counts up the ML from each turn, and stacks on the most cost-effective ML effects (and fam weight if you have a Purse Rat) until it gets the turncount you want. Your ML will start high and drop off as effects run out. May seem a little disconcerting, but I've used this for my last several Tube runs and its turncount prediction was always exactly right.
It will count your existing effects and intrinsics, and add any mall-purchaseable or otherwise easily-acquired things it can find.
There are a few things it won't use (but will count the effects if you have them already):
- Untradeable potions (seal grulch).
- Nearly-useless once-a-day effects, like pool table and island arena +fam weight. It will use the Hatter pepper buff and Lapdog (see below), because they don't suck (Lapdog adds 1000 total ML; the arena buff adds 50).
- The +ML hot dog and speakeasy drink are outclassed by Ultrafondue and crystal skeleton vodka, so there's no reason to use them.
If you're tubing in a side clan, it probably doesn't have a swimming pool because expensive, so you can set this setting to jump to another WL'ed clan to get the Lapdog buff:
Free runaways from familiars will be taken into account. If you have a Comma Chameleon for your -ML familiar, it will turn it into Stomping Boots so you can get free runaways from it, but relay_slime.ash doesn't support this yet. You can add this to that script, around line 500, to make it work:
set slimecalcPoolClan = [NAME OF CLAN HERE]
This is mainly intended for cranking out Slimelings, which is what I've been using it for all month, but it should also be helpful for speedruns. "slimecalc 190 5squeeze gong" gives me an under-5M shopping list for a leaderboard run, and that's not counting weird stuff like seal grulch and defective game grid tokens. Haven't tried this, though, so attempt crazyfast runs at your own risk.
else if( my_familiar() == $familiar[Comma Chameleon] && get_property( "_banderRunaways" ).to_int() < floor( numeric_modifier( "Familiar Weight" ) + familiar_weight( $familiar[Comma Chameleon] ) ) / 5
&& create_matcher(">, +the +([0-9]+)\\-pound +Pair of Stomping Boots, +Chameleon",visit_url("charsheet.php")).find())
set_property( "battleAction" , "try to run away" );