Best Between Battle Script Ever
Ladies and gents, I'm proud to announce the BEST BETWEEN BATTLE SCRIPT EVER! Here's what it does. (Variables mentioned (in this font) can be configured by typing "zlib settingname = value" in the CLI, or by editing your vars_myname.txt file. See what they are set to currently by typing "zlib vars" in the CLI.)
- Like its forbear AutoMCD, if automcd is true, it will automatically adjust your MCD based on your location's safe moxie value for maximum stat gains. Gain a moxie point? Ding! Up goes the MCD. Details below.
- It will intelligently eat fortune cookies for you depending on your location and your current counters. Details below.
- It will use items containing goals. This means you can set "1 black pepper" as a goal in the Black Forest, or even "1 meat engine" as a goal at Degrassi Gnoll. Sweet!
- Includes 100% run protection! If you have specified a familiar for is_100_run, it will make sure you are using that familiar.
- It will fight monsteritems that drop goals, including putty monsters, shaking 4-d cameras, and dolphins. This means that if your custom combat script puttied a monster, following that combat this script would automatically keep fighting the putty monster until either goals were met or you ran out of putty uses. It will also fight these monsters if they drop your bounty hunt item, even if it is not explicitly specified as a goal.
- In the case of dolphins, it will also whistle for them if you have no goals specified and the stolen item is worth more than twice the cost of whistling (you can disable this by setting bbb_dolphin_goodies to false).
- If bbb_famitems is true (default is false), it will automatically farm daily familiar drops (mushrooms, absinthe, tokens, etc) by making sure you're always using a familiar with undropped items. Of course, this will have no effect if you have a familiar specified for is_100_run.
- If bbb_adjust_choiceadvs is true (default), it will adjust your choiceadv settings as you adventure depending on your goals! Check it:
ChoiceAdv Adjustments Made
- Bat zones -- adjusts your goals if you have encountered a Screambat.
- Black Forest -- get goal items first (including any blackberry footwear), then go for the +items buff if you're wearing all the black gear. Consider the blackberry galoshes a goal until you've got them or you've fully explored the black forest. If all goals are achieved, get all the black gear, then default to fighting bushes.
- Castle (Basement) -- Furry: With titanium umbrella, unlock ground floor. Otherwise, if there's nothing to do in Neckbeard, get primestat moxie. Proceed to Neckbeard. Neckbeard: With dumbbell, unlock ground floor. Otherwise, if Fitness is set to unlock using amulet, proceed to Fitness. Get goal O'RLY manual or open sauce. Get mainstat myst. Skip. Fitness: With amulet, unlock ground floor. Open the gym bag for goals. Finally, get a dumbbell or skip.
- Castle (Ground Floor) -- Foodie: Get an electric boning knife. Otherwise, skip it.
- Castle (Top Floor) -- Raver: Unless you have a mohawk wig equipped, get a quest record if you lack one. Otherwise, fight Raver Giants for goals. Otherwise, if the user has set the preference to restore HP/MP, respect that. Finally, proceed to Punk. Punk: With mohawk wig equipped, complete quest. Otherwise, fight Punk Rock giants for goals. If Raver isn't set to Punk, proceed to Raver. If shortcut option exists, proceed to Steampunk. Steampunk: With model airship, complete quest. Then, pick up a steam-powered model rocketship, get goal brass gears, or fight Steampunk Giants for goals. If none of those options were selected, proceed to Goth. Goth: With record, complete quest. Otherwise, with multiple candles as goals, get candles. If there's something to do in Steampunk, proceed to Steampunk. Finally, fight Goth Giants.
- Defiled Areas of the Cyrpt -- gets bbb_miniboss_items (default is 1) special combat items, before getting mainstats or skipping the adventure. It will never get more than one phylactery, and it always skips the puny stats in the Cranny.
- Haunted Bedroom -- handle the Ornate Nightstand (specs, then myst stats if playing a myst class, otherwise meat).
- Haunted Billiards Room -- maintain the Chalky Hand effect if you haven't gotten the key yet. Also handle the pool ghost: if cubes of billiards chalk are a goal or your pool skill is maxed, get those. Otherwise, increase your pool skill.
- Haunted Library -- for Rise, makes sure the second floor is open, then skips the adventure. For Fall, unlocks the gallery if you're likely to want it open, then opens the second floor, then skips the adventure. In both cases, if the user sets the choiceAdv to something else, it won't change it back to skip.
- Hidden Apartment Building -- If Thrice-Cursed, fight the boss if you still need to, otherwise relocate lawyers if you haven't, otherwise get cursed if you still need it, otherwise skip.
- Hidden Bowling Alley -- Buy a bowl of scorpions if you have meat and aren't in Fistcore.
- Hidden Office Building -- with a complete McClusky file, fight the boss, otherwise get the boring clip if you need to, otherwise fight pygmies for goals (or file pages), otherwise skip.
- Hidden Park - Dumpster dive for the antique machete or goals of bowling balls or doctor clothes, otherwise relocate janitors, otherwise skip.
- Hidden Temple -- if you have choiceadvs or the Nostril as a goal, use a stone wool if you have one.
- Hobopolis Town Square -- if you don't have a binder, automatically gets one if you have enough nickels; otherwise skips the adventure. Skips the marketplace if you don't have a binder equipped or if you have hobo nickels as a goal, otherwise shows the marketplace in the browser.
- Kegger in the Woods -- gets orquette phone numbers if you have them as a goal or have less then 20, otherwise turns them in for goodies.
- Knob Barracks -- ignores the footlocker if you have the guard outfit, otherwise completes the outfit.
- Massive Ziggurat - With 4 triangles, fight the final Protector Spectre; otherwise, skip.
- Mer-kin Colosseum -- not a choiceadv, but useful: automatically equip the Mer-kin weapon which the next monster will be vulnerable to.
- Mer-kin Library -- with full vocabulary skill, learn clues.
- Octopus's Garden -- if you have a sea fruit/vegetable as a goal and have both a seed packet and green slime, equip the straw hat and plant seeds. Otherwise, skip planting seeds.
- Outskirts of the Knob -- completes cake quest if you have the unlit birthday cake, otherwise gets a random item if you have "kiss the knob apron" as a goal, otherwise enters combat.
- Palindome -- gets a Ye Olde Navy Fleece if you lack one, otherwise skips the adventure.
- Penultimate Fantasy Airship -- gets a bronze breastplate if it's a goal and you lack one. Otherwise, skips the adventure. Gets a model airship if you haven't completed quest, otherwise enters combat against a MechaMech if it has goals, you're in BIG!, or its stats are better than the stats you'd get from the stat choice. Otherwise, chooses chests if they are a goal or have been set manually. Otherwise, gets stats.
- Primordial Soup -- not strictly a choiceadv: BBB attempts to maintain three diverse base pairs in your inventory.
- The Shore, Inc. Travel Agency -- Take goal stat locations.
- The Road to the White Citadel -- If you haven't yet cleared enough burnouts, you have the ingredients for an opium grenade, and you don't already have one in inventory, create one. This combined with SS throwing them will facilitate speedier clearing of the zone.
- South of the Border -- tries for a poultrygeist if it is a goal or if you lack a sombrero. Otherwise, skips the adventure.
- Spooky Gravy Barrow -- fights Felonia if you meet the necessary requirements (inexplicably glowing rock, spooky glove equipped, more than 2 adventures remaining); otherwise, skips the adventure.
- Spooky Forest -- Navigates the choice adventure tree for quest items regardless of goals in this order: mosquito larva, then tree-holed coin, then Spooky-gro fertilizer, then temple map, then spooky sapling. Closets some of your bar skins before you visit the bar hunter guy.
- Tavern Cellar -- with enough elemental damage, make the correct choice vs. the rats.
- Twin Peaks -- Sets the correct choiceadv path depending on your preparation. If you are not prepared, sets the choice back to "Show in browser".
- Wartime Sonofa Beach -- This is not exactly a choiceadv, but should be noted: if you have Pulverize and only one goatskin umbrella or wool hat in inventory (and they are not goals), smashes them before continuing, as per this suggestion by Bale.
- Whitey's Grove - Gets goal cake/rice/white picket fence; otherwise, gets muscle stats.
Fortune Cookie Details
- BBB will eat cookies for you depending on your auto_semirare setting. There are three valid values:
- "never": BBB will never eat cookies.
- "always": BBB will attempt to eat cookies whenever you have no active Fortune Cookie counters.
- "timely": In tandem with a smart counterScript such as Bale's CounterChecker, this is the optimal method. It will not eat cookies if a) you are not within your semirare window, or b) you are already adventuring in a zone with a "good" semirare (8 different zones, consult the script if you wish to edit these zones).
- For any of these values, you can tell BBB the maximum number of cookie counters you want to be active by adding that number (1-3) to the end. For example, with an auto_semirare setting of "always 1", BBB would eat enough cookies to guarantee that you have only one active Fortune Cookie counter.
- BBB will try to adjust your MCD so that your moxie is threshold lower than the location's safe moxie. Will skip adjusting for locations with no combats, or MCD-sensitive zones (like certain bosses and the Slime Tube).
- The default threshold is 4. To change this, type "zlib threshold = value" or "zlib threshold = up" or "zlib threshold = down" in the CLI. You can keep your MCD maxed by setting this to a ridiculously high value, but it would probably be easier to simply disable automcd and set it manually to 10.
- Generates no server hits unless it actually changes your MCD.
How to use it:
- Install BBB by typing the following in your CLI:
Code:svn checkout https://svn.code.sf.net/p/bestbetweenbattle/code
- Type "set betweenBattleScript=BestBetweenBattle.ash" in the CLI.
- To disable this script, simply type "set betweenBattleScript=" in the CLI. However, since you can separately disable/enable almost every component of this script using the relevant script setting, I hope this will be an unlikely event.
5.19.08 - ver. 1.0 posted.
5.29.08 - 1.0.1 changes: oops - don't adjust unknown area MCD to 0 if it's already 0.
11.27.08 - Happy Thanksgiving! 1.0.2 changes: don't print anything unless actually changing the MCD. Use "safetyThreshold" setting to allow per-character settings for threshold.
6.14.09 - 1.0.3 changes: move some functions out -- now requires ZLib. Now do once-daily version checking. Account for Hero of the Half-Shell.
7.25.09 - 1.0 changes: It's a new script! Introducing the Best Between Battle Script Ever, with loads of new functionality. Enjoy.
7.28.09 - 1.1 changes: A batch of excellent user-submitted updates! Move auto_mcd() to ZLib. Smash Sonofa Beach gear, apply bbb_miniboss_items to the phylactery, and skip non-mainstat, non-moxie, or small stat gains in the Cyrpt. Thanks Bale and dj_d!
7.31.09 - 1.2 changes: fight putty monsters if they drop your current bounty item, regardless of goals. Fight MechaMechs if you need to.
8.05.09 - 1.3 changes: add haunted library choiceadvs. Don't fight putty monsters if there is a counter expiring or you're Absinthe-Minded < 10.
10.18.09 - 1.4 changes: introduce auto-taming of turtles!! Improve when-to-fight-putty logic. Include more of Bale's changes to the Airship choiceadv. Attempt to maintain diverse base pairs in inventory in the Primordial Soup. Strictly police 100% familiar runs. Improve use of goal-containing items: sped up checking, and now only uses 1 at a time until goals are met, rather than all of them.
11.28.09 - 1.5 changes: add Sea goal-containing items. Automatic dolphin whistling for goals or thingpouches.
12.02/09 - 1.6 changes: smarter dolphin whistling thanks to provocation by Bale.ㅋㅋ Added support for fighting 4-d camera monster. Slight reworking of container item code. Print user-friendly message when adjusting choiceadv.
12.30.09 - 1.7 changes: added handling for planting seeds in Octopus's Garden. Added corpse-looting to Spooky Forest. Use meat stacks and dense meat stacks in HC. Save time in container item code by making it location-sensitive. Use ZLib's new vprint().
1.23.10 - 1.8 changes: use ZLib's new load_current_map(). Add pile of candy to containers.
3.07.10 - 1.9 changes: use ZLib's new has_goal() to drastically simplify use of container items / fighting of monster items. Added Whitey's Grove choiceadv. Slightly reworked fight_items() to make adventures/counter/absinthe-minded checks before fighting any monster item. Consider ULEW's for looting corpses/turtle taming.
4.25.10 - 2.0 changes: has_goal() now returns a float. Yes, major landmark version!
10.19.10 - 2.1 changes: add ability to farm familiar items (automatic familiar swapping). Add smart fortune cookie eating. Totally rework auto-taming to not use goals, and account for taming windows; untested but should be much better. Use best turtle familiar when preparing to tame. Choiceadvs: don't get a picket fence unless it's a goal. Remove Spooky Forest handling for now.
10.20.10 - 2.2 changes: adjust blackberry shoes choiceadv to account for additional choice (galoshes). Don't use pheremones if you'll be unable to tame due to your familiar.
3.13.11 - 2.3 changes: introduced "Reactions" section. Clear checkpoints when swapping familiars. Handle Kegger choiceadv. Equipping pool cue is no longer necessary. Lots of ideas from Bale: Spooky Forest is back. Exchange tokens for tickets if you'll probably need them. Handle Ornate Nightstand choiceadv, Palindome Fleece choiceadv, and new Knob Barracks outfit choiceadv. It's been a while since this was updated, so there are probably some other tweaks which also snuck in there.
3.16.11 - 2.4 changes: closet possibly needed bar skins before adventuring for a spooky sapling. Play smarter with CC for fortune cookie eating.
4.21.11 - 2.5 changes: always use evil eyes in inventory.
8.30.11 - 2.6 changes: tweaks for Bees and Fists, finally. Don't get 'b' Cyrpt items. Don't autosell meat stacks or try to auto-tame Tier 2 or 3 turtles in Fistcore.
7.06.13 - 2.7 changes: Exact names for typed constants. Various other changes which I've not diffed yet -- nor does this incorporate all enhancements suggested in the thread yet. That will come for the SVN release.
8.11.13 - 2.8 changes: Many! Also, BBB is now hosted on SourceForge.
Changes beyond this point may be found on BBB's SourceForge changelog; however, I will continue to make more detailed release notes in this thread.