targetting and LOS

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • PaulBlay
    replied
    Originally posted by Nick
    Just a quick question - what problem are we trying to solve here? Is it hockey stick/knight's move attacks? Is there anything else?
    I don't think we know anymore. (Which is another reason I think that forum threads aren't up to this). I don't even know where my "five properties" post is and there are fifteen pages to look through.

    Leave a comment:


  • Nick
    replied
    Just a quick question - what problem are we trying to solve here? Is it hockey stick/knight's move attacks? Is there anything else?

    Leave a comment:


  • PowerDiver
    replied
    Originally posted by zaimoni
    If the projectability/visiblity algorithm was or-symmetrized (it currently isn't for gameplay reasons, but it's a rote change; it might even be worth a birth option), the left-wall example would have the left wall not-visible.
    You are agreeing with me. In order to add the property of symmetry, you have to remove the property that an interior square can see the wall.

    Leave a comment:


  • PowerDiver
    replied
    Originally posted by PaulBlay
    Which property does real life not have? Because (without moving back and forth within the square)
    You cannot have any restrictions on what happens within the limit of your measurement.

    So long as your basic unit is 10' wide, you have to allow for an eyeball-to-eyeball width of 10', or movement around, or however any lunatic might think about it. If you want to rule those out, you have to change the measurement. Handwave all you like, but your arguments are usually doomed to be self-contradicting if you try to apply common sense on a grain that is finer than your smallest unit of measurement.

    A different but [I think] equivalent perspective is that a monster being in a square does not specify a location, but rather a set of inequalities describing that monster's center. Most natural is to define to be within 5' horizontally and vertically from the center of the square.

    A valid model needs a representation for every possible position for a monster. Real life has real-valued positions. If you cannot say where a monster who is centered at (3.3, 11.2) is represented on your integer coordinate system in your model, then you are failing to model real life, and you likely have a problem that will lead to inconsistencies. A particular point in your integer model needs to represent a range of real-valued positions.

    This applies to pillars too, and is why I had no particular problem with radius-0 pillars in my initial suggestion, although most of you probably thought I was crazy. You fit as many desirable model properties together as you can make consistent, but you will always have to stop before you are satisfied, because an approximation never has all of the properties of the real thing.

    Leave a comment:


  • aeneas
    replied
    Originally posted by PaulBlay
    Which property does real life not have?
    Real life and Angband are remarkably different. I mean- we can leave aside things like the fact that I am only very rarely attacked by veterans and mercenaries on the way to the store. That's a trivial distinction. But Angband is not like real life mostly because our circles and ellipses translate to squares and rectangles in Angband.

    Angband has always followed a "worse is better" philosophy in terms of LOS and targeting. The implementation is simple, but the interface is a bit tricky. I think this approach has worked out pretty well, but... it does have a few quirks. The biggest problem is that it's not symmetric. That might be a feature, or it might be a bug. Anyway, if you want to fix that you could just steal the code from NPP where targeting is symmetric. Or you could decide that if you can see it you can target it. But if you do either of those things I think you might want to re-balance hounds.

    Then you're going to have a certain number of complaints about characters lost to misunderstanding changes in LOT. As my first exhibit I would like to offer this dump: http://angband.oook.cz/ladder-show.php?id=6831. Level 50 character (rare time investment for me- I usually go for it at clvl 45 or so in NPP), more than ready to win even in NPP, died because I confused V targeting and NPP targeting.

    I think the current V LOS and targeting system works pretty well as a gameplay mechanic. It has one problem, and that's the fact that you can tunnel to a spot where you can kill immobile monsters with no chance of retaliation- this is mainly a problem with the emperor Quylthug. Anyway this can be fixed by making a change that should have been made long ago- all walls except for a select few that open vaults should be permanent. I suspect that one release like that would lead to a general demand for a re-balancing of summoners, which would be good, but that's another post.

    Anyway, I think LOS/LOT ought to be treated very conservatively, if only for the sake of us old-timers. I have a pretty good intuition, at this point, as to who can target me even in very complicated corridor layouts. I'm going to be pretty annoyed if I'm suddenly getting whacked by Vecna when I'm sure I'm safe. I can put up with that in NPP, but in V... well, at the very least, if it gets changed, it would be best if it only gets changed once.

    I don't want to have to carry around more than a few LOT algorithms in my head. And I think that many implementers underestimate the amount of calculation that good players do. We're always thinking things like "OK, lots of Balrogs, but I have immF.. but those Osyluths.. let's add up the potential damage, and assign some probabilities here- I think I can kill Lungorthin this round, but.. will the Osyluths get me? Hmm- that one can't target me, so I'll live through it even if the rest all do their their worst- unless they really do their worst, in which case I am dead- but the chances of that are like 2.5%. Fuck it, let's smack Lungorthin one more time." The thing is that if that extra Osyluth can target me the chances that I'm dead might rise to something like 30%, or more.

    Preserving the ability to do that kind of calculation is far more important than making Angband correspond to "the real world" in some fashion. The world is round. Angband is square. 'Nuff said.

    Leave a comment:


  • zaimoni
    replied
    Originally posted by PowerDiver
    The problem is that I don't know how to draw those pretty pictures. Also, I was trying to make an argument that applied to all forms of expanding cones, not just a particular one, so there isn't a specific example to show.

    Code:
    ###WXY##########
    ................
    ................
    ............Z...
    ................
    ................
    Consider the shadow behind X when you view from W, assuming X is a wall square.
    The model needs to cope both with Y being another wall square or an entrance.
    Let's say that Z is in that shadow. Then W cannot see Z. Then Z cannot see W.

    So a square well in the interior of the room cannot see all of the walls of the room.
    Counter-example: Zaiband.

    Zaiband has expanding cone shadows, and does allow any square in the middle of a rectangular room to see all of the walls.

    If the projectability/visiblity algorithm was or-symmetrized (it currently isn't for gameplay reasons, but it's a rote change; it might even be worth a birth option), the left-wall example would have the left wall not-visible.

    Leave a comment:


  • PaulBlay
    replied
    Originally posted by PowerDiver
    My last post was an outline of an argument that if you want all of those properties, then you cannot also have as a 5th property an expanding cone of shadow from a pillar. The 5 properties together produce a contradiction.
    Which property does real life not have? Because (without moving back and forth within the square) real life does have an expanding triangle of obscured area behind a pillar.

    Seriously though, this discussion has broken the limits of what can be readily followed in newsgroup forum format. I think it needs a format like, for example, wiki where you can have links between sections, editing out of bits determined to be incorrect and such. (There are other, better, formats but they take money and training ;-)

    Leave a comment:


  • Pete Mack
    replied
    @magnate--
    I thought that d_m was on to something when he mentioned walls being visible in the full square (according to the DFOV.)

    As I said, albeit very unclearly, I think that using permissive FOV for visibility but limited FOV for targetting is a good idea; it's very much in line with the current angband model.

    Leave a comment:


  • buzzkill
    replied
    Originally posted by Donald Jonker
    This is very unsatisfactory. Sacrificing full-room visibility when you're only 1 tile in for expanding shadows might make a little sense. When you're three in, that sort of trade-off is no longer worth it.
    You're right. My brain hurts. I give up.

    Leave a comment:


  • PowerDiver
    replied
    Originally posted by PaulBlay
    Are we still on DFOV?

    Because X and Y don't block view of Z (or vice versa) in that case as long as you ignore the fact that X is in a wall square itself. If you don't ignore that fact then @'s should probably never see G's in walls (or vice versa).
    No, this is not about DFOV. Some time back I gave a list of 4 properties one might want to have in a visibility algorithm. My last post was an outline of an argument that if you want all of those properties, then you cannot also have as a 5th property an expanding cone of shadow from a pillar. The 5 properties together produce a contradiction.

    It was a reply to a reply to ... to the list of 4 properties I thought were important.

    I was a bit sloppy, so it's not really a proof, but you could generate a real proof for any of the approaches mentioned here so far.

    Now maybe you think an expanding cone of shadow is more important than modeling a character in the interior of a perfectly rectangular empty room having LOS to the walls. Maybe you do not care whether LOS is symmetric. I cannot speak to the priorities of others. But you have to violate one of the 4 properties in order to get an expanding shadow behind a 1 square pillar.

    DFOV has the 4 properties, and does not have expanding pillar shadows.

    Leave a comment:


  • Donald Jonker
    replied
    Originally posted by buzzkill
    Correct. As long as the wall is 10' thick, your vision will be (and should be) obstructed if you are standing very near to it. Also, standing in that same spot allows you to be hidden from a portion of the (very large) room. Z can see a portion of grid W, just not the important bit, the center, and therefore technically can't see it.
    This is very unsatisfactory. Sacrificing full-room visibility when you're only 1 tile in for expanding shadows might make a little sense. When you're three in, that sort of trade-off is no longer worth it. How many rooms you been in where this holds even a modicum of logical currency? I'm thinking even of giant warehouses, airplane hangars, &c - if they're well-lit, empty, and you're a pace or two away from any given wall, you're able to see everything with a decent amount of accuracy. Read bulletin boards? No. But you know where the walls and exits are.

    Expanding shadows might work intuitively in a scenario where max visibility is severely limited - smaller than the smallest room size. Crawl uses such a scheme.

    I'm only backing this method because I understand it, and it seems to work well. Not that my opinion really matters, but show me something better and I'll get on board. Is it your opinion that DFOV is better?
    I presume Eddie's attacking expanding cones because he has an alternative in mind - specifically his original proposal. Or maybe I haven't been following the thread closely enough.

    Leave a comment:


  • PaulBlay
    replied
    Originally posted by PowerDiver
    So a square well in the interior of the room cannot see all of the walls of the room.
    Are we still on DFOV?

    Because X and Y don't block view of Z (or vice versa) in that case as long as you ignore the fact that X is in a wall square itself. If you don't ignore that fact then @'s should probably never see G's in walls (or vice versa).

    Leave a comment:


  • buzzkill
    replied
    Originally posted by PowerDiver
    The problem is that I don't know how to draw those pretty pictures. Also, I was trying to make an argument that applied to all forms of expanding cones, not just a particular one, so there isn't a specific example to show.

    Code:
    # # # W X Y # # # # # # # # # #
    . . . . . . . . . . . . . . . .
    . . . . . . . . . . . . . . . .
    . . . . . . . . . . . . Z . . .
    . . . . . . . . . . . . . . . .
    . . . . . . . . . . . . . . . .
    [COLOR="Orange"](graphic altered slightly for a more accurate spacial relationship)[/COLOR]
    Consider the shadow behind X when you view from W, assuming X is a wall square.
    The model needs to cope both with Y being another wall square or an entrance.
    Let's say that Z is in that shadow. Then W cannot see Z. Then Z cannot see W.

    So a square well in the interior of the room cannot see all of the walls of the room.
    Correct. As long as the wall is 10' thick, your vision will be (and should be) obstructed if you are standing very near to it. Also, standing in that same spot allows you to be hidden from a portion of the (very large) room. Z can see a portion of grid W, just not the important bit, the center, and therefore technically can't see it.

    W and Z appear to be able to see each other because the example given, and angband itself, is visually deceiving. X is much larger than W. W can't occupy the entire 10' x 10' grid. X does. Therefore, we have to assume that W is at a set location within the grid. The most logical location would be the center. Therefore W is actually 5' north of the of the southern face of wall X.

    I'm only backing this method because I understand it, and it seems to work well. Not that my opinion really matters, but show me something better and I'll get on board. Is it your opinion that DFOV is better?

    Leave a comment:


  • PowerDiver
    replied
    Originally posted by PaulBlay
    Yeesh, I think that is a classic example of "a picture is worth a thousand words."
    The problem is that I don't know how to draw those pretty pictures. Also, I was trying to make an argument that applied to all forms of expanding cones, not just a particular one, so there isn't a specific example to show.

    Code:
    ###WXY##########
    ................
    ................
    ............Z...
    ................
    ................
    Consider the shadow behind X when you view from W, assuming X is a wall square.
    The model needs to cope both with Y being another wall square or an entrance.
    Let's say that Z is in that shadow. Then W cannot see Z. Then Z cannot see W.

    So a square well in the interior of the room cannot see all of the walls of the room.

    Leave a comment:


  • PaulBlay
    replied
    Originally posted by PowerDiver
    Take any square W, wall or entrance or door doesn't matter Think of a wall square in a room about 20% away from a corner for starters. A wall X next to W causes visibility blockage, which if expanding goes into the interior of the room. If we assume symmetry, if Z is in the shadow behind X when viewing from W, Z cannot see W.
    Yeesh, I think that is a classic example of "a picture is worth a thousand words."

    Leave a comment:

Working...
😀
😂
🥰
😘
🤢
😎
😞
😡
👍
👎