Version 19.9

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: 19456
Since we have a "potion" type, we know that getting mall prices for "potions" does not actually get
the prices for all non-food candies. Therefore, the Sweet SYnthesis panel can't rely on that when
updating prices.
Add "tcrs test" command to allow testing with a class/sign that is not the one you are currently in.

Revision: 19457
Attempt at updating the queued items in the creation queue when attributes (like expected adventure range) change

Revision: 19458
Fix "beach head" command to work before you have unlocked the shortcut

Revision: 19459
Track Electric Kool-Aid eaten in elecricKololAidEaten and Bloodweiser drunk in bloodweiserDrunk.
Use those properties to calculate modifiers for Electric, Kool and Blood Porter effects

Revision: 19460
When we reset conumables, must also reset concoctions to use new values

Revision: 19461
Update Bloodweiser and Electric Kool-Aid consumption count when viewing their effects

Revision: 19462
When wandering down the beach, it is "1 minute" not "1 minutes"

Revision: 19463
Call QuestManager.updateQuestFightStarted in the round 0 processing, rather than after we have set the round to 1,
since if the monster is killed by auto-attack, in the place it was called, it would never be round 0.

Revision: 19464
In potions panel, if you have a potion-granted effect active, display (XX active) between effect name and effect modifiers

Revision: 19465
Initial set of items and effects from the Getaway Campsite

Revision: 19466
And foods

Revision: 19467
Add Your Campfire as a coinmaster. Accept pulverized Standard gear as potential currency for The Armory and Leggery/

Revision: 19468
Some campfire effects

Revision: 19469
Use a Set, not a List, in StandardRequest for storing restricted objects.
Since the keys are looked up in lower case, Fifteen Minutes of Flame -> fifteen minutes of flame
The Maximizer now checks if a skill is restricted before recommending its use

Revision: 19470
bundle of firewood -> SUSE -> 10 sticks of firewood

Revision: 19471
When opening a Broser on OS X, use the "command array" method of invoking Runtime.exec to allow the
browser name to contain spaces. Like "Google Chrome".

Revision: 19472
Apparently, Cafe items can be consumed even if they are not in Standard

Revision: 19473
Smile of the Opossum

Revision: 19474
Add Effect data to notes for campfire foods so it shows up in the Food panel of the Item Manager

Revision: 19475
Some zap groups

Revision: 19476
As they are wont to do, KoL admins added new Stuff after the IOTM was released.a
To wit, Whittled Wearables.

Revision: 19477
Add "restUsingCampAwayTent" setting. This will use your CampAway tent in preference to your dwelling when resting.
If you alos have "restUsing"Chateau" at true *and have access to the Chateau), that takes precedence, since it
also gives you stats. Either option is superior to a standard dwelling.

Revision: 19478
Getaway Campsite gives you an additional free rest. Add some more big smiles.
When considering toys to use as part of breakfast, if you have already met their
daily maximum, don't try using them. This chack was previously done later, which
resulted in a message saying you'd already reached that limit (before issuing a request),
but if you had the item in your closet, it would pull it out before detecting that.
This commit means you lose the message (alas) but do not move items out of the closet (yay).

Revision: 19479
Accomodate malformed HTML in item description of the Kremlin's Greatest Briefcase

Revision: 19480
Enforce Standard restrictions, as required, for Sweet Synthesis

Revision: 19481
fire is creatable by MUSEing 2 stickis, not via CRIMBO07 recipe

Revision: 19482
Fix spelling for potion of temporary gRevision 8ness

Revision: 19483
fix plural

Revision: 19484
Add _campAwaySmileBuffs and _campAwayCLoudBuffs properties. Add more Big Smiles

Revision: 19485
I really did want _campAway rather than _campaway

Revision: 19486
Add items and path-starting for Kingdom of Exploathing and effects from CampAway

Revision: 19487
Coinmaster for Cosmic Ray's Bazaar

Revision: 19488
Account for things that decrease NPC Meat costs when a Coinmaster trades an item for Meat.
Correctly recognize when we are in Kingdom of Exploathing.

Revision: 19489
In Kingdom of Exploathing a player does not need a rowboat or S.O.C.K. to access the Castle basement

Revision: 19490
Thwaitgold

Revision: 19491
Add a new overload to ASH faxbot() command to let the user specify which bot they would like to request

Revision: 19492
Moon sign zones are not available in KoE

Revision: 19493
Add a couple of adventure locations for Kingdom of Exploathing.
Mark a number of NPC stores and coinmasters unavailible inf Kingdom of Exploahting.
PIXEL concoctions cannot be made at the Hermitage.
The Maximizer will not consider the Spacegate if the Kingdom exploded.
Gnasir has a different link in the exploded desert beach.

