New Content - Implemented Feb 2016 IotM -- LT&T telegraph office deed

Darzil

Developer
Will also be needed to be handled in Evaluator when that is done, though that is pretty trivial (just 2/5 of the folder code). The nice thing about stuff like these where the item is destroyed when removed is we will never support suggesting changes in maximizer, which keeps it easy.
 

Bale

Minion
16695 recognizes modifiers for skin/spurs on your cowboy boots. For consistency, those maybe should be handled like stickers/folders, but they are not for now. Partly because I didn't want to dig into that code right now, and partly because the Customizable tab of Gear Changer will then be taller than the Equipment tab.

Is there any way for a script to detect what skin/spurs are in use? I see the name of my skins and spurs pop-up on a modtrace, but that is all I know about this.

Also, this should be added to the display of informatoin when ascending.
 

Ezandora

Member
r16696

Clicking the accept quest button in the LT&T choice adventure sometimes causes an NPE:
Code:
Unexpected error, debug log printed.
class java.lang.IllegalStateException: No match found
java.lang.IllegalStateException: No match found
	at java.util.regex.Matcher.group(Matcher.java:536)
	at net.sourceforge.kolmafia.session.ChoiceManager.preChoice(ChoiceManager.java:6666)
	at net.sourceforge.kolmafia.request.GenericRequest.execute(GenericRequest.java:1525)
	at net.sourceforge.kolmafia.request.GenericRequest.run(GenericRequest.java:1320)
	at net.sourceforge.kolmafia.request.RelayRequest.run(RelayRequest.java:3065)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:286)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:249)
	at net.sourceforge.kolmafia.webui.RelayAgent.readServerResponse(RelayAgent.java:567)
	at net.sourceforge.kolmafia.webui.RelayAgent.performRelay(RelayAgent.java:161)
	at net.sourceforge.kolmafia.webui.RelayAgent.run(RelayAgent.java:134)
The gift shop/leave choice buttons do not cause the NPE. Leaving the choice and going back to it fixes it.

I'm not sure what the conditions are. For me, it seems to be the very first time I try to accept a quest in an ascension. Though before that, I visit the choice adventure and chose the leave button, to get the cowboy boots.
 

Yendor

Member
New stuff in the store:
Code:
--------------------
LT&T Gift Shop	buy	15	Western Slang Vol. 1: Violence	ROW800
--------------------
--------------------
8920	Western Slang Vol. 1: Violence	789980361	book3.gif	usable	t	0
# Item Western Slang Vol. 1: Violence: Unlocks advanced Cow Puncher skills in the Avatar of West of Loathing Challenge Path
--------------------
--------------------
LT&T Gift Shop	buy	15	Western Slang Vol. 2: Cooking	ROW801
--------------------
--------------------
8921	Western Slang Vol. 2: Cooking	241402130	book3.gif	usable	t	0
# Item Western Slang Vol. 2: Cooking: Unlocks advanced Beanslinger skills in the Avatar of West of Loathing Challenge Path
--------------------
--------------------
LT&T Gift Shop	buy	15	Western Slang Vol. 3: Fraud	ROW802
--------------------
--------------------
8922	Western Slang Vol. 3: Fraud	966768407	book3.gif	usable	t	0
# Item Western Slang Vol. 3: Fraud: Unlocks advanced Snake Oiler skills in the Avatar of West of Loathing Challenge Path
--------------------
 

digitrev

Member
Can we get the cowboy boots customizations showing up on the ascension page, similar to how it works for the folder holder?
 

heeheehee

Developer
Staff member
r16696

Clicking the accept quest button in the LT&T choice adventure sometimes causes an NPE:
Code:
Unexpected error, debug log printed.
class java.lang.IllegalStateException: No match found
java.lang.IllegalStateException: No match found
	at java.util.regex.Matcher.group(Matcher.java:536)
	at net.sourceforge.kolmafia.session.ChoiceManager.preChoice(ChoiceManager.java:6666)
	at net.sourceforge.kolmafia.request.GenericRequest.execute(GenericRequest.java:1525)
	at net.sourceforge.kolmafia.request.GenericRequest.run(GenericRequest.java:1320)
	at net.sourceforge.kolmafia.request.RelayRequest.run(RelayRequest.java:3065)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:286)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:249)
	at net.sourceforge.kolmafia.webui.RelayAgent.readServerResponse(RelayAgent.java:567)
	at net.sourceforge.kolmafia.webui.RelayAgent.performRelay(RelayAgent.java:161)
	at net.sourceforge.kolmafia.webui.RelayAgent.run(RelayAgent.java:134)
The gift shop/leave choice buttons do not cause the NPE. Leaving the choice and going back to it fixes it.

I'm not sure what the conditions are. For me, it seems to be the very first time I try to accept a quest in an ascension. Though before that, I visit the choice adventure and chose the leave button, to get the cowboy boots.

I ran into this just now, and I've been doing quests pretty much every day. I've committed a quick fix for now, but I suspect the underlying problem is that the pattern just doesn't match in some cases. Looking into it.
 

heeheehee

Developer
Staff member
Code:
private static final Pattern TELEGRAM_PATTERN = Pattern.compile( "value=\"RE: (.*?)\\\"" );
I'm not sure why the backslash is escaped? It'd match
Code:
value="RE: whatever stuff\"
and lttQuestName isn't getting set properly. I'll test that change once I run through this quest.
 

