Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0005710 [DCSS] Bug Report minor sometimes 2012-05-31 15:54 2013-05-28 03:14
Reporter neil View Status public  
Assigned To mumra
Priority normal Resolution done  
Status closed   Product Branch 0.11 ancient branch
Summary 0005710: Vault monster bands can block other monsters.
Description If the band is placed first, placing subsequent(*) monsters in the vault might fail because their spot has been taken. This is particularly noticeable for uniq_prince_ribbit2: 50% of the time, the blink frog band will be placed first, and then most of the time Prince Ribbit will not be placed.

The solution would probably be to place ordinary vault monsters and band leaders first (even in the same pass as features etc), and to place band followers second. That's kind of difficult to do in the current implementation, though.

* "Subsequent" in a top-down, left-to-right scan.
Additional Information
Tags No tags attached.
Attached Files

- Relationships
related to 0005412resolvedneil Vaults placing bands in constrained places can put members in walls 

-  Notes
(0021504)
mumra (developer)
2013-03-15 02:45

This seems relatively serious, a quick test in wizmode with this vault and prince ribbit failed to appear two tries out of three.

Running two passes is definitely extremely difficult, the point at which we even know whether we're placing a band is nested so deep within the monster spec functions.

A cheap alternative is to apply no_rotate and no_hmirror to the prince ribbit vault, this would ensure he always got placed first because his grid would come first. I can see this error cropping up again though.

A better option might be either allow band monsters to be overwritten by subsequent monsters placed, or have band monsters be pushed to the nearest empty space if a normal monster tries to place over it. If someone is cramming bands in a small space with other monsters, they're probably not too worried about extremely specific placement?
(0021507)
KiloByte (manager)
2013-03-15 03:55

What's the point of using the keyword "band" here? We can place the frogs explicitely just as well.
(0021508)
mumra (developer)
2013-03-15 04:01

Does "band" not affect their behaviour to stay more as a pack? (Or doesn't that matter here?)
(0021512)
KiloByte (manager)
2013-03-15 04:24

Ah right, good point. I'm not sure if this matters for frogs, though -- and they won't be attached to comrade Ribbit, in any case.
(0021515)
mumra (developer)
2013-03-15 04:39

One other consequence - the map is only 1x4 but band placement spreads the blink frogs out a lot further than that. I was wrong about how commonly this issue happens, but it's more likely if the vault places in a cramped space.

I don't want to make the vault really large (there are no other large unique placements, well apart from more elaborate vaults elsewhere) but it would look strange if he's bunched up in say a 3x3 space with some frogs. Might it be better to properly implement a "prince ribbit band"?
(0022059)
mumra (developer)
2013-04-01 01:52

I pushed a fix for this in trunk - Prince Ribbit now has a proper band so the Lair vault is implemented like other band vaults, and since he's the leader he'll always place. He still spawns solo outside of Lair though.

I'm going to close this issue because it's usually not such a problem, uniques place after everything else so they won't get overwritten by normal band generation, and vault designers will just need to be careful if they have specific monsters they don't want overwritten.

If this does come up again perhaps we could implement a flag to prevent band monsters generating in particular squares (perhaps no_monster_gen already achieves this?)

- Issue History
Date Modified Username Field Change
2012-05-31 15:54 neil New Issue
2012-05-31 15:55 neil Relationship added related to 0005412
2013-03-15 02:45 mumra Note Added: 0021504
2013-03-15 03:55 KiloByte Note Added: 0021507
2013-03-15 04:01 mumra Note Added: 0021508
2013-03-15 04:24 KiloByte Note Added: 0021512
2013-03-15 04:39 mumra Note Added: 0021515
2013-03-19 20:30 mumra Issue Monitored: mumra
2013-04-01 01:52 mumra Note Added: 0022059
2013-04-01 01:52 mumra Status new => resolved
2013-04-01 01:52 mumra Fixed in Branch => 0.12 development branch
2013-04-01 01:52 mumra Resolution open => done
2013-04-01 01:52 mumra Assigned To => mumra
2013-05-28 03:14 neil Status resolved => closed


Mantis 1.1.8[^]
Copyright © 2000 - 2009 Mantis Group
Powered by Mantis Bugtracker