4

While exploring on L8 (400' down), I met a certain serpent-tongued agent of a well-known wizard. Between his insults I was doing pretty well against him, until while chasing him down a hallway I fell through a trap door to the level below.

Obviously, I can't go back to the same dungeon level I was on. (Well, I can go back to the same depth, of course, but it's a whole new map.) But will I get another shot at finding and slaying this worm, or do unique characters like this spawn only once in a given game and then that's it? I'd really hate to let his slights about my mother stand, but I'd like to know if I'm just wasting my time hanging around or if I can push on deeper into the dungeon.

1 Answer 1

7

Looking at the source to Angband, we can figure this out. All lines and files are for version 3.5.0.

There are a couple of checks for creating a unique monster. They all try to make sure that uniques are actually unique. Each unique has its max_num set to 1 during game startup (birth.c:389)

One check for uniqueness is during monster placement (monster/mon_make.c:924). This happens whenever a new monster is considered for creation:

if (rf_has(race->flags, RF_UNIQUE) && race->cur_num >= race->max_num)
     return (FALSE);

The effect of this code is that if max_num is 1 (the default) only one copy of the unique can be in the game at a time.

The game manipulates max_num to keep unique monsters from respawning once killed. (monster/mon_make.c:1505)

m_ptr->race->max_num = 0;

Once max_num is 0, any attempt to place the monster into the game will fail.

Besides the game setting this value to 1 at startup and 0 when the unique has been killed, this value is touched nowhere else. Thus, if you encounter a unique and don't kill it, there is a chance that it will respawn. Obviously, you might have to generate many levels within the unique's possible spawning area in order to see it again.

The bottom line is that the game doesn't consider the unique out of play until you have slain it.

2
  • 1
    Source code: The ultimate in canonical sources! Thanks, now I just have to hope he spawns again some time soon -- I really don't want to let those comments about my mother stand!! :P
    – Kromey
    Jun 27, 2014 at 19:58
  • 1
    Already I have re-encountered (and now slain) the offensive little worm now. So that just confirms what the source code already proved!
    – Kromey
    Jun 28, 2014 at 0:56

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .