Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

Still seeing problems with UDL

I'm still seeing problems with UDL that make me believe that UDL is NOT ready for Prime Time and it's a mistake for Roll20 to have made it the default. I'm hoping that the Powers That Be see this, and decide to either put major effort into fixing UDL or back off on sunsetting LDL. 1. Some of the variables and settings have not been exported to the API. (Minor problem) 2. Setting a token to emit Bright Light for 20ft and Low Light for 20 feet results in Bright light for more than 40ft. (Major problem). I've tested this on several pages and several tokens. The lighting that is provided with the setting is far more than it should be. It looks like it goes out to about 60 feet of bright light.  3. Setting Emits Bright Light and then a distance setting, and then turning off the Emits Bright Light keeps the distance setting so that when it's turned back on again, the distance is set. This is not true for Emits Low Light. Low Light distance gets reset to 0. (Consistency issue). I'd prefer it if the settings were to remain so that if someone casts a Light spell on an object they are carrying (20 ft bright light, 20 ft low light in D&D 5E) I can just turn the settings on or off depending on whether or not the Light spell is active and not worry about the distance settings. 4. On my test map, setting a token to Night Vision, Distance 60, Night Vision effect Nocturnal reveals the entire room to the player, a distance of at least 80 feet for that room. (Major problem). I can't tell if it's bright light or not but the entire room seems lit to that player the same as a token that is emitting bright light does to that player. That is, there doesn't appear to be any functional difference between "bright light" and "nocturnal light". This is on a map that is set to use the new Dynamic Lighting. Now maybe there are settings or something that are confusing but it seems very straightforward English. Or maybe Roll20 has a different idea of what "nocturnal", "bright light", "low light", "emits light", etc. mean than I do.  But, right now, none of this sits right with me and makes me believe that UDL is broken and not ready for use.
1622994239
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
I have not done testing on all of those points, but point 1 was solved, announced and verified this week. The API was updated to reveal a small host of attributes, including the missing UDL ones.
1623004972
The Aaron
Roll20 Production Team
API Scripter
For 1), I'm pretty sure they've resolved that this week, but definitely post back with any attributes that seem to be missing. For 2), verify you don't have another token on the map with a light multiplier.  Just like with LDL, the light multiplier will apply to all light on the page from the perspective of someone that controls a token with a light multiplier. And now with just a adding a token with only sight and a light multiplier of 50%, then one with 200%: Actual bug:   If you delete a token with a light multiplier, it doesn't recalculate light until you refresh the page or change another token's light multiplier. 3)  This is completely right, I've duplicated the behavior.  It's not a deal breaker to me, but I do think it should be consistent (and since I know they are stored separately, leaving the value when you disable low light seems like the right thing to do). 4) I see a big difference between Nocturnal Night vision (top) and Bright Light (bottom).  Are there other things lighting the room, or other tokens with vision, possibly with a light multiplier at play? Can you provide some screenshots of your maps where this is causing problems?  Refresh your page and see if that fixes the light?  Verify you don't have any tokens with a light multiplier on them.
Thanks for your responses. There were no other tokens on the map in that room, or within 100ft  - just one character token that I was testing with.  It had no light multipliers.  There was one token way over on the other side of the map that I was planning to test some things with, but had not yet "turned on" to be emitting light. I will try and get snapshots to post in a couple of days. Tonight is my game night, and I'm spending time preparing for that.  As for the API stuff, maybe I was testing before the code went "live" and got onto all the servers? I'll see what happens when I try again.
Ok, I've made a few discoveries: 1. Although the default is UDL on all pages in all games, and creating a new page in a module creates a page that defaults to and uses UDL, the functionality in a game that has not been "converted" to UDL overall is very different from a game that has been converted or has started with UDL from scratch. It might have something to do with what code is used and as long as there are pages/tokens in a game that still use LDL, it's possible that UDL doesn't function correctly on pages that claim to use only UDL.  I sort of verified this by using a test game that still has some LDL pages/tokens and a test game that has only UDL and the functionality is different - lighting behaves differently.  In my testUDL game, things are still not 100% right and I'll get snapshots if I can reproduce the issues. 2. Some of the API functionality that was missing was fixed by Roll20. Some of what I thought was missing functionality appears to have been typos in the macros I was writing/using. For example: I had "night-vision" instead of "night_vision". Tracking these typos down was a pain. :-) The documentation in the Roll20 Help Center doesn't indicate that the night_vision tint color could be specified in the API but I see in the token-mod documentation that it can be set and how. The last thing that I have been unable to find is setting the low light brightness. It might be in the token-mod documentation but I haven't found it. 3. The documentation in the help center says that when setting the light, you set the low light to a value that includes the bright light. That is if you want bright light 20 and low light 20 you have to set bright light to 20 and low light to 40. This makes no sense to me and is counterintuitive. Worse, it doesn't seem to produce the correct effect. I don't know if I'm misreading it or misunderstanding it.
1623247828
The Aaron
Roll20 Production Team
API Scripter
For 1), I'm guessing there's a mix of LDL and UDL on the pages you're testing with.  The UI is a bit confusing and switching a page from LDL to UDL does not switch the implementation of the tokens on that page. 2) Documentation is the bane of programmers. =D  The low light brightness is dim_light_opacity which can have a value between 0.0 and 1.0. 3) UDL's Low Light setting is definitely a bit annoying.  They changed the UI so that you are specifying the distance for bright light and the distance for low light.  However, they store the value for low light as the sum of bright light and low light.  So 5 Bright/15 Low in the UI will be stored as 5 in bright_light_distance and 20 in low_light_distance.
For 1) I made sure that the page I was testing on was a brand new page, using UDL as the default, and that no tokens were on the page except the two I was working with, both of which were only using UDL.  The appearance and functionality in a module that had not been converted completely to UDL was/is remarkably different from a module that had been converted, and using the same map, same tokens. For 2) Ok, I see that. but 0.0 and 1.0? What does that mean? That is to say how do you know what "opacity" or brightness 0.4391567 is? :-)  I would assume that it's actually a percentage so that if you wanted to set the light to "40%" you would set dim_light_opacity to .4 but there's no documentation that I can see on that. For 3) You sometimes have to wonder what is in their heads. That's so counterintuitive... but then the LDL system wasn't that easy to figure out either. But, from what I've seen in the documentation, and playing around with it, if you want to have a lighting source that has 10 feet bright light and 10 dim light beyond that, according to their documentation for setting low_light_distance: " When setting this value, you must include any Bright Light Distance you have set. The reason for this is because Low Light Distance is calculated from the center of the token. So if you have set Bright Light Distance to 10, and you would like an additional 10 feet of Low Light Distance, the value of low_light_distance must be 20." But what appears in the UI is exactly that: Bright light distance is 10 and Low light distance is 20 and total light is 30. But that's not what you want. And here's where I say that it looks broken to me. Look at the following pictures.  It seems to me that the torch (set as described above using " !token-mod --set bright_light_distance#10 low_light_distance#20  is showing bright light far more than it should (more than 10 ft), and the token is not seeing as far as it should - it's not seeing dim light out to 60 ft. In the second picture of the map, the token is in the same place as in the first picture but the character token has been moved to the other end of the room. The Aaron said: For 1), I'm guessing there's a mix of LDL and UDL on the pages you're testing with.  The UI is a bit confusing and switching a page from LDL to UDL does not switch the implementation of the tokens on that page. 2) Documentation is the bane of programmers. =D  The low light brightness is dim_light_opacity which can have a value between 0.0 and 1.0. 3) UDL's Low Light setting is definitely a bit annoying.  They changed the UI so that you are specifying the distance for bright light and the distance for low light.  However, they store the value for low light as the sum of bright light and low light.  So 5 Bright/15 Low in the UI will be stored as 5 in bright_light_distance and 20 in low_light_distance.
1623341174
The Aaron
Roll20 Production Team
API Scripter
It's hard tell what's going on in that picture, particularly with overlapping light sources and walls restricting things.  Here's 10/20 for bright/dim using your TokenMod command: That looks right to me.  Light is measured in the units of the page, so if you have a grid square set to something smaller than 5, you would get some larger light circles.  Here's the same token after changing the Grid Cell Distance to 2.5:
The units in my pictures were 1 square = 5ft. There's only one light source - the torch.  The torch, set to 10/20 is casting bright light for about 25ft. The token, which has "Darkvision" set to a distance of 60ft, is not seeing dim light out to 60ft but only about 35ft as seen in the last picture. You can see the rays out to the right and left only go about 35ft of "dim light".  That dim light should be unaffected by the light coming from the torch. The Aaron said: It's hard tell what's going on in that picture, particularly with overlapping light sources and walls restricting things.  Here's 10/20 for bright/dim using your TokenMod command: That looks right to me.  Light is measured in the units of the page, so if you have a grid square set to something smaller than 5, you would get some larger light circles.  Here's the same token after changing the Grid Cell Distance to 2.5:
1623431720
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
In both pictures, I see ~60 feet of dim light to the token's right. In the first one, there appears to be a wall at about 50'. The second one shows dim squares to the right for about the distance you are talking about. Am I missing something?
In the second picture, I only see 50' of dim light to the token's right.  In other pictures/situations, I've seen less. It tends to vary.
1623679028
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Counting more carefully, I see 55', but going by the map in the first picture, there is likely a wall at that point. And yeah, depending on the brightness of the underlying map image, those last feet can be hard to see.
You're right, there is a wall there. Moving the token to another room where there's more space, as far as I can see, the dim light goes out 5' less than specified. I'm wondering if it's counting the first 5' as the location of the token, so that if i want "Darkvision 60", for example, I have to specify 65 feet of vision. Another odd thing, when I went to test this, I had to restart the API sandbox 3 times before token-mod would work.
1623770289
The Aaron
Roll20 Production Team
API Scripter
 Based on a bright light of 10ft, I'd say measuring is from the edge of the token: Dim light has a stronger-seeming penumbra than bright light (really, it's probably just that dim light is dimmer already).  Here's dim light at 10ft: If you add 2 or so to the dim light radius, you can get the penumbra past the line: Adjust as desired for how you want it to work.
