Remove stairway up


Although the central place for design discussion is ##crawl-dev on freenode, some may find it helpful to discuss requests and suggestions here first.

Mines Malingerer

Posts: 42

Joined: Sunday, 6th April 2014, 00:24

Post Monday, 20th June 2016, 12:24

Remove stairway up

Stairway up has no positive function in DC.Fleeing, wasting time, shopping!The only positive thing is, that the player can decide where to go next.

So DC without stairway up would have many advantages. The player would stay more focused on his task. Just what happens next! And no "should I..." thinking.

Here a possible solution:
Stairway down could be neutral and can lead to different parts of the dungeon. For example: The player is on Lair level 4.Has explored 11 dungeon levels. Found the orcish mines,swamp and snake pit. And now uses the stairway down. A message appears:
Decending to (press key)
(a)dungeon level 12 (b)Lair level 5 (c) orcish mines level 1 (d) temple (e) swamp level 1 (f)snake level 1

I would prefer when every level could be visit only ones. The fights would become greater. And no wasting time.

( stairway up appears when picking up the Orb)

Ziggurat Zagger

Posts: 11111

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

Post Monday, 20th June 2016, 12:57

Re: Remove stairway up

The change would make everyone play Makhleb in heavy armour. Poor conjurers/stabbers/nagas/octopodes/mummies/formicids. Luck would become more important because you would not be able to lose Rupert/Erolcha/Mara etc. without blinking/teleportation.

For this message the author Sandman25 has received thanks:
tach3

Mines Malingerer

Posts: 42

Joined: Sunday, 6th April 2014, 00:24

Post Monday, 20th June 2016, 13:15

Re: Remove stairway up

...on the other hand decending up and down is not a real fight... But I see, the missing fleeing option is a problem. Perhaps more blinking scrolls. Or there are"double runed" doors in every level that can not be opened by monsters. Or something like a resting room on every floor.

Ziggurat Zagger

Posts: 11111

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

Post Monday, 20th June 2016, 13:45

Re: Remove stairway up

If your intent is to nerf stairdancing and stairs in general, there are other options. For instance, Circus Animals fork stops PC when it uses stairs and gets any damage except from poison. Also no enemy can use stairs.
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Monday, 20th June 2016, 14:48

Re: Remove stairway up

It's true, up stairs are bad, but there's too much silliness in the game to get rid of them (see complaints about how bad characters become unviable without stair cheese). It's a design flaw that the game is deeply committed to unfortunately.
The Original Discourse Respecter

Mines Malingerer

Posts: 42

Joined: Sunday, 6th April 2014, 00:24

Post Monday, 20th June 2016, 14:52

Re: Remove stairway up

Sorry that my post is not so clear.
I have four points

