New Content - Implemented West of Loathing - 2016 Spring Challenge!

Veracity

Developer
Staff member
Unsurprisingly, KoL had an extra space in the name of that item. Revision 16808 tries to work around the bug. Untested.
 

Bale

Minion
The only remaining issue that I am aware of is Long Con.


Several things:
  • Track uses with a preference. Long Con, can only be used 5 times a day. Once it has been used 5 times in a day, the skill no longer appears as an option in combat.
  • It should be used in place of Transcendant Olfaction when the autoOlfact preference is set.
  • Have it effect appearance rates the same way that Transcendant Olfaction effects them.

Is there anything else to do?
 
Track <Long Con> uses with a preference.

$skill[Long Con].timescast has worked fine for me so far, I'm not sure if anything could cause that to get out of sync.

It would still be good to track successful uses of Extract Oil (and possibly track extractions of each oil type individually)
 

Darzil

Developer
Does long con stack with olfaction if you use both on a monster? I am guessing number of copies does but queue rejection effects are either not both.
 

Darzil

Developer
Also, I guess unlike Olfaction, Long Con effects vanish at rollover.

Edit - According to wiki, this isn't the case.
 
Last edited:

Darzil

Developer
r16812:
Track Long Con (monster in longConMonster, count in _longConUsed) - assumes no reset at rollover, +3 copies and ignore queue with Olfaction OR Long Con active.
Beanweaver increases Bean Can offhand enchantments.
Premium Beans can also be Plated.
Consider restrictions on AWOL combat skills for macros and skip them if restriction not met.
Mostly untested.
 

Darzil

Developer
The only remaining issue that I am aware of is Long Con.
  • It should be used in place of Transcendant Olfaction when the autoOlfact preference is set.
I'm not 100% sure on this one. We don't do this with any of the other psuedo-olfaction skills, I get the feeling we should do it with all or neither. There is also the question of handling it in the situation where we have both Long Con and Olfaction. What should be the design? (disclaimer - I never use this feature)
 

Veracity

Developer
Staff member
Hard to understand that.

From my DEBUG log prior to the revision:

Code:
Processing results...
Unrecognized item found: Tales of the West:  Cow Punching
You acquire an item: Tales of the West:  Cow Punching
Processing result: Tales of the West:  Cow Punching
You acquire an item: Tales of the West: Beanslinging
Processing result: Tales of the West: Beanslinging
You acquire an item: Tales of the West: Snake Oiling
Processing result: Tales of the West: Snake Oiling
You acquire an item: one-gallon hat
Processing result: one-gallon hat
You acquire an item: toy sixgun
Processing result: toy sixgun
You acquire an item: briefcase full of snakes
Processing result: briefcase full of snakes
You learned a new skill: Shoot
Using the saved HTML after the revision:

Code:
[color=green]> test load cp.html[/color]

Read 10,415 bytes into a 10,415 character string

[color=green]> test result[/color]

Processing results...
You acquire an item: Tales of the West: Cow Punching
Processing result: Tales of the West: Cow Punching
You acquire an item: Tales of the West: Beanslinging
Processing result: Tales of the West: Beanslinging
You acquire an item: Tales of the West: Snake Oiling
Processing result: Tales of the West: Snake Oiling
You acquire an item: one-gallon hat
Processing result: one-gallon hat
You acquire an item: toy sixgun
Processing result: toy sixgun
You acquire an item: briefcase full of snakes
Processing result: briefcase full of snakes
returned false
In other words, it really did recognize the item it found. I guess I'll look harder at use links...
 

Veracity

Developer
Staff member
Yeah, OK. UseLinkDecorator needs the same Item Name munging as ResultProcessor.
Try revision 16820.
 
This is a bit picky, but when ascending, the CLI gives me the slightly inaccurate message:

Ascend as a Hardcore Female Seal Clubber under the Wallaby sign on an Avatar of West of Loathing path, banking 5 Karma.

(... I'm not 100% sure whether this is vanilla mafia behavior or newlife.ash but I don't think ascension scripts happen until later?)
 

Veracity

Developer
Staff member
I noticed this too. The thing is, you don't get the option of choosing your class in Valhalla, so KoL apparently submits the "default" class, even though you will choose your real class in the choice adventure after you land in the Kingdom again.

We probably should not bother logging the class if you ascend into AWOL.
 

Darzil

Developer
Yeah, OK. UseLinkDecorator needs the same Item Name munging as ResultProcessor.
Try revision 16820.
I did get use links, but they didn't seem to work for me. Only difference I saw from the links on the inventory page was ajax=1.
Will look again and get a debug log when I ascend later if I remember.
 