Revision: 19494
List all currencies in title bar for Cosmic Ray's Bazaar in Coinmasters Frame

Revision: 19495
Render diacritical marks nicely in title of Coinmaster frame for Coinmasters that require it

Revision: 19496
Resting in campaway tent is more effective

Revision: 19497
Council is now in place.php?whichplace=exploathing&action=expl_council
(fix council request, command, and frame)
Visit manor floor 1 before auto-reading Lady Spookyraven's telegraph
Council is now a choiceadv with a "Leave" button which can be walked away from
Don't log the "locked" version of the Haunted Kitchen, like other locked rooms.

Revision: 19498
A fix for parsing KGB regen broke parsing KGB prismatic damage

Revision: 19499
Sewing kit is reusable, track its daily use

Revision: 19500
In Kingdom of Exploathing, when you find a white pixel, give a use link to Cosmic Ray's Bazaar, not the mystic

Revision: 19501
When you get forged id documents in Kingdom of Exploathing, give a link to the council, not the shore

Revision: 19502
Fix more use links, quest progression, etc. for Kingdom of Exploathing

Revision: 19503
Tower Door quest script will now buy keys from Cosmic Ray's Bazaar, if necessary

Revision: 19504
Restores updates

Revision: 19505
puff.gif is the icon for Kingdom of Exploathing on the ascension list.
Don't try to visit the Hermit during breakfast in Kingdom of Exploathing

Revision: 19506
Refactor Tower Door quest script to use real Java objects.
In Kingdom of Exploathing, if autoQuest, visit council before visiting Spookyraven first floor
before reading Lady Spookyraven's telegram

Revision: 19507
Consumption data for space wine and space chowder

Revision: 19508
Saklad5 wondered where they wandered and so updated the locations where they could. UNTESTED

Revision: 19509
Handle non-combat in the exploated battlefield. remove the item you tossed and increment
fratboysDefeated or hippiesDefeated appropriately.

Revision: 19510
There are no sidequests in the war in KingdomOfExploathing. Assume there are no war heroes, either.
When listing war progress in the Relay Browser, recognize that there are 333 per side, not 1000.
-kThis line, and those below, will be ignored--
M src/net/sourceforge/kolmafia/session/IslandManager.java

Revision: 19511
Add questL12HippyFrat to track progress of Hippy/Frat conflict in Kingdom Of Exploathing.
Unfortunately, when you finish it, the quest log says you finished the regular war.
Therefore, having progressed the regular island war is no longer an indicator that the island is available.
Visit the council and whichplace=manoRevision 1 before calling user's PostAscension script

Revision: 19512
Remove MMG code since the MMG is no more.

Revision: 19513
Add potion to valid primary item types for DataFileTest.

Revision: 19514
Big Smile of the Marmot

Revision: 19515
If a "td" node contains text directly under it, as opposed to within a "p" node, say,
look for damage we dealt to a monster.

Revision: 19516
haunted paddle-ball and Jacob's rug help in the exploaded battlefield

Revision: 19517
ClanLoungeRequest cannot automatically follow redirestcs

Revision: 19518
roofie -> shingle. Refresh inventry after visiting manoRevision 1 after ascend into Kingdom of Exploathing.
Initial supposrt for Implode Univers: track skill level in skillLevel188, increment it (max 13)
when you read The Imploded World. No support yet for counting daily uses.
When you cquire an item in The Lost Room, you lose your lost key

Revision: 19519
Manually specify line.separator in JUnit tests.
This may resolve tests failing under Windows...

Revision: 19520
In Kingdom of Exploathing, Palindome is visible on main map, whether or not you have the Talisman equipped,
but you still need to equip it in order to visit it.
Cosmic Ray's Bazaar sells rare Meat isotopes for Meat. Make "acquire" work for such Coinmaster concoctions,

Revision: 19521
Add space shield to known equipment. Fix equipment power for Beach Comb and hewn moon rune spoon

Revision: 19522
Make deck of lewd cards discovery via Saklad5

Revision: 19523
average season, Law of Averages. For now, assume you can only buy one Law of Averages
per season, like every other reward except for the School of Hard Knocks diploma

Revision: 19524
driftwood equipment adjustments

Revision: 19525
Recognize message for reading 2nd and subsequent copies of The Imploded World

Revision: 19526
Correctly parse "You lose an effect" tables

