New Content Grey You Challenge Path

Line 142 is splitting on "\\s+,\\s+", which is to say "1 or more whitespace characters, followed by a comma, followed by 1 or more whitespace characters."
Your debug log shows java.lang.NumberFormatException: For input string: "86,1436"

So it's not a match and therefore it's not parsing as a number.

I can't test a fix, so I'm reluctant to do it myself, but we could split on "\\s*,\\s*" (0 or more of the element) and also .strip() to remove spaces.

// Load the monsters that we've already reprocessed
Set<Integer> reprocessed =
Arrays.stream(Preferences.getString("gooseReprocessed").split("\\s+,\\s+"))
.filter(StringUtilities::isNumeric)
.map(Integer::valueOf)
.collect(Collectors.toSet());[/ICODE]
 
Another thing about this path is that HP is computed in a weird way. In particular, +muscle and +%HP equipment/effects do not increase your HP in a Grey You run. On the other hand, flat +HP equipment/effects do increase your HP.

For example:
With no equipment: 176 HP
Equip reinforced beaded headband (+40 HP): 216 HP
Equip extra-wide head candle (+100% HP): 176 HP
Equip viking helmet (+1 muscle): 176 HP

The same is true for MP:
With no equipment: 126MP
Beer helmet (+40 MP): 166 MP
Equip Cargo Cultist Shorts (+66% MP): 126 MP
Equip fuzzy earmuffs (+11 myst): 126 MP

The maximizer doesn't account for this, and so maximizing for HP often equips some useless +%HP equipment.
 
Last edited:
Interesting. You, Robot has a similar feature for HP (but not MP) and I inserted code to handle it in Modifiers.predict().

Is your base HP still controlled by your base Muscle? If so, this should be just like being a Vampyre, although there is no similar character class which restricts MP like that. I'm done with Grey You, but I can take a stab at fixing this. I can write a test that thinks I am in various paths and see what the maximizer will predict...
 
No, your base HP is completely disconnected from your base Muscle (and MP is disconnected from Myst). Your HP/MP start at 5/5 at the beginning of the run (+up to 33 each from path progression), and then increase by killing specific monsters or by absorbing food/drink/spleen items.
 
Thanks for the changes! It looks like the maximizer is correctly not using +HP% effects and +muscle effects now for HP, and so "maximize HP" appears to equip the optimal things.

However, I noticed the "Current score" when maximizing HP is a bit odd. It seems to double count the bonuses from the currently equipped equipment. Not sure if this is important.
> unequip; ash print(my_MaxHP());

Updating inventory...
136
Returned: void

> maximize HP +hat

Maximizer: HP +hat
Maximizing...
1 combinations checked, best score 176.00
Putting on reinforced beaded headband...
Equipment changed.

> maximize HP +hat

Maximizer: HP +hat
Maximizing...
1 combinations checked, best score 216.00

> ash print(my_MaxHP())

176
Returned: void
Note that the best score reported the second time is +40 higher than the obtained score, which is consistent with double counting the +40HP headband.
 
Now you are talking about the internals of the maximizer - which is a complete mystery to me. I have literally never used the "maximize" command, although I have frequently used the GUI.

I notice that your "maximize" command listed a "best score" which is higher than your current score - and didn't try to equip anything.

I think I'll leave this to people who better understand how the maximizer works. Life is too short for me to become an expert in that. :)
 
Back
Top