Version 13.4

Veracity

Developer
Staff member
The following is an abbreviated version of the Subversion commit message logs. Please keep in mind that these messages are intended for other developers and they take the files which were modified into context in order to limit the amount of verbage. In general, they are not intended for general audiences and should not be treated as "official" documentation -- they are informal and abbreviated, at best.

If you do not understand what something says, try looking at the full version of the revision by following the accompanying link for the revision. The only difference is that the files which were modified will be listed, and sometimes, you can guess what happened from file names (though not always). If you still have no idea what happened, that's okay -- it probably doesn't relate to what you're doing with KoLmafia. ^_~

Furthermore, not everything marked as "fixed" is guaranteed to be fixed, not all changes are guaranteed to have a change. This is due the fact that both time and turns are finite and only a limited number of things can be tested. Some changes go in untested, assuming they would work, when they actually don't due to erroneous assumptions; alpha testers occasionally will be able to give feedback, but it's not always possible.

For example, if you read the revision logs for what changed between 10.2 and 10.3, the plus sign choice adventure was meant to get a use link. Something as seemingly insignificant as KoL using two spaces instead of one space in the sentence "It's actually a book. Read it." would mean the change didn't actually work -- anyone can verify that, in fact, the change didn't work for this very reason. If you ever encounter something like that, a non-accusatory mention of it (non-accusatory meaning anything that neither implies "ZOMG FALSE ADVERTISING" nor "You guys said this was fixed, but...") somewhere will usually result in the problem getting addressed.

Finally, if you've got a bug to report, make sure you read up on how to post a detailed bug report. While the rules outlined apply specifically to bugs related to scripting, many of them are applicable to KoLmafia bug reports in general. Most importantly, I hate the words "annoying" and "frustrating". Never use them when describing a bug/feature. Ever. Thanks. The abridged revision logs follow.

Revision: 7385
Adds monster data for the Infernal Seals. This should allow them to be
logged correctly if summoned just after a turn spent in Hobopolis (or other
location with randoml-generated monster names).
The "up" CLI command can now be followed by a question mark, in which case it
just displays the command that would be used to extend the specified
effect(s), rather than actually doing so.

Revision: 7386
Fix problem introduced in Revision 7382 with the use of combat-causing items (such as
drum machines) from the relay browser, with the Combat Action Bar enabled.
The symptom was that the first round of combat overlaid the mainpane, rather
than replacing it.
Don't request a charpane update in response to chat notification that you've
received a buff, if mafia is currently processing a command. The
asynchronous update might not get processed in the proper order relative to
the updates performed by the command, resulting in an incorrect adventure
count or possibly other problems.

Revision: 7387
Only consider parsing results in haiku format for fight.php, adventure.php,
and choice.php - all other pages get normal parsing even with Haiku State of
Mind active, or the Haiku Dungeon as the most recent adventure location.
Adds display of pulls remaining after a CLI "pull" command.
Fixed problem that was keeping telescopeLookedHigh from being set properly.
Added default extender for Digitally Converted effect.

Revision: 7388
Fix making sushi with captial letters in name
shadowy seal eye provides Monster Level +15, not Monster Level 15

Revision: 7389
In UseItemRequest, recognize the items which require special handling due to
being the base ingredient in a SUSE or MUSE concoction via the concoction
database, rather than having to hard-code them all. Do this before deducting
the used quantity from inventory, so that the count never has to go
momentarily negative for such items.

Revision: 7390
Every time you have a chance to act in combat, read the current quantities of
all combat items from the items popup and use them to correct any inventory
miscounts. This will soon fix any problems due to an item being funkslung,
and therefore deducted from inventory, but not actually used because the
first item finished the combat.
Improved logic for determining Black Market availability - there was a quest
log state, with the Market open but the diary not yet retrieved, that we
weren't detecting.
The Slime Hates It modifier is now capped at +1000 ML.

Revision: 7391
Don't crash when parsing the profile of a player who has opted to hide their
current meat amount.
Updates for: Wumpus outfit effects, slimy drink adv gains.