Revision: 19527
When you receive an effect KoL will sometimes not entity encode the effect name. That doesn't compare
successfuly with the actual effect name which is entity encoded. Compensate for this.

Revision: 19528
Revert attempted fix for special clips doing multiple rounds of damage with weird HTML,
since it broke other important parsing, like runaways and banishes.
Add check for ammo.gif to fix just the special clip issue

Revision: 19529
Initial support for Pocket Professor

Revision: 19530
When parsing effect (and item) names from KoL responseText, trim the results; Affirmation effects
(at least) are sometimes presented with a leading space

Revision: 19531
When you change up the Goth Giant's music, you lose your dum 'n' bass 'n' drum 'n' bass record

Revision: 19532
Add Kingdom of Exploathing monsters

Revision: 19533
Disable allowSocketTimeout since it is harmful. The default for the option was false, but players who
were using KoLmafia before I changed the default from true to false had it at false.
I left in the code, for study, but the option to enable it is ignored and it is always disabled.

Revision: 19534
Add Spacegate Sounds to Script repository

Revision: 19535
Allow tavern automation below level 3 if in KoE. Untested.

Revision: 19536
Fix Kingdom of Exploathing check

Revision: 19537
Law of Averages is reusable. Add ability to specify extra fields when automating choices:
set choiceAdventure1391=1&tossid=10320
ash run_choice ( 1, "tossid=10320" );

Revision: 19538
plural for bunch of sea graps. _universeImploded tracks usage of Implode Universe
Hedge Maze script checks for enough turns available for chosen path. Having confirmed you
have enough, accept KoL's intro choice adventure warning you that you have fewer than
9 turns available and may wish to turn back.

Revision: 19539
Add some methods in ChoiceUtilities to parse and validate "select" inputs in choice adventures.
Calling these methods to validate use-supplied input (CLI or ASH) will come next.

Revision: 19540
Arena parameters for Pocket Professor.
Update "choice" command:
choice -> prints current choice options, including extra fields from "select" inputs
choice NUMBER [FIELD=VALUE]... [always] -> make the specified decision with specified extra fields.
set whichChoiceXXXX=1&FIELD1=VALUE&FIELD2=VALUE
will set the default decision and extra fields as desired. If the fields prove to be invalid while automating,
you are given the opportunity to continue in the CLI - or in the relay browser

Revision: 19541
Support for automating choice adventures that have required "text" inouts

Revision: 19542
Arena parameters for Party Mouse. Fixes from checkeffects and checkitems.

Revision: 19543
ASH functions for getting available choice inputs:
string[string][string] available_choice_select_inputs( int decision );
string[string] available_choice_text_inputs( int decision );

Revision: 19544
Make a new RelayAutoCOmbatThred for every RelayAgent.
synchronize, as appropriate, on FightRequest.INSTANCE.
Set/clear isAutomating fight in a try/finally block

Revision: 19545
Add method-chaining friendly versions of eat, eatsilent, drink, drinksilent, chew, use and create. For example, you can now do .eat() or .drink(3)

Revision: 19546
Restore overdrink to RuntimeLibrary

Revision: 19547
Get rid of RelayAutoCOmbatThread

Revision: 19548
Add method chaining variants for ASH functions: overdrink, retrieve_item, buy, buy_using_storage, adventure

Revision: 19549
Whenever we update the round data in a fight, save the decorated response as well as the raw response.
Aitomating fights with the "script" button will show you the last decorated response, which will include a
"Found in this fight" section if needed.
Since we are running fights in the Relay Agent thread, catch exceptions and print a stack trace
Simplify a lot of "getNextTrackedRound, since all it really needs to do is return the last decorated response

Revision: 19550
When you use the "auto" button on a choice adventure in the relay browser, display the decorated
response text, so that use links, etc, get shown.
Add missing choice decision for Duffel on the Double

Revision: 19551
Get rid of RelayAutoCombatThread

Revision: 19552
Retrieve cafe menus when you log in

Revision: 19553
Since we decorate fight and choice pages as we examine them, don't do it again when
formatting response for the relay browser.
Determine if you can walk away from a choice before decorating the response, since
Use Links need to know that.
Do not display use links in a multi-stage fight.

Revision: 19554
If you log in during a multifight, wait until all fights are finished before completing login.
Fix NPE if there is no decorated response for a fight or choice available in relay browser
Do not double decorate the response if taking a choice leads to another choice
If you redirect to a fight you are no longer in a choice

Revision: 19555
Familiar arena parameters for Sausage Golem

Revision: 19556
campfire smoke cannot have an inline use link

