Bug - Fixed Something's gone mad in the Madness Bakery

Bale

Minion
Code:
Request 4 of 50 (Town: Madness Bakery) in progress...

[1881] Madness Bakery
Encounter: Heart of Madness
[COLOR="#FF0000"]Manual control requested for choice #1061[/COLOR]
choice 2: Check out the bagel machine (bagel machine)
choice 3: Check out the popular machine (popular machine)
choice 4: Dig through the recipe books (learn recipe)
choice 5: Take a deep breath and embrace the madness (gain mysticality stats)
[COLOR="#FF0000"][U]Click here to continue in the relay browser.[/U][/COLOR]


> get choiceAdventure1061

3

As you see, mafia has been aborting for choice adventure 1061 despite the fact that choice 3 was in my settings. None of my other choice options have been broken. In the choice adventure settings for the Right Side of the Tracks it says, "Madness Bakery: popular machine"


For what it is worth, here's the HTML of the page:

HTML:
<html><head>
<script language=Javascript>
<!--
if (parent.frames.length == -1) location.href="game.php";
top.charpane.location.href="charpane.php";
//-->
</script>
<script language=Javascript src="/images/scripts/jquery-1.5.1.js"></script>
<script language=Javascript src="/images/scripts/keybinds.min.2.js"></script>
<script language=Javascript src="/images/scripts/window.20111231.js"></script>
<script language="javascript">function chatFocus(){if(top.chatpane.document.chatform.graf) top.chatpane.document.chatform.graf.focus();}
if (typeof defaultBind != 'undefined') { defaultBind(47, 2, chatFocus); defaultBind(190, 2, chatFocus);defaultBind(191, 2, chatFocus); defaultBind(47, 8, chatFocus);defaultBind(190, 8, chatFocus); defaultBind(191, 8, chatFocus); }</script><script>
function switchFocus()
{
	if (top.chatpane.document.chatform.graf.focus) 
		top.chatpane.document.chatform.graf.focus(); 
	return false;
}
function repeat()
{
	var linx = document.getElementsByTagName("A");
	for (var i = 0; i < linx.length; i++)
	{
		if (typeof timersfunc != 'undefined') {
			if (!timersfunc()) { 
				return; 
			}
			timersfunc = null;
		}
		var link = linx[i];
		if (link.innerHTML.match(/Adventure Again/) || link.innerHTML.match(/Do it again/))
			location.href = link.href;
	}
}

defaultBind(47, CTRL, switchFocus);
defaultBind(191, CTRL, switchFocus);
defaultBind(47, META, switchFocus);
defaultBind(191, META, switchFocus);
defaultBind(192, NONE, repeat);
defaultBind(220, NONE, repeat);
</script><script language="javascript">
	function updateParseItem(iid, field, info) {
		var tbl = $('#ic'+iid);
		var data = parseItem(tbl);
		if (!data) return;
		data[field] = info;
		var out = [];
		for (i in data) {
			if (!data.hasOwnProperty(i)) continue;
			out.push(i+'='+data[i]);
		}
		tbl.attr('rel', out.join('&'));
	}
	function parseItem(tbl) {
		tbl = $(tbl);
		var rel = tbl.attr('rel');
		var data = {};
		if (!rel) return data;
		var parts = rel.split('&');
		for (i in parts) {
			if (!parts.hasOwnProperty(i)) continue;
			var kv = parts[i].split('=');
			tbl.data(kv[0], kv[1]);
			data[kv[0]] = kv[1];
		}
		return data;
	}