heeheehee

Developer
Staff member
Code:
private static final Pattern TELEGRAM_PATTERN = Pattern.compile( "value=\"RE: (.*?)\\\"" );
I'm not sure why the backslash is escaped? It'd match
Code:
value="RE: whatever stuff\"
and lttQuestName isn't getting set properly. I'll test that change once I run through this quest.

Should be fixed in r16702, I think. I'm not sure why Pattern.matches was causing it to skip that block entirely, unless that counts as an invocation of Pattern.find.
 

Terion

Member
Just ran missingManuel after killing the former sherriff, and noticed this in the output between F and G:

Manuel says that 'Former Sheriff Dan Driscoll' (1922) scales, but KoLmafia doesn't

r16710
 

Ezandora

Member
Should be fixed in r16702, I think. I'm not sure why Pattern.matches was causing it to skip that block entirely, unless that counts as an invocation of Pattern.find.

Seems to still be in effect as of r16727:
Code:
class java.lang.IllegalStateException: No match found
java.lang.IllegalStateException: No match found
	at java.util.regex.Matcher.group(Matcher.java:536)
	at net.sourceforge.kolmafia.session.ChoiceManager.preChoice(ChoiceManager.java:6666)
	at net.sourceforge.kolmafia.request.GenericRequest.execute(GenericRequest.java:1525)
	at net.sourceforge.kolmafia.request.GenericRequest.run(GenericRequest.java:1320)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:286)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:249)
	at net.sourceforge.kolmafia.textui.RuntimeLibrary.visit_url(RuntimeLibrary.java:2273)
	at net.sourceforge.kolmafia.textui.RuntimeLibrary.visit_url(RuntimeLibrary.java:2225)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at net.sourceforge.kolmafia.textui.parsetree.LibraryFunction.execute(LibraryFunction.java:106)
	at net.sourceforge.kolmafia.textui.parsetree.FunctionCall.execute(FunctionCall.java:154)
	at net.sourceforge.kolmafia.textui.parsetree.BasicScope.execute(BasicScope.java:435)
	at net.sourceforge.kolmafia.textui.Interpreter.executeScope(Interpreter.java:377)
	at net.sourceforge.kolmafia.textui.Interpreter.execute(Interpreter.java:325)
	at net.sourceforge.kolmafia.textui.Interpreter.execute(Interpreter.java:318)
	at net.sourceforge.kolmafia.textui.command.AshSingleLineCommand.run(AshSingleLineCommand.java:73)
	at net.sourceforge.kolmafia.KoLmafiaCLI.doExecuteCommand(KoLmafiaCLI.java:596)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeCommand(KoLmafiaCLI.java:549)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:450)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:318)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.handleQueue(CommandDisplayFrame.java:187)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.run(CommandDisplayFrame.java:163)

I do have one way to replicate it. Run this code when you're able to start a new LT&T quest:

Code:
ashq visit_url("place.php?whichplace=town_right&action=townright_ltt"); visit_url("main.php"); visit_url("choice.php?whichchoice=1171&option=3");
 

heeheehee

Developer
Staff member
The underlying issue seems to be that ChoiceManager.lastResponseText is getting set to the intermediate main.php responseText.

If I'm not mistaken, this is a consequence of this block in GenericRequest:
Code:
if ( ChoiceManager.handlingChoice && !this.isChatRequest && !this.isDescRequest )
{
	// Handle choices BEFORE result processing
	ChoiceManager.postChoice1( this );
}

Maybe that should be amended to also check urlString.startsWith( "choice.php" ).
 

Terion

Member
As of r16748:

Manuel says that 'Clara' (1924) scales, but KoLmafia doesn't
Manuel says that 'Former Sheriff Dan Driscoll' (1922) scales, but KoLmafia doesn't
Manuel says that 'Granny Hackleton' (1925) scales, but KoLmafia doesn't

I haven't yet fought (and added to Manuel) Pharaoh Cowtep, the unusual construct, or Snake-Eyes Glenn; all other LT&T monsters should be properly listed.
 

Darzil

Developer
Added some scaling data, and now floors on scaling monsters can be expressions.

Some spading needed : (I only have one character with LT&T, so slow to spade)
Is cap 11111 on all three tiers of normal monsters? (floor is 60/120/180, scale is 5/25/50)
What is cap on tier 2 bosses?
Does Dan scale at stats + 30 and floor 300 as the other two tier 2 bosses?
What is cap and floor on tier 3 bosses?
Does Granny scale at stats + 60 as the other two tier 3 bosses?
 

Darzil

Developer
Haven't spaded all of them, but as they are consistent, am assuming that remains the case.

Tier 2 bosses = Scale to stats + 30, Cap 5000, Floor 300
Tier 3 bosses = Scale to stats + 60, Cap 9000, Floor 500

r16765
 

Veracity

Developer
Staff member
To be fair, when I added that, I simply set it when you read the "charter" (so to speak), since I was not aware that there was a today-only option. We should probably have preferences to handle it like we do the elemental charters. Which I am not familiar with, since I have owned every charter since the day it was released.
 
Top