Revision: 19557
Log the flavor text from the KoL Con 13 Snowglobe, Mr. Screege's spectacles,
Mr. Cheeng's spectacles, and the lucky gold ring

Revision: 19558
Can't protect clovers if another fight or choice follows the fight where the clover appeared.

Revision: 19559
If you have rare meat isotopes at the gash, suggest spending them, since they are quest items

Revision: 19560
Add "spaceInvaderDefeated" property to track if the invader has been defeated in Kingdom of Exploathing

Revision: 19561
WHen generating use links, we include "speculation" mouseover text.
Must quote '$' characters in said text so that Matcher.appendReplacement
does not throw an exception.

Revision: 19562
Generate decorated response text after we have updated available combat skills,
since stationary buttons depend on that list being accurate

Revision: 19563
Update stationarybuttons CSS file to work around recently introduced bug in Chrome,
Thanks to xmccx. Tested on Safari, Firefox, and Chrome on my OSX system

Revision: 19564
Don't check item name from response text against item name derived from relstring.
When fighting zoneless monsters, setLastAdventure to "None" as well as setNextAdventure,
so CCS doesn't use last adventure zone's CCS, if there is one

Revision: 19565
You need to spend your rare Meat isotopes before you break the prism, not
before you jump the gap. Issue a warning if you are about to break the prism
in Kingdom of Exploathing with rare Meat isotopes in prism, just as we do for
clovers and many other things.

Revision: 19566
Update items from checkItems. No blank line when visit Horsery

Revision: 19567
Update copyrights

Revision: 19568
Add gausie to authors.txt. Fix ordering in list of licenses. Update year in
displayed KoLmafia license.

Revision: 19569
New properties to track Pocket Professor skills: _thesisDelivered and _pocketProfessorLectures

Revision: 19570
Fix line breaks

Revision: 19571
Various tweaks to item description parsing to let checkitems produce fewer false positives.
Fix a few real errors in modifiers.txt

Revision: 19572
If you get Shen's half of the Talisman, create the Talisman in ChoiceManager
while handling the choice, rather than in ResultProcessor, while we are still
in the choice and creation cannot be done.

Revision: 19573
Since my bug report has been responded to, update a comment.

Revision: 19574
Add $familiar.experience proxy record field

Revision: 19575
WHen you deliver your thesis, subract 200 experience from your familiar

Revision: 19576
Fix KoL typo before KoL, maybe, eventurally fixes it. Bug reported.

Revision: 19577
Update mallprices.txt

Revision: 19578
Bump version to 19.9
 

Veracity

Developer
Staff member
Unless something changes dramatically, this will be the last "official" release of KoLmafia.
 

Veracity

Developer
Staff member
Correct. I am the only one who has uploaded point releases to sourceforges for many years, and I will (most likely) no longer be doing that.

We have gone many many months without new sourceforge relases before. For people who need up-to-date support of new mechanics, special features of new paths or PVP seasons, the daily builds have been fine. But for "normal" paths (unlike TCRS or Pokefam, say), KoLmafia's automatic learn new skills, effects, familiars, etc. has been pretty darn good.

For this release, I tried to beef up the automatic parsing of item descriptions, for example, to be even more robust than it already was.

I have no comment about what to expect regarding new sourceforge commits. As they happen, unless fewyn bails, they will show up here as always.
 

Saklad5

Member
Unless something changes dramatically, this will be the last "official" release of KoLmafia.
A substantial proportion of active players use KoLmafia. Hopefully this will make Asymmetric wake up and realize this isn’t going to go away before they give an official response.

I never thought they’d go this long without addressing the issue. It’s a bit more important than balancing copies.
 

Veracity

Developer
Staff member
A substantial proportion of active players use KoLmafia. Hopefully this will make Asymmetric wake up and realize this isn’t going to go away before they give an official response.
I honestly don't think they care about KoLmafia. I just went and looked at all the people they gave credit to as "helpers". I knew (of) all the original playtesters and bug fixers. There were lots of people I have never heard of who made "other contributions". And, there was, literally no recognition of people who aided the KoL community who weren't connected with KoL itself. That included KoLmafia - but also the KoL Wiki.

Seems sort of obtuse, since those folks immensely helped the KoL community, but, whatever.

Thank you, Veracity, for your many years of service to this community.
I appreciate your appreciation. It has been a labor of love for me. I joined because I wanted to learn Java, and when I asked holatuwol if I could help, he immediately gave me commit access and, by gum, I learned Java. Such that now I am a professional Java programmer, after contributing here for 14 or so years. :)

