New Content October IOTM: Blood cubic zirconia

HippoKing

Member
New IOTM, accessory that grants 9 new skills, each of which is powered by losing substats, scaling up as 11, 23, 37, 1100 etc. Each substat has 3 skills, 2 non-combat, one combat.

Of particular note is "BCZ: Refracted Gaze", which removes the non-special drops of the current monster and adds in the non-special drops of every other regular monster in the zone. I think for autoscend it'll be important to have a preference that notes when the skill has been cast in the current combat.

The new wiki has more specifics listed: https://wiki.kingdomofloathing.com/Blood_cubic_zirconia

edit: Skills are not granted in Zootomist, so other challenge paths may also need checking.
 
Last edited:
For this item, it would be beneficial to track the number of times the skill has been cast so we can track the cost to cast the skill.
Currently, this can be partially done with $skill[].timescast, but this resets per session.

Option 1 is to make a set of _properties that track this for each skill with skill name. We do this now for a number of skills with daily limits, such as "_ancestralRecallCasts", "_inigosCasts", etc.

Option 1B is to do this but make it more generic and scalable, with a bunch of general skill timescast using skill number.
so "_timescast7576" would tell you how many times skill # 7576 ($skill[BCZ: Sweat Equity]) has been cast

Option 2 is to do this all internally somehow, and report substat cost to cast via an ash function, similar to the other xxx_cost() functions, like fuel_cost( ), rain_cost( ), soulsauce_cost( ), etc.


Thoughts?
(personally I vote for 1B but I wanted to open for this discussion)
 
I went with Option 1A.

On a side note, after looking at all the different property names I would like to tear it all down and start over with a more consistent naming convention. I choose "_bczSkillNameCasts", but there are so many variations there did not seem to be a correct choice between 'cast', 'casts', 'uses', 'used', etc.
If you love consistency I do not recommend looking at dailylimits.txt
 
I meant to double-check this before running my turns for the day, but forgot. However, I think I noticed that $skill[BCZ: Sweat Bullets].timescast got incremented even if the cast failed (e.g. if used against a boss) and therefore wouldn't increase the cost of a future cast. Probably worth double-checking that this doesn't result in "incorrect" tracking in the new properties if you haven't already.
 
Confirmed that Sweat Bullets does not increment on Bosses (but surprisingly Blood Geyser works)

Code:
Encounter: Baron von Ratsworth
Round 0: ckb1 wins initiative!
Round 1: ckb1 casts BCZ: BLOOD GEYSER!
Preference _lastCombatActions changed from to sk7571;
Round 2: You lose 37 Beefiness
Preference _bczBloodGeyserCasts changed from 2 to 3
Round 2: ckb1 casts BCZ: SWEAT BULLETS!
Preference _lastCombatActions changed from sk7571; to sk7571;sk7573;
KoLmafia thinks it is round 3 but KoL thinks it is round 2
Round 2: ckb1 casts SUMMON LOVE GNATS!
Preference _lastCombatActions changed from sk7571;sk7573; to sk7571;sk7573;sk7247;
 
Back
Top