New Content - Implemented Shop revamp

When I played yesterday with r11994, I had no problem with acquiring AoJ consumables via gCLI & the Item Manager. Today, right before rollover, I got "Creation failed, no results detected." with both, so I logged out and downloaded r12000, but got the same. It was almost time for server maintenance, so I didn't get a chance to do much testing. After rollover, I tried every AoJ crafted consumable (I think), but everything fails…with the exception of the ingredients for the Ultimate Breakfast Sandwich that I had manually crafted (but ran out of time to finish before rollover). Despite having the ingredients, acquiring the Ultimate Breakfast Sandwich fails as well.

Here's my gCLI output for today:

Code:
> acquire acceptable vodka

Verifying ingredients for acceptable vodka (1)...
Creating 1 acceptable vodka...
Creation failed, no results detected.

> acquire adequate rum

Verifying ingredients for adequate rum (1)...
Creating 1 adequate rum...
Creation failed, no results detected.

> acquire consummate bacon

> acquire consummate bagel

> acquire consummate baked potato

Verifying ingredients for consummate baked potato (1)...
Creating 1 consummate baked potato...
Creation failed, no results detected.

> acquire consummate brownie

Verifying ingredients for consummate brownie (1)...
Creating 1 consummate brownie...
Creation failed, no results detected.

> acquire consummate cheese slice

> acquire consummate cold cuts

Verifying ingredients for consummate cold cuts (1)...
Creating 1 consummate cold cuts...
Creation failed, no results detected.

> acquire consummate corn chips

Verifying ingredients for consummate corn chips (1)...
Creating 1 consummate corn chips...
Creation failed, no results detected.

> acquire consummate egg salad

Verifying ingredients for consummate egg salad (1)...
Creating 1 consummate egg salad...
Creation failed, no results detected.

> acquire consummate frankfurter

Verifying ingredients for consummate frankfurter (1)...
Creating 1 consummate frankfurter...
Creation failed, no results detected.

> acquire consummate frankfurter

Verifying ingredients for consummate frankfurter (1)...
Creating 1 consummate frankfurter...
Creation failed, no results detected.

> acquire consummate fried egg

> acquire consummate hard-boiled egg

Verifying ingredients for consummate hard-boiled egg (1)...
Creating 1 consummate hard-boiled egg...
Creation failed, no results detected.

> acquire consummate hot dog bun

Verifying ingredients for consummate hot dog bun (1)...
Creating 1 consummate hot dog bun...
Creation failed, no results detected.

> acquire consummate ice cream

Verifying ingredients for consummate ice cream (1)...
Creating 1 consummate ice cream...
Creation failed, no results detected.

> acquire consummate meatloaf

Verifying ingredients for consummate meatloaf (1)...
Creating 1 consummate meatloaf...
Creation failed, no results detected.

> acquire consummate melted cheese

Verifying ingredients for consummate melted cheese (1)...
Creating 1 consummate melted cheese...
Creation failed, no results detected.

> acquire consummate salad

Verifying ingredients for consummate salad (1)...
Creating 1 consummate salad...
Creation failed, no results detected.

> acquire consummate salsa

Verifying ingredients for consummate salsa (1)...
Creating 1 consummate salsa...
Creation failed, no results detected.

> acquire consummate sauerkraut

Verifying ingredients for consummate sauerkraut (1)...
Creating 1 consummate sauerkraut...
Creation failed, no results detected.

> acquire consummate sliced bread

Verifying ingredients for consummate sliced bread (1)...
Creating 1 consummate sliced bread...
Creation failed, no results detected.

> acquire consummate sorbet

Verifying ingredients for consummate sorbet (1)...
Creating 1 consummate sorbet...
Creation failed, no results detected.

> acquire consummate soup

Verifying ingredients for consummate soup (1)...
Creating 1 consummate soup...
Creation failed, no results detected.

> acquire consummate sour cream

Verifying ingredients for consummate sour cream (1)...
Creating 1 consummate sour cream...
Creation failed, no results detected.

> acquire consummate steak

Verifying ingredients for consummate steak (1)...
Creating 1 consummate steak...
Creation failed, no results detected.

> acquire consummate strawberries

