Universal Virtual Tabletop (UVTT) Support

Overview

LightLayer_Screenshot.png

Roll20 supports UVTT file uploads from within the VTT Page Menu. When you upload a UVTT file, Roll20 reads the embedded data and automatically sets up your scene; the flat background image is placed on the Map layer, and any walls, doors, windows, and light sources in the file are placed on the Dynamic Lighting layer.

Note: Anyone can upload a UVTT file; subscribers unlock the power of Dynamic Lighting.

Prior to this release, the only way to use UVTT files in Roll20 was through the community-built UniversalVTTImporter Mod Script, available to Pro and Elite subscribers. While that Mod Script is still available for subscribers who want its advanced configuration options, the built-in functionality described in this article allows anyone to use UVTT files to set their maps up faster and easier.

How to Upload a UVTT File

CreatePageUploadBackground.png
  1. Open your game and go to the Page Menu
  2. Click Create Page to open the menu. (The + button next to it still creates a blank page instantly, without opening the menu.)
  3. Select Upload Background, then browse or drag and drop your UVTT file (.uvtt, .dd2vtt, or .df2vtt are all supported).

Roll20 processes the file and creates a new page with the image and Dynamic Lighting data already placed. Review how all of the walls, portals, and lights are set up; you can adjust their placement, size, and portal type on the Dynamic Lighting layer if you want to make any changes.

Note: Dynamic Lighting should default on after a UVTT upload. If anything looks wrong, double-check that it's turned on in Page Settings or in the Dynamic Lighting Tool in the left toolbar.

Adjusting Doors, Windows, Walls, and Lights After Upload

Everything pulled from a UVTT file and placed on the Dynamic Lighting layer is a Roll20 object that you can select, move, delete, or add to it just like anything you'd configure by hand.

  1. Go to the Lighting Layer after your upload finishes.
  2. Confirm that Dynamic Lighting is enabled, and that Lines Block Movement is set to "Always on" or "When Lighting is on” (default) so your lines block token movement.
  3. Right-click any portal on the tabletop to open its mini-menu. Switch it between Door and Window using the dropdown at the top, and use the toggles for Secret, Locked Door, and Opened, along with toggling on/off window Curtains to adjust its state. None of this needs to be set before you place a portal... It's adjustable any time afterward, directly on the tabletop.
AdjustDoorWindow.gif

For the full recap of what you can do with doors, windows, and barriers once they're on your map, see Creating Light, Windows, and Barriers.

Limitations

Keep these in mind before you upload:

  • One file at a time. Each UVTT file contains a single map image. If your map has multiple floors or levels, each floor is its own file and needs to be uploaded separately.
  • Only static maps work as UVTT files. The map image is a flat, baked render. Animated content isn't part of the UVTT format, so animated versions of a map won't carry over.

Frequently Asked Questions

What is a UVTT file?

Universal VTT is a format created by Megasploot, the developer behind Wonderdraft and Dungeondraft, that bundles a map image together with structured data about that map. This data can include grid dimensions, wall positions, portal placements, and light sources, and make it so you don't have to rebuild any of that by hand when moving a map between tools.

.dd2vtt, .df2vtt, and .uvtt are technically the same format, named for whichever tool created them (Dungeondraft, Dungeon Fog, and Arkenforge, respectively). Roll20 accepts all three.

For a deeper look at the format itself, Arkenforge has a thorough breakdown on their site.

Is the UniversalVTTImporter Mod Script still supported?

Yes. The built-in functionality covers what most GMs need, but the community-built UniversalVTTImporter Mod Script is still available for Pro and Elite subscribers who want its more advanced configuration options.

Where do I get UVTT files?

Several map creation tools can export in Universal VTT format:

  • Dungeondraft: exports as .dd2vtt. Select "Universal VTT" from the Export Mode dropdown.
  • Dungeon Alchemist:  exports as .dd2vtt. Select "Universal VTT Export" in the Format section.
  • Dungeon Fog: exports as .df2vtt. Select "Universal VTT" from the file extension dropdown.
  • Arkenforge Toolkit: exports as .uvtt. Select the "Universal VTT" option when exporting.
  • MapForge: supports all three extensions. Select "Universal VTT" from the Format options.
  • You can also find pre-made UVTT maps from creators on Patreon, Reddit, and on DriveThruRPG. 
  • Czepeku, who sell maps and scenes on the Roll20 Marketplace, recently began offering their maps as UVTT downloads directly from their own site as well. Their catalog contains more than 12,000 hand-drawn fantasy and sci-fi maps, most of which are available as a UVTT download. A Czepeku subscription unlocks unlimited downloads across their expansive map catalog, plus access to new map packs released weekly.