</script><script type="text/javascript" src="/images/scripts/pop_query.20130705.js"></script>
<script type="text/javascript" src="/images/scripts/ircm.20150220.js"></script>
<script type="text/javascript">
function pop_ircm_contents(i, some) {
	var contents = '',
		shown = 0,
		da = ' <a href="#" rel="?" class="small dojaxy">[some]</a> <a href="#" rel="',
		db = '" class="small dojaxy">[all]</a>',
		dc = '<div style="width:100%; padding-bottom: 3px;" rel="',
		dd = '<a href="#" rel="1" class="small dojaxy">[';
	one = 'one'; ss=some;
if (i.d==1 && i.s>0) { shown++; 
contents += dc + 'sellstuff.php?action=sell&ajax=1&type=quant&whichitem%5B%5D=IID&howmany=NUM&pwd=9122f34a19bfc3010daaadcbc2761c09" id="pircm_'+i.id+'"><b>Auto-Sell ('+i.s+' meat):</b> '+dd+one+']</a>';
if (ss) { contents += da + i.n + db;}
contents += '</div>';
}
one = 'one'; ss=some;
if (i.q==0) { shown++; 
contents += dc + 'inventory.php?action=closetpush&ajax=1&whichitem=IID&qty=NUM&pwd=9122f34a19bfc3010daaadcbc2761c09" id="pircm_'+i.id+'"><b>Closet:</b> '+dd+one+']</a>';
if (ss) { contents += da + i.n + db;}
contents += '</div>';
}
one = 'one'; ss=some;
if (i.q==0 && i.g==0 && i.t==1) { shown++; 
contents += dc + 'managestore.php?action=additem&qty1=NUM&item1=IID&price1=&limit1=&ajax=1&pwd=9122f34a19bfc3010daaadcbc2761c09" id="pircm_'+i.id+'"><b>Stock in Mall:</b> '+dd+one+']</a>';
if (ss) { contents += da + i.n + db;}
contents += '</div>';
}
one = 'one'; ss=some;
if (i.q==0) { shown++; 
contents += dc + 'managecollection.php?action=put&ajax=1&whichitem1=IID&howmany1=NUM&pwd=9122f34a19bfc3010daaadcbc2761c09" id="pircm_'+i.id+'"><b>Add to Display Case:</b> '+dd+one+']</a>';
if (ss) { contents += da + i.n + db;}
contents += '</div>';
}

	return [contents, shown];
}
var todo = [];
function nextAction() {
	var next_todo = todo.shift();
	if (next_todo) {
		eval(next_todo);
	}
}
function dojax(dourl, afterFunc, hoverCaller, failureFunc, method, params) {
	$.ajax({
		type: method || 'GET', url: dourl, cache: false,
		data: params || null,
		global: false,
		success: function (out) {
			nextAction();
			if (out.match(/no\|/)) {
				var parts = out.split(/\|/);
				if (failureFunc) failureFunc(parts[1]);
				else if (window.dojaxFailure) window.dojaxFailure(parts[1]);
				else if (top.chatpane.handleMessage) top.chatpane.handleMessage({type: 'event', msg: 'Oops!  Sorry, Dave, you appear to be ' + parts[1]});
				else  $('#ChatWindow').append('<font color="green">Oops!  Sorry, Dave, you appear to be ' + parts[1] + '.</font><br />' + "\n");
				return;
			}

			if (hoverCaller)  {
				float_results(hoverCaller, out);
				if (afterFunc) { afterFunc(out); }
				return;
			}
$(top.mainpane.document).find("#effdiv").remove(); if(!window.dontscroll || (window.dontscroll && dontscroll==0)) { window.scroll(0,0);}
			var $eff = $(top.mainpane.document).find('#effdiv');
			if ($eff.length == 0) {
				var d = top.mainpane.document.createElement('DIV');
				d.id = 'effdiv';
				var b = top.mainpane.document.body;
				if ($('#content_').length > 0) {
					b = $('#content_ div:first')[0];
				}
				b.insertBefore(d, b.firstChild);
				$eff = $(d);
			}
			$eff.find('a[name="effdivtop"]').remove().end()
				.prepend('<a name="effdivtop"></a><center>' + out + '</center>').css('display','block');
			if (!window.dontscroll || (window.dontscroll && dontscroll==0)) {
				top.mainpane.document.location = top.mainpane.document.location + "#effdivtop";
			}
			if (afterFunc) { afterFunc(out); }
		}
	});
}
</script><script>

var currentkey = 49;
$(document).ready(function () {
	$('form').each(function () {
		var form = this;
		defaultBind(currentkey++, NONE, function () { form.submit(); });
		return currentkey < 58;
	});
});

</script>	<link rel="stylesheet" type="text/css" href="/images/styles.20151006.css">
<style type='text/css'>
.faded {
	zoom: 1;
	filter: alpha(opacity=35);
	opacity: 0.35;
	-khtml-opacity: 0.35; 
    -moz-opacity: 0.35;
}
</style>

<link rel='stylesheet' type='text/css' href='/images/actionbar.6.css'><!--[if IE]><link rel='stylesheet' type='text/css' href='/images/actionbar.ie.4.css'><![endif]--><script language="Javascript" src="/basics.js"></script><link rel="stylesheet" href="/basics.1.css" /></head>