Verifying ingredients for consummate strawberries (1)...
Creating 1 consummate strawberries...
Creation failed, no results detected.

> acquire consummate toast

Verifying ingredients for consummate toast (1)...
Creating 1 consummate toast...
Creation failed, no results detected.

> acquire consummate whipped cream

Verifying ingredients for consummate whipped cream (1)...
Creating 1 consummate whipped cream...
Creation failed, no results detected.

> acquire passable stout

Verifying ingredients for passable stout (1)...
Creating 1 passable stout...
Creation failed, no results detected.

> acquire immaculate grilled cheese

Verifying ingredients for immaculate grilled cheese (1)...
Verifying ingredients for consummate toast (1)...
Creating 1 consummate toast...
Creation failed, no results detected.

> acquire immaculate ice cream sandwich

Verifying ingredients for immaculate ice cream sandwich (1)...
Verifying ingredients for consummate brownie (1)...
Creating 1 consummate brownie...
Creation failed, no results detected.

> acquire immaculate hot dog

Verifying ingredients for immaculate hot dog (1)...
Verifying ingredients for consummate hot dog bun (1)...
Creating 1 consummate hot dog bun...
Creation failed, no results detected.

> acquire immaculate egg salad sandwich

Verifying ingredients for immaculate egg salad sandwich (1)...
Verifying ingredients for consummate sliced bread (1)...
Creating 1 consummate sliced bread...
Creation failed, no results detected.

> acquire perfect sandwich

Verifying ingredients for perfect sandwich (1)...
Verifying ingredients for consummate sliced bread (1)...
Creating 1 consummate sliced bread...
Creation failed, no results detected.

> acquire perfect chef salad

Verifying ingredients for perfect chef salad (1)...
Verifying ingredients for consummate salad (1)...
Creating 1 consummate salad...
Creation failed, no results detected.

> acquire perfect breakfast

Verifying ingredients for perfect breakfast (1)...
Verifying ingredients for consummate toast (1)...
Creating 1 consummate toast...
Creation failed, no results detected.

> acquire sublime deluxe hot dog

Verifying ingredients for sublime deluxe hot dog (1)...
Verifying ingredients for consummate hot dog bun (1)...
Creating 1 consummate hot dog bun...
Creation failed, no results detected.

> acquire sublime stew

Verifying ingredients for sublime stew (1)...
Verifying ingredients for consummate soup (1)...
Creating 1 consummate soup...
Creation failed, no results detected.

> acquire sublime nachos

Verifying ingredients for sublime nachos (1)...
Verifying ingredients for consummate corn chips (1)...
Creating 1 consummate corn chips...
Creation failed, no results detected.

> acquire Ultimate Breakfast Sandwich

Verifying ingredients for Ultimate Breakfast Sandwich (1)...
Creating 1 Ultimate Breakfast Sandwich...
Creation failed, no results detected.

> acquire Loaded Baked Potato

Verifying ingredients for Loaded Baked Potato (1)...
Verifying ingredients for consummate baked potato (1)...
Creating 1 consummate baked potato...
Creation failed, no results detected.

> acquire Omega Sundae

Verifying ingredients for Omega Sundae (1)...
Verifying ingredients for consummate brownie (1)...
Creating 1 consummate brownie...
Creation failed, no results detected.

> acquire Das Sauerlager

Verifying ingredients for Das Sauerlager (1)...
Verifying ingredients for consummate sauerkraut (1)...
Creating 1 consummate sauerkraut...
Creation failed, no results detected.

> acquire Bologna Lambic

Verifying ingredients for Bologna Lambic (1)...
Verifying ingredients for passable stout (1)...
Creating 1 passable stout...
Creation failed, no results detected.

> acquire Vodka Dog

Verifying ingredients for Vodka Dog (1)...
Verifying ingredients for consummate hot dog bun (1)...
Creating 1 consummate hot dog bun...
Creation failed, no results detected.

> acquire Disappointed Russian

Verifying ingredients for Disappointed Russian (1)...
Verifying ingredients for acceptable vodka (1)...
Creating 1 acceptable vodka...
Creation failed, no results detected.

> acquire Chunky Mary

