New Content - Implemented August 2015 Item of the Month: airplane charter: That 70's Volcano

Bale

Minion
Could you add a _preference that informs if I have gotten my daily choice from the The Towering Inferno Discotheque, please?
 

Darzil

Developer
Looks like when removing items after handing in, we are removing 1 every time, rather than the number required. (eg New Age healing crystal (5))

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='choice.php?action=auto';void(0);" value="auto" id="defaultButton"> </div></td></tr></table></center></div><div class='content' id='content_'><div id='effdiv' style='display: none;'></div><div>
<Center><table  width=95%  cellspacing=0 cellpadding=0><tr><td style="color: white;" align=center bgcolor=blue><b>The WLF Bunker</b></td></tr><tr><td style="padding: 5px; border: 1px solid blue;"><center><table><tr><td>The inside of the bunker is sparsely furnished -- mostly with some little piles of ashes that you can only assume used to be some chairs and a table.<p>A speaker crackles to life: "Do your part to smash the system!"<p>"How do I..." you respond, but -- "Don't interrupt me!" the voice snaps.  "Today's operations are posted on the wall next to the door."<p>You turn around, and sure enough:<center><Table style='border: 1px solid black'><tr><td align=center colspan=3><b>Today's Operations:</b></td></tr><form action=choice.php><tr><td valign=center><b>Overthrow Mine Boss</b>   </td><td valign=center>proof: <img style='vertical-align: middle' class=hand src='/images/itemimages/goodbone.gif' onclick='descitem(792762825)' alt="Mr. Choch's bone" title="Mr. Choch's bone">Mr. Choch's bone </td><td valign=center><input type=hidden name=whichchoice value=1093><input type=hidden name=pwd value=e96427e75f989827cad8118c7ab7b0a3><input type=hidden name=option value=1><input type=submit class=button value='Turn In!'></td></form><form action=choice.php><tr><td valign=center><b>Acquire Medical Supplies</b>   </td><td valign=center>proof: <img style='vertical-align: middle' class=hand src='/images/itemimages/nacrystal1.gif' onclick='descitem(444874241)' alt="New Age healing crystal" title="New Age healing crystal">New Age healing crystal (5)</td><td valign=center><input type=hidden name=whichchoice value=1093><input type=hidden name=pwd value=e96427e75f989827cad8118c7ab7b0a3><input type=hidden name=option value=2><input type=submit class=button value='Turn In!'></td></form><form action=choice.php><tr><td valign=center><b>Priority Target: Freshly</b>   </td><td valign=center>proof: <img style='vertical-align: middle' class=hand src='/images/itemimages/deuce.gif' onclick='descitem(950990588)' alt="signed deuce" title="signed deuce">signed deuce </td><td valign=center><input type=hidden name=whichchoice value=1093><input type=hidden name=pwd value=e96427e75f989827cad8118c7ab7b0a3><input type=hidden name=option value=3><input type=submit class=button value='Turn In!'></td></form></table><P><center><a href=place.php?whichplace=airport_hot>Back to That 70s Volcano</a></center></td></tr></table></center></td></tr><tr><td height=4></td></tr></table><script>top.charpane.location.href="charpane.php";</script>
</div></div></div></body>
 

Veracity

Developer
Staff member
I suppose we could parse descid and count and save the latter in, say, _VolcanoItemCount1 etc. That is probably better than what revision 16147 does, which is to hard-code the required count for the 3 (that the Wiki knows of) bounties that require multiple.

Hmm. Let me think about this some more.
 

Veracity

Developer
Staff member
Code:
> prefref _volcano

Name                 Value    Default    Scope
_volcanoItem1          0         0        user
_volcanoItem2          0         0        user
_volcanoItem3          0         0        user
_volcanoItemCount1     0         0        user
_volcanoItemCount2     0         0        user
_volcanoItemCount3     0         0        user
_volcanoItemRedeemed  true     false      user

> test load wlf.html

Read 3,097 bytes into a 3,097 character string

> test visit-choice

choice = 1093

> prefref _volcano

Name                 Value    Default    Scope
_volcanoItem1        8497        0        user
_volcanoItem2        8425        0        user
_volcanoItem3        8503        0        user
_volcanoItemCount1     1         0        user
_volcanoItemCount2     5         0        user
_volcanoItemCount3     1         0        user
_volcanoItemRedeemed false     false      user
It's doable. What's extra cute about that is that the indices - 1, 2, and 3 - are not hardcoded; they are taken from the choice form that is submitted when you select the particular bounty ("proof") to turn in.

Revision 16148. Untested in the wild, although, as you can see, I tested it against your saved HTML.
 