Revision: 7392
In internal chat, split long lines such that chat commands still work: the
command (and following word, if it's something like /msg) has to be
replicated at the start of each split piece. However, if it appears to be a
chain of advanced chat commands (detected by the presence of "&&"), it must
instead be split on "&&", with nothing else added.

Revision: 7393
Soup up the Wumpus Mnager:
- There are exactly two bats, two pits, and one Wumpus. If you have positively
identified the last example of each, eliminate the possibility from other rooms
- Display in the Relay Browser, the gCLI, and the Session Log the deductions we
make about various rooms:
Visit - we actually visited the room and saw what was there
Listen - we visited an adjacent room and heard sounds (or silence)
Elimination - we hear a sound but all other adjacent rooms are known
Deduction - we've already found all the hazards of a type, so this room is safe
This makes it clear that there are other things that could be done. For example,
if from one room you detect the long or pillared room and from another you
detect it in the fetid or long room, it has to be in the long room. Later.

Revision: 7394
Fix typo in Wumpus choice spoilers: remove extraneous ">".
Add "Links" to deductions, to make session log and gCLI easier to understand.
Refactor some code.

Revision: 7395
Rename "Links" to "Exits", print them before the state of the current room, and
only print them to the CLI and session log, not the relay browser.

Revision: 7396
Do a better job of handling inventory changes due to actions you've told El
Vibrato constructs to perform.
Recognize that punchcards can be inserted into an EV drone, as well as the
helmet.
Add support for The Collector choice adventure: settings are in the Item
sub-tab, the big bumboozer marble is now marked usable.

Revision: 7397
Add the number of bonus adventures so far to the Hare's familiar annotation.
Show familiar annotations in the mafia GUI as well as the relay brower
Add white rice to the spoilers for the choiceadv where it can be found.

Revision: 7398
Add data for Slime Tube monsters.
Correct white rice spoiler from Revision 7397 - I was misremembering how that
choiceadv worked.

Revision: 7399
Yummy Tummy beans are multi-usable, but with a maximum of 20 uses at a time.
Split up requests into chunks of 20, rather than the current 1-at-a-time
usage. You can now pig out more efficiently!
Added developer command "debugcreate <item>" to trace the calculations of
item creatability.

Revision: 7400
Improve wumpus support: if we have already identified the room with the wumpus
(or both pits or both bats), do not identify new rooms as possibly having that
hazard.
Print a newline after the modtrace table so that subsequent CLI commands appear
on their own line, rather than to the right of the table.

Revision: 7401
The Dwarven Factory Warehouse is now an adventurable location.
Both the Warehouse and the Office require either Mining Gear or the Dwarvish
War Uniform to be worn.
In the Wumpus cave, safe rooms you have not yet visited are now tagged "safe
and unvisited" rather than simply "safe".

Revision: 7402
The chaos butterfly is usable.
Make abort message from an empty response more newbie friendly. Blame Jick.

Revision: 7403
When you visit your contact list in the Relay Browser, rebuild our internal
contact list. If it is not empty, note that it must be read when you log in.

Revision: 7404
Trap java errors generated by ASH script use of matchers and give a useful error
message, rather than a Java stack trace.

Revision: 7405
Support for lots of choice adventures from your Ancestral Memories

Revision: 7406
Recognize when a non-AT plays an AT-only song

Revision: 7407
Replaced the creatability algorithm with a simpler one that is potentially
slower, but returns the correct value in some cases that are problematic for
the old algorithm:
* Items with creation loops (dough, clovers, charrrm bracelets).
* Recipes where one ingredient can be created from another ingredient at the
same level (at least 6 pixel recipes fall into this category).
* Items with ingredients that you can't currently make (due to lack of the
needed skill or moon sign area), but have some on hand - in some cases, this
was causing calculations to be performed on uninitialized items.
Also, improve the quality of the creatability results, especially in low-meat
situations, by explicitly considering the meat needed for paste, stacks, and
NPC-bought items. Previously, such items were considered to be individually
available in the maximum amount you could afford.
Refresh concoctions whenever a worthless item is gained or lost, since this
affects the creatability of anything with Hermit-traded ingredients. The
normal mechanism doesn't work in this case, since the three individual kinds
of worthless items aren't listed as an ingredient for anything.

Revision: 7408
Shortened several string matches in FightRequest to avoid prepositions, so
that they won't fail if the sword behind is equipped.

Revision: 7409
Correctly handle fullness when food is multi-eaten in a quantity greater than
you have room for.

Revision: 7410
Add basic support for the new Sauceror & Pastamancer underwater potions. The
recipes probably don't work yet, but you should be able to use any potions
you made yourself.

Revision: 7411
Fix consumption of NPC items via the Item Manager queue - items with a price
were assumed to be restaurant menu items.

Revision: 7412
When adding to the Item Manager queue, don't enqueue ingredients of items
that are going to be bought, or that can't be created.
When calculating creatability, ignore invalid items - they normally can't
occur here, but currently do so due to the way I'm representing the
nonexistent 2nd ingredient of the new underwater breathing potions.

Revision: 7413
Fix problem with adding restaurant items to the Item Manager queue.
Protect against infinite recursion when acquiring dough - it's still not
working right, but at least it no longer crashes the program.

Revision: 7414
Further attempts at fixing the dough-related problems:
* Make a better distinction between items creatable entirely from purchased
ingredients, and items that can be purchased themselves.
* Consider creating items even if they can be bought - otherwise, any excess
flat dough produced via a rolling pin will be ignored in favor of buying more
wads of dough.
Added some more preset goals for the Spooky Forest, Outskirts of Knob, and
Guano Junction, courtesy of bumcheekcity.