Verifying ingredients for Chunky Mary (1)...
Verifying ingredients for consummate salsa (1)...
Creating 1 consummate salsa...
Creation failed, no results detected.

> acquire Nachojito

Verifying ingredients for Nachojito (1)...
Verifying ingredients for consummate melted cheese (1)...
Creating 1 consummate melted cheese...
Creation failed, no results detected.

> acquire Le Roi

Verifying ingredients for Le Roi (1)...
Verifying ingredients for consummate french fries (1)...
Creating 1 consummate french fries...
Creation failed, no results detected.

> acquire Over Easy Rider

Verifying ingredients for Over Easy Rider (1)...
Verifying ingredients for adequate rum (1)...
Creating 1 adequate rum...
Creation failed, no results detected.

Here's my debug printout for yesterday (I'm not sure that it's related—I'm not getting any debug prints for today's activity:

Code:
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
          KoLmafia v15.9 r12000, Mac OS X, Java 1.6.0_41
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Please note: do not post this log in the KoLmafia thread. If you
 would like the dev team to look at it, please write a bug report
 at kolmafia.us. Include specific information about what you were 
 doing when you made this and include the log as an attachment.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Timestamp: Sat Mar 30 21:28:42 MDT 2013
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


Unexpected error, debug log printed.
class java.lang.StringIndexOutOfBoundsException: String index out of range: -152
java.lang.StringIndexOutOfBoundsException: String index out of range: -152
	at java.lang.String.substring(String.java:1937)
	at java.lang.String.substring(String.java:1904)
	at net.sourceforge.kolmafia.request.PeeVPeeRequest.parseStatLoss(PeeVPeeRequest.java:273)
	at net.sourceforge.kolmafia.request.PeeVPeeRequest.parseResponse(PeeVPeeRequest.java:253)
	at net.sourceforge.kolmafia.session.ResponseTextParser.externalUpdate(ResponseTextParser.java:632)
	at net.sourceforge.kolmafia.request.GenericRequest.processResults(GenericRequest.java:2461)
	at net.sourceforge.kolmafia.request.GenericRequest.processResponse(GenericRequest.java:2210)
	at net.sourceforge.kolmafia.request.GenericRequest.retrieveServerReply(GenericRequest.java:2106)
	at net.sourceforge.kolmafia.request.GenericRequest.retrieveServerReply(GenericRequest.java:1764)
	at net.sourceforge.kolmafia.request.GenericRequest.execute(GenericRequest.java:1450)
	at net.sourceforge.kolmafia.request.GenericRequest.run(GenericRequest.java:1343)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:222)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:185)
	at net.sourceforge.kolmafia.session.PvpManager.executePvpRequest(PvpManager.java:122)
	at net.sourceforge.kolmafia.textui.command.PvpStealCommand.run(PvpStealCommand.java:123)
	at net.sourceforge.kolmafia.KoLmafiaCLI.doExecuteCommand(KoLmafiaCLI.java:593)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeCommand(KoLmafiaCLI.java:546)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:447)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:315)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.handleQueue(CommandDisplayFrame.java:190)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.run(CommandDisplayFrame.java:164)



=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
          KoLmafia v15.9 r12000, Mac OS X, Java 1.6.0_41
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Please note: do not post this log in the KoLmafia thread. If you
 would like the dev team to look at it, please write a bug report
 at kolmafia.us. Include specific information about what you were 
 doing when you made this and include the log as an attachment.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Timestamp: Sat Mar 30 21:29:02 MDT 2013
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


