Bug - Won't Fix Special Seasoning is not detected as being used when eating sliders with salad forks

Malibu Stacey

Active member
Minor cosmetic issue.
I don't know if the this is the salad fork's fault or the sliders fault but I never get the message saying a special seasoning was consumed when eating sliders with salad forks.

Code:
Ol' Scratch's salad fork queued for next 3 foods eaten.
Eating extra-greasy slider (1 of 3)...
You lose 197 hit points
You gain 47 Adventures
You gain 189 Strongness
You gain 215 Enchantedness
You gain 202 Sarcasm
You gain a Moxie point!
You gain 5 Fullness
You lose some of an effect: Got Milk (-5)
Eating extra-greasy slider (2 of 3)...
You lose 197 hit points
You gain 50 Adventures
You gain 150 Strongness
You gain 212 Enchantedness
You gain 228 Roguishness
You gain 5 Fullness
You lose some of an effect: Got Milk (-5)
Eating extra-greasy slider (3 of 3)...
You lose 197 hit points
You gain 46 Adventures
You gain 189 Muscleboundness
You gain a Muscle point!
You gain 183 Magicalness
You gain 241 Sarcasm
You gain 5 Fullness
You lose an effect: Got Milk
Finished eating 3 extra-greasy slider.

> ash item_amount($item[Special Seasoning]);

Returned: 121

> refresh inv

Updating inventory...
Requests complete.

> ash item_amount($item[Special Seasoning]);

Returned: 118

I've seen it give the message in console and decrement the count appropriately when eating Karma Shawarma using a Fudge Spork if that helps narrow it down.
 

Veracity

Developer
Staff member
(FWIW, you can say "inv special seasoning" in the gCLI, rather than calling ASH).

This was in the gCLI. We don't put a message in the session log for food helpers like that - although we should. I will make it so.

I see the following code in EatItemRequest:

Code:
		// You add a packet of your Special Seasoning and kick things up a notch.
		if ( responseText.contains( "packet of your Special Seasoning" ) )
		{
			int itemsUsed = Math.min( count, InventoryManager.getCount( ItemPool.SPECIAL_SEASONING ) );
			if ( itemsUsed > 1 )
			{
				EatItemRequest.logConsumption( "You ate " + itemsUsed + " Special Seasoning with your food" );
			}
			else
			{
				EatItemRequest.logConsumption( "You ate Special Seasoning with your food" );
			}
			ResultProcessor.processItem( ItemPool.SPECIAL_SEASONING, -itemsUsed );
		}
We depend on seeing "packet of your Special Seasoning". Is something different when using it with a salad fork?

Could you get a DEBUG log of this consumption, please?

Revision 19594 prints consumption helper messages to session log as well as gCLI.
 

Veracity

Developer
Staff member
I tried this and got a DEBUG log.

gCLI:

Code:
Ol' Scratch's salad fork queued for next 2 foods eaten.
Eating extra-greasy slider (1 of 2)...
You lose 950 hit points
You gain 46 Adventures
You gain 116 Strengthliness
You gain 249 Magicalness
You gain 123 Smarm
You lose some of an effect: Got Milk (-5)
Eating extra-greasy slider (2 of 2)...
You lose 950 hit points
You gain 47 Adventures
You gain 136 Strongness
You gain 215 Magicalness
You gain 135 Chutzpah
You lose some of an effect: Got Milk (-5)
Finished eating 2 extra-greasy slider.
DEBUG log:

inv_eat.php?whichitem=3327&ajax=1&quantity=1&utensil=3323

Code:
<blockquote>
  You stick the fork into the extra-greasy slider and raise it to your mouth.
  You lose 950 hit points. (<font color=red><b>hot damage</b></font>)
  You eat the now piping-hot extra-greasy slider -- it's sizzlicious!  The salad fork cools, and you discard it.
</blockquote>
Note that there is no message about the Special Seasoning.

Let's try just a slider.

gCLI:

Code:
Eating 1 extra-greasy slider...
You gain 35 Adventures
You gain 108 Strengthliness
You gain 199 Wizardliness
You gain 105 Chutzpah
You lose some of an effect: Got Milk (-5)
You ate Special Seasoning with your food
Finished eating 1 extra-greasy slider.
DEBUG log:

inv_eat.php?whichitem=3327&ajax=1&quantity=1

Code:
<blockquote>
  You add a packet of your Special Seasoning and kick things up a notch.
  You eat the slider, and wish you had a whole butterfly of them
</blockquote>.
Let's try something which is not a slider:

gCLI:

Code:
Ol' Scratch's salad fork queued for next 1 food eaten.
Eating 1 super salad...
You lose 950 hit points
You gain 26 Adventures
You gain 73 Strengthliness
You gain 103 Enchantedness
You gain 68 Chutzpah
You lose some of an effect: Got Milk (-3)
Finished eating 1 super salad.
DEBUG log:

inv_eat.php?whichitem=2027&ajax=1&quantity=1&utensil=3323

Code:
<blockquote>
  You stick the fork into the super salad and raise it to your mouth.
  You lose 950 hit points. (<font color=red><b>hot damage</b></font>)
  You eat the now piping-hot super salad -- it's sizzlicious!  The salad fork cools, and you discard it.
</blockquote>
For completeness, eat non-slider with no salad fork.

gCLI:

Code:
Eating 1 super salad...
You gain 18 Adventures
You gain 35 Beefiness
You gain 89 Magicalness
You gain 46 Chutzpah
You lose some of an effect: Got Milk (-3)
You ate Special Seasoning with your food
Finished eating 1 super salad.
DEBUG: log:

inv_eat.php?whichitem=2027&ajax=1&quantity=1

Code:
<blockquote>
  You add a packet of your Special Seasoning and kick things up a notch.
  You eat the super salad.  Unsurprisingly, it tastes super!
</blockquote>
Conclusion: using the salad fork, KoL does not give you the Special Seasoning message.
 

Veracity

Developer
Staff member
I'd call this a KoL bug: When you use Ol' Scratch's salad fork as your utensil (food helper, whatever), KoL does not display the message about Special Seasoning, although it does remove it from inventory.

You could submit a bug report within KoL for this.
I bet they will not fix it.

KoLmafia could deduce which of your food additives got used and remove them, if you used a salad fork.
That'd be a pain, although it would keep your session tally and session log up to date.
Or, I suppose, it could refresh inventory after each salad fork you used.
That's an api.php call, so is not too expensive, although the tally and log would not reflect the seasoning usage.
 

Malibu Stacey

Active member
Thanks for debugging this Veracity. I've been busy recently so I haven't had time to do it myself unfortunately.

I'll harass Aenimus about getting it fixed. If that doesn't work I'll spam slaw until it does. One of those usually works ;)
 
Last edited:
Top