<body><img src='/images/itemimages/blank.gif' id='dragged'><div id='debug'></div><div class=contextmenu id='skillmenu'></div><div class=contextmenu id='itemsmenu'></div><div id=topbar><center><table class=actionbar cellpadding=0 cellspacing=1><tbody><tr class=label><td> </td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr class=blueback><td><a href='choice.php?action=auto'><img src='/images/itemimages/plexpock.gif'></td><td class=spacer></td><td><img src='/images/itemimages/blank.gif' id='skills'></td><td class=spacer></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td><img src='/images/itemimages/blank.gif'></td><td class=spacer></td><td class=spacer></td><td><img src='/images/itemimages/blank.gif'></td></tr><tr class=label><td>auto</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tbody></table></center></div><div class='content' id='content_'><div id='effdiv' style='display: none;'></div><div style='overflow: auto;'>
<Center><centeR><!--faaaaaaart--><table  width=95%  cellspacing=0 cellpadding=0><tr><td style="color: white;" align=center bgcolor=blue><b>Heart of Madness</b></td></tr><tr><td style="padding: 5px; border: 1px solid blue;"><center><table><tr><td><center><img src="/images/adventureimages/spiral.gif" width=100 height=100></center><p>Sweat stands out on your brow.  You struggle to keep it together.  Strange colors intrude on the edges of your vision as you survey the scene.
<p>
Two complex-looking baking machines sit on a counter in the rear of the bakery.  One is labeled "Bagelmat-5000 Industrial Bagel Oven and Biomechanical Artificial Womb," though you might have imagined a few of those words.  The other just says "POPULAR" in glowing pink letters.
<p>
Behind the machines is a shelf strewn with people you went to high school with, all dressed as different books.  Or perhaps just... books.  It's hard to tell through all this snow.<center><form style='margin: 0px 0px 0px 0px;' name=choiceform2 action=choice.php method=post><input type=hidden name=pwd value='9122f34a19bfc3010daaadcbc2761c09'><input type=hidden name=whichchoice value=1061><input type=hidden name=option value=2><input  class=button type=submit value="Check out the bagel machine"><br><font size=-1>(bagel machine)</font></form><p><form style='margin: 0px 0px 0px 0px;' name=choiceform3 action=choice.php method=post><input type=hidden name=pwd value='9122f34a19bfc3010daaadcbc2761c09'><input type=hidden name=whichchoice value=1061><input type=hidden name=option value=3><input  class=button type=submit value="Check out the popular machine"><br><font size=-1>(popular machine)</font></form><p><form style='margin: 0px 0px 0px 0px;' name=choiceform4 action=choice.php method=post><input type=hidden name=pwd value='9122f34a19bfc3010daaadcbc2761c09'><input type=hidden name=whichchoice value=1061><input type=hidden name=option value=4><input  class=button type=submit value="Dig through the recipe books"><br><font size=-1>(learn recipe)</font></form><p><form style='margin: 0px 0px 0px 0px;' name=choiceform5 action=choice.php method=post><input type=hidden name=pwd value='9122f34a19bfc3010daaadcbc2761c09'><input type=hidden name=whichchoice value=1061><input type=hidden name=option value=5><input  class=button type=submit value="Take a deep breath and embrace the madness"><br><font size=-1>(gain mysticality stats)</font></form><p></center></td></tr></table></center></td></tr><tr><td height=4></td></tr></table></center><!--faaaaaaart--><script>top.charpane.location.href="charpane.php";</script>
</div></div></body><script src="/ircm_extend.js"></script><script src="/onfocus.1.js"></script></html>
 
Last edited:

Bale

Minion
I should probably mention that the following CLI command does work fine after mafia aborts operation:

Code:
[COLOR="#808000"]> choice 3[/COLOR]

Encounter: The Popular Machine
You acquire an item: popular tart
 

Darzil

Developer
I think it thinks that the armorer quest is not finished. Can you check the status of questM25Armorer ? And if not finished, can you get the quest text from the quest log ?
 
I think it thinks that the armorer quest is not finished. Can you check the status of questM25Armorer ? And if not finished, can you get the quest text from the quest log ?

I'm getting the same issue, and can confirm Armorer is finished. 1061 doesn't seem to be settable with any variation of choiceAdventure1061, choiceAdventure061, or choiceAdventure106, so it can't be a truncation issue.

> get questM25Armorer

finished
 

Bale

Minion
Did it again to confirm that settings have no changed in the mean time. (Since it is completed in the quest log and my previous attempt was in the same session as completing the quest..)

Code:
[2144] Madness Bakery
Encounter: Heart of Madness
[COLOR="#FF0000"]Manual control requested for choice #1061[/COLOR]
choice 2: Check out the bagel machine (bagel machine)
choice 3: Check out the popular machine (popular machine)
choice 4: Dig through the recipe books (learn recipe)
choice 5: Take a deep breath and embrace the madness (gain mysticality stats)
[COLOR="#FF0000"][U]Click here to continue in the relay browser.[/U][/COLOR]


[COLOR="#808000"]> get questM25Armorer[/COLOR]

finished

[COLOR="#808000"]> get popularTartUnlocked[/COLOR]

true


I'm getting the same issue, and can confirm Armorer is finished. 1061 doesn't seem to be settable with any variation of choiceAdventure1061, choiceAdventure061, or choiceAdventure106, so it can't be a truncation issue.

1061 is also set properly in the UI choice manager so mafia believes it is right.
 
Last edited:

Darzil

Developer
Only thing I did spot is that it wasn't using QuestDatabase.isQuestFinished( Quest.ARMORER ) for some reason, which it probably could. Won't be near somewhere I can test that til the weekend though.
 
Top