New Content - Implemented October ItoM : latte lovers member's mug

Saklad5

Member
I haven’t actually used it for anything yet, and I’m not sure whether I should wait until KoLmafia is updated to start finding everything. I suppose it doesn’t matter too much, since it is apparently reset on ascension.

That’s a shame: I love one-time scavenger hunts (demon names, hobo codes, etc.), but they become a chore if everything gets reset.
 

Darzil

Developer
r18924 and r18925 adds initial support for most of it.

Things that may well turn up and require changes :
Is Combat rate change +/-5 or more?
Does Offer Latte add 1 copy or more?
Does Throw Latte banish reset at rollover?
The mistakes that need fixes!

Things I'm not sure if we should support or not:
Recognising which things we've unlocked - as native interface shows it well
Changing setup of Latte mug - like Pantogram it's complex, and native interface works well.
 

lostcalpolydude

Developer
Staff member
With some duplicate modifiers, I suspect the current code isn't sufficient, and the code needs to be a lot messier to handle it all.
 

Darzil

Developer
Yeah, we might need to re-write other code too.
In particular, parseItemEnchantments needs to handle items with two modifiers (eg +20 Spooky Damage and +25 Spooky Damage) and add them together.
 

Darzil

Developer
r18928 handles that, I think (and not much messier, just a new function to add to existing modifiers in a list, rather than adding as new modifiers if another of that name existed).
 

yojimbos_law

New member
Things I'm not sure if we should support or not:
Recognising which things we've unlocked - as native interface shows it well
Changing setup of Latte mug - like Pantogram it's complex, and native interface works well.
So, I think the radio button values being obfuscated makes getting a refill worth supporting. Automating it in ASH is much more involved than the single visit_url() needed for the pantogram (unless the radio button values are able to be gotten in a manner more simple than this: https://pastebin.com/BJZyKdkb ).
 

Darzil

Developer
So, I think the radio button values being obfuscated makes getting a refill worth supporting. Automating it in ASH is much more involved than the single visit_url() needed for the pantogram (unless the radio button values are able to be gotten in a manner more simple than this: https://pastebin.com/BJZyKdkb ).

Urgh, the values change every time you visit the page! That's a nightmare! What possible benefit is there to doing that or is it just to mess with scripters?

(Edit - I'd guess it was actually there to stop us learning what all the options were, and stop us brute forcing ones others had discovered. But then it was decided to show them all to make it more user friendly)
 
Last edited:

Darzil

Developer
Am working on complete re-write !

And yeah, plan to add a command to make one, as it'd be such a pain to script.
 
Urgh, the values change every time you visit the page! That's a nightmare! What possible benefit is there to doing that or is it just to mess with scripters?

(Edit - I'd guess it was actually there to stop us learning what all the options were, and stop us brute forcing ones others had discovered. But then it was decided to show them all to make it more user friendly)

The values changing doesn't actually matter. You can use old values and they work just fine (at least this has worked for me since last night).
 

Darzil

Developer
The values changing doesn't actually matter. You can use old values and they work just fine (at least this has worked for me since last night).
But would my values work for you! Given that it'd be much easier if we could use the same code for everyone!
 

Darzil

Developer
So, r18929 is a bit of rewrite. Some spading still needed for the locations and discovery text (marked "TBC").

Bound to be a few errors in there.

Future plans:
Track unlocks (using locations LATTE[LOCATION], text LATTE[DISCOVER]) and parsing Latte choice.
Creation command (using 3 x LATTE[INGREDIENT] and parsing Latte choice).
Fill in the "TBC" entries once spaded.

Edit - Got a patch ready for unlocks, but have only tested parsing the choice as I'm overdrunk - should hit tomorrow.
Edit 2 - Not 100% sure that r18929 will handle duplicate modifiers correctly.
 
Last edited:

AlbinoRhino

Active member
Are the properties which were added actually functional yet? If not, then please disregard...

I finally got around to messing with this item today and the first thing I tried was the copy skill on a black widow spider. The browser showed success but the props are:

_latteBanishUsed
false
_latteCopyUsed
false
_latteDrinkUsed
false
_latteMonster

_latteRefillsUsed
0
latteModifier

I haven't actually filled it with anything yet, if that makes a difference.

Edit: Also, it appears that 'have_skill($skill[Offer Latte to Opponent])' is returning true even when the browser shows it as disabled.
 
Last edited:

AlbinoRhino

Active member
$skill[Throw Latte on Opponent] updated the props correctly. (including banishedMonsters).

have_skill() is returning true for it as well (in-combat when it is disabled).


Edit:
$skill[Gulp Latte] = same as above (correct prop update, have_skill() returns true in combat)


Edit:
latteModifier updated correctly on refill.
 
Last edited:

Darzil

Developer
Hopefully r18930 fixes the detection of Offer Latte.

have_skill() returning true for skills you have, but cannot currently use due to daily/other limits is absolutely normal.

It also adds unlock detection (latteUnlocks), fixes duplicate modifier handling and logs unlocks discovered whilst adventuring.
 

heeheehee

Developer
Staff member
LatteRequest:225 threw a NPE after a tentacle fight in the Science Tent, presumably because locationName is null.
 
Top