-less running around in dungeon (my normal way through dungeon is down level 12, than up to Lair,down toLair 8,up to dungeon,down to orcish mine, down orcish mine 4, up to dungeon and lair, down to swamp...
- less thinking about previous level. I think it is an important point. Especially when the inventory is full. Or there is a shop on level 4 with a great weapon. (the player gets a bad feeling because he left behind a useful item... and maybe he should go up again and take it...(or spent much time to make a basis camp(...) ))
- a point of no return gives the player more adrenaline. A decision should be a decision.
- and nerf stairdancing (but the missing fleeing option would be a problem)

and point 5 the dungeon is not nice enough to spent my holidays there. So why should I wandering around

Dungeon Master

Posts: 3618

Joined: Thursday, 23rd December 2010, 12:43

Post Monday, 20th June 2016, 15:28

Re: Remove stairway up

It's a good idea, but Crawl is too big to slap the rule onto it.

Ziggurat Zagger

Posts: 4055

Joined: Tuesday, 10th January 2012, 19:49

Post Monday, 20th June 2016, 22:39

Re: Remove stairway up

You can't really remove up staircases without making crawl into a very different game. There are problems with stairs, but one of the fundamental design things with crawl is that you are (in theory at least) allowed a choice of where you want to go next.

For this message the author crate has received thanks:
PleasingFungus

Tomb Titivator

Posts: 885

Joined: Sunday, 28th June 2015, 14:44

Post Monday, 20th June 2016, 23:44

Re: Remove stairway up

There was an experimental god that did this: viewtopic.php?f=8&t=14463

For this message the author ydeve has received thanks:
Sandman25

Shoals Surfer

Posts: 300

Joined: Thursday, 1st May 2014, 13:13

Post Tuesday, 21st June 2016, 01:53

Re: Remove stairway up

I don't like stairs as they exist currently, because they are nearly always the best place to fight from and so encourage lots of luring and eliminate having to choose the best place to battle.

But it's hard to change stairs because they perform multiple functions. Here are some things that stairs let you do:

1. Separate enemies next to you from enemies not next to you, and take as much time as you want between those encounters.
2. Make enemies following you not follow you, as long as they aren't next to you.
3. Move between levels.

#2 and #3 are fairly essential to crawl. Players need a way to get between levels, and the ability to opt out of a fight that hasn't begun is important to its tactics. But #1 isn't so necessary-- there are other ways to split packs and handle groups of enemies.

So if stairs are going to be changed, I think it would require limiting or eliminating function 1 while preserving 2 and 3. I'm not really sure the best way to go about that. Perhaps if enemies are adjacent to you, enemies adjacent to them (and adjacent to them...) could follow you upstairs as well.

Blades Runner

Posts: 548

Joined: Monday, 23rd March 2015, 05:29

Post Tuesday, 21st June 2016, 02:42

Re: Remove stairway up

remove dungeon entrance, your character can't get in, goes to a tavern to play magic the gathering, and dies of acne

For this message the author yesno has received thanks:
Speleothing
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 02:44

Re: Remove stairway up

re: 3, it is not necessary to have stairs, or something much like stairs, to move between levels. Many other possibilities exist. For example, two adjacent levels could share a section of dungeon, some kind of vault, that allows you pass from one level to the other by walking from one entrance to another. Of course, it would be a major undertaking to add that to crawl.
The Original Discourse Respecter

Ziggurat Zagger

Posts: 4055

Joined: Tuesday, 10th January 2012, 19:49

Post Tuesday, 21st June 2016, 05:38

Re: Remove stairway up

two adjacent levels could share a section of dungeon, some kind of vault, that allows you pass from one level to the other by walking from one entrance to another

Like a staircase?

I don't see how you can implement this in a way that isn't effectively just a staircase, especially since crawl (for good reason) only keeps one level loaded and active at any time. So, any way to change from one floor to another is going to work like a staircase.

For this message the author crate has received thanks: 3
Arrhythmia, savageorange, Speleothing
User avatar

Barkeep

Posts: 1788

Joined: Saturday, 29th June 2013, 16:52

Post Tuesday, 21st June 2016, 06:04

Re: Remove stairway up

Well, you could always implement it as an "open world roguelike," with just a single huge floor. It would very quickly stop being Crawl, though (but it sounds like a cool idea/possible plan for MGSRL).

I think what DCSS-CA gets right is stopping monsters from following you, which has always seemed like cheap pack separation to me. They probably should just stay downstairs, and then get a big bonus to damage you if you come back down nearby. But as I say that, I feel like I've got to be forgetting some trick that makes this not work; stairs are hard.
User avatar

Ziggurat Zagger

Posts: 4478

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

Post Tuesday, 21st June 2016, 07:21

Re: Remove stairway up

In some roguelikes, you can't use stairs if there is a hostile monster next to you. Is there a reason why this wouldn't work in Crawl?
DCSS: 97:...MfCj}SpNeBaEEGrFE{HaAKTrCK}DsFESpHu{FoArNaBe}
FeEE{HOIEMiAE}GrGlHuWrGnWrNaAKBaFi{MiDeMfDe}{DrAKTrAMGhEnGnWz}
{PaBeDjFi}OgAKPaCAGnCjOgCKMfAEAtCKSpCjDEEE{HOSu
Bloat: 17: RaRoPrPh{GuStGnCa}{ArEtZoNb}KiPaAnDrBXDBQOApDaMeAGBiOCNKAsFnFlUs{RoBoNeWi
User avatar

Tartarus Sorceror

Posts: 1762

Joined: Monday, 14th October 2013, 01:05

Post Tuesday, 21st June 2016, 08:11

Re: Remove stairway up

There would definitely be situations where I would pillardance until monster became 1 tile away from me from energy randomization or attacking or whatever, then go to stairs
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 08:28

Re: Remove stairway up

crate wrote:
two adjacent levels could share a section of dungeon, some kind of vault, that allows you pass from one level to the other by walking from one entrance to another

Like a staircase?

I don't see how you can implement this in a way that isn't effectively just a staircase, especially since crawl (for good reason) only keeps one level loaded and active at any time. So, any way to change from one floor to another is going to work like a staircase.


It's weird how snarky you are about not understanding something. Where did you learn to talk this way?
The Original Discourse Respecter
User avatar

Ziggurat Zagger

Posts: 4478

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

Post Tuesday, 21st June 2016, 09:09

Re: Remove stairway up

Shard1697 wrote:There would definitely be situations where I would pillardance until monster became 1 tile away from me from energy randomization or attacking or whatever, then go to stairs

Sure, and currently you already do that if you don't want the monster to follow you.

However, if you were facing a group of monsters, you couldn't stairdance them. I still can't think why disallowing stair use when next to a hostile monster would be worse than the current situation.
DCSS: 97:...MfCj}SpNeBaEEGrFE{HaAKTrCK}DsFESpHu{FoArNaBe}
FeEE{HOIEMiAE}GrGlHuWrGnWrNaAKBaFi{MiDeMfDe}{DrAKTrAMGhEnGnWz}
{PaBeDjFi}OgAKPaCAGnCjOgCKMfAEAtCKSpCjDEEE{HOSu
Bloat: 17: RaRoPrPh{GuStGnCa}{ArEtZoNb}KiPaAnDrBXDBQOApDaMeAGBiOCNKAsFnFlUs{RoBoNeWi

Blades Runner

Posts: 546

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

Post Tuesday, 21st June 2016, 11:22

Re: Remove stairway up

goodcoolguy wrote:
crate wrote:Like a staircase?

I don't see how you can implement this in a way that isn't effectively just a staircase, especially since crawl (for good reason) only keeps one level loaded and active at any time. So, any way to change from one floor to another is going to work like a staircase.


It's weird how snarky you are about not understanding something. Where did you learn to talk this way?

What makes you think he misunderstood?
How about you explain one implementation there could be that is meaningfully different from a staircase, given the 'crawl only loads one level at once' constraint?
Just one.
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 11:31

Re: Remove stairway up

There is no such constraint, but anyway it is completely obvious that it is possible to implement something along the lines of what I suggested that would not be meaningfully equivalent to stairs as they exist now, even subject to the artificial constraint he brings up, which is why I have to think he didn't understand.
The Original Discourse Respecter

Blades Runner

Posts: 546

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

Post Tuesday, 21st June 2016, 11:42

Re: Remove stairway up

No, it isn't at all obvious to me; all ideas that occur to me merely 'don't look like a staircase' but 'function the same as a staircase'.

Nor is it obvious that such a constraint is not involved; given that you state that so definitely, you must have a citation on that, right?

For this message the author savageorange has received thanks: 2
Shard1697, ydeve
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 12:06

Re: Remove stairway up

If it wasn't clear from my first response to you, I am not impressed by your line of questioning here and this will be the last I have to say to you on the matter.

Crawl runs on modern computers and is written in C++. As a practical matter, this means there are few computational constraints that come into play in determining what can and can't be done. In particular, it is obvious that if one so chose, more than one level could be loaded into memory at a time or methods of simulating a smooth transition from one level to another without a definite break point like a staircase could be devised using only one map in memory at a time. Of course, depending on the details of what one wants to do, this could be, as I said in my first post, a "major undertaking."

You ask for clarification of what I meant and for details on how it could be implemented. If you had done so in a minimally civilized way, rather than as a schoolyard taunt, I would be more inclined to oblige. In any case, the relevant question is how or whether such a thing would offer a significant improvement over existing stair mechanics.
The Original Discourse Respecter

Blades Runner

Posts: 546

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

Post Tuesday, 21st June 2016, 12:24

Re: Remove stairway up

goodcoolguy wrote:Crawl runs on modern computers and is written in C++. As a practical matter, this means there are few computational constraints that come into play in determining what can and can't be done. In particular, it is obvious that if one so chose, more than one level could be loaded into memory at a time or methods of simulating a smooth transition from one level to another without a definite break point like a staircase could be devised using only one map in memory at a time. Of course, depending on the details of what one wants to do, this could be, as I said in my first post, a "major undertaking."

That is true (especially the 'major undertaking' part, AFAIK)
I mean, if you want to get into all that just to change level transitions, more power to you. But I don't think any current dev would volunteer to do it, even given a strong reason, which is why I think crate's statement is fully justified.

And as for my tone: I didn't realize I was coming across that way, but i did and do find it rather laughable that you assumed that crate was the one who had misunderstood your message, rather than you misunderstanding his.
Last edited by savageorange on Tuesday, 21st June 2016, 12:27, edited 1 time in total.

Cocytus Succeeder

Posts: 2297

Joined: Saturday, 14th April 2012, 21:35

Post Tuesday, 21st June 2016, 12:26

Re: Remove stairway up

goodcoolguy wrote:I am not impressed by your line of questioning here

Putting aside the manners of the other party, you cannot assume every reader of this sub-forum has a technical background.


Anyway, as you correctly stated, staircases are deeply embedded in crawl's code. The cost-benefit ratio for changing that doesn't weigh up. Better to make a new game with inspirations from crawl's open source code.

Blades Runner

Posts: 546

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

Post Tuesday, 21st June 2016, 12:39

Re: Remove stairway up

Though in this case the assumption would have been fully justified, my dev experience was exactly why I started the line of questioning.
Perhaps I should have just said 'that's simply infeasible, and essentially that's the meaning of what crate is saying about it too'.
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 12:45

Re: Remove stairway up

What I meant is that they're deeply embedded in the design and how people think of optimal play. I'm not sure what the cheapest substitute for crawl stairs would be from an implementation perspective, but I think it's worth discussing what the possibilities are. It's certainly helps no one to pretend there are no alternatives. If people are serious about the issues of luring and stairdancing, this sort of thing should be on the table.
The Original Discourse Respecter

Blades Runner

Posts: 546

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

Post Tuesday, 21st June 2016, 13:05

Re: Remove stairway up

That's a fair point, too.

Maybe we could backtrack a bit. "embedded in the design" made me think of things like zombies and ghosts, which have the 'does not climb stairs' tag. In a stairs-less ('pseudo-continuous', I guess) dungeon, what would be appropriate to do with them? Do they need to be restrained to a limited area? That would probably be more interesting than the current limitation, but might be hard to do in an un-spoily way.
(similarly, spells and god powers that create zombies or other 'does not climb stairs' creatures)
User avatar

Tartarus Sorceror

Posts: 1762

Joined: Monday, 14th October 2013, 01:05

Post Tuesday, 21st June 2016, 14:01

Re: Remove stairway up

Any monsters that are constrained to a certain area that do not attack primarily with ranged are free(sometimes tedious) experience. Hence why giant goldfish and other similar monsters no longer exist.
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 14:07

Re: Remove stairway up

Having thought a bit more about this and having taken a glance at the stairs code, I have a few more things to say about how this could work, including the issue of ghosts and derived undead.

First, the way I think this would be best done is by defining an auxiliary level, call it a mezzanine, for bookkeeping. A mezzanine would consist of a central vault, a piece of the first level, and a piece of the second level. The vault should have two entrances that connect to the two pieces of dungeon level, unbreakable walls, and should block line of sight between tiles from different levels (think S-shapes, U-shapes, spirals etc.). Each of the two levels would have corresponding vaults in them, modified so that unbreakable walls enclose the entrance to the other level to prevent digging issues. The pieces of the two levels in the mezzanine are just the set of tiles within a certain range of the corresponding entrances. You would want the distance to be a bit more than maximum line of sight. When the player steps into the vault (i.e. on a tile in the vault), it acts like a teleport portal and moves them to the mezzanine level along with all monsters and items from the pieces of the two levels involved in the transition. Of course, these map to tiles in the mezzanine in an obvious way. The player would not be informed of this internal manipulation, except probably by changes in the minimap, which would fine I think. Similarly, when the player steps out of the vault in the mezzanine level, he and all monsters in the vault and in the corresponding piece of level are moved into the appropriate dungeon level. I believe this can be done within the current level loading system without a huge amount of extra code, though it would have some interactions with other systems, notably autotravel. Various other details like what to do about random teleports would have to be considered as well. The main point is that you never need to load more than one level at a time and much of the action can be done with existing code for moving the character between levels and so on.

This is not very much like current crawl stairs in that there's never a tactically valuable breakpoint where monsters can no longer follow you (anything that gets cut off is already out of line of sight range) and your line of sight varies in the same way it does anywhere else in crawl. There's no huge change in the set of tiles you can see. Therefore, this kind of transition is much less desirable as a location to fight than a staircase and therefore encourages long range luring much less.

As for zombies and such, I would suggest not letting them cross into the vault unless attacked from inside it. Seems reasonable to let the player decline the protection offered by the vault. Would probably have to apply the same to any other undead in line of sight when the attack is made to prevent silly separation tactics. I'm sure there are other ways to go about it too, e.g. removing zombies and friends...
The Original Discourse Respecter

Ziggurat Zagger

Posts: 11111

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

Post Tuesday, 21st June 2016, 14:18

Re: Remove stairway up

How is it different from stairs which were modified to move monsters in view along with you? If there is some indicator on those vault tiles which trigger "teleport to another level", you just changed stairs to take more than 1 tile. If there is no indicator, that's like multi-tile shaft.
I don't see how the construction solves any problems with current stairs.

For this message the author Sandman25 has received thanks: 3
all before, Shard1697, ydeve
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 14:59

Re: Remove stairway up

The monsters move to a level that looks exactly like your surroundings when you enter the vault and they move to exactly the corresponding tiles in the new identical looking level. To the player, it doesn't look like any teleportation actually happened, it's purely an internal bookkeeping device. It's just like taking a step anywhere else, except that you've entered a hallway or something that leads to another dungeon level instead of a place on the same dungeon level.

The point is that this kind of stair replacement does not allow you to cheaply separate monsters or break line of sight with monsters in a way that's not possible anywhere else. It's not especially favorable terrain, so you don't get a huge advantage by luring to it. It is impossible to stairdance with this kind of level transition. I mean, maybe there's other problems that aren't immediately obvious, but it definitely avoids some design issues with stairs.
The Original Discourse Respecter

Ziggurat Zagger

Posts: 4055

Joined: Tuesday, 10th January 2012, 19:49

Post Tuesday, 21st June 2016, 15:02

Re: Remove stairway up

So uh I actually don't see how you can implement your not-a-staircase level change thing that isn't effectively a staircase. Your mezzanine suggestion really sounds like a staircase to me. You step on a tile and it takes you to a different level. That's a staircase (or portal, crawl already has those). Moving monsters along with the player is not making it different from a staircase, it's just changing how staircases function. Moving monsters with the player more liberally been suggested several times, and I don't think it solves the problems with staircases, it just changes what those problems are.

Maybe my confusion earlier makes sense now? Unless you have other levels than the current one activated (which would probably solve the problem, but keeping thousands of monsters activated is not a good idea), I legitimately don't see how you can implement something that is functionally different from staircases.
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 15:16

Re: Remove stairway up

You get that my description is intended show how this thing can be implemented in terms of existing code, right? Picking at implementation details is just refusing to look at how it plays.

See, a portal doesn't take monsters with you. It doesn't leave your surroundings the same. A staircase takes monsters with you, but into a new surrounding and it takes them in a very specific, limited way. Since there is no correspondence between what's on two sides of a staircase, analogous mechanics don't even make sense in the context of stairs. By contrast, this mezzanine thing makes a level transition play like moving through a vault or a hallway. It is entirely unlike stairs or portals. The sole, very obvious, similarity is that you move from one level to another. If that's what you were or are getting at... why are you posting about it?
The Original Discourse Respecter

Ziggurat Zagger

Posts: 4055

Joined: Tuesday, 10th January 2012, 19:49

Post Tuesday, 21st June 2016, 15:19

Re: Remove stairway up

The single thing stairs must do is change levels. That's a staircase. Making monsters come with the player has been suggested many times before. Sure, you can change what the levels on the ends of the stairs look like (I mean, tomb already has this correspondence) but that doesn't really do much.

For this message the author crate has received thanks: 2
Sandman25, ydeve

Crypt Cleanser

Posts: 747

Joined: Friday, 6th January 2012, 12:30

Post Tuesday, 21st June 2016, 15:43

Re: Remove stairway up

I think calling the mezzanine thing a stair is pointless given how different from a stair it is. It's the opposite of stairs. The 2d floor plane goes on forever.

In practice I think it's fairly similar to "when you use a stair all monsters in LOS can follow through the stair over the course of a few turns". That would be much easier to implement. But it's more exploitable too, if for example the stair exit is in a hallway, but in the end that's just using terrain to your advantage and not really a bad thing.

But regardless of gameplay similarities, don't call it a stair because if you do you're calling any smooth (unnoticeable) level transition in any game a stair.

For this message the author Wahaha has received thanks:
goodcoolguy

Ziggurat Zagger

Posts: 11111

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

Post Tuesday, 21st June 2016, 15:47

Re: Remove stairway up

That mezzanine thing is equivalent to stairs which take 0 turns to use and also instantly bring all monsters in view to new level without changing their position relative to player.

For this message the author Sandman25 has received thanks:
ydeve
User avatar

Tartarus Sorceror

Posts: 1698

Joined: Saturday, 18th June 2016, 13:57

Post Tuesday, 21st June 2016, 15:51

Re: Remove stairway up

Having stairs allow all monsters in LOS to follow the PC, appearing one by one on the upper floor after those adjacent to him, would make stairdancing less safe and give it more of a tactical value, as it would give some initial breathing room, but also allow packs to reunite on a different terrain. If there aren't corridors near the stairs in the upper level, the advantage for the player wouldn't be as big as it is right now.
It would make places like V:5 more deadly, but also less boring. On the other side, it could bring stairdancing to a new level, allowing to lure dozens of monsters at a time and spreading them across different floors. All in all, however, it would be less repetitive than how it is right now.
I Feel the Need--the Need for Beer
Spoiler: show
3DSBeTr 15DSFiRu 3DSMoNe 3FoHuGo 3TrArOk 3HOFEVe 3MfGlOk 4GrEEVe 3BaIEChei 3HuMoOka 3MiWnQaz 3VSFiAsh 3DrTmMakh 3DSCKXom 3OgMoOka 3NaFiOka 3FoFiOka 3MuFEVeh 3CeHuOka 3TrMoTSO 3DEFESif 3DSMoOka 3DSFiOka

Dungeon Master

Posts: 3618

Joined: Thursday, 23rd December 2010, 12:43

Post Tuesday, 21st June 2016, 16:02

Re: Remove stairway up

As far as I am aware, staircase functions have never been fundamentally discussed within the devteam. (There were some smaller changes, such as the free move when first visiting a level.) Here are some thoughts on the matter, but it's not polished:

  1. I assume we will keep discrete permanent levels, connected by stairs.
  2. The Brogue solution: monsters follow you across stairs, even if they're not adjacent. Solves some problems with stair dancing, but not all of them.
  3. The Nethack solution: monsters never follow across stairs. Solves some problems, but not all of them.
  4. For 2. and 3., one issue is that you can generally take another staircase to avoid the mess you left at the current one.
  5. A general improvement: staircases are always surrounded by eight floor tiles (altars or other staircases are also okay: anything where monsters can step onto). This requires looking through a lot of vault maps, but I am sure it's worth the trouble.
  6. This is part of my anti-luring programme: I believe monsters should be aware (and hence awake) if you lure them. I treat stairdancing as luring for this purpose. Going down another staircase could make those monsters wait for you *right there*, all aware of you, and possibly with other monsters from the level around as well.
  7. The other side of the coin: if you leave a level, and come back much later, the game should assess how threatening its inhabitants are. If threat is small, I suggest to remove those monsters (costing you some xp and piety). In other words, you have one guaranteed shot at a level's xp, but if you postpone it, this may go down. (I'd also change how post-level generation monsters are added.)
User avatar

Blades Runner

Posts: 546

Joined: Friday, 2nd October 2015, 14:42

Post Tuesday, 21st June 2016, 16:07

Re: Remove stairway up

Wahaha wrote:I think calling the mezzanine thing a stair is pointless given how different from a stair it is. It's the opposite of stairs. The 2d floor plane goes on forever.

In practice I think it's fairly similar to "when you use a stair all monsters in LOS can follow through the stair over the course of a few turns". That would be much easier to implement. But it's more exploitable too, if for example the stair exit is in a hallway, but in the end that's just using terrain to your advantage and not really a bad thing.

But regardless of gameplay similarities, don't call it a stair because if you do you're calling any smooth (unnoticeable) level transition in any game a stair.


Thanks, that puts it pretty well. The geometric picture is a little more like a bunch of parallel planes with some holes cut in them and some strips connecting the holes somehow, but whatever.

As an aside, I think we should be suspicious of moving more monsters up and down stairs with the player, especially all monsters in line of sight. Depending on how it's done, you either get scumming problems (trying to get the monsters to come up in the "right order" in a corridor for example if it's randomized), spoiler problems (you can always figure out how the monsters will come up and it's inevitably complicated but valuable knowledge), or the ability to undo what you've done if you try to make the operation invariant under using the stairs twice to avoid scumming or whatever.
The Original Discourse Respecter

Cocytus Succeeder

Posts: 2297

Joined: Saturday, 14th April 2012, 21:35

Post Tuesday, 21st June 2016, 16:10

Re: Remove stairway up

crate wrote:Unless you have other levels than the current one activated

The crux of that mezzanine suggestion IS to have 2 levels active at once: while you're standing in the 'middle zone', both 'floors' on either end are active at once. Therefore monsters can (for the brief time it takes you to get off the mezzanine on the other end) continue to come 'from the previous floor' after you've 'exited' that floor but yet to 'enter' the other floor.

Now expand that 'mezzanine' until it's half the floor and you effectively have continuous scrolling with a wide perimeter of active tiles outside LoS. We are now stepping well away from crawl territory but this thread is pure exploratory brainstorm.

crate wrote:(which would probably solve the problem, but keeping thousands of monsters activated is not a good idea)
His point was "not a good idea back then, but computational resources are better these days than when crawl was born".

dpeg wrote:
  1. I assume we will keep discrete permanent levels, connected by stairs.
  2. The Brogue solution: monsters follow you across stairs, even if they're not adjacent. Solves some problems with stair dancing, but not all of them.
  3. The Nethack solution: monsters never follow across stairs. Solves some problems, but not all of them.
  4. For 2. and 3., one issue is that you can generally take another staircase to avoid the mess you left at the current one.
  5. A general improvement: staircases are always surrounded by eight floor tiles (altars or other staircases are also okay: anything where monsters can step onto). This requires looking through a lot of vault maps, but I am sure it's worth the trouble.

What if the game took a 'snapshot' of the visible monsters (that are aware of you) when you leave the level and then have them come out of the stairs in subsequent turns? In other words...

Turn N: you climb stairs with monsters A, B, C and D in view. None of them were adjacent to you when you started climbing stairs.
Turn N+1: Monster A emerges from the stairs. It had been at distance 2 to you when you started climbing the stairs from the previous floor.
Turn N+3: Monster B emerges from the stairs. It had been at distance 4 when you climbed.
Turn N+4: Monsters C and D emerge from the stairs. Both were at distance 5 when you climbed.

Kind of like how Recall slowly brings your allies over if you have a huge army of followers.

Ziggurat Zagger

Posts: 4055

Joined: Tuesday, 10th January 2012, 19:49

Post Tuesday, 21st June 2016, 18:01

Re: Remove stairway up

Wahaha: My point is that from a gameplay standpoint the mezzanine thing is basically the same as stairs. You even say as much in your post! Having it look or be structured differently doesn't do anything to solve the problem that this topic is talking about.

It [having monsters follow more liberally via stairs] would make places like V:5 more deadly, but also less boring

Actually it would make v:5 a lot less deadly (except in the case of stair-sealing, but obviously it is identical in that case). You get the attention of the monsters, then draw them upstairs to a much better terrain. This is kind of bad right now because all the monsters you drag upward get 2 free melee attacks on you, plus anything in your los can hit you with ranged attacks while you wait for the dudes you want to draw upward to get next to you. With always-follow monsters, you take a lot less damage while drawing them upward. I would suggest this also makes v:5 more boring.

Hence, this just causes different problems.

Shoals Surfer

Posts: 300

Joined: Thursday, 1st May 2014, 13:13

Post Tuesday, 21st June 2016, 18:25

Re: Remove stairway up

Having all monsters, awake or in los, follow you upstairs is bad because it doesn't allow you to use stairs to escape from non-adjacent monsters (what I called function 2 above). The idea that "you don't have to fight all encounters" is pretty fundamental to crawl.

For this message the author all before has received thanks: 2
Sandman25, ydeve

Shoals Surfer

Posts: 300

Joined: Thursday, 1st May 2014, 13:13

Post Tuesday, 21st June 2016, 18:27

Re: Remove stairway up

dpeg: i like your idea 5!

Sar

User avatar

Ziggurat Zagger

Posts: 6418

Joined: Friday, 6th July 2012, 12:48

Post Tuesday, 21st June 2016, 19:51

Re: Remove stairway up

guys what if we replace all stairs with hatches and whatever that reverse-hatch thingy is called

Shoals Surfer

Posts: 325

Joined: Tuesday, 13th October 2015, 06:02

Post Saturday, 25th June 2016, 08:18

Re: Remove stairway up

Could make it so you can't actually attack on the stairs. Then there is a risk a monster may or will by design stand on the stairs, to keep the player from escaping.

Could make it so you can't traverse steps with a monster adjacent while on the steps. the monsters might shank your ankles on the way up.

The idea being to keep the player from wanting to fight near the steps.

Ziggurat Zagger

Posts: 8786

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

Post Saturday, 25th June 2016, 08:50

Re: Remove stairway up

dpeg wrote:The Nethack solution: monsters never follow across stairs. Solves some problems, but not all of them.
Lots of monsters in NetHack follow players across stairs.
Psieye wrote:
crate wrote:(which would probably solve the problem, but keeping thousands of monsters activated is not a good idea)
His point was "not a good idea back then, but computational resources are better these days than when crawl was born".
Crawl has also grown to be more computationally complex. Keeping thousands of monsters activated would still be a serious problem for performance unless large parts of the codebase were rewritten. You would have noticeable lag even in local games, and it'd practically shut down the current public servers. You can infer this without even looking at the code: notice how long it takes for the '5' command to finish on some levels.
User avatar

Tomb Titivator

Posts: 911

Joined: Thursday, 17th December 2015, 02:36

Post Saturday, 9th July 2016, 23:06

Re: Remove stairway up

Something like the mezzanine, if I understand it correctly, is partially in the game already! The way the abyss works, (just mmap it in wizmode,) it generates new terrain when you come close to the map's edge, and destroys terrain on the other side, moving the player character to the middle of the new map. The mezzanine has to do that, except the terrain must be finite and persistent, which the abyss isn't.

  Code:
row 1)                        # level 1 #
row 2) PART OF LEVEL 1 ONLY > #         # < if you're here, the game considers you to be on level 1
row 3) PART OF LEVEL 1 ONLY > ##### ##### < if you're here, the game considers you to be on level 1
row 4) PART OF LEVELS 1 & 2 > #### ###### < if you're here, the game considers you to be on level 1
row 5) PART OF LEVELS 1 & 2 > ##### ##### < if you're here, the game considers you to be on level 2
row 6) PART OF LEVEL 2 ONLY > #### ###### < if you're here, the game considers you to be on level 2
row 7) PART OF LEVEL 2 ONLY > #         # < if you're here, the game considers you to be on level 2
row 8)                        # level 2 #