Still having problems with lighting.  First, as reported, it takes a couple of reloads of the API sandbox for token-mod to work. But, once it does, I still have problems with lighting. This is the map I'm testing on: Notice there's a "fire" token on the right side and a player token on the left.  First issue: "blind". Here's the setting for the player token: Here's what the player token "sees" (using CTL-L): That's certainly not "blind" and not what i would expect if vision were turned off. Now, let's look at the "campfire": Again, viewing that from the "player" (who has vision): That's definitely more than 40ft of bright light. Either I'm totally misunderstanding things, or the Dynamic Lighting System is broken. What am I missing here?
1624115830
The Aaron
Roll20 Production Team
API Scripter
When you say 'viewing that from the "player" (who has vision)', do you mean logging in as a player/using a dummy account, or do you mean hitting ctrl-L to get the "player view"? If you refresh the page, do you get a different view than you have right now? If you want to PM me an invite to your game and GM me, I will come take a look directly.
Using ctrl-L to get the "player view". Not only doesn't refreshing the page make a difference but exiting and re-entering doesn't either. I will PM you an invite.
1624119923
The Aaron
Roll20 Production Team
API Scripter
Joined.  To get a real view as a player you need to rejoin as a player or use a dummy account in a separate browser. Ctrl-L will still show you GM things which can be confusing for diagnosing Lighting issues.