Number of uniques on a level


If it doesn't fit anywhere else, it belongs here. Also, come here if you just need to get hammered.

User avatar

Ziggurat Zagger

Posts: 4478

Joined: Wednesday, 23rd October 2013, 07:56

Post Sunday, 23rd February 2014, 23:56

Number of uniques on a level

My first FeBe is still going strong. Descending on D:18:
  Code:
 41179 | D:18     | Noticed Wiglaf
 41187 | D:18     | Noticed Agnes
 41191 | D:18     | Noticed Snorg

OK, back up and another staircase down. Near Agnes:
  Code:
 41203 | D:18     | Killed Agnes

Exploring more:
  Code:
 41405 | D:18     | Noticed Nikola

OK, I get the message. Let's get the Lair runes first:
  Code:
 55259 | Snake:5  | Got a serpentine rune of Zot
55624 | Shoals:5 | Got a barnacled rune of Zot

(Killed Lamia easily on Snake:3 btw.) Back to the Dungeon:
  Code:
 58541 | D:18     | Noticed Azrael

Oh, you too. Well, let's get busy:
  Code:
 58541 | D:18     | Killed Nikola
 58550 | D:18     | Killed Azrael
 58556 | D:18     | Killed Snorg

Finally some peace, no? I guess not:
  Code:
 58784 | D:18     | Noticed Jorgrun
 58806 | D:18     | Killed Jorgrun

Didn't I forget something? Oh yes:
  Code:
 58812 | D:18     | Killed Wiglaf

All clear now?
  Code:
 59381 | D:18     | Noticed Mara

Please. Went back up, did Vaults:1 - 4 (left Boris on Vaults:4). Then down the Dungeon again. Cleared D:26, took a look at D:27 and decided to go to Elf. On D:18, someone had woken up:
  Code:
85367 | D:18     | Killed Mara


