1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. While the majority of active discourse on D20PRO has moved to our Discord Channels, this forum is still active and checked-in on regularly by our staff. However, for the very latest information, conversation and/or immediate support, please join us on Discord here: http://discord.gg/Ph38ckM
    Dismiss Notice

Light = Vision?

Discussion in 'General Discussion' started by Blackwing, Dec 28, 2016.

  1. Blackwing

    Blackwing New Member

    Joined:
    Dec 27, 2016
    Messages:
    4
    Likes Received:
    0
    I have just bought D20Pro and one of the criteria I had when looking for a VTT was dynamic vision and light. I was happy to find D20Pro despite some quirks, but now that I'm delving into it I come across something that I missed during my evaluation.

    It seems that within D20Pro that if an area is lit by a light that is public or owned by the player in question that player can see everything that light reaches. In other words D20Pro seems to equal light to vision.

    As a simple example this occurs with an Inn I was setting up. The general areas of the Inn are normally lit by candles and sconces. The player that is standing in the general bar area (green token) can now see the rat that's in the far end of the hallway on the right (yellow bordered token), even though he has no actual line of sight, simply because the rat is illuminated by a public light. Am I missing something here, is there no way to only show tokens that are actually in line of sight of the player, rather than in an area that is lit by an owned or public light?


    The images show the setup of lights and the vision situation. Lights.png Vision.png
     
  2. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    You could set the tokens to hidden/invisible and only reveal them while they are in LOS of the character.
     
  3. Blackwing

    Blackwing New Member

    Joined:
    Dec 27, 2016
    Messages:
    4
    Likes Received:
    0
    I know I could do that, but the whole reason that I want was dynamic vision and light is of course not to have to do that. But apart from the manual labor it makes it pretty much impossible to manage token visibility with a group of players where some do have line of sight and some don't.

    I kind of expected the dynamic fog of war to work comparable to how it works in maptools, but it seems it's fundamentally different. And whilst I can think of scenarios where it could be handy to have it the way it works in D20Pro (for a situation with scrying for example) in most situations you want uninterupted line of sight between player token and creature token for it to be visible.

    Being a software developer myself, I'd guess that the visibility of tokens is now done by determining the lit area and testing for overlap with the token area. Since the functionality for calculating lit area from arbitrary light sources is already there it seems quite possible to make an additional check with an extra, long range light source and have token only show up if they are in both the area of the regular visible light sources AND the vision light source.

    You could even extend the light model slightly and put a toggle on lights to switch them between visible light and invisible sensor. That way you can give a player both a light source and ranged vision and also allow for things like scrying. You would end up with an extremely flexible system that allows for true line of sight visibility. It would just calculate light area based on lights and one on based on sensors and determine visibility if both areas indicate the token is visible (not in light area but in sensor area is invisible, in light area but not in sensor area is invisible, in both light and sensor area is visible). But of course this is talking from the sidelines, and as developer I also know that things may not always be as easy as they seem on the outside. And with this I guess it should no longer in the general questions area but in the feature requests (which I may post this in if what I want is indeed not possible)
     
  4. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    I get what you're suggesting and yes that would require adding another level of checks and balances as it were. Currently it doesn't have any way to know if there is an un-obstructed view of a token save for walls, masks and/or a light radius.

    There are enumerable things here to take into account, that are/would be very hard to do outside of the GMs hand, what if the scene is foggy, but player X has infra vision. Just a personal reason why I think this is best left in the hands of the GM rather than trying to automate it.

    I love automation, but it can also be a hindrance as well, if the system becomes so complex and convoluted as to start to actually impend game flow, then it isn't really helping anyone.. this of course is just my 2 coppers and not an official stance.

    I'll mention this thread to T (Owlbear) and see if he has any insights he can share on the subject.
     
  5. Bloodwolf

    Bloodwolf Member

    Joined:
    Sep 8, 2014
    Messages:
    131
    Likes Received:
    5
    I've asked about a "line of sight" setting before that basically would not produce a light but would expose "public" lit areas that fall into the line of sight area which would fix your example. It is my understanding that with the current Java based engine it would create too much of a lag for being a resource hog, but with the future non-Java version being worked on it could become a possibility.

    The line of sight would use the walls and edges to block the token's sight of any areas that are lit by public light sources but not observable from the token's current position, but if an area in between was not lit then that area would remain dark because the line of sight would not illuminate it.
     
  6. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    Also, looking closer at your map. It's seems really convoluted as to light (just my opinion).. If I were going to do this map, I'd remove all of those lights. The graphic has torches on it, so the lit area is assumed.. Do a simple masks breaking up the rooms, then do a passive & show/hide on the masks as needed by present PCs. That would greatly reduce the complexity of what you have and achieve the same thing. If a PCs can see an area, just toggle it (mask) to 'show/visible'.

    If there was then a need to have the map in total darkness, I'd just toggle the masks to 'interactive' and then add personal lights to the PCs dependent on their vision types (torches or what not), this too solves the problem of people being able to see things beyond (or within) their vision range.
     
    kimco likes this.
  7. Blackwing

    Blackwing New Member

    Joined:
    Dec 27, 2016
    Messages:
    4
    Likes Received:
    0
    Actually, since in this particular case the Inn is well known to the PCs, I would prefer to have the lit space without any lights and I tried that with a mask and set it to Passive. Since this immediately showed every token within that mask this actually had me start to experiment with individual lights and seeing if it was simply the passive setting that made the tokens show up. But regardless of how many lights I use or how few or do it with one or more passive masks it does not change my problem in essence it boils down to this:

    - Player 1 has no line of sight to creature (token) A
    - Player 2 does have line of sight to creature A
    - The area that creature A is occupying is lit by a public light. (or visible mask set to passive)

    Player 1 should not see creature A
    Player 2 should see creature A

    The token cannot manually be set to visible or invisible as that will determine that either both players see it or both players do not. The only way I see to approximate the situation is give all players really long light sources and have no public lighting at all this way all light sources are matched to the vision of the player and thus line of sight coincides with the shadow casting functionality in D20Pro. It is not ideal but the way I am leaning now as dynamic automated line of sight is really important to me (Like I said in the first post dynamic vision and light was a selection criterium that I based my purchase decision on).

    I have used Maptools in the past and it handles vision and light separately and handles visibility of tokens based on a per-player line of sight principle. I'm not saying Maptools is better or anything like that, it is just to illustrate what I am looking for.

    I still think extending the light model with the light/sensor distinction as described earlier would improve the capabilities and if you make the standard lights both lights and sensors you'll duplicate the current behaviour (as right now you see everything all the lights "see").
     
  8. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    The only way to currently do that is with personal light sources. as they will hide and even remove from the roster any creature not within their radius.
     
  9. owlbear

    owlbear Administrator
    Staff Member

    Joined:
    Sep 5, 2011
    Messages:
    636
    Likes Received:
    160
    The real problem here is that we don't currently have a fog of war history - show greyed out areas that the players have previously traveled.I believe that's the behavior you're mostly looking for. We'll be introducing this after we finish with the current development tasks. Another update that's in the hopper is to allow discover of lights.

    Right now, lights and vision are mixed in together when they should be separate things. This is a known issue with the current lighting model. The intent is to add a vision flag to light sources so we can treat them separately but define them using the same tool.

    Basically a vision radius would represent a creatures view range and be able to be augmented by available lights -- when the original work on Shadow casting was implemented this was pushed to the back burner as we were under some time constraints. However, the current team and I feel strongly that we want to have lights and vision operate properly -- so a light with a 5 ft bright and 5 ft shadowy is treated as larger for the purpose of vision for a creature with low-light.

    Anyway, yes, right now the shadow casting is functional but not perfect :). As soon as we have the spare cycles we'll update it!
     
    Tay-Dor likes this.
  10. Blackwing

    Blackwing New Member

    Joined:
    Dec 27, 2016
    Messages:
    4
    Likes Received:
    0
    It's not what I'm looking for mostly, though it is definitely nice to have. What I'm looking for mostly is true line of sight based from the player's point of view.

    This is along the same lines as what I suggested, so I can only agree here.

    It is good that their is awareness of the shortcomings and that you feel strongly about doing it properly.
    Thank you for the responses and elaboration.

    On a related note though I noticed that if you have overlapping lights with shadowy sections(like two 20'/10' light sources that partially overlap) the area that is in the overlap of two shadowy areas is darker than in the non-overlapped shadowy areas. I'm guessing that this currently is unavoidable because of the visual blending done, but wanted to at least point it out.
     
    #10 Blackwing, Jan 1, 2017
    Last edited: Jan 1, 2017
  11. owlbear

    owlbear Administrator
    Staff Member

    Joined:
    Sep 5, 2011
    Messages:
    636
    Likes Received:
    160
    Yeah. My main response to this would be "don't even get me started", but we're well past that.

    The fact is that the current shadow casting works pretty well, but is fairly ignorant of each other. Suffice it to say, there was a misunderstanding during development by the the team last year (last, last year?). I was responsible for the spec on this work, however, the end product didn't really line up all that well. It does a lot with what we've got right now, and is sufficient as a first pass.

    Now that our new team is forming up so nicely, and we're all that much more in tune with the application, we should be able to address these problems and update the fog of war system.

    Specifically, we have a plan in place to re-work the token system and spell template system. This work includes a revisit to lights and shadows as the new system for token movement and grids is based on the polygon engine we're using for regions and lights.

    There are still questions about blending which seem to depend on system and/or house rules however. Do we increase the brightness of overlapping layers? Do we simply blend overlapping layer of the same "brightness" and if a brighter area overlaps then it wins out?

    Combined with the need to render a given light and it's radii based on creature vision, this gets pretty complex pretty quick.
     
    kimco likes this.
  12. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    hey, that is nice praise.. Thank you T.
     
  13. owlbear

    owlbear Administrator
    Staff Member

    Joined:
    Sep 5, 2011
    Messages:
    636
    Likes Received:
    160
    just calling it how I see it K.
     

Share This Page