Revision: 7415
Yet another creatability fix: make a necessary distinction between different
types of items that can be acquired based solely on available meat.
* NPC-buyable items must not consider the buyable quantity to be creatable,
or they'd never actually get bought. That was fixed in Revision 7414.
* However, meat paste & stacks MUST be considered creatable, or mafia will
attempt to buy them instead - from the Mall, at 2-10X their actual price.

Revision: 7416
Don't attempt to recover HP at the end of automated adventuring if an aborted
fight is still in progress.
Don't create an outfit checkpoint for a nested adventure request (from a
counterScript, betweenBattleScript, mood action, etc.), as it will never be
restored. The extra checkpoint was effectively replacing the checkpoint for
the outer request, leaving the original checkpoint on the stack forever.

Revision: 7417
Implemented a couple of suggestions from DoctorRotelle:
If you attempt to eat more of a hero key lime pie than you have in inventory,
they will be made and eaten one at a time, so you only need one key - much
the same way as TPS drinks are handled (and conversely, TPS drinks should now
be multi-drunk all at once if you actually have the full quantity).
Consider the maximum usable quantity of all marbles (other than the big
bumboozer) to be half the number you have in inventory, so that "use *
<marble>" does something useful now.

Revision: 7418
Add golden plastic oyster egg
Add Item Drop Boost, Meat Drop Boost, and Adventure Massage to clan buffs

Revision: 7419
Add & correct a bunch of plurals.
Indicate that Cyrus the Virus has 10,000 ML, for flyering.

Revision: 7420
Correctly parse "*" as a number of times to use a skill, which is allowed by
KoL to represent the maximum number of casts possible with your current MP.

Revision: 7421
Some updates for a few multi-use/single use items

Revision: 7422
Added an alternate syntax for specifying items to most CLI commands: a
pilcrow (more commonly known as a paragraph mark) followed by the item ID.
This is primarily intended to allow the ASH wrappers for CLI item commands
to avoid any possibility of ambiguity (for example, "1 WA" would otherwise be
interpreted as a "100-watt light bulb"), and to allow items with names
containing commas to be passed to commands that accept a comma-separated item
list. It can be used for similar purposes from ASH scripts, in which case
"\u00B6" is the best way to specify this special character. However, there's
nothing keeping you from actually using this feature from the gCLI, assuming
that you know the item's ID, and can figure out how to type a pilcrow on your
keyboard. (Based on a patch by Wrongfellow.)

Revision: 7423
Some minor updates. Added some quest item reminders to the ValhallaDecorator.

Revision: 7424
Properly recognize the end of combat vs. your shadow if the CAB is enabled.

Revision: 7425
Added choice spoilers for various Hobopolis Marketplace locations.
Choice spoilers for options that give you an item now have the standard
magnifying glass icon to pop up the description of that item. Be a
better-informed Hobopolis shopper!

Revision: 7426
When initializing the choice adv popups from user preferences, treat invalid
values as 0 (meaning "show in browser") rather than crashing.

Revision: 7427
Added ASH my_ascensions() function, returning your ascension count. This
value is needed to interpret some of the built-in pref values that are
invalidated by ascension, and may be of use to scripts wanting to do
something at most once per ascension.

Revision: 7428
Initial support for Bag o' Tricks.

Revision: 7429
Tag new IotM as softcore only.

Revision: 7430
Adjust the inventory count of Mr. Accessories to the amount displayed in Mr.
Store, whenever it is visited - this will account for any that are spent
there.

Revision: 7431
Fix typo: protein paste grants 6-8 adventures, not 68

Revision: 7432
Fixed parsing of Mr. Accessory count when you have only one - Mr. Store
displays this as "one" rather than using numerals.
Added CLI "modifies <filter>" command, which lists every known source of
numeric modifiers matching the filter. Note that the first use in a session
is very, very slow, as every modifier data entry has to be compiled -
something that normally never happens. Limitations:
* No distinction is made between equipment items, active effects, passive
skills, or any of the other possible sources of modifiers.
* Some hard-coded modifiers aren't shown: for example, "modifies monster
level" won't list the MCD, or the relevant Ballroom quartet song.
* Indirect sources aren't shown: for example, "modifies item drop" won't list
familiar weight increasers even if you have a Fairy-type familiar.
* Sources that have variable modifiers have a "v" shown after their value,
but it's possible that this value is actually constant - some other modifier
from the same source might actually be variable, instead.

Revision: 7433
Apparently, learning certain skills is signaled by "You gain a skill".
When you gain the Spookraven clubber or tamer skills, remove appropriate
tattered standard from inventory. (do Myst and Mox Spookraven skills also
lose the item?)