ungawa

Member
It looks like mining "1,970 carat gold" (19,700 meat autosell) in the volcano is high enough meat/adventure to potentially warrant some additional mafia support. I have averaged 3520 meat per adventure (after costs) over the last 468 adventures, and since this farming doesn't require any perms or IotM other than Volcano access, it seems it may be optimal farming for low skill accounts.

Request 1: Count and show the number of Promising Chunks of Wall (sparkles) somewhere in the relay browser
Mines will contain either 1 or 2 pieces of "1,970 carat gold", while the number of the other items that sparkle is fixed. This means that with Object Detection running, it is possible to tell if the mine has 1 or 2 gold at the start.
It is better to "skip" the 1 gold mines (where skipping means spending 1 turn mining to activate the button that lets you search for a new mine), so having mafia count the sparkles would save the user from having to count them more than 100 times on a full days worth of turns.
Mines with 1 gold will have 14 sparkles, mines with 2 gold will have 15 sparkles.

Request 2: Automation to search for a new mine until you find a mine with 2 gold.
This would involve mining one square from the bottom row and then going to find a new mine until you found a mine with 15 Promising Chunks of Wall. Spading suggests about 1 in 4 mines has 2 gold, while the rest only have 1 gold. In my 468 turns so far, this has let to a handful of longer streaks of mines with 1 gold.

Request 3: Automated intelligent gold mining
Heh, doesn't hurt to ask right?
I'm guessing this is beyond the scope of a mafia native feature, and I've started looking at modifying bombar's crimbonium mining script, but the logic puzzle to optimize gold mining is trickier.

Here are some volcano mine basics in case anyone feels like tackling it:
Every volcano mine has the following Promising Chunks of Wall:
6 unsmoothed velvet, always contiguous, never in the bottom 2 rows
1-2 "1,970 carat gold", always contiguous, never in the bottom 2 rows
3 New Age healing crystal, not necessarily contiguous
4 cave-ins, not necessarily contiguous

Spading suggests 1 in 4 mines have 2 gold. This means it's better to spend 3 turns on average looking for 2 gold mines than to mine the 1 gold mines.
Mining requires the 2 handed "high-temperature mining drill", which prevents the use of the Dwarvish War Uniform for revealing sparkles, so potion of Object Detection is a must.
Mining also requires 15 hot resist, and mining equipment should include at least one piece of HP regen gear to allow continued adventuring after cave ins.
 

Veracity

Developer
Staff member
Request 1 seems plausible for all mining - simply counting visible sparkles is something a computer is good at. Displaying that in the Relay Browser turns the mine page into a click-nope experience, for those who are specifically looking for 2-gold mines, but doesn't affect anybody else, except by adding a little bit of clutter to the page.

Request 2 and 3 sound like something a mining script would do. We don't currently build-in ANY automated mining.
 

heeheehee

Developer
Staff member
From personal experience, the main thing that bothered me about the mine was that caveins aren't logged, since "An inexpert swing" isn't part of the response text (heck, it wasn't part of the response text last Crimbo, either). Would there be any issues if instead we looked for hp.gif in the Results box?
 

PeKaJe

Member
There's a new (presumably) non-permable combat skill from having Burning Tongue active. "Spit Fireballs", skill #7253, 0 MP once/combat.
 

PeKaJe

Member
I wouldn't say that's important, but being able to put it in a CCS and having mafia log it correctly is. For that it needs a line in classskills.txt
 

lostcalpolydude

Developer
Staff member
Code:
void main()
{
	buffer page = visit_url();
	int spot = 0;
	int twcount = -1;
	while ( spot > -1 )
	{
		spot = page.index_of( "wallsparkle", spot + 1 );
		twcount += 1;
	}

	insert( page, page.index_of( "<a href='place.php" ), twcount + " sparkles<br />" );
	write( page );
}
Save that as mining.ash in your relay folder to get the sparkle count. I doubt this will be useful long term.
 
Last edited:

ungawa

Member
Save that as mining.ash in your relay folder to get the sparkle count. I doubt this will be useful long term.

Thanks lost, worked like a charm today.

I have read through bombar's crimbonium mining script, and it should be fairly readily adapted to gold mining, but the logic is trickier. In that mine, the only sparkles were cave-ins and crimbonium. I might give it a shot if we make it through this week without further nerfs.
 

PeKaJe

Member
The multiuse recipe for "smooth velvet bra" (3 unsmoothed velvet) seems to be missing from concoctions.txt.
 

Veracity

Developer
Staff member
I finally fixed that (and similar) plural(s) a few days ago. Is there anything else we are missing here?
 
Top