Unexpected error, debug log printed.
class java.lang.StringIndexOutOfBoundsException: String index out of range: -152
java.lang.StringIndexOutOfBoundsException: String index out of range: -152
	at java.lang.String.substring(String.java:1937)
	at java.lang.String.substring(String.java:1904)
	at net.sourceforge.kolmafia.request.PeeVPeeRequest.parseStatLoss(PeeVPeeRequest.java:273)
	at net.sourceforge.kolmafia.request.PeeVPeeRequest.parseResponse(PeeVPeeRequest.java:253)
	at net.sourceforge.kolmafia.session.ResponseTextParser.externalUpdate(ResponseTextParser.java:632)
	at net.sourceforge.kolmafia.request.GenericRequest.processResults(GenericRequest.java:2461)
	at net.sourceforge.kolmafia.request.GenericRequest.processResponse(GenericRequest.java:2210)
	at net.sourceforge.kolmafia.request.GenericRequest.retrieveServerReply(GenericRequest.java:2106)
	at net.sourceforge.kolmafia.request.GenericRequest.retrieveServerReply(GenericRequest.java:1764)
	at net.sourceforge.kolmafia.request.GenericRequest.execute(GenericRequest.java:1450)
	at net.sourceforge.kolmafia.request.GenericRequest.run(GenericRequest.java:1343)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:222)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:185)
	at net.sourceforge.kolmafia.session.PvpManager.executePvpRequest(PvpManager.java:122)
	at net.sourceforge.kolmafia.textui.command.PvpStealCommand.run(PvpStealCommand.java:123)
	at net.sourceforge.kolmafia.KoLmafiaCLI.doExecuteCommand(KoLmafiaCLI.java:593)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeCommand(KoLmafiaCLI.java:546)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:447)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:315)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.handleQueue(CommandDisplayFrame.java:190)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.run(CommandDisplayFrame.java:164)



=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
          KoLmafia v15.9 r12000, Mac OS X, Java 1.6.0_41
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Please note: do not post this log in the KoLmafia thread. If you
 would like the dev team to look at it, please write a bug report
 at kolmafia.us. Include specific information about what you were 
 doing when you made this and include the log as an attachment.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Timestamp: Sat Mar 30 21:29:14 MDT 2013
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


Unexpected error, debug log printed.
class java.lang.StringIndexOutOfBoundsException: String index out of range: -152
java.lang.StringIndexOutOfBoundsException: String index out of range: -152
	at java.lang.String.substring(String.java:1937)
	at java.lang.String.substring(String.java:1904)
	at net.sourceforge.kolmafia.request.PeeVPeeRequest.parseStatLoss(PeeVPeeRequest.java:273)
	at net.sourceforge.kolmafia.request.PeeVPeeRequest.parseResponse(PeeVPeeRequest.java:253)
	at net.sourceforge.kolmafia.session.ResponseTextParser.externalUpdate(ResponseTextParser.java:632)
	at net.sourceforge.kolmafia.request.GenericRequest.processResults(GenericRequest.java:2461)
	at net.sourceforge.kolmafia.request.GenericRequest.processResponse(GenericRequest.java:2210)
	at net.sourceforge.kolmafia.request.GenericRequest.retrieveServerReply(GenericRequest.java:2106)
	at net.sourceforge.kolmafia.request.GenericRequest.retrieveServerReply(GenericRequest.java:1764)
	at net.sourceforge.kolmafia.request.GenericRequest.execute(GenericRequest.java:1450)
	at net.sourceforge.kolmafia.request.GenericRequest.run(GenericRequest.java:1343)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:222)
	at net.sourceforge.kolmafia.RequestThread.postRequest(RequestThread.java:185)
	at net.sourceforge.kolmafia.session.PvpManager.executePvpRequest(PvpManager.java:122)
	at net.sourceforge.kolmafia.textui.command.PvpStealCommand.run(PvpStealCommand.java:123)
	at net.sourceforge.kolmafia.KoLmafiaCLI.doExecuteCommand(KoLmafiaCLI.java:593)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeCommand(KoLmafiaCLI.java:546)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:447)
	at net.sourceforge.kolmafia.KoLmafiaCLI.executeLine(KoLmafiaCLI.java:315)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.handleQueue(CommandDisplayFrame.java:190)
	at net.sourceforge.kolmafia.swingui.CommandDisplayFrame$CommandQueueHandler.run(CommandDisplayFrame.java:164)
 

Attachments

  • DEBUG_20130330.txt
    7.7 KB · Views: 61
Last edited:

Veracity

Developer
Staff member
Server-side change:

Trying to make a consummate steak via the Item Manager:

Code:
http://www.kingdomofloathing.com/shop.phpwhichshop=jarl&action=buyitem&whichitem=6203&quantity=1
...no result detected...