Darzil

Developer
HTML of marked up page body:
Code:
<body onkeyup="handleCombatHotkey(event,false);" onkeydown="handleCombatHotkey(event,true);" ><div id="page"><div id="mafiabuttons"><center><table width="95%"><tr><td align=left><div id="btnwrap"><input type="button" onClick="document.location.href='main.php';void(0);" value="again" id="defaultButton" disabled> </div></td><td align=right valign=top><select id="hotkeyViewer" onchange="updateCombatHotkey();"><option>- update hotkeys -</option><option>0: </option><option>1: </option><option>2: </option><option>3: </option><option>4: </option><option>5: </option><option>6: </option><option>7: </option><option>8: </option><option>9: </option></select></td></tr></table></center></div><div class='content' id='content_'><div id='effdiv' style='display: none;'></div><div>
<Center><div id="results"><table  width=95%  cellspacing=0 cellpadding=0><tr><td style="color: white;" align=center bgcolor=blue><b>Results:</b></td></tr><tr><td style="padding: 5px; border: 1px solid blue;"><center><table><tr><td><span class='guts'>Congratulations, you're a Cow Puncher!  You gather up your belongings and get ready for adventure!<center><table class="item" style="float: none" rel="id=8955&s=0&q=1&d=0&g=0&t=0&n=1&m=0&p=0&u=u"><tr><td><img src="/images/itemimages/book3.gif" alt="Tales of the West:  Cow Punching" title="Tales of the West:  Cow Punching" class=hand onClick='descitem(220432527)'></td><td valign=center class=effect>You acquire an item: <b>Tales of the West:  Cow Punching</b> <font size=1>[<a href="javascript:singleUse('inv_use.php','which=3&whichitem=8955&pwd=1500141a47d828176bce670e89f20bd1&ajax=1');void(0);">use</a>]</font></td></tr></table></center>(You have some memories of being a Beanslinger, too.)<center><table class="item" style="float: none" rel="id=8956&s=0&q=1&d=0&g=0&t=0&n=1&m=0&p=0&u=u"><tr><td><img src="/images/itemimages/book4.gif" alt="Tales of the West: Beanslinging" title="Tales of the West: Beanslinging" class=hand onClick='descitem(798701830)'></td><td valign=center class=effect>You acquire an item: <b>Tales of the West: Beanslinging</b> <font size=1>[<a href="javascript:singleUse('inv_use.php','which=3&whichitem=8956&pwd=1500141a47d828176bce670e89f20bd1&ajax=1');void(0);">use</a>]</font></td></tr></table></center>(You have some memories of being a Snake Oiler, too.)<center><table class="item" style="float: none" rel="id=8957&s=0&q=1&d=0&g=0&t=0&n=1&m=0&p=0&u=u"><tr><td><img src="/images/itemimages/book5.gif" alt="Tales of the West: Snake Oiling" title="Tales of the West: Snake Oiling" class=hand onClick='descitem(965929241)'></td><td valign=center class=effect>You acquire an item: <b>Tales of the West: Snake Oiling</b> <font size=1>[<a href="javascript:singleUse('inv_use.php','which=3&whichitem=8957&pwd=1500141a47d828176bce670e89f20bd1&ajax=1');void(0);">use</a>]</font></td></tr></table></center><center><table class="item" style="float: none" rel="id=8959&s=0&q=1&d=0&g=0&t=0&n=1&m=0&p=0&u=q"><tr><td><img src="/images/itemimages/cowboyhat.gif" alt="one-gallon hat" title="one-gallon hat" class=hand onClick='descitem(833660429)'></td><td valign=center class=effect>You acquire an item: <b>one-gallon hat</b> <font size=1>[<a href="javascript:singleUse('inv_equip.php','which=2&action=equip&whichitem=8959&pwd=1500141a47d828176bce670e89f20bd1&ajax=1');void(0);">equip</a>]</font></td></tr></table></center><center><table class="item" style="float: none" rel="id=8970&s=0&q=0&d=0&g=0&t=0&n=1&m=0&p=0&u=."><tr><td><img src="/images/itemimages/sixgun0.gif" alt="toy sixgun" title="toy sixgun" class=hand onClick='descitem(854153791)'></td><td valign=center class=effect>You acquire an item: <b>toy sixgun</b></td></tr></table></center><center><table class="item" style="float: none" rel="id=8958&s=0&q=1&d=0&g=0&t=0&n=1&m=0&p=0&u=."><tr><td><img src="/images/itemimages/briefcase.gif" alt="briefcase full of snakes" title="briefcase full of snakes" class=hand onClick='descitem(153699809)'></td><td valign=center class=effect>You acquire an item: <b>briefcase full of snakes</b></td></tr></table></center><table><tr><td valign=center>You acquire a skill:  </td><td><img src="/images/itemimages/sixgun0.gif" onClick='javascript:poop("desc_skill.php?whichskill=156&self=true","skill", 350, 300)' width=30 height=30></td><td><b><a onClick='javascript:poop("desc_skill.php?whichskill=156&self=true","skill", 350, 300)'>Shoot</a></b></td></tr></table></span></td></tr></table></center></td></tr><tr><td height=4></td></tr></table></div><table  width=95%  cellspacing=0 cellpadding=0><tr><td style="color: white;" align=center bgcolor=blue><b>Adventure Again:</b></td></tr><tr><td style="padding: 5px; border: 1px solid blue;"><center><table><tr><td><center><a href="main.php">Go back to the Main Map</a></center></center></td></tr></table></center></td></tr><tr><td height=4></td></tr></table></center><script>top.charpane.location.href="charpane.php";</script>
</div></div></div></body>

