How does the new Yred work?

I’v had Yred on one character before, and I recall it was a mostly confusing experience.
Yred gives some very strong allies in the early dungeon, and they remain for quite the while. But very few enemies rise as zombies, and the allies eventually time out (?), so the whole “wave of death” peters out rather pitifully.
Am I doing something wrong?

Yred chance to undeadify monsters scales up with piety and down with the strength of zombie/spectral minions you already have. At low piety, the chance is quite small so you don’t get a ton of help but you should have a few minions. The initial temporary minions Yred gives you when you light the torch is the biggest assistance early on I think. (Hurl is good once you get that too! I didn’t start using it until around lair though)

reap chance code in religion.cc
bool yred_reap_chance()
{
    // Count how many reaped allies we already have.
    int hd = 0;
    for (monster_iterator mi; mi; ++mi)
    {
        if (!mi->friendly() || mi->is_summoned())
            continue;

        if (mi->type == MONS_ZOMBIE || mi->type == MONS_SPECTRAL_THING)
            hd += mi->get_experience_level();
    }

    // Always reap if we have no minions. Otherwise, use a sliding scale based
    // on total HD of allies, with a rate boosted by piety.
    if (hd == 0)
        return true;

    // Minimum chance scales from 15% at 0 piety to 40% at 6 stars
    int ratio = min(piety_breakpoint(6), (int)you.piety) * 100 / piety_breakpoint(6);
    int min_chance = 15 + (25 * ratio / 100);

    ratio = min(100, (hd * 100 / you.piety * 4));
    int chance = (ratio * min_chance / 100) + ((100 - ratio));

    //mprf("Min chance: %d, Ratio: %d, Chance: %d", min_chance, ratio, chance);

    return x_chance_in_y(chance, 100);
}

Even though my game got Yred on D4 and I cleared every subsequent level with the torch lit (no stairdancing!), piety seemed to drip in slower than usual. I reached 1 pip by D6, 2 in D8, then somehow 3* and 4* both on D10. It took a while to get a decent reap chance.

I think having a character with some method of regeneration to help make the most of that initial wave helps. Troll, Vine Stalker, Human and Armataur are probably good options I think. I suspect Yred favors melee characters because allies often do (you can take hits for them so they last longer, you don’t have to worry about them blocking your LoF, you don’t have to worry about AoE spells). Also I think you only raise minions in the umbra and melee characters are more likely to have slain foes in the umbra.

I think Yred is still a bit of a momentum god that helps strong characters more than weak ones. Plan A should be to fight and and take hits for most things. Plan B is use allies for cover while you run :slight_smile: . You can use recall undead allies after running away to save as many as possible. I used it a lot for repositioning simply because allies like to run forward into unknown territory and I do not :stuck_out_tongue: .

My win log for reference: http://crawl.akrasiac.org/rawdata/rypofalem/morgue-rypofalem-20240228-234418.txt

My Invocations action chart. Lots of Hurl and Recall

Action                     |  1- 3 |  4- 6 |  7- 9 | 10-12 | 13-15 | 16-18 | 19-21 | 22-24 | 25-27 || total
---------------------------+-------+-------+-------+-------+-------+-------+-------+-------+-------++-------
 Invoke: Light the Black T |       |     1 |     4 |     5 |     7 |     9 |     6 |     7 |     3 ||    42
         Recall Undead Har |       |       |     1 |     2 |     8 |    14 |    32 |    31 |    15 ||   103
         Hurl Torchlight   |       |       |       |     1 |    14 |    15 |    12 |    22 |     1 ||    65
         Bind Soul         |       |       |       |       |       |     1 |       |     2 |       ||     3
         Fathomless Shackl |       |       |       |       |       |     1 |     2 |       |     1 ||     4