Making it via the Cosmic Kitchen in the relay browser:
Code:
http://www.kingdomofloathing.com/shop.phppwd&whichshop=jarl&action=buyitem&whichrow=60&quantity=1
You acquire an item: consummate steak

Looking at the page text:

whichrow=42 consummate hard-boiled egg
whichrow=45 consummate bagel
whichrow=46 consummate sliced bread
whichrow=47 consummate hot dog bun

... and on and on.

Sigh.

Changing to "New Content".
 

Winterbay

Active member
Not having checked this: Does the whichrow-number change depending on how many items you can currently make or are they the same no matter how many I can currently make?
 

slyz

Developer
Does the whichrow-number change depending on how many items you can currently make
Jick isn't that cruel, is he?

EDIT: Wouldn't it make more sense to have Jarlsberg be a coinmaster? It's too late now, and not worth changing, but I can't really think of a good way to determine whether this kind of new content should be implemented one way or the other.

EDIT2: I wasn't thinking straight earlier. A coinmaster with 30 different tokens?
 
Last edited:

Veracity

Developer
Staff member
Thank you, slyz. Good start, but it's not done:

JarlsbergReqest.registerRequest still looks for whichitem to decide what is being made. Since that field is no longer in the url, it never matches, doesn't log the creation, and doesn't removed ingredient from inventory.

It needs to convert whichrow into an item number.

(I also think that removing the consumed ingredients in registerRequest is the old, deprecated way to update inventory; current best practice is to do it after the url has been submitted - and is known to be successful - rather than at the time the url is submitted.)
 

slyz

Developer
I keep getting distracted lately and most of my commits only deal with half the problem I'm addressing. I'll have a look at this later on, if the baby lets me :D
 

Theraze

Active member
Looks like this also happened to the Crackpot Mystic, since I'm getting failures on making monster bait, and the actual line is now:
Code:
shop.php?pwd&whichshop=mystic&action=buyitem&whichrow=31&bigform=Make+Item&quantity=1
so... Want another New Content post, or are we shoehorning in all the known newly-messed shopkeepers together?
 

Bale

Minion
Jick screwed up the Crackpot Mystic also