Revision: 7434
Bottles of sake can now be made by fermenting white rice.
Added a mechanism for overriding the expected number of turns taken by an
adventure request, for cases where the caller has some special knowledge
about what's going to happen. Used this to specify that the visit to Noob
Cave (to get the Welcome Back adventure after finishing a gong) will take 0
turns, so that it doesn't inappropriately trigger counters.
Added new ASH function for using this mechanism:
boolean adv1(location loc, int turnsUsed, string filterFunc)
This will adventure exactly once in the specified location (even if it took
no turns), although it will follow chained choice adventures for as long as
you have preset options.
turnsUsed overrides the normal number of adventures that are expected to be
consumed at this location, or -1 can be passed to use the default.
Specifically, 0 will prevent any counters from triggering - of course, if an
adventure actually is consumed, any counters that you kept from triggering
will be lost.
filterFunc is the name of a combat filter function defined elsewhere in your
script, with the same behavior as in the 3-paramater version of adventure().
An empty string can be passed to use your battle action or CCS as normal.
Your autoattack is now reset when adventuring with a combat filter active,
just as if you were using a CCS.

Revision: 7435
Track the current levels of the three Slimy passive skills. If you have
already used more than one of any of the slime-soaked items, you will need to
visit the corresponding skill description popup (either in mafia or the relay
browser) to let mafia determine the current level. Consuming any of the
items will also update the levels. Handling of any attempt to use an 11th
item of any type is not guaranteed to work right, since it's not currently
known just what happens then.
This required adding a new pref(text) function to the modifier expression
language, to allow the levels of these skills to be retrieved from preferences.

Revision: 7436
Learning ANY Spookraven skill makes you lose the item that enabled it.

Revision: 7437
Eat & drink one item at a time when a consumption helper is involved, so that
the player's requested number of helpers to use is actually respected.

Revision: 7438
Handle singleton list a little more intelligently:
- if you are wearing the item, that counts as keeping one
- if you have any of the item in your closet, ditto
- otherwise, peg the sellable umber at one less than the number in inventory

Revision: 7439
clay beads and class rings are no longer quest items

Revision: 7440
Allow fuzzy matching of untradeable, unbuyable items (disallowed since Revision 5912)
if you actually have one in inventory. This allows the legend keys to be
matched in preference to the corresponding key limes.
Extend the special preference given to items that are substrings of another
match to cases where there are more than two matching items; specifically:
X key > X key lime > X key lime pie.

Revision: 7441
New status effects.

Revision: 7442
Don't multiuse bitter pills

Revision: 7443
Fixed problems with NPC-buyable items showing as a "Pull" in the Item Manager
queue, and with "Pull" being treated as an invalid item.

Revision: 7444
Attempt an exact match on familiar types before checking for a substring
match. Otherwise, $familiar[Teddy Bear] would always refer to the
alphabetically earlier Evil Teddy Bear.

Revision: 7445
Bugfix: Mer-kin digpick namechange.

Revision: 7446
Do a better job of stripping out HTML from events.

Revision: 7447
Update hobo monster parameters

Revision: 7448
Strip out colons from the label and image of newly-created turn counters,
since this would corrupt the saved format of the counter. Avoid crashing
when trying to read a counter that has already been corrupted this way.

Revision: 7449
Ignore any errors while updating the contents of the modifiers popup - there
is a StateInvariantError occurring rarely here, which as far as I can tell is
an internal Java bug.

Revision: 7450
Ignore attempts to send blank messages

Revision: 7451
Reduce the number of null pointer exceptions generated when using Clan Manager.

Revision: 7452
"Fixed" a "bug" that was keeping monsters with quotes in their name
(currently, the "Handyman" Jay Android) from being "recognized".

Revision: 7453
Added clown skin drop at 10% for creepy/scary/shaky clowns.

Revision: 7454
Initial support for Slimeling

Revision: 7455
add arena parameters for Slimeling

Revision: 7456
Add "slimeling <item>" command to feed equipment to your Slimeling

Revision: 7457
When stripping out HTML tags from events, don't add extra whitespace.

Revision: 7458
Fix incorrect power & equip requirement for turtlemail breeches.

Revision: 7459
Bump version to 13.4
 

linguinelad

Member
yay! I just downloaded it. I can't wait to try it out!

I just noticed a "Spade" button at the bottom of the "Daily Deeds" section.

How does it work so I can help spade?
 

Bale

Minion
yay! I just downloaded it. I can't wait to try it out!

I just noticed a "Spade" button at the bottom of the "Daily Deeds" section.

How does it work so I can help spade?

It's rather vestigial. It was left over from an earlier spading project, but this remnant remains in case mafia is used to spade something else again someday.
 
Top