Revision 19701 does this:
- When you log in, if you have a Bird-a-Day calendar, read the effect descriptions of Blessing of the Bird and Blessing of your favorite Bird and override the modifiers
- The first time you use your calendar per day, add the "Seek out a Bird" skill and set the modifiers for Blessing of the Bird (and mark them as "known" for today).
- If you receive the Blessing of the Bird effect, don't be fooled by the bird name. If we don't know the modifiers, read them and mark them as known.
If you do everything within KoLmafia, this should work well enough. If you do some things outside KoLmafia, or log in and out, it should still work, but we won't know your favorite bird, for example.
I could parse the favorite bird when you receive the "Blessing of the XXX" effect. Maybe later.
Here's what I did today when I logged in for the first time:
Code:
[color=green]> ash have_skill( $skill[ seek out a bird ] )[/color]
Returned: false
[color=green]> get _birdOfTheDay[/color]
[color=green]> ash string_modifier( $effect[ blessing of the bird ], "Modifiers" )[/color]
Returned: Muscle Percent: +100, Initiative: +75, HP Regen Min: 10, HP Regen Max: 20
[color=green]> use Bird-a-Day calendar[/color]
Using 1 Bird-a-Day calendar...
You learned a new skill: Seek out a Bird
Finished using 1 Bird-a-Day calendar.
[color=green]> ash have_skill( $skill[ seek out a bird ] )[/color]
Returned: true
[color=green]> get _birdOfTheDay[/color]
Hasty Liechtensteiner Enchantment Firebird
[color=green]> ash string_modifier( $effect[ blessing of the bird ], "Modifiers" )[/color]
Returned: Mysticality Percent: +100, Hot Resistance: +2, Initiative: +25, HP Regen Min: 10, HP Regen Max: 20
[color=green]> cast seek out a bird[/color]
Casting Seek out a Bird 1 times...
You acquire an effect: Blessing of the Bird (10)
Seek out a Bird was successfully cast.
Notice that when I logged in, it parsed the modifiers for Blessing of the Bird - leftover from yesterday.
I used the item, got a new daily bird, learned the skill, and parsed the modifiers.
I cast the skill and got the blessing.
There are undoubtedly tweaks needed for this, but next up is support for Favorite Bird.
(parse bird of the day from gaining effect "Blessing of the XXX")
(correctly calculate mana when multicasting "Seek out a Bird". It calculates a single cast correctly, but the cost goes up, like Libram skills, and no code yet to determine total mana needed to cast it X times. The fact that there is a choice presented on the seventh cast of the day is a wrinkle...)
(Does your Favorite Bird persist over ascension? I'll find out, by and by, since today's modifiers look interesting enough to save as a Favorite, for now.)