That's a total of 7 uniques on a level. What's your record?
DCSS: 97:...MfCj}SpNeBaEEGrFE{HaAKTrCK}DsFESpHu{FoArNaBe}
FeEE{HOIEMiAE}GrGlHuWrGnWrNaAKBaFi{MiDeMfDe}{DrAKTrAMGhEnGnWz}
{PaBeDjFi}OgAKPaCAGnCjOgCKMfAEAtCKSpCjDEEE{HOSu
Bloat: 17: RaRoPrPh{GuStGnCa}{ArEtZoNb}KiPaAnDrBXDBQOApDaMeAGBiOCNKAsFnFlUs{RoBoNeWi

For this message the author Sprucery has received thanks:
Klown
User avatar

Swamp Slogger

Posts: 132

Joined: Tuesday, 15th November 2011, 23:26

Post Monday, 24th February 2014, 04:32

Re: Number of uniques on a level

I thought the max was 3 per level?
"Crawl is cruel. But we keep coming back to it like an abusive boyfriend. It keeps telling us how it will be different this time by giving us early robes of the archmagi and staves of fire. Then it backhands you with a Centaur on D4." ~Me

Zot Zealot

Posts: 1031

Joined: Friday, 26th April 2013, 19:52

Location: AZ, USA

Post Monday, 24th February 2014, 04:56

Re: Number of uniques on a level

I regularly find 4 on a level, rarely 5, never 7. That is incredible.
User avatar

Ziggurat Zagger

Posts: 5832

Joined: Thursday, 10th February 2011, 18:30

Post Monday, 24th February 2014, 05:13

Re: Number of uniques on a level

I always find many of them clustered illusioningly at what I feel is a general "bottom depth" for many uniques; as though the RNG tried and failed many times to place them and then finally forced them upon me on their last chance appearance level, which happened to be the same floor.
"Be aware that a lot of people on this forum, such as mageykun and XuaXua, have a habit of making things up." - minmay a.k.a. duvessa
Did I make a lame complaint? Check for Bingo!
Totally gracious CSDC Season 2 Division 4 Champeen!

Ziggurat Zagger

Posts: 8786

Joined: Sunday, 5th May 2013, 08:25

Post Monday, 24th February 2014, 05:19

Re: Number of uniques on a level

There is no maximum number of uniques on one level, aside from the obvious case of all valid uniques having been placed already. If you're really curious:
  Code:
// Place uniques on the level.
// Return the number of uniques placed.
static int _place_uniques()
{
    // Unique beasties:
    if (!your_branch().has_uniques)
        return 0;

#ifdef DEBUG_UNIQUE_PLACEMENT
    FILE *ostat = fopen("unique_placement.log", "a");
    fprintf(ostat, "--- Looking to place uniques on %s\n",
                   level_id::current().describe().c_str());
#endif

    int num_placed = 0;

    // Magic numbers for dpeg's unique system.
    int A = 2;
    const int B = 5;
    while (one_chance_in(A))
    {
        // In dpeg's unique placement system, chances is always 1 in A of even
        // starting to place a unique; reduced if there are less uniques to be
        // placed or available. Then there is a chance of uniques_available /
        // B; this only triggers on levels that have less than B uniques to be
        // placed.
        const mapref_vector uniques_available =
            find_maps_for_tag("place_unique", true, true);

        if (random2(B) >= (int)uniques_available.size())
            break;

        const map_def *uniq_map = random_map_for_tag("place_unique", true);
        if (!uniq_map)
        {
#ifdef DEBUG_UNIQUE_PLACEMENT
            fprintf(ostat, "Dummy balance or no uniques left.\n");
#endif
            break;
        }

        const bool map_placed = _build_secondary_vault(uniq_map);
        if (map_placed)
        {
            num_placed++;
            // Make the placement chance drop steeply after
            // some have been placed, to reduce chance of
            // many uniques per level.
            if (num_placed >= 3)
                A++;
#ifdef DEBUG_UNIQUE_PLACEMENT
            fprintf(ostat, "Placed valid unique map: %s.\n",
                    uniq_map->name.c_str());
#endif
            dprf("Placed %s.", uniq_map->name.c_str());
        }
#ifdef DEBUG_UNIQUE_PLACEMENT
        else
        {
            fprintf(ostat, "Didn't place valid map: %s\n",
                    uniq_map->name.c_str());
        }
#endif
    }

#ifdef DEBUG_UNIQUE_PLACEMENT
    fprintf(ostat, "--- Finished this set, placed %d uniques.\n", num_placed);
    fclose(ostat);
#endif
    return num_placed;
}

Blades Runner

Posts: 546

Joined: Saturday, 7th May 2011, 02:43

Post Monday, 24th February 2014, 06:39

Re: Number of uniques on a level

^ ie.

*50% chance of no uniques
* 50% chance of >=1 uniques
** 25% chance of >1 uniques
*** 12.5% chance of >2 uniques
**** 4% chance of >3 uniques
***** 1% chance of >4 uniques
****** 0.2% chance of >5 uniques
******* 0.03% chance of >6 uniques (the OP's situation. a 1 in 2880 chance.)
******** 0.005% chance of >7 uniques (1 in 20160)

(actual chances are reduced according to the number of uniques available to place, but AFAICS this wouldn't have kicked in in this instance.)

Ziggurat Zagger

Posts: 8786

Joined: Sunday, 5th May 2013, 08:25

Post Monday, 24th February 2014, 06:43

Re: Number of uniques on a level

Also because of the dummy balancer vaults.

Ziggurat Zagger

Posts: 11111

Joined: Friday, 8th February 2013, 12:00

Post Monday, 24th February 2014, 17:28

Re: Number of uniques on a level

Is there a similar limit on player ghosts?

I have a nice combo in my current game:
  Code:
Lair:5 derpling's ghost, powerful MiFi; dnasty's ghost, powerful DECj

Dis Charger

Posts: 2064

Joined: Wednesday, 9th January 2013, 19:44

Post Monday, 24th February 2014, 17:37

Re: Number of uniques on a level

Some uniques could have come from other levels and some could have fallen from shafts

Ziggurat Zagger

Posts: 8786

Joined: Sunday, 5th May 2013, 08:25

Post Monday, 24th February 2014, 17:51

Re: Number of uniques on a level

There is a limit of 10 ghosts on one level.

For this message the author duvessa has received thanks:
Sandman25

Return to Crazy Yiuf's Corner

Who is online

Users browsing this forum: No registered users and 189 guests

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.