Debug log when you click on the link:
Code:
-----From Browser-----
GET /inv_use.php?which=3&whichitem=8957&pwd=1500141a47d828176bce670e89f20bd1&ajax=1 HTTP/1.1
Host: 127.0.0.1:60080
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36
Accept: */*
DNT: 1
Referer: http://127.0.0.1:60080/choice.php
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Cookie: chatpwd=230; charpwd=271
----------
class net.sourceforge.kolmafia.request.RelayRequest
Connecting to inv_use.php...

Requesting: http://www.kingdomofloathing.com/inv_use.php?which=3&whichitem=8957&pwd&ajax=1
2 request properties
Field: Cookie = [chatpwd=230; charpwd=271; appserver=www8; PHPSESSID=4e8a4i1gq493s0d6shvgjfh9a1]
Field: User-Agent = [KoLmafia v17.2]

Retrieving server reply...

Retrieved: http://www.kingdomofloathing.com/inv_use.php?which=3&whichitem=8957&pwd&ajax=1
10 header fields
Field: null = [HTTP/1.1 200 OK]
Field: Date = [Tue, 29 Mar 2016 13:43:02 GMT]
Field: Content-Length = [100]
Field: Expires = [Thu, 19 Nov 1981 08:52:00 GMT]
Field: Connection = [keep-alive]
Field: Content-Type = [text/html; charset=UTF-8]
Field: X-Powered-By = [PHP/5.3.3]
Field: Server = [nginx/1.0.15]
Field: Pragma = [no-cache]
Field: Cache-Control = [no-store, no-cache, must-revalidate, post-check=0, pre-check=0]

Retrieving server reply
ResponseText has 100 characters.
<script type="text/javascript">top.mainpane.document.location = "choice.php?forceoption=0";</script>
-----To Browser-----
HTTP/1.1 200 OK
Date: Tue, 29 Mar 2016 13:43:02 GMT
Expires: Thu, 19 Nov 1981 08:52:00 GMT
X-Powered-By: PHP/5.3.3
Server: nginx/1.0.15
Content-Type: text/html; charset=UTF-8
Content-Length: 100
Cache-Control: no-cache, must-revalidate
Pragma: no-cache
<script type="text/javascript">top.mainpane.document.location = "choice.php?forceoption=0";</script>
----------
-----From Browser-----
GET /newchatmessages.php?lasttime=1421002683&afk=0 HTTP/1.1
Host: 127.0.0.1:60080
Connection: keep-alive
Accept: */*
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36
DNT: 1
Referer: http://127.0.0.1:60080/lchat.php
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Cookie: chatpwd=230; charpwd=271
----------
 

Veracity

Developer
Staff member
OK, it is another "use item redirects to a choice" thing, like the Orcish Frat House blueprints or the rusty hedge trimmers. Those can't be ajaxed. I'll fix it.
 

Veracity

Developer
Staff member
Revision 16825 does that.

I continue to not actually see the point, since if all three books have use links, once you take one of them, the other two are gone. Instead, the charpane, which has use links to any and all of the learnin' books that are currently available to you, seems like the obvious way to access them.

But, may as well be consistent; they are "usable", so we will decorate them with functional use links...
 
Top