He probably got all the other shops/coinmasters messed up also. :(

HTML:
<body>
<centeR><table  width=95%  cellspacing=0 cellpadding=0><tr><td style="color: white;" align=center bgcolor=blue><b>The Crackpot Mystic's Shed</b></td></tr><tr><td style="padding: 5px; border: 1px solid blue;"><center><table><tr><td><table><tr><td valign=top><img src=http://images.kingdomofloathing.com/otherimages/untinker.gif width=60 height=100 alt="The Crackpot Mystic" title="The Crackpot Mystic"></td><td valign=top><center><b>The Crackpot Mystic</b></center><p>These are the things I can make with the pixels you've collected so far.</td></tr></table><form name=bigform action=shop.php method=post><input type=hidden name=pwd value=585a2f89053f9a89351a7ddc163bfaa7><input type=hidden name=whichshop value="mystic"><input type=hidden name=action value=buyitem><center><table cellpadding=2><tr><td></td><td colspan=2 align=center><b>Item:</b> (click for description)</td><td colspan=10 align=center><b>Price:</b></td></tr><tr><td valign=center><input type=radio name=whichrow value=26></td><td><img src="http://images.kingdomofloathing.com/itemimages/pixel1.gif" class=hand onClick='javascript:descitem(603807622)'></td><td valign=center><a onClick='javascript:descitem(603807622)'><b>white pixel</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel3.gif width=30 height=30 onClick='javascript:descitem(535888877)' alt="red pixel" title="red pixel"></td><td><b>1</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel4.gif width=30 height=30 onClick='javascript:descitem(344843384)' alt="green pixel" title="green pixel"></td><td><b>1</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel5.gif width=30 height=30 onClick='javascript:descitem(131737753)' alt="blue pixel" title="blue pixel"></td><td><b>1</b> &nbsp</td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=26";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=36></td><td><img src="http://images.kingdomofloathing.com/itemimages/pixelkey.gif" class=hand onClick='javascript:descitem(503819853)'></td><td valign=center><a onClick='javascript:descitem(503819853)'><b>digital key</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td><b>30</b> &nbsp</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=36";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=27></td><td><img src="http://images.kingdomofloathing.com/itemimages/ppotion.gif" class=hand onClick='javascript:descitem(968682404)'></td><td valign=center><a onClick='javascript:descitem(968682404)'><b>red pixel potion</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td><b>3</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel3.gif width=30 height=30 onClick='javascript:descitem(535888877)' alt="red pixel" title="red pixel"></td><td><b>2</b> &nbsp</td><td></td><td></td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=27";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=28></td><td><img src="http://images.kingdomofloathing.com/itemimages/ppotion.gif" class=hand onClick='javascript:descitem(619523877)'></td><td valign=center><a onClick='javascript:descitem(619523877)'><b>blue pixel potion</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td><b>3</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel5.gif width=30 height=30 onClick='javascript:descitem(131737753)' alt="blue pixel" title="blue pixel"></td><td><b>2</b> &nbsp</td><td></td><td></td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=28";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=29></td><td><img src="http://images.kingdomofloathing.com/itemimages/ppotion.gif" class=hand onClick='javascript:descitem(809354660)'></td><td valign=center><a onClick='javascript:descitem(809354660)'><b>green pixel potion</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td><b>4</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel4.gif width=30 height=30 onClick='javascript:descitem(344843384)' alt="green pixel" title="green pixel"></td><td><b>3</b> &nbsp</td><td></td><td></td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=29";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=30></td><td><img src="http://images.kingdomofloathing.com/itemimages/pie.gif" class=hand onClick='javascript:descitem(334196995)'></td><td valign=center><a onClick='javascript:descitem(334196995)'><b>purple pixel pie</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td><b>5</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel3.gif width=30 height=30 onClick='javascript:descitem(535888877)' alt="red pixel" title="red pixel"></td><td><b>2</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel5.gif width=30 height=30 onClick='javascript:descitem(131737753)' alt="blue pixel" title="blue pixel"></td><td><b>2</b> &nbsp</td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=30";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=33></td><td><img src="http://images.kingdomofloathing.com/itemimages/pixelhat.gif" class=hand onClick='javascript:descitem(914417114)'></td><td valign=center><a onClick='javascript:descitem(914417114)'><b>pixel hat</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td><b>10</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel4.gif width=30 height=30 onClick='javascript:descitem(344843384)' alt="green pixel" title="green pixel"></td><td><b>15</b> &nbsp</td><td></td><td></td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=33";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=34></td><td><img src="http://images.kingdomofloathing.com/itemimages/pixelpants.gif" class=hand onClick='javascript:descitem(297004677)'></td><td valign=center><a onClick='javascript:descitem(297004677)'><b>pixel pants</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td><b>10</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel3.gif width=30 height=30 onClick='javascript:descitem(535888877)' alt="red pixel" title="red pixel"></td><td><b>20</b> &nbsp</td><td></td><td></td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=34";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=35></td><td><img src="http://images.kingdomofloathing.com/itemimages/pixelsword.gif" class=hand onClick='javascript:descitem(616270066)'></td><td valign=center><a onClick='javascript:descitem(616270066)'><b>pixel sword</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td><b>20</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td><b>10</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel5.gif width=30 height=30 onClick='javascript:descitem(131737753)' alt="blue pixel" title="blue pixel"></td><td><b>10</b> &nbsp</td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=35";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=31></td><td><img src="http://images.kingdomofloathing.com/itemimages/monbait.gif" class=hand onClick='javascript:descitem(123353646)'></td><td valign=center><a onClick='javascript:descitem(123353646)'><b>monster bait</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td><b>15</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel3.gif width=30 height=30 onClick='javascript:descitem(535888877)' alt="red pixel" title="red pixel"></td><td><b>20</b> &nbsp</td><td></td><td></td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=31";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=32></td><td><img src="http://images.kingdomofloathing.com/itemimages/pixshield.gif" class=hand onClick='javascript:descitem(683181924)'></td><td valign=center><a onClick='javascript:descitem(683181924)'><b>pixel shield</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td><b>10</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td><b>10</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel3.gif width=30 height=30 onClick='javascript:descitem(535888877)' alt="red pixel" title="red pixel"></td><td><b>20</b> &nbsp</td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=32";' value='Make'></td></tr><tr><td valign=center><input type=radio name=whichrow value=37></td><td><img src="http://images.kingdomofloathing.com/itemimages/pixelboom.gif" class=hand onClick='javascript:descitem(501734182)'></td><td valign=center><a onClick='javascript:descitem(501734182)'><b>pixel boomerang</b>    </a></td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td><b>10</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td><b>10</b> &nbsp</td><td><img src=http://images.kingdomofloathing.com/itemimages/pixel5.gif width=30 height=30 onClick='javascript:descitem(131737753)' alt="blue pixel" title="blue pixel"></td><td><b>20</b> &nbsp</td><td></td><td></td><td></td><td></td><td valign=center><input class=button type=button onClick='javascript:parent.mainpane.location="shop.php?whichshop=mystic&action=buyitem&quantity=1&whichrow=37";' value='Make'></td></tr></table><center><input class=button type=submit value="Make Item"> <input class=text type=text name=quantity size=2 value=1><input type=checkbox name=buymax> <font size=2>(as many as possible)</font></center></form></form><p><b>You have:</b><table><tr><td><img src=http://images.kingdomofloathing.com/itemimages/pixel3.gif width=30 height=30 onClick='javascript:descitem(535888877)' alt="red pixel" title="red pixel"></td><td>41 red pixels</td></tr><tr><td><img src=http://images.kingdomofloathing.com/itemimages/pixel4.gif width=30 height=30 onClick='javascript:descitem(344843384)' alt="green pixel" title="green pixel"></td><td>47 green pixels</td></tr><tr><td><img src=http://images.kingdomofloathing.com/itemimages/pixel5.gif width=30 height=30 onClick='javascript:descitem(131737753)' alt="blue pixel" title="blue pixel"></td><td>40 blue pixels</td></tr><tr><td><img src=http://images.kingdomofloathing.com/itemimages/pixel1.gif width=30 height=30 onClick='javascript:descitem(603807622)' alt="white pixel" title="white pixel"></td><td>63 white pixels</td></tr><tr><td><img src=http://images.kingdomofloathing.com/itemimages/pixel2.gif width=30 height=30 onClick='javascript:descitem(942103274)' alt="black pixel" title="black pixel"></td><td>53 black pixels</td></tr></table><p><a href=forestvillage.php>Back to Forest Village</a></center></td></tr></table></center></td></tr><tr><td height=4></td></tr></table></center></body>
 

slyz

Developer
It was a quick and dirty commit, but r12002 fixes JarlsbergRequest.registerRequest() and adds JarlsbergRequest.parseResponse().
 

slyz

Developer
For reference:
Code:
row	item	itemId

26	white pixel	459
27	red pixel potion	464
28	blue pixel potion	465
29	green pixel potion	466
30	purple pixel pie	467
31	monster bait	1300
32	pixel shield	1630
33	pixel hat	688
34	pixel pants	689
35	pixel sword	690
36	digital key	691
37	pixel boomerang	3854

Maybe the simplest way to implement this would be to simply add the "row" attribute of each item in its concoctions.txt recipe.
 

Bale

Minion
Maybe the simplest way to implement this would be to simply add the "row" attribute of each item in its concoctions.txt recipe.

If this is done to all shops/coinmasters, definitely! Unless something has a different row in different shops?
 

lostcalpolydude

Developer
Staff member
Based on Eleron's recent post in the kolproxy thread, it seems likely that every shop with Buy One buttons will work like that (Grandma also works like that, apparently). I think ROWX might be a good way to add it to concoctions.txt, where X is the row number. I guess Concoctions need to include an additional int to track that.

That doesn't make row => item converting for parseResponse any easier though, since row numbers are (probably) not unique. If a rowToId() function is needed regardless, then eliminating idToRow() doesn't seem to make the code much simpler, or easier to maintain (by the time one function is written or reread/understood later, the second one probably isn't much additional work). So I don't know that it's worth complicating Concoctions without a way to use the result to eliminate rowToId().
 

slyz

Developer
That doesn't make row => item converting for parseResponse any easier though, since row numbers are (probably) not unique.
{crafting method, row number}-> itemId is probably unique though.

I don't know anything about Java data structures... I always just copy existing code when I change or add something. But I see two ways to do store the row information from concoction.txt:
  • in separate row -> itemId maps, one for each crafting method that needs one.
  • in a single Object[][] like in ClanLoungeRequest.java, like this:
PHP:
public static final Object [][] ROW_TO_ID_REPOSITORY = new Object[][]
{
	{
		CraftingType.JARLS,
		42,
		6185
	},
	{
		CraftingType.PIXEL,
		26,
		459
	},
}

Maybe this would be a good time to finally go through a Java tutorial :D
 
Last edited:

slyz

Developer
The new JarlsbergRequest.parseResponse() already proved useful!

It turns out that staves don't follow the simple itemId -> row rule I used for other items.
 

Veracity

Developer
Staff member
Using 1 cosmic dough to make 1 consummate brownie
You acquire an item: consummate brownie

Using 1 cosmic cream to make 1 consummate ice cream
You acquire an item: consummate ice cream

Using 1 cosmic cream to make 1 consummate whipped cream
You acquire an item: consummate whipped cream

Using 1 cosmic fruit to make 1 consummate strawberries
You acquire an item: consummate strawberries

Using 1 consummate baked potato + 1 consummate bacon + 1 consummate melted cheese + 1 consummate sour cream to make 1 Loaded Baked Potato
You acquire an item: Omega Sundae
Isn't this funny?

Needless to say, it did not remove the ingredients which were actually used, which screwed up the next creation attempt.

Here is another one.

Using 1 cosmic vegetable to make 1 consummate salsa
You acquire an item: consummate salsa

Using 1 cosmic potato to make 1 acceptable vodka
You acquire an item: acceptable vodka

Using 1 acceptable vodka + 1 consummate sour cream to make 1 Disappointed Russian
You acquire an item: Chunky Mary
 

slyz

Developer
I merged the shop revamp threads.

Here is what I gathered up to now:
Code:
// Crackpot Mystic
// forestvillage.php?action=mystic

26	white pixel
27	red pixel potion
28	blue pixel potion
29	green pixel potion
30	purple pixel pie
31	monster bait
32	pixel shield
33	pixel hat
34	pixel pants
35	pixel sword
36	digital key
37	pixel boomerang

// Cosmic Kitchen
// shop.php?whichshop=jarl

42	consummate hard-boiled egg
44	consummate egg salad
45	consummate bagel
48	consummate brownie
49	consummate toast
50	passable stout
51	consummate soup
54	consummate salsa
55	consummate sauerkraut
59	consummate meatloaf
60	consummate steak
61	consummate cold cuts
62	consummate frankfurter
64	consummate baked potato
65	acceptable vodka
66	consummate ice cream
67	consummate whipped cream
68	consummate sour cream
70	consummate sorbet
71	adequate rum
85	Das Sauerlager
106	Staff of the Light Lunch
110	Staff of Fruit Salad

// A Vending Machine
// shop.php?whichshop=damachine

93	Boris's key
94	Jarlsberg's key
95	Sneaky Pete's key
96	Boris's ring
97	Jarlsberg's earring
98	Sneaky Pete's breath spray
99	potato sprout
100	dried gelatinous cube
101	Spellbook: Walberg's Dim Bulb
102	Spellbook: Singer's Faithful Ocelot
103	Spellbook: Drescher's Annoying Noise

I used the script attached.

If someone who has access to more Jarlsberg concoctions could run it, it would help completing the list.
 

Attachments

  • parseRows.ash
    559 bytes · Views: 32

Theraze

Active member
> parserows

42 consummate hard-boiled egg
44 consummate egg salad
51 consummate soup
52 consummate corn chips
53 consummate salad
54 consummate salsa
55 consummate sauerkraut
56 consummate cheese slice
57 consummate melted cheese
59 consummate meatloaf
60 consummate steak
61 consummate cold cuts
62 consummate frankfurter
64 consummate baked potato
66 consummate ice cream
67 consummate whipped cream
68 consummate sour cream
69 consummate strawberries
70 consummate sorbet
112 cosmic six-pack
65 acceptable vodka
71 adequate rum
A few you didn't have, but most are repeats.
 
Top