That's perfect! Thanks xKiv.
Best Between Battle Script Ever is now on SourceForge!
Lots of updates! First, BBB now has improved familiar handling:
- As suggested by someone early on in the implementation of farming familiar drops, BBB now rotates your drop familiars, getting one familiar drop per familiar before continuing to the next familiar. This will allow you to maximize your familiar drops for the day. If you would like to skip a given familiar, remove it from the list around line 585. Also, the order matters much less now, but you can still change the order of rotation there if it matters.
- BBB now ensures the taming property is reset if you aren't taming and missed the normal reset for whatever reason.
- Don't tame tier 3 turtles in the Spooky Gravy Burrow.
- Don't farm familiar drops there either, OR in the Sea, OR if you're an Avatar.
The biggest updates this time around are probably in choiceadv handling, so in the interest of building to the climax I will discuss some trivial tweaks!
- Use exact names.
- Check be_good() rather than specific path names.
- Removed the sand dollar vs. dolphin whistle price comparison, as it appears that mafia already does that.
And now, the moment you've all been waiting for: improved choiceadv handling!
- Haunted Library: Also unlock the Gallery in Bugbear Invasion (thanks Theraze).
- Hidden Temple: If you have a choiceadv or the Nostril of the Serpent as a goal, facilitate that goal by using a stone wool if you have one.
- Defiled Nook: Do skip non-primestat moxie stats. The original reason was script synergy, but as our polyscient (not quite omniscient) BatBrain doesn't use the "threshold" setting anymore, and my other scripts have also somewhat moved away from that, BBB no longer needs to grab non-primestat moxie.
- Twin Peak: Add Bale's absolutely lovely code for setting the choiceadv paths depending on your preparation. If you are unprepared for the next choice (not enough stench resistance, +food%, initiative, etc.) it sets the choice to "Show in browser." You may want to add something to your mood to abort when choiceAdventure606 == "0".
- Tavern Cellar: Another helpful contribution from Bale which assists you in <element>ing out the rats.
- Mer-kin Colosseum: Automatically equip the Mer-kin weapon that the next monster will be vulnerable to. It's checking the most recent monster in the Colosseum's combat queue, so note that this will get screwed up if you lose a combat (at which point the same monster repeats). BBB can't check run_combat() contains WINWINWIN, because you may have adventured elsewhere between fights (semirare, etc). Solution: don't lose.
- Mer-kin Library: With full vocabulary skill, learn clues. Thanks again to Bale for this code.
- Penultimate Fantasy Airship: Get a model airship if you haven't completed the castle quest yet. Also, prefer combat over stats when BIG!
And now, speaking of the castle quest, to go out with a bang, I'm pleased to roll out initial support for the Castle in the Clouds! Let's begin with the Basement. Courses of action here are listed in order of preference.
Furry Giant's Room:
- If you have a titanium umbrella, complete the quest.
- If there's nothing in the Neckbeard room and you are below level 13, get primestat moxie.
- Proceed to Neckbeard.
Neckbeard Giant's Room:
- With a dumbbell, unlock the ground floor.
- If Fitness is set to unlock with amulet, proceed to Fitness.
- If O'RLY manuals or open sauce are goals, get those.
- Get mainstat mysticality if below level 13.
- Skip adventure.
Fitness Giant's Room:
- With an amulet of extreme plot significance, unlock the ground floor.
- If pec oil, giant jars of protein powder, or Squat-Thrust Magazine are goals, open the gym bag.
- Get a dumbbell, then skip the adventure.
This implementation has a significant known issue: BBB always assumes the ground floor is locked. It doesn't know whether or not the ground floor has been unlocked, because so far as I know, there's no server-hit-free detection method. I'm hoping mafia will eventually have a lastGroundFloorUnlock property or somesuch, but until I figure that out, anyone adventuring in the Basement
after unlocking the Ground Floor will probably want to disable this. Suggestions, anyone?
There's also a feature! For the amulet and umbrella choices, if you have one but don't have it equipped, the script will automatically set the choice to repeat, equip the item, perform the unlock, then equip what you had on previously (not tested with unarmed characters).
By default, without any goals set, this means that the Basement will unlock the ground floor as quickly as possible, then skip all adventures.
Now, let's move on to the Top Floor!
Raver Giant's Room:
- Unless you have a mohawk wig equipped (in which case you'll pass through to the final choice), get a drum 'n' bass (x2) record.
- If Raver Giants have goals, fight them.
- If the user has set the choice to restore HP/MP, respect that setting.
- Proceed to Punk.
Punk Rock Giant's Room:
- With the mohawk wig equipped, complete the quest.
- If Punk Rock Giants have goals, fight them.
- If there's something important in Raver (it isn't set to Punk), proceed to Raver.
- If the user has set the choice to get meat, respect that choice.
- If the shortcut option exists, proceed to Steampunk.
Steampunk Giant's Room:
- With a model airship, complete the quest.
- Pick up a steam-powered model rocketship.
- With more than one brass gear as a goal, get brass gears.
- If Steampunk Giants have goals, fight them. This is a more profitable source of a single brass gear, hence the check in the previous option.
- Proceed to Goth.
Goth Giant's Room:
- With a drum 'n' drum 'n' bass 'n' bass record, complete the quest.
- With more than one thin black candle as a goal, get candles (same reasoning here as with the brass gears above).
- If there's something to do in Steampunk (it isn't set to Goth), proceed to Steampunk.
- Fight Goth Giants
Thankfully, this does not assume the quest is always incomplete.
By default, without any goals set, this will complete the quest as soon as possible, get an airship, and then all choices will fall through to fighting Goth Giants.
Characters who have not ascended since before the Castle revamp will not have the shortcut option in the Punk Rock Giant's room, so they will need to set an option manually. By default, the script will avoid an endless loop in this case by setting it to fight Punk Rock Giants, but if you'd prefer meat, changing it will stick.
What a nice climax. Now it's time for some denouement:
I suspect that the new Castle handling may be incomplete, or that it may not account for a case correctly. If so, please report the problem. And if you know of a way to detect Ground Floor unlocked-ness, please tell me.
Enjoy!