the rows labelled "part of levels 1 & 2" would be the mezzanine. So, you step onto the current map's edge, and end up on the other level. Of course other shapes can be used. Big shapes. Spirals. Tunnels. And they would be considered terrain of both levels, with a boundary where the previous level deactivates and the new level activates. (Just stretch out the above diagram, for an example.) If you want, you can place these mezzanines anywhere on a level, not just the edge:

  Code:
row 1)          example of small mezzanine
row 2)
row 3)             ##                ###
row 4)             #>##              #>#
row 5)              #<#              ##<#
row 6)              ###                ##

                  level 1           level 2

(the # must be "unnaturally hard" of course)


You basically have one large, continuous game-world, which I find appealing.

Note tho, in my diagrams, if the player moves from row 4 to row 5, and the level changes from 1 to 2, then row 4 is empty, and there are no monsters adjacent to it on the new level, so no monster is going to move there. I like that.

If you want monsters to follow the player around, even with my killhole-mezzanine example, you can "freeze" not all other levels, as is done currently, but instead, everything beyond a particular radius/distance, such as 30 tiles, or current+adjacent levels. Computation is kept manageable. Monsters could follow freely, and this is an improvement over most "making monsters come with the player" suggestions, because it does not introduce any new and arbitrary rules for how stairs function.

Such "freezing" tends to cause problems in some games, but may not be a big deal in Crawl, since there's not much you can do to manipulate monsters farther than 30 tiles away from you.

Return to Game Design Discussion

Who is online

Users browsing this forum: No registered users and 53 guests

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