# Idea for z-levels

It’d take a while, but you could make every combination of 4 characters on z level n equal a single character on z level n+1. For instance:

|-
|. == r

||
|| == |

… == .

[.
… == `

`.
… == .

.) == ,

71
#7 == 7

You dont need to be able to interact with the lower z-levels, you just need to see them from higher up in the missile silo/office tower/etc. It would look glitchy sometimes of course, but it can be improved with time and I doubt there will be that many buildings with more than one story anyway.

I’m willing to make the data table for this concept if someone else is willing to implement it in the game. My computer skill is 1. I don’t even know how to make those examples monospaced…

Took me a little while to figure out how your illustrations worked, but now that I think I’ve got it, yeah, not bad.

[Basically, the group of four symbols on the left gets reduced to the one symbol on the right; the “==” is the C++ for “set to”. Originally I wasn’t sure if it was some sort of side-view.]

One concern is that smaller items like [ or ) probably wouldn’t be that visible from a floor or two up. One might be able to spot a plastic bottle on a bench outside, but I’m not sure if it would be the first thing one notices. I’d suggest focusing on more general things, like 7 (large tree, suitable for logging) or # (generic obstacle, add color to differentiate) in the down-view, perhaps letting a player farlook to check for items there.

Good thinking it out, in any event.

I am currently is a fight to the death discussion with lazycat in Why aren’t Z levels added. and I have no idea what the hell that text means…

Can some one explain?

[quote=“neuromancer, post:1, topic:1301”]It’d take a while, but you could make every combination of 4 characters on z level n equal a single character on z level n+1. For instance:

``````|-
|.  == r

||
||  == |

..
..  == .

[.
..  == `

`.
..  == .

..
.)  == ,

71
#7  == 7``````

(examples stuck in “code” “/code” tag; replace quotes" with brackets[] to make actual tags-KA101)[/quote]

Basically, those are zoomed-out top views (like Cata does in-game). The bottle on the ground gets turned into a single comma; the clump of trees to a single 7, etc. I’m not entirely sure how it’d work, but I think it’s better than trying to fit everything in a greyed-out 1:1 representation of z-levels–at least once you go above 2-3 stories. (You ought to be able to see more, with less detail, the higher up you go.)

I’m pretty sure == means ‘is equal’ while = is ‘set to’

That being said it’s not a bad idea to do some type of lossy compression to try and show far away Z-levels.

I still have no idea what the hell that is about but hey…

My suggestion from the now locked thread:

For the actual view of the game there are two ways to do it. Multiple screens or a level view switcher. I vote for the switcher, make the mouse wheel scroll the floors up and down since the screen is small enough as it is. Quick and easy play wise. Still pretty sucky for seeing "oh shit" moments like a brute above a hole in the roof.

Probably having flashing ^Z and ^? symbols to indicate an enemy and sound on the above floors and v for lowers.
Just alternate between ^ or v, Z and current floor symbol played a few times. Eg . . . ^Z . . .^Z
For empty space show . .^ . .^

The main problem isn’t mine though…I don’t have to code the bitch
Good luck to those that do…you deserve it.

It wouldn’t really used for high level differences, like vertical office towers, but for in between levels of said tower.

Imagine:
You are running through the third floor and you find a large pile of well lit rubble.
You see . . .^. sequences that show the large hole above you and a . . .^# for a nearby desk that you can still see at your angle.
You scroll up and see a whole bunch of # to show your blind spots as well as . . .vX sequences for the floor below. X being the terrain or furniture.
Also you see another ^. sequence above that showing another floor of empty space.
As you continue to scroll you find out that there is an angled hole going from the floor you are on to the roof, a total of 7 floors.

You continue past the rubble and a . . .^Z sequence appears behind you.
The zombie sees you and, being a retarded zombie, throws itself toward you and into the air.
The Zombie falls
The Zombie lands in the Sharp rubble
The Zombie is impaled by the Sharp rubble
It dies.

And so you continue on your merry way. Until you rush past the Z on the next floor.

The . . . (other levels symbols) would allow people who rush to be surprised by an enemy on another floor, purely because they cannot cycle yet. (unless you have alert on)

And with the scroll system included can give an easy, fluid and accurate view of other levels. See: Dwarf fortress.

The only problem I see is the symbol spam for the current level viewed from the next.
Probably just add a {current level} tag or something to filter out that one from displaying {next level symbols}.

And one other thing…how should enemies be counted on higher/lower floors? Shown as . . . ^Z or . . . ^X ^Z

[quote=“TheRealTenman, post:6, topic:1301”][…]make the mouse wheel scroll the floors up and down since the screen is small enough as it is.[…][/quote]Mouse wheel? And how’s that going to pass through my PuTTY session to the Linux machine I’m playing on?

Well then have a system like DF… Shift/Alt/Fn </> or Page up and down.

Hell even hold backspace for all I care it is simply means to an end.

To TheRealTenman and anyone else who doesn’t quite understand this: you can see more of the map at a higher z level albeit at a lower resolution.

For example on the ground level you see a backpack by a forest:

. . [ . . . 77
. . . . . 777
. . . . 7777
. . . . 7777

On the next highest level you see:

. ’ . 77777
. . 777777
77777777
77777777

On the next highest level you see:

. 7777777
77777777
77777777
77777777

So more fits in your view window, but at a lower resolution. You can even have a trait like “Eagle Eye” to see items that don’t show up on your map. The main problem is what direction does the resolution go to? (in this case the bottom right)

That would probably take some fairly complex code. (I don’t know though, I don’t code)
Each unit would need to interact with each other unit to choose what would be displayed.

You could just have a/several hierarchy of “this overpowers this” and include them in a "fudge zone"
Like:
tree>branch>bush>item
{large container}>{small container}>{small object}

Each unit would need to interact with each other unit to choose what would be displayed.

Actually what I’m proposing is even simpler than that. Instead of having some complicated item display hierarchy, what you see is determined by the characters themselves. Imagine a huge data table of all possible permutations of 4 characters in a square. Each one of those permutations would become a single character at a higher z-level.

It doesn’t matter if it’s 3 zombies:

ZZ
. Z

or 2 zombies and a bush:

Z#
Z .

you would still see:

Z

at a higher z-level, because in the data table any grouping of 4 “cells” with two or more “Z” zooms out to look like a “Z”

Fair enough but I still can’t see how it would go from 4 to 1…it is still 4 units.

Fair enough but I still can’t see how it would go from 4 to 1…it is still 4 units.

At z-level 1 you see four units. At z-level 2 the four units you saw on z-level 1 are represented by one unit.

On z-level 2 you see four times as far. So every four units on z-level 2 is the equivalent of 16 units on z-level 1.

Okay I understand…Now I just disagree. ^u^

Z-levels are as far as I know, a single floor. When I go upstairs in my house I can see the news paper on the chair outside. I can even read the Headline. As for a 30 story building yeah…I would agree.