The running algorithm in Unangband does this correctly as far as I can tell. The only exception is for wilderness paths, which coincidentally are the corridors I stole from FAAngband. I didn't want to get too much into the running navigation issue, as I think I've solved it for the majority of corridor types, and it's the most common issue with unusual corridors, so everyone was going to bring it up.
Andrew
The Angband dungeon generation discussion thread
Collapse
X
-
I can't pull it up right now to look at it, but from what I recall, what turned me off was:
* Corridors are wide and irregular, so to make certain I reveal the walls I have to walk slowly along them, bouncing from one wall to another.
* The run algorithm has been tweaked to make it possible to run down these corridors without getting stopped repeatedly, but these tweaks have the side-effect that it makes decisions "for" you that I don't anticipate. Thus, I try to run to a particular area, and end up taking a detour to an entirely separate location.
It's been a month or so since I last played FA, though, so don't take my words as any kind of gospel.
In fact, not breaking running in corridors was in my mind as the first thing to be careful about with dungeon generation changes.Leave a comment:
-
AndrewLeave a comment:
-
Crawl has quite an intelligent auto-explore mode that seems to map corridors and nooks well without doing anything you wouldn't expect. It wouldn't surprise me if some Angband variants had something similar. That said, I feel about corridors a bit like I feel about terrain: I'm not sure the gain is worth the additional hassle.
So I abandoned auto-xplore for Hellband at that point.
T.Leave a comment:
-
So I failed to check the Development forum before posting a response on the balance thread. Here it is:
So, here is the 5 second overview of what I was hoping to do (I'm going to lay out the things I want with the understanding that some of them can be stolen from Leon's patch):
1. Circular or other interestingly shaped rooms
2. Better "high-level" control of room placement
3. Distinct "level feels" e.g. cave levels, maze-levels, more-or-less open-feeling levels, etc.
4. More explicit determination of how "good" a level is, in terms of explicitly deciding whether to place vaults, how many, etc, etc "up front"
5. Try to vary dungeon size in interesting ways
Basically, after creating a patch to vary dungeon-size I got (at least somewhat rightly) smacked by PowerDiver for drastically changing the likelihood of finding greater vaults, based on the reduced chance that the generation algorithm would have room to place them (as well as some other more minor issues).
So my idea was to try to determine "interesting" things, like vaults, weird rooms, level difficulty (mabe generation of unique or OOD monsters) first, and then do all the boring stuff like connecting them with corridors or placing boring rooms. I think this would make useful level feelings possible, and it would also make the quality of a level less based on its size.
Whew. That was more than 5 seconds.
I can start a thread if people want to sound off on this.
I also think it would be nice to be able to dial down (or up) the size and complexity of corridors versus rooms--the current dungeons are basically OK as an average (maybe a little corridor heavy) but get kind of boring and repetitive.
I think for Vanilla the best thing is to have lots of interesting stuff, and have it done in such a way that variants who want to steal from it can easily tweak things to get the behavior they want, rather than rewriting everything from scratch (which I believe is often what has happened). Thus it would be nice for V to have themes even if it didn't make as much use of them as variants might.Leave a comment:
-
Crawl has quite an intelligent auto-explore mode that seems to map corridors and nooks well without doing anything you wouldn't expect. It wouldn't surprise me if some Angband variants had something similar. That said, I feel about corridors a bit like I feel about terrain: I'm not sure the gain is worth the additional hassle.Leave a comment:
-
I can't pull it up right now to look at it, but from what I recall, what turned me off was:
* Corridors are wide and irregular, so to make certain I reveal the walls I have to walk slowly along them, bouncing from one wall to another.
* The run algorithm has been tweaked to make it possible to run down these corridors without getting stopped repeatedly, but these tweaks have the side-effect that it makes decisions "for" you that I don't anticipate. Thus, I try to run to a particular area, and end up taking a detour to an entirely separate location.
It's been a month or so since I last played FA, though, so don't take my words as any kind of gospel.Leave a comment:
-
-
Caution needs to be taken while designing new corridor types to ensure that they aren't a royal pain to explore. The player should be able to run down corridors without either a) failing to reveal a tile that is part of the corridor, or b) being disturbed by something that is not the end of the corridor. FAAngband has new corridor generation, and I don't like it because of these issues. The running algorithm also got tweaked to try to be "smarter", with the net result being that I try to run down a corridor to get somewhere and get taken on this massive detour by the game instead.
I've yet to see something done with terrain that I think is actually worthwhile. Most uses that aren't just colored floors and walls turn special terrain into damage fields, which I don't find particularly interesting. ToME makes the additional mistake of having elemental attacks create damage fields (e.g. fireballs can create lava and frost breaths can create ice) -- barring the absurdity of a Giant Salamander's breath creating a pool of lava, this makes key attack spells very annoying for the player to use. Particularly, cold spells before the player gets levitation, since the ice fields can cause you to "slip" and move in a different direction from the one you intended.Leave a comment:
-
Some greater room variety would be good (shapes/size), but keep the rarity in check. I think large or open rooms get old pretty fast when you see them on every level.
Similarly, dungeon levels that get flooded with corridors are annoying and ugly. V does a good job of avoiding swiss cheese, some variants do not. That said, I wouldn't mind some levels that use primarily corridors (maze/labyrinth style).
I don't really like wider corridors because it feels like rooms connecting rooms, but again with sufficient rarity they could mesh well. I also tend to dislike rooms and corridors with excessively ragged edges because exploring them is time consuming. A little bit of judgement in their design would make them tolerable.
I never really got terrain. Do any variants do anything more interesting with it than drown in water / lava burns you / poisonous plants? Maybe you could have some types with non-damage effects like short-range aggravation (walking on dry leaves) or temporary minor slow-down (walking through thick underbrush). I will say I don't like the varying strength of terrain like in ZAngband, where you have shallow water and deep water scattered about randomly in a body of water. It is somewhat tedious to cross while taking minimal damage.
I actually like valuts from templates, but you could probably do a good job of procedurally generating them. My concern would be to keep them interesting with enough density, chambers, corridors, symmetry about various axises, etc.Leave a comment:
-
Great topic, here's my 2 cents.
new corridors (assume a running algorithm which can handle all these corridor types): wider corridors, pillared and ragged edged corridors, corridors drawn via projection algorithm (straight or ragged), changing corridor generation to limit the maximum length of straights, cave-like corridors, guaranteed dungeon connectivity via corridors, hints inside a room as to secret door location, secret areas of the dungeon Andrew
This I like. If I may borrow from an 80's game whose key character was *Cough* a minstrel *Cough*, there is a lot that can be done to dungeon floor areas. There could be areas/corridors of hidden runes that can be detected but not disarmed and walking through them would sap hp or mana. The opposite is true, there could be sanctuary areas that increase them. Also, there could be areas that knock out your defenses or dim your lights. Just ideas from the past.Leave a comment:
-
I doubt either of these are 'Vanilla' ideas but I think that a rarely occurring maze level would be cool. One way in and only one way out, no rooms, heavily trapped, and themed monsters. I'm also in favor of persistent levels as you described them.
In general though, I'd just like more variety. When I play FA, I notice the difference, and I like it. Even if you don't want to make radical changes, having several different 'standard' dungeon generation routines would be help. I'd like things to appear fairly normal at first glance, but then would turn out to be something unexpected. Too many room and corridor layouts are entirely predictable. I mean, even without MM, you know where the secret doors are 95% of the time (locked/trapped doors that require keys or picks might be more fun). Pits and many other standard room types aren't much harder to figure out. You can just sense them once you get close enough, even by torchlight, boring.
As an afterthought, how about levels where the various forms of detection don't function, or are limited (with appropriate added incentives, higher XP, better drops).Last edited by buzzkill; December 23, 2009, 14:54.Leave a comment:
-
The question is what of the [below] is worthwhile including in Angband, and what should be kept in variants?new room shapes (there are algorithms for most of these in other variants) - overlapping rooms (2 rectangles of varying sizes), fractal caves, cellular automata caves, starburst caves, chambers (a number of rooms tightly linked together), delved caves/burrows, mazes, polygonal / irregular concave rooms, conic section rooms, towns, castles, huge rooms, open regionsvaults: support for more variety of vault contents, rotation / flipping of vaults, 'interesting rooms' which are weaker than lesser vaults, more predictable vault rarity, procedurally generated vaults instead of template generated vaultsmonster pits: greater variety, smaller pits, spaced out placement in pits, monster ecologies so that only certain types of monsters are generated across one or more other room typesnew room contents: themed treasure, objects, monsters, more ways of associating different monsters with each other (insects, warriors, fire elementals etc), monsters with predictable drops, text descriptions, special regions that prevent item use, spell casting, archery etc, traps with triggerable regions, more variety of trap types, wall and floor decorationsnew corridors (assume a running algorithm which can handle all these corridor types): wider corridors, pillared and ragged edged corridors, corridors drawn via projection algorithm (straight or ragged), changing corridor generation to limit the maximum length of straights, cave-like corridors, guaranteed dungeon connectivity via corridors, hints inside a room as to secret door location, secret areas of the dungeonnew terrain types: water, lava, acid, fire, chasms, ice, lakes, rivers, waves, flooded rooms and corridorsdungeon themes: select only some of the above elements for a level in the dungeon in a way that relates them to each other, multiple dungeon branches, multiple dungeons, wilderness levelsguaranteed interesting stuff on a level: improved feelings, auto-scum always on, guaranteed out of depth monsters / objects / vaults, quests, guaranteed resources (food, light, healing, recall)persistent levels: where taking a previously used stairwell take you to the old connecting level, but unused stairwells in the same direction take you to a new level (cf Entroband/Hengband)monster ai: patrols, preferred regions, scent trails, foot prints, predator / prey relationships, different ways of moving around the dungeon (flying, swimming, crawling, oozing)Leave a comment:
-
The Angband dungeon generation discussion thread
Hi,
I don't want to pre-empt the work that d_m is doing on dungeon generation, but I figured it'd be worth starting a thread to discuss what people want from dungeon generation in Angband. Rather than voice an opinion here, I'm going to do more of a 'lay of the land' discussion to start things off - what can we achieve with dungeon generation vs what we should do for Angband.
Firstly, it's important to point out, that with a couple of exceptions, dungeon generation works surprisingly well in Angband. I say surprisingly, because there is no guarantee of connectivity at all, and yet almost all dungeons are generated connected. I also don't remember seeing too much in the way of complaints ever about directly about dungeon generation from people who play the game a lot - the exception being with the level feelings system, which does need some kind of revision or re-examination. Timo's complaints are more to do with the probabilities of interesting vs. non-interesting stuff occuring on a level. That's one important aspect of dungeon generation, but most people who spend time coding dungeon generation in variants spend as much time working on things like new room generation, as the distribution of monsters and objects.
The key areas for considering improvement I can see are - remember, not all of them are going to be 'good' for Angband:
new room shapes (there are algorithms for most of these in other variants) - overlapping rooms (2 rectangles of varying sizes), fractal caves, cellular automata caves, starburst caves, chambers (a number of rooms tightly linked together), delved caves/burrows, mazes, polygonal / irregular concave rooms, conic section rooms, towns, castles, huge rooms, open regions
vaults: support for more variety of vault contents, rotation / flipping of vaults, 'interesting rooms' which are weaker than lesser vaults, more predictable vault rarity, procedurally generated vaults instead of template generated vaults
monster pits: greater variety, smaller pits, spaced out placement in pits, monster ecologies so that only certain types of monsters are generated across one or more other room types
new room contents: themed treasure, objects, monsters, more ways of associating different monsters with each other (insects, warriors, fire elementals etc), monsters with predictable drops, text descriptions, special regions that prevent item use, spell casting, archery etc, traps with triggerable regions, more variety of trap types, wall and floor decorations
new corridors (assume a running algorithm which can handle all these corridor types): wider corridors, pillared and ragged edged corridors, corridors drawn via projection algorithm (straight or ragged), changing corridor generation to limit the maximum length of straights, cave-like corridors, guaranteed dungeon connectivity via corridors, hints inside a room as to secret door location, secret areas of the dungeon
new terrain types: water, lava, acid, fire, chasms, ice, lakes, rivers, waves, flooded rooms and corridors
dungeon themes: select only some of the above elements for a level in the dungeon in a way that relates them to each other, multiple dungeon branches, multiple dungeons, wilderness levels
guaranteed interesting stuff on a level: improved feelings, auto-scum always on, guaranteed out of depth monsters / objects / vaults, quests, guaranteed resources (food, light, healing, recall)
persistent levels: where taking a previously used stairwell take you to the old connecting level, but unused stairwells in the same direction take you to a new level (cf Entroband/Hengband)
monster ai: patrols, preferred regions, scent trails, foot prints, predator / prey relationships, different ways of moving around the dungeon (flying, swimming, crawling, oozing)
I'll add stuff as it comes to me. The question is what of the above is worthwhile including in Angband, and what should be kept in variants?
AndrewTags: None
Leave a comment: