Difference between revisions of "Talk:Discussion:Field of Vision"

From RogueBasin
Jump to navigation Jump to search
m
m
 
Line 35: Line 35:
:I added that, and I agree it would be silly to make more walls visible in the diamond obstruction method, when you could just special case non-visible displayed walls.  The terminology hadn't be refined when I first wrote it, so the thought wasn't as clear in my mind then as it is now.  Go for it. --[[User:Marble Dice|Marble Dice]] 16:00, 26 June 2009 (CEST)
:I added that, and I agree it would be silly to make more walls visible in the diamond obstruction method, when you could just special case non-visible displayed walls.  The terminology hadn't be refined when I first wrote it, so the thought wasn't as clear in my mind then as it is now.  Go for it. --[[User:Marble Dice|Marble Dice]] 16:00, 26 June 2009 (CEST)


== Modeling Visibility Properties ==
= Modeling Visibility Properties =


Consider the display screen as a window into the Gaussian plane <b>Z</b>&times;<b>Z</b>, whose coordinates are from the integers <b>Z</b>.  Call two distinct coordinates <b>x</b>, <b>y</b> adjacent if <b>x</b>-<b>y</b> is in {-1,0,1}&times;{-1,0,1}.  (While a subset where each point is adjacent to at least one other point in the subset looks connected when displayed on the screen, <b>Z</b> with its usual distance function is a topologically totally disconnected space.  As such, <b>Z</b>&times;<b>Z</b> is totally disconnected regardless of choice of distance function that reduces to the usual distance function <b>Z</b> on both axes.)
Consider the display screen as a window into the Gaussian plane <b>Z</b>&times;<b>Z</b>, whose coordinates are from the integers <b>Z</b>.  Call two distinct coordinates <b>x</b>, <b>y</b> adjacent if <b>x</b>-<b>y</b> is in {-1,0,1}&times;{-1,0,1}.  (While a subset where each point is adjacent to at least one other point in the subset looks connected when displayed on the screen, <b>Z</b> with its usual distance function is a topologically totally disconnected space.  As such, <b>Z</b>&times;<b>Z</b> is totally disconnected regardless of choice of distance function that reduces to the usual distance function <b>Z</b> on both axes.)

Latest revision as of 06:33, 14 August 2009

Would DFOV really make pass-wall enemies harder?

can someone who believes this write some supporting points for it? -- d_m
Any pass wall monster could see you from inside the wall of any arbitrarily long hallway. If they can see you, they can target you, and thus breath on you or cast at you. As far as I know, currently pass wall monsters are limited by targetability restraints and cannot target you from a distance greater than a traditional hockey stick. Is this not the case? --Marble Dice 22:01, 25 June 2009 (CEST)
I guess what I meant to say is "this is seems fine to me as long as LOS/targeting symmetry exists." Right now, passwall monsters can target the player (via the hockey stick or adjacency) while in a wall but the player cannot target them back (making -teleport_other not work). This change does give them more opportunities for ranged attacks, but also gives the player the ability to respond via missiles, wands, etc. I don't imagine this to be significantly harder, which is why I'm interested in arguments to that effect. --d_m
Well it's a two-fold problem: just because you can target the ghost in the wall doesn't mean you can hit it with spells. The only thing you can do to a walled monster is tunnel it, and then you just get a melee attack. Ghost in wall isn't a problem because of asymmetric LOS, it's a problem because spells fizzle and arrows break when they hit the wall. If you let the player fight back, then I agree it's not a significant difference. I am adding comments as such to the main page. --Marble Dice 22:43, 25 June 2009 (CEST)
Hengband (and presumably Entroband; haven't tested Zangband) handles that by making monsters in walls attackable by ranged attacks. -- Bessarion 15:48, 25 June 2009 (U.S. CDT)

Talk:Discussion:

Heh, I guess I should have thought a little more before naming the wiki page. ;-) PaulBlay

Hey now, nothing wrong with a good little talk discussion conversation every now and then. --Marble Dice 22:49, 25 June 2009 (CEST)

Expansive visible walls.

I suggest changing terminology and text along the following lines. PaulBlay

5. Expansive wall display. You can see all of a room's walls while while standing anywhere inside of it, and all walls of a long, straight corridor. This can either be a natural property of the algorithm used (in which case the walls are visible) or handled as a special case (considered displayed but not generally visible or targetable).

Expansive visible walls with no hidden ghosts, visible = targetable and symmetry may allow pass-wall monsters to target players from a lot further away than now (see DFOV).

Symmetry, efficiency, no blind corners, naturally expansive visible walls, no hidden ghosts. A demo implementation already exists, and has no known visibility artifacts.

This method lacks naturally expansive visible walls which means part of a room's walls will not be visible to a player standing inside the room, if he is close to a wall or a corner. This is more pronounced the closer to a wall, and the larger the room. This could be corrected by automatically adding map memory for the walls of lit rooms, so while only some of the walls would be visible (and marked with a special color) all the walls of the room would appear to the player.

A second point-to-diamond "tile visibility" check could be made to add extra visibility for wall tiles, but this would break no hidden ghosts and possibly no lost targeting. PaulBlay - Does anyone really want that?

I added that, and I agree it would be silly to make more walls visible in the diamond obstruction method, when you could just special case non-visible displayed walls. The terminology hadn't be refined when I first wrote it, so the thought wasn't as clear in my mind then as it is now. Go for it. --Marble Dice 16:00, 26 June 2009 (CEST)

Modeling Visibility Properties

Consider the display screen as a window into the Gaussian plane Z×Z, whose coordinates are from the integers Z. Call two distinct coordinates x, y adjacent if x-y is in {-1,0,1}×{-1,0,1}. (While a subset where each point is adjacent to at least one other point in the subset looks connected when displayed on the screen, Z with its usual distance function is a topologically totally disconnected space. As such, Z×Z is totally disconnected regardless of choice of distance function that reduces to the usual distance function Z on both axes.)

No blind corners (Tenet #4) is particularly interesting here (Zaiband's LoS/targeting has this trait most of the time, the only failures being caused by passages too close to each other as in the right diagram).

... ...
##. .#.
##. .#.

Let V be a visibility function, and A be an accessibility function, with domain Z×Z and range boolean (true and false). Then no blind corners means that any adjacent square you can move to, has all of its adjacent, accessible squares visible from where you are now.

.... -- Bessarion 1:31, 14 August 2009 (CDT)