After the discouraging news in August, I worked my butt off in September to try and make KoLmafia super solid. I think it's in good shape.

I have canceled my subscription. Don't know if I'll ever buy an IOTM again, If not, you can certainly expect me to NOT make any effort to support it.

There are other devs. They can make their own decisions about what they wish to do - or not do - henceforth. I won't judge. My decisions are my decisions, and their decisions are their decisions.
 

Hawkshaw

New member
Hopefully this will make Asymmetric wake up and realize this isn’t going to go away before they give an official response.

Jack and Kevin have both made comments in response to the gameindustry.biz article, and from what I've heard, it seems like this is their official response. Somehow, to me, that feels... worse.

For real, though, thank you, Veracity. I'm so grateful for the work you've done, and I hope you're holding up okay. <3
 

fronobulax

Developer
Staff member
A substantial proportion of active players use KoLmafia. Hopefully this will make Asymmetric wake up and realize this isn’t going to go away before they give an official response.

My observation has been somewhat different. There were several times over the years when hearsay comments claimed that Jick was annoyed with KoLmafia for various reasons, including the belief that people who used it never read all of the "jokes" and/or otherwise ignored the creative writing that is arguably the heart of the game. I recall a couple of game changes that seemed as if they were deliberately intended to give KoLmafia a problem. Bug reports that only effect KoLmafia often do not get acted on. Recently there were reports of lag and delays. There was a quasi-official claim that it was a KoLmafia problem. Subsequent spading narrowed it down to two IP addresses used by KoL so it was not a mafia problem at all. While the reporter did acknowledge their error and apologize, if KoLmafia were held in high esteem at Asymmetric it is unlikely that a knee jerk response to a problem would be to blame KoLmafia.

So I don't see anyone at Asymmetric losing any sleep over the possibility that their action or inaction had an effect on the long term viability of KoLmafia.
 

lostcalpolydude

Developer
Staff member
My observation has been somewhat different. There were several times over the years when hearsay comments claimed that Jick was annoyed with KoLmafia for various reasons, including the belief that people who used it never read all of the "jokes" and/or otherwise ignored the creative writing that is arguably the heart of the game.
My 4 years in /dev never gave me the impression that they had a problem with mafia.

I even remember bringing up that subscriptions couldn't be set up in mafia, and wondering if there was any way to make that work. CDMoyer spent a little time looking into it, before reaching the same conclusion as Veracity (that it can't work).

I suppose it's possible they had given up on disliking mafia's influence on the game by the time I joined.

Bug reports that only effect KoLmafia often do not get acted on.
Minor bug reports often were ignored, unfortunately. Whether or not they had anything to do with mafia. I kind of gave up on trying to bring them up for fixing, even.

Recently there were reports of lag and delays. There was a quasi-official claim that it was a KoLmafia problem. Subsequent spading narrowed it down to two IP addresses used by KoL so it was not a mafia problem at all. While the reporter did acknowledge their error and apologize, if KoLmafia were held in high esteem at Asymmetric it is unlikely that a knee jerk response to a problem would be to blame KoLmafia.
Related to the previous point... when Aenimus was added as a dev, he was enthusiastic about trying to get things fixed. He brought up lots of bug reports that I had long given up on, and was very proactive about things. That also meant being quick to reach some conclusion on topics, because that's the only sane way to get through a huge backlog. So that was one recently-added person, making a mistake that is understandable (with sufficient knowledge of the situation).
 

fronobulax

Developer
Staff member
My 4 years in /dev never gave me the impression that they had a problem with mafia.

Fair enough. My impressions were formed at least a decade ago and I am perfectly capable of only remembering things that reinforced my impressions.

That said, I am 99 44/100 % certain that Jick did say in a podcast (a long time ago) that he did not like the fact that mafia users often "missed" his carefully crafted content.

In the sense that when a "crime" is committed, the response is to "round up the usual suspects", I saw Aenimus' comment as suggesting that Kolmafia was on a list of "usual suspects". I'm sure there are other ways to explain it but since the comment supported my preconceived beliefs...

So I probably do have some decades old baggage that I can try and jettison. Thanks.
 

fewyn

Administrator
Staff member
I have no comment about what to expect regarding new sourceforge commits. As they happen, unless fewyn bails, they will show up here as always.

Not planning on bailing, but with the recent turn of events I've completely stopped playing and haven't touched the game. So unless the I stop paying the bill the site will continue floating along as it has over the years.
 

heeheehee

Developer
Staff member
As has been said by others, Veracity, thank you for everything you've done to make Mafia what it is today. Best of luck with your future endeavors.
 
Top