I'd promised on the UVTT announcement thread to post my initial experiences with using UVTT import for a game session. This is to a degree also a review of dynamic lighting, since the two are, for my purposes, coupled. Some background: I run a small monthly D&D game with a group of mostly old college friends. And it's all custom adventures, so I need to make my own maps. I've used a variety of methods over the years, and the current one primarily uses Dungeon Alchemist (henceforth DA) to generate JPEG maps. Several of my players aren't gamers, so there's a range of computers, and network capabilities, and I've avoided dynamic lighting in the past because of that, and the complexity of setting it up. I'd tested it once; it was not a success. So play normally just uses fog-of-war. But I'd been thinking of giving dynamic lighting a try, and had been talking with my players about it, and was going to use it for our August game (tomorrow night). And then Roll20 announced UVTT import, and Dungeon Alchemist can export UVTT, and a plan was made. Now it's been several years and a number of major changes since my last dynamic lighting test (which at the time went badly due to underpowered hardware). But we have jumpgate now. And the lighting tech is improved. I do still have one player with a chrombook though, so that's my big concern. This first game is in a dungeon, with a bunch of devils for enemies, so I'm going very low on lighting, mostly just what the players bring (a mix of humans with lights, others with darkvision, one warlock with Devils Sight, and a familiar with Darkvision and 10' Blindsight. The dungeon also means constrained sightlines, limiting the area to process. I also limited myself to 30x30 maps for this test (I usually use 50x50 or even 50x75, and rarely 100x100). I'll gradually work in larger maps and more complex lighting in the future if things go well. For light/vision setup, after some initial testing I left all monsters with no vision or lights. No room had more than two lights (most had none). The party was set up with two basic structures: lantern or darkvision (one person had a torch-equivalent with reduced range, and the warlock had the darkvison settings but with 120' range). Figure 1: Token with Lantern Figure 2: Token with Darkvision After some experimentation I settled on not tinting or using effects for darkvision, and maximizing "dim light" brightness, to maximize visibility (I mostly use figure-based top-down tokens, not disks, and they're harder to see). I will likely experiment with other arrangements in the future. Note: unlike NPCs/Monsters, henchmen and familiars get the same vision setup as the PC, since a player is managing them and has to see where they move. View As Player The new View As Player (VAP) capability came along at just the right time. I have a test account I can use for a "player view" of maps, but VAP is faster, and lets me check out my player's token's as they are set up, to validate that they work as I want. I used this extensively in testing, and it was extremely helpful. Export and Import: Two things are worth noting here: DA supports multi-floor maps, and Roll20 does not. So you have to export one floor at a time. And DA supports animated maps (things like rippling water), but UVTT does not (at least not in the base spec), so Roll20 will always get a static map. Export is pretty straightforward. I used the following settings, and turn off grid on export, so I can add the roll20 grid. It winds up in basically the same place though. Which is kinda cool actually, because DA uses 72 pixels per square, and Roll20 uses 70, but the import compensates for that. fig 3: export settings Note: I've been using basically these same export settings (with format JPEG) to create maps without UVTT. On export you get a file with extension .dd2vtt, and in Roll20 you use UVTT import (the Create Page "Upload Background" selection) to import it. For my first test map with 53 lights, it took a while, but with only a few lights it's pretty quick. However, the import is nearly flawless. I imported about a dozen maps. Every room's walls/doors/windows were light-tight; no leaks. Every door and window imported correctly (almost). Exception 1: On that first map, there's one wall of 25' with a single window, that imports as if the window was the full width of the wall. There's a wall there, but the 5' window somehow extends the full width. This is consistent, and I'm going to file a bug report, although it could easily be a DA issue. This never happened on any other map. Exception 2: There was one door in DA I used, which caused a problem when it generated, but I noticed it also caused a problem in DA (it was a 2-wide double-door on a 2-wide wall, and it deleted another wall at right angles to it in DA, and then in Roll20 placed the two doors on that nonexistant wall (which existed in Roll20) instead of on itself. This is obviously a DA bug. And likely the door doesn't actually fit on a two-square wall and shouldn't have let me place it there (it's one of their "XL" doors). Now I only tested doors and windows (none of my DA maps had anything that generated curtains), and my game maps only had doors, as there aren't many windows in a dungeon. Problem 1: UVTT Imports Colored Lights (and DA always colors lights) - for now, the fix is manually adjusting lights in Roll20 (or convincing DA to generate in whatever format roll20 considers "colorless", which seems unlikely) - better fix: an option on import to convert light sources to "colorless" My first export showed a problem. Dungeon Alchemist colors its lights with one of 10 preset colors (typically yellowish torchlight), and Roll20 does NOT handle color at all usefully. Here's a slice of a larger room with multiple, overlapping torches. The weird interference pattern appears to be some kind of intensity-mapping-to-color thing. fig 4 map as it appears in DA fig 5 View as Player, token with vision but no light source fig 6 View as Player, token with 20/40 torch light source (dim set to ~50% bright) So, obviously I need to fix the light colors. In the lighting layer, click the light and select the color from the picker: the lower-right corner is "no color". Fig 7 Color Picker Note: there's no way to do this in DA, and you can't bulk change them in Roll20. And that first map generated randomly had 53 light sources in a 17-room "Castle" 30x30 map. It varies: one 5x7 chapel had five lights, several prisoner cells had none. Most rooms had 2-4. Note: it's actually a 28x28 usable area on a 30x30 map. I always have problems with the outer row of squares in DA, so I never use them for things with walls. This also proved true when a test placed the wall / light barrier outside the actual map footprint. I think this is a DA issue (or a general conversion issue) as I've had similar problems with simple jpeg maps from DA. Now, you can reduce the generated lighting, to give up a little realism. If you turn off "generates light" on a light source in DA, it won't populate a light on import. However, it also turns off the "flame" color on things like torches. So you really need to edit in Roll20 to turn it off if it's an unneeded source while keeping an appropriate image of a lit torch on the map. Problem 2: there's no Game Setting to default to turning on Explorer Mode or Update Vision on Token drop when creating a page, both of which I use and had to set manually on each map. And reset each time I re-worked it and did a new import. I wound up doing that a lot. That's a lighting issue, not an import issue, but it's a REALLY annoying omission. Problem 3: Import can only create a page, not update one. This might not be a big deal for some, but my process for creating a game is iterative. I do part of the map, lay out encounters and traps, rework wall and decoration placement (and now light placement), rinse and repeat. My main map for this session went through 9 revisions, and I was trying to avoid unnecessary ones. What this means is that any annotations I put on the GM layer (room numbers, trap locations and range, etc) have to be re-done (I could probably copy/paste them; I hadn't thought of that until after). Similarly for images I add to the map layer for things like blood splatter, treasure chests, dead bodies, etc. It would be nice if there was some way on import to replace an existing map image and the lighting layer, without affecting the GM or Foreground layers, or modifying non-map graphics/text on the map layer. This also means that there's no way to import segments of maps to make a larger one (ie: tiles). When I make a map larger than 50x50, I generally do it in segments no larger than 50x50, to reduce image load time for players on constrained bandwidth (and because it's harder to work on maps that large in DA). I also use tiles sometimes (I have a bunch I made in various mapping programs, including DA). Another nice to have would be to selectively place an import on a portion of an existing map. Consider a village, where the primary map is just grass, and you overlay maps of individual structures on it, each a separate UVTT file. Problem 4: There's no support for D&D Blindsight, Invisibility or Magical Darkness in Roll20. This is another lighting / vision issue, not an UVTT one. As noted there's a warlock with Devil's Sight, which can penetrate magical darkness. There's also a pseudodragon familiar. Pseudodragons have both Darkvision 60' and Blindsight 10' My current scenario involves a bunch of devils in a dungeon, some of which can cast magical darkness. I can sort of hack together magical darkness for folks with darkvision (a polygon wall / barrier overlaid with a black circle). This prevents anyone from seeing into it from outside, or through / inside it when inside. But the warlock should simply ignore magical darkness, and see right past it to what's beyond. And the pseudodragon, if it enters the area, can see most of the interior, and slightly out if it's near the wall. And there's no way to fully implement either of those characters. This might seem like a nit, but in my experience, there's often someone with one or the other ability in a party, and they get used. Tasha's Blind Fighting, Warlock's Devil's Sight, Pseudodragon and Imp familiars, all of those need that kind of support. I play a character with blind fighting in a campaign using a different VTT, which does support it (AboveVTT), and it's really useful at times to actually be able to see things others can't. I don't think that's going to change any time soon, and to be honest it's not something I have today with fog-of-war. But it's an issue. Summary: Overall, I have to say that the experience was a very positive one. It worked much better than I'd expect for a brand-new feature. Assuming my game goes well, and I'll provide an update after the weekend, I'll probably be making more use of this in the future.