Above ground z-levels, why are they not in yet?

Simply put, caves function differently than towers.

What is it you think functions differently?

There are lazy hacks which work for caves and rock, but poorly for sky.

Like what?

The code was submitted as a [url=https://github.com/TheDarklingWolf/Cataclysm-DDA/pull/811]pull request[/url] at one point, and the comments there give a bit more detail about what needs work.

Do you mean monsters corpses not transferring to lower levels when they fall down? Is there anything else?

Monsters don’t “fall down” when underground either, in missile silo. They never did, so how’s that a problem all of a sudden? You have some actual problems with z-levels, like monsters not using stairs properly, which I offered to explain how to fix without any interest. Anyway, making them fall down a level is trivial and not even necessary. Plus, it’s monster/trap code which needs to handle it, thus it’s irrelevant to inclusion of above ground z-levels code.

There is no good reason not to merge working code even if implementation is bare bones proof of concept. Let people taste it, they will give you the best pointers where to go from there and you can always expand on it later, which is easy when basics are working and has no impact on the rest of the game. On the other hand what you shouldn’t be merging are half-baked re-writes leaving you with more bugs than in previous release and breaking even things that were working before, impacting the game as a whole. Your criteria what to merge and what not to merge is unreasonable and unproductive, it’s all up side down.

[ul][li]Are they absolutely essential to gameplay as is?[/li][/ul]

umm, nope. works fine with out em.

[ul][li]Are they on the list of things to be worked on?[/li][/ul]

umm, yea, seems to be.

[ul][li]Are the devs considering all of the possible problems with multi-level buildings and the possibilities that adding them to the game would bring? [/li][/ul]

umm, another check.

[ul][li]Have you been nice in your proposal of your own code and how it may affect other users (other people than yourself)[/li][/ul]

umm, seems to be pretty cranky and forceful. might wanna dial back on the self-importance.

[ul][li]Do I have anything against someone else’s code in the game?[/li][/ul]

umm, nope! as long as it’s not seriously detrimental to my gameplay or the implementation of other idea’s by other community members.

Patience, Z-levels will come, and when they’re here, they will be glorious

Short answer: The code we have for underground z-levels isn't anywhere near good enough either, and needs to be rewritten.

I don’t mind short, I’d just like if you can be specific. What is not good enough and what difference does that make to inclusion of above ground z-levels?

See the Underground/Interior Construction thread for some of the requirements, with additional requirements being the ability to easily see, move, and shoot between z-levels, with appropriate monster behaviour at higher and lower z-levels, as a few examples. As Soron said, though, this discussion is better handled over on the github.

Why would that be requirement to include what you can include right now? You can have above ground z-levels as good as below ground z-levels are. You want more, and that’s fine, but there is no reason to wait for any of it. Is there? On the contrary, you should be first gathering feedback on the basic concept and then decide where to expand it from there.

How did anyone even come up with that decision? Have you asked the people who actually play the game? What if their opinion is that it is just fine the way it is? And have you considered to see and shoot between z-levels doesn’t really make sense with the rest of the game? Have you seen what you want implemented in any other roguelike?

1 Like

Just because the existing code is broke as all hell doesn’t mean that new code gets to be the same. I can tell you right now that if I wrote NEW code that’s as bad as some of the legacy code we have, it would almost certainly be rejected.

Also, if you’re gonna keep pointing out that missile silos are just as broken, the more likely result is that missile silos will either be fixed, or removed until someone bothers to fix them.

That bit of monster/trap code is a prerequisite for your approach making it into mainline. Not necessarily the only prerequisite, but definitely one of the prerequisites. Simple as that.

Have you seen what you want implemented in any other roguelike?

Dwarf Fortress is a pretty good example, and would perhaps be a good UI reference, if anyone wants to try adding in proper interacting z-levels.

You missed the point. They are ready to be included in the game right now. I can hardly be impatient about it since the ability to add above ground z-levels have been in my mod for a while now. I simply want it to be merged with the main build so Acidia would design upper levels for all those new buildings his making.

You missed the point. They are ready to be included in the game right now. I can hardly be impatient about it since the ability to add above ground z-levels have been in my mod for a while now. I simply want it to be merged with the main build so Acidia would design upper levels for all those new buildings his making.[/quote]

refer to point 4 if at any time you assume I am confused or have missed the point about your OP, thanks ^.^

[quote=“Soron, post:4, topic:1229”]Just because the existing code is broke as all hell doesn’t mean that new code gets to be the same. I can tell you right now that if I wrote NEW code that’s as bad as some of the legacy code we have, it would almost certainly be rejected.

Also, if you’re gonna keep pointing out that missile silos are just as broken, the more likely result is that missile silos will either be fixed, or removed until someone bothers to fix them.[/quote]

Nothing is broken. It’s just missing some trivial, unnecessary and cosmetic extra features you hallucinated for no good reason and which have nothing to do with z-levels code itself.

That bit of monster/trap code is a prerequisite for your approach making it into mainline. Not necessarily the only prerequisite, but definitely one of the prerequisites. Simple as that.

Who told you that? They are obviously not thinking straight. In no way are monsters corpses spawning on a level below any kind of requisite for having z-levels themselves. That’s false logic, it does not compute. It’s simply not true.

So anyway, is that all, or is there anything else supposedly missing?

Dwarf Fortress is a pretty good example, and would perhaps be a good UI reference, if anyone wants to try adding in proper interacting z-levels.

Can you describe how it works in DF or point some screenshots?

You mean this:

  • “Have you been nice in your proposal of your own code and how it may affect other users (other people than yourself)
    umm, seems to be pretty cranky and forceful. might wanna dial back on the self-importance.”

And? What are you saying? You don’t like my personality? So what, you will not marry me? Is that it? Did I break your heart, did I hurt your feelings? What in the world are you talking about and what does it have to do with anything?

Work on your social skills good sir.

If your code is in fact amazing (I like your mod, it’s fun and I’d like to see some of the features make it in) then why hasn’t it been merged? The team must have their reasons and I don’t believe it’s because they just don’t like you!

Can you ask nicely? I’m sure they’d work with you on your multi level code and maybe we could get those fantastic 2-3-x story buildings.

was that clear? was that precise? is there any confusion?

this is not an argument. Just try not to be so pushy, maybe we can make some progress then.

It’s actually simple as that, they are not including my code because they don’t like me, and they don’t like me simply because my code is so marvellously fantastic. But I forgive them, because I’m amazing.

Work on your social skills good sir.

No, you work on your tolerance skills and accept me for who I am, like in movies. Now love me, love me I tell ya!!

So, let’s look at a list of things that we want from a z-level system:

Vertical structures in game, to make buildings feel larger without increasing their footprint.
The ability for players to build their own vertical structures.
The ability to fire from higher points on enemies below.
The ability to use higher points of elevation to see ones surroundings.
An architecture that can support flying enemies.
A meaningful climbing and traversal system, that allows the player to use the vertical to aid their approach to handling cities.
Enemies that can see you on higher locations and climb to your level.
Enemies that can hide on higher levels before jumping down on the character.
Multiple paths and manners in which a player can scale or descend structures.
Fire that can spread up and down a building in an interesting way.
Sections that collapse.
Well formed, easily extensible code.

These are, as far as I can see, the primary goals of a z-level system. How many of these does your solution actually meet? Just the first one? Because as you’ve already stated, we HAVE the basement system, which feels the same goal already. So what actual value does your system offer that makes up for issues it represents? (like stuff on different levels no longer being properly tracked, items that fall onto open space floating in the ‘air’, code that would need to be completely rewritten to implement any of the other goals…)

Basically, we’re not going to take the time to implement a half-assed hack that adds little of actual value, when what we want is a powerful, robust system that opens up a lot of potential. Your z-level mod is kind of nice thematically… but that’s it. It’s a hack that extends an already bad system. It’s not really something to get excited about, it’s certainly not an appropriate z-level system for the game moving forward, at most it’s a thematic stop-gap.

Also, seriously, your code can get kind of nightmare inducing. You’re obviously a smart enough dude, but some of it is REALLY bad, from what I’ve heard from those who went through the effort of getting it prepared to potentially port it over. >_>

Your refusal to use github certainly makes things like that more difficult to fix, since you leave yourself reliant on third parties to do all the integration and communication work for you.

My solution meets the first and most important goal, the one you need to start with regardless of what else you might be dreaming of. It’s the ability to add top floors to any building, like church bell tower for example. Not good enough for you, and you’d rather have nothing? Suit yourself.

Basically, we're not going to take the time to implement a half-assed hack that adds little of actual value, when what we want is a powerful, robust system that opens up a lot of potential.

It’s not a hack if it uses already implemented system made with specific intention to support exactly that. Obviously then it is not only appropriate but the only proper way and how it was meant to be done with the code that is in the game right now, not with some imaginary code you hope to have in fifteen years.

Also, seriously, your code can get kind of nightmare inducing. You're obviously a smart enough dude, but some of it is REALLY bad, from what I've heard from those who went through the effort of getting it prepared to potentially port it over. >_>

It’s impossible I could write anything less than fabulously excellent. I challenge you to post the code in question here so we can all see what is it you are actually talking about. Show me!

You use the trap code to establish an entire z level full of airhole traps, and then carve out exceptions. That is basically the very essence of a hack - achieving the goal through methods intended for something completely different. That existing underground z-levels already made use of that is not an excuse - not to mention the fact that the basements generally reserve trap transfers for traps. The current code does a lot of terrible things we don’t want to see any more of, and has a huge number of hacks in it. Furthermore, it magically teleports those nearby, locks enemies and events on different z-levels, and generally behaves unreliably.

I’d also argue the first goal is probably the least important of the bunch, in my opinion. It’s the only one that doesn’t really add much in the way of legitimate gameplay value.

Where did you get the idea traps are not intended to interact with the character, including the ability to change their position?

That’s exactly what are they for.

Call it “special interactive tile”. Don’t be literal when it comes to code, you need to abstract and generalize. If you would do it any other way you would only end up with exact same code and unnecessary redundancy. That is bad, using “interactive special tiles” called “traps” to interact with the character and if necessary change their location is their exact purpose.

(shoves some popcorn in mouth)

I don’t even know how to contribute to the argument, but I agree with Glyph on all fronts.

[quote=“kilozombie, post:15, topic:1229”](shoves some popcorn in mouth)

I don’t even know how to contribute to the argument, but I agree with Glyph on all fronts.[/quote]

You’ve seen shelter 1st floor and the roof in my mod. Does it look/feel like it’s half-assed hack or does it fit with the rest of game and feels like natural extension of it? Does it seem unfinished, that something is missing? Would you not like Acidia to make upper floors for all those new buildings he’s making in the same way? Or do you think it shouldn’t be in the game until fire can spread up and down a building in an interesting way?

The way you’re doing it seems fucking stupid and is, again, just another way to expand buildings.

I haven’t seen the shelter second floor because I refuse to download your mod. The whole “parkour lol!” thing just makes me cringe.

[quote=“kilozombie, post:17, topic:1229”]The way you’re doing it seems fucking stupid and is, again, just another way to expand buildings.

I haven’t seen the shelter second floor because I refuse to download your mod. The whole “parkour lol!” thing just makes me cringe.[/quote]

Take some pills, kiddo. The way you get angrily retarded is stupid.

I’ve seen very little in the way of constructive discussion in this thread, and when someone does say something constructive, they get brushed off and ignored. This topic has the potential for useful discussion, but so far I’ve mainly seen bickering and egotistical posturing, which we don’t need on the forums.

If this keeps up, I’m going to start moderating the thread - removing troll posts or locking the thread, as appropriate.

Alright? Actual discussion is fine, but if you just wanna berate someone, do it via PM.

Probably my biggest concern with aboveground Z-levels is the ability to interact with things below them. If a Parkour Expert bails from a second-story window, that ought to inflict some bruising, but otherwise work.

If, instead, a Judo artist throws someone out the window, I’d expect the throwee to end up on the relevant lower level–probably the ground, and probably with some smashing damage depending on the fall. I’ve heard the suggestion that anything ending up in open air simply be deleted…and I don’t appreciate that idea. Seems unnecessarily punitive: “Sorry, you don’t get the drops from that kill because your Throw, that you can’t actually control, went out the window.” Worse: “Oops, you fell from a high place and are instantly killed, no damage, no saving throw, nothing, here’s your final score and your corpse isn’t even lootable because we delete things that fall.”

Going high up indeed ought to provide better overmap info. As it stands, there’s not much to be gained from an Office Tower. If (for illustration purposes) making it to the Nth floor and using the Observation Binocs there revealed surface map data for a N+1 radius, that could come in handy, and seems achievable with the existing codebase. Ideally, simply looking out the window from a high place ought to provide longer map-exploration range.

And, obviously, snipers like being high up so they can see farther and shoot over obstacles. That’s another reason why Z-levels really ought to be able to interact with each other. (Especially with that new sniper-scope: I can envision someone picking off the M 5 blocks away, saving xyr injured comrades who were ust barely winning against the generic zeds.

Yeah, it’s glaring that the Office Tower only has a basement. I suggest that it’d be more glaring if the 10th floor provided no terrain advantage over the second, though.

1 Like