What's the difference between .uvtt, .dd2vtt, and .df2vtt?

This is just the file extension; these are all the same format. The extension tells you which tool created the file, but Roll20 reads all three the same way.

If you find a UVTT file that Roll20 doesn't support, let us know.

What information can I upload alongside a map image?

UVTT files can carry a lot of information alongside the map image itself:

  • Walls: structural lines that block sight and movement
  • Barriers: placed objects like pillars or furniture that block movement
  • Portals: doors and windows, placed and ready to configure
  • Light sources: position, color, range, and intensity
  • Map resolution: grid size, set automatically based on the file

How does Roll20 handle portals (doors/windows) from a UVTT file?

Map creation tools each have their own way of representing portals (doors, windows, and their open/closed state), so how reliably that carries through a UVTT export can vary by tool and the export preferences of the map creator. You may need to make a few tweaks once the file is in Roll20.

During export, portal data is written into the file as a Portal property. When you upload a UVTT file, Roll20 reads that “portal” object and its “closed” property and maps it to its own Dynamic Lighting door and window objects:

  • closed: true uploads as a door in a closed state. Sight and movement are blocked until it's opened.
  • closed: false uploads as a window in a closed state. Sight passes through; movement is blocked unless the window is opened.

Once uploaded, you can adjust any window or door directly on the tabletop: right-click it to open its mini-menu, where you can switch it between door and window, and toggle Secret, Locked Door, and Opened, along with adding Curtains to windows. See Creating Light, Windows, and Barriers for the full breakdown.

How does Roll20 handle Line of Sight from a UVTT file?

Map tools each have their own way of representing objects that have physical presence but aren't structural walls, like furniture, bookshelves, pillars, statues, and low walls. In Dungeondraft, for example, this is a "Block Light" checkbox on individual objects; when enabled, the object's outline is written into the file as an objects_line_of_sight entry.

Roll20 reads objects_line_of_sight entries and maps them to transparent Dynamic Lighting barriers rather than solid walls, so an object like a bookshelf or pillar blocks token movement but allows sight to pass through, which is the right behavior for most furniture and low obstacles.

You can adjust any of these barriers directly from the Dynamic Lighting layer. See Creating Light, Windows, and Barriers for barrier types and configuration.

My walls or lights didn't come through correctly. What should I check?

A few things to try:

  • Confirm Dynamic Lighting is enabled on the page ( Left Menu > Dynamic Lighting Tool). It should be on by default after a UVTT upload.
  • Confirm that “Lines Block Movement” is on if you're expecting walls to block token movement.
  • If a door or window came in as the wrong type, it may be worth revisiting your export settings in the source tool; some tools have separate settings for whether a portal blocks light.
  • If lighting looks doubled or too bright, your map may have baked-in lighting (light and shadow already rendered into the image). Try removing the placed light sources or reducing their intensity.
  • If a map looks washed out, try removing colors from overlapping lights.
  • If a map’s built-in grid is offset and didn’t align correctly, move it on the Map Layer, then correct the information on the Light Layer by using Ctrl + Shift A to multi-select and move/scale.

Can I edit the walls, lights, and portals after uploading?

Yes. Everything from a UVTT upload is placed on the Dynamic Lighting layer as a normal Roll20 object; select, move, delete, or add to it like anything you'd draw by hand. See Adjusting Doors, Windows, Walls, and Lights After upload above for the full walkthrough, including the portal right-click mini-menu.

What if I don't have access to Dynamic Lighting?

If you aren’t a Plus, Pro, or Elite subscriber, uploading a UVTT file still places the image on the background and places the Dynamic Lighting lines, lights, and portals. If you decide to upgrade your account in the future, everything will be set up and ready to use.

What part of the UVTT file counts toward my storage quota?

Only the image.

How big of a UVTT file can I upload?

Maximum file upload sizes vary per subscription tier. See our Subscription Page or Best Practices for Files on Roll20 for details.
 





 

Was this article helpful?
0 out of 0 found this helpful