In the words of Batman: "Before we set brain and sinew to this perplexing case, let's review all the facts." To assist us with that, BatMan RE (Battle Manager, Relay Edition) exists for relay play! I personally find it to be an indispensable during a run and when fighting tougher bosses.
What does it do?
It overhauls your relay combat experience, making it very easy to blast though your combats intelligently, find information to assist you in making decisions, and significantly reduce the time you spend clicking and looking things up. It adds three incredibly helpful tools to your relay experience: 1) an actions table, b) a quick menu, and III) a CLI box. It also adds a blacklist editor, Wiki tab, and extremely helpful Adventure Again info box. And beyond just enhancing your combat experience, you also get several extensions to assist with semirares, factoids, and seal clubbing. "Tell me more!" you say. Okay.
The first thing you'll notice during combat is that there is now a handy table (searchable and sortable) containing all of your attack options.
<insert screenshot here>
Here's a rundown of what each column contains.
- Attack. When the table loads, it is sorted by attack_action(), meaning that what BatBrain thinks is your best option to profitably kill the monster (minus BatBrain's usual filters on custom actions and such) will be at the top, followed by the second best, and so on. You can click the Attack header to return to this initial sorting.
Clicking the name of the action will submit a batround()-enhanced macro performing that action.
Certain icons will appear in front of certain actions when appropriate:
- Little colored circle (green <--> red gradient): This appears for all actions, and simply shows the action's hitchance. To see the exact percentage, mouse over the circle for the tooltip.
- Spam sandwich: Click this to submit a macro spamming that action indefinitely. This icon will only appear for actions predicted to successfully kill the monster.
- Watch: Click this to submit a macro which attempts to stasis using this action. It only appears for actions which match the criteria used by SmartStasis, and the macro is submitted with all the same repeat conditions.
- Black cat: Click this to submit a macro that attempts the action until it is not blocked by your Black Cat. This icon will only appear if you have a Black Cat as your familiar.
- Asterisk: This may appear after the action name. Mouseover it to read some extra information about this action (usually something BatBrain doesn't yet know how to take into account). The cost of the action (in meat) will also always be listed after the action name.
- Damage. This column simply displays the raw average damage the action will deal to the monster. Note that this includes hitchance, so don't mentally multiply this number by hitchance, that's already been done. If the monster has resistance/vulnerability or the damage is of multiple types, the actual damage dealt is helpfully displayed here as well. Hovering your mouse over the damage column will display the associated damage formula from batfactors.txt. Click the header to sort by damage dealt.
- Delevel Attack. This displays the modifier to the monster's attack. If your defense stat is below the number for no-hit, a small sword icon will also appear in front of the modifier. Clicking the sword icon will submit a macro which repeats this action until the monster can no longer hit you with regular attacks (mouseover to see how many uses of the action will be submitted). Click the header to sort (ascending only).
- Delevel Defense. This displays the modifier to the monster's defense. If you are still able to miss the monster, a small shield icon will also appear. Clicking the shield icon will submit a macro which repeats the action until you can always hit the monster (again, mouseover to see details). Click the header to sort (ascending only).
- Stun. This column displays the stun chance of the action. Click the header to sort by BatBrain's stun_action() function.
- HP. This is displayed rather counter-intuitively at the moment, showing the number in terms of player damage. The reason for this is that it displays the numbers as a spread (with types of damage listed in appropriate colors, as with damage to the monster) rather than a single integer. In the words of Batman, "When fighting crime even the most minute detail must not be ignored." This column sorts oddly by string for now.
- MP. Quite simply, this column shows the MP gain/loss from the action. Use this column to see the MP cost of skills or find in-combat MP restorers quickly. Click the header to sort (descending only).
- Profit. The estimated profit of performing the action right now, including HP/MP loss/gain, familiar actions, cost of items, predicted monster damage, etc. Header to sort.
- Send to Blacklist. Clicking the arrow in this column will automatically add the item to your blacklist (viewable on the Blacklist tab), removing it from your options.
And there you have it! An invaluable informational resource during combat! I have already been spared multiple trips to the Wiki simply due to having this information readily at hand.
But that's not all! There's also a quick menu that slides in on the upper left of the frame. It stubbornly remains there for your clicking convenience, even if you scroll down the page.
<insert screenshot here>
What sort of things are in this quick menu? Those of you familiar with my SmartStasis script probably know that it performs three major functions: executes custom actions, performs disco combos, and prolongs combat when profitable. The quick menu is designed to give you immediate and handy access to all of those functions, and a means to swiftly execute them with minimal clicking and mouse movement.
Let's look at each possible menu item.
- Lightbulb. This is the custom actions menu, which only appears if there are custom actions to perform. Mousing over the light bulb icon will popup more information, listing each custom action chosen by SS, and also including the same handy special icons as the actions table. You can click an individual action there (or one of the icons) to perform it, or you can click the lightbulb itself to execute a macro containing all of the custom actions at once. Nifty!
- Disco Ball. This is the disco combos menu, which only appears if you have disco combos available. The popup allows you to individually perform combo macros, or you can click the disco ball to perform all profitable combos at once. Handy!
- Watch. This is the stasis menu, which only appears if you have an action with profit greater than your BatMan_profitforstasis setting. Mousing over this will display the action selected by BatBrain for stasis. A table icon appears underneath -- clicking that button will sort the actions table by stasis_action() in case you want to choose a different stasis action. You can click the action in the popup to perform it once, or you can click the watch icon to submit a stasis macro identical to the one SS would submit, with all the same repeat conditions. Sufficiently advanced technology!
- Banana peel. This is the stun menu. It will appear whenever you have a profitable stunning action and your attack option won't one-shot the monster. Mousing over this will display the action selected by BatBrain's stun_action(). There is also a table icon you can click to sort the actions table by stun_action(). This is identical to sorting the actions table with its own Stun column, but perhaps handier if your mouse is already there. Clicking the banana peel will perform the stun action. Useful!
- Sword. This is the attack menu, which appears if BatBrain's attack_action() chooses a viable attack for killing the monster. Mouse over this to display the action BatBrain chose, again with the table icon to sort by attack_action(), which is the same as sorting by the table's Attack column. Clicking the sword will also perform the attack action. Convenient!
- Beverage. If you're adventuring with a Happy Medium, it can be involved to decide whether you should siphon or not. This helpful menu appears whenever Siphon Spirits is available, and the image is whichever drink would be siphoned. The name of the drink is displayed in the color of the medium's aura (NOTE: not the color mafia uses associated with drink quality), with information about the drink and a clicky link to Wiki it. Clicking the beverage will Siphon it. Siphoning is fun again!
- Circular Arrows. This is the "Automate" menu. Clicking this will hand the combat over to mafia to automate, then show you the results (the last page load). This is essentially identical to the CAB's "Script" button.
- Bat. This contains the requisite links to this thread and the BatBrain thread. Additionally, it will also contain new version alerts for SS, BB, and itself, should any of them be out of date. If your versions are current, however, it will contain a choice morsel of wisdom from Batman himself, inspiring confident clicking and informed form submissions. There is also an option to disable BatMan RE here, in case the script is causing any problems, or you want to use extensions like Sera or GROSS but don't want fight.php enhancements. Disabling the script here is on a per-character basis. If you click the bat itself, it will take you to my BAT KING OF THE WORLD progress page! I'm still not king yet and would appreciate your help!
These menu options will always be in this order, and the menu always starts at the same place on your screen. This means that if you were to leave your mouse in one place (the first menu button) and keep clicking, you would eventually complete every combat almost identically to the way SS followed by repeated attack_action()'s would. Yet the option for greater control is nearby whenever you need it!
But wait -- it gets even better! When combat is over, two unique menu items may appear:
An Adventure Again menu button (hourglass icon) always appears as the first item when combat is over. You can click that button to adventure again in the same place, and mousing over it will also show you a slew of information and links related to your current locations, such as links to use items, your current goals if you have any set, the appearance rates of monsters in the zone, your progress toward relevant quest goals, and other information you may like to know without heading back to the CLI to check. My goal for this box is to nearly eliminate the need to tab over to the CLI during relay play, so if you think of another feature for this box please suggest it!
Optionally, a semirare helper appears when it's getting close to time to make a decision about your semirares (i.e. eat a cookie or actually get your semirare). From this menu, you can see a countdown to the approaching counter, eat a cookie, scroll through a list of all semirares, or click to view an in-depth list of semirares, filtered by availability and grouped by concept. From either the small list or the in-depth list, you can click to adventure in the target zone.
If you are a Seal Clubber, you are granted access to top secret club G.R.O.S.S. (Get Rid Of Slimy sealS), a very handy visual assistant for all your seal clubbing needs. You can easily take care of all your daily seal clubs here. What a great club!
For all of these menus (in combat or out), you can press the ` key (to the left of '1' on most English keyboards) to automatically click the top menu item. This lets you blast through zones quickly, yet much smarter than doing the same thing with the CAB. You can also press the number keys to correspond to the following menu items. Since the ` key is the first item, the '1' key matches the second menu, '2' for the third menu, and so forth. It makes sense if you just put your fingers on the keys and don't actually look at which number you're pressing (which is part of the point, after all, right?).
And the final touch: the Adventure Again menu appears even for noncombats. You really can just leave your mouse in one place to blast through a zone with less clicking and less worry -- you can even do gremlins this way because all of BatBrain's auto-responses are built in to every single macro submitted.
If you press the '0' key, you'll get a dialog box for performing CLI commands. Through the magic of jQuery using AJAX to talk to ASH, we can execute CLI commands without leaving your current page. If your command puts mafia in an error state (the side pane turns red), you'll get a red error message letting you know your command failed, otherwise you'll get a green message reporting that execution is complete.
One of the design goals of this script is to enhance relay adventuring so thoroughly that you never need to head back to the CLI. All the info in the Adventure Again box is part of that, and being able to execute CLI commands is another.
Wow! How do I try it out?
You may install this script by pasting the following into your CLI:
This will install the following files into your mafia folder:
svn checkout https://svn.code.sf.net/p/batman-re/code/
- BatMan RE relies on SmartStasis (which relies on BatBrain, which relies on ZLib). Thanks to the magic of mafia's SVN, all three of those dependencies will be installed to your scripts folder automatically. Once they are installed you can move them into a subdirectory of your scripts folder and mafia's SVN client will still be able to locate them for update purposes.
- fight.ash -- The loader; prepares the page for BatMan's enhancements and quickly displays it. This and all the following files will be installed in your relay directory.
- BatMan_RE.ash -- Calculates, creates, and outputs the enhancements.
- jquery.dataTables.min.js -- The minified DataTables jQuery plugin
- batman.js, factroid.js -- The liaison between our HTML and our ASH. Most importantly, it fetches the enhancements from BatMan-RE after the page loads, then adds them to the page, then enables them.
- adventure.ash -- Maintains quick menu even for noncombats. You may need to delete this file (see Important! note below).
- batman.css -- The stylesheet, to make things purdy.
- relay_GROSS.ash -- Top secret club G.R.O.S.S., which is of course only accessible to seal clubbers.
- relay_Factroid.ash -- Factroid! is an all-in-one visual factoid helper script, with integrated support for cheating, faxing and fighting copies, and Rain Man.
- relay_Sera.ash -- The in-depth semirare helper (also works as a standalone relay script).
- semirares.txt -- semirare data for use by the above, will be saved in your data folder.
- seals.txt -- seal-clubbing data for use by top secret club G.R.O.S.S.
It does not contain any images, because this script uses entirely images from KoL (and if you're caching images on your machine those won't take any server hits, either).
One additional note about use: if you use this script, try your best to only submit actions using the Actions Table or the Quick Menu, not the default KoL interface (except macros; those are fine). The reason for this is that BatBrain tracks all actions that have happened, but it can only track actions that happened in a macro. Most of the time this won't matter, but if you, say, throw your insult book at a pirate using the default KoL interface, BatBrain won't know that you just did that and it will continue to suggest that you insult the already-insulted pirate. There are probably other cases where this matters too, so as a rule of thumb just stick to performing actions using the features provided by this script.
Enjoy! And in the words of Batman: "Let's go, Robin. We've set another youth on the road to a brighter tomorrow."
4.29.12 - ver. 1.0 posted.
4.30.12 - ver. 1.1 changes: Stun menu should not submit stasis macro.
5.08.12 - ver. 1.2 changes: Add more goal information, and location/monster-relevant wisdom from Batman himself. Fix Action Table sorting for all columns except HP. Improved logic for when stun menu appears. Begin version checking transition to "BatMan RE". Remove version checking from adventure.ash and only decorate the page if it contains "adventure.php".
5.15.12 - ver. 1.3 changes: All-new CLI box! Fix incompatibility with IE (and possibly other browsers as well). Remove KoL's import of an older version of jQuery. Show potion info in Dungeons of Doom, evil in Defiled zones, and insults in the Barrr. Lots of little tweaks here and there. Enabled tilde key for submitting the top menu item. Finish version checking transition to "BatMan RE".
5.29.12 - ver. 1.4 changes: Add "Automate" to quick menu. Load and show the page before loading and showing the table/menu, for much less waiting. Refresh Adventure Again menu when submitting a CLI command. Add unknown_ml editor for unknown monsters.
1.12.13 - ver. 1.5 changes: Fix monster names. Correct Batman's Spanish. Automatically "show old combat form" with CAB enabled. Mousing over damage shows damage formula.
1.17.13 - ver. 1.6 changes: Unknown monster raw stats are now -1. Tighten up the actions table and style it a little nicer. Enhance Manuel's information table and include monster value with a partial breakdown. Add this information (using BatBrain's adjusted stats) even if you don't have Manuel.
1.31.13 - ver. 1.7 changes: Monster damage is now a spread. Added Siphon Spirits information to Quick Menu.
5.31.13 - ver. 2.0 changes: fridiculously many!
6.01.13 - ver. 2.1 changes: compatibility fixes for fight.php alterations by some browsers, KoL, and mafia. Add pixel count and link to create digital key to Adventure Again box in the 8-bit realm.
7.02.13 - ver. 2.2 changes: BatMan RE is now hosted on SourceForge.
Changes after this point can be found on BatMan RE's SourceForge changelog, however I will continue to post more in-depth release notes in this thread.
Important! If you have enabled "run betweenBattleScript before manual adventures", you'll need to either disable it or delete adventure.ash. Either way you lose some functionality, but if you have both, mafia will fully automate one combat before serving up the second combat in the relay browser, causing you anger and bewilderment as you wonder where the extra adventure went.