Tabletop Simulator Guide

Creating Sheets for Tabletop Simulator

Creating Sheets

Overview

Brief guide to everything decks and sheets with the aim to educate on how tiling, sheets and the deck importer works and how to achieve high quality and optimized results.

Introduction

This guide aims to cover the essentials of creating sheets, for importing as decks in to TTS or for working with tiling materials in Unity. This guide assumes you are somewhat versed with some image editing software of your choice, or comfortable with following lightly technical instructions.

The bundled Deck Editor will not be used in this guide as it’s in my opinion not a suitable tool with all of it’s flaws and issues.

I will be using Photoshop CC and ImageMagick in some demonstrations, but Photoshop can be substituted for most image editing software such as GIMP or Affinity.

If you’re following along for the ImageMagick sections then you can find and download it for free here: [link]

ImageMagick usage: Most scripts in this guide can be ran through a terminal window in the folder containing your material. File > Open Windows Powershell, or create a .bat file containing the script snippet.

What are sheets?

Sheets are textures comprised of (most commonly) evenly sized and distributed images. In the context of Tabletop Simulator this would typically be decks of cards, tokens or rulebook pages.

There are a multitude of optimization and usability reasons for using sheets over individual images, but I won’t address these technical details in this guide. Since you’re here reading the guide you have probably come to the conclusion that you need a sheet.

The visualization above demonstrates a simplified sheet with it’s relevant dimensions. A grid of 12 225x150px cards can make up a 600x675px image in a 4 by 3 distribution (amounts and values simplified for demonstration).

Tools that use sheets, such as the Tabletop Simulator deck importer then split up the image using the portions they need where they need them.

Preparing your images

Most tools that use sheets assume images of equal sizes in a grid. If you have a folder with your images in equal sizes already then you’re set and can skip this section.

If you’re manually processing your cards in image editing, use what methods are applicable to your source material to straighten out and resize all of your individual images. This guide is not an introduction to image editing and won’t cover image processing techniques, see guides for your software of choice to learn more about this.

If you’re using ImageMagick you can use the mogrify -resize and -crop options to automagically format all the cards in a folder. Here are some examples:

Resizing all images to 600x300px

magick mogrify -resize 600×300! *.png

Splitting an existing sheet in to individual images

magick convert split.png -crop 6×4@ out.png

Cropping all images to 400x400px with a 100px/100px left/top offset

magick mogrify -crop 400×400+100+100 *.png

Creating the sheets

Creating a sheet from a set of equally sized images is simply put arranging them in a grid layout.

If you’re using image editing for this, Photoshop has a useful script called “Load Files into Stack” that imports your images as layers, GIMP and other equivalents probably have equivalent functions or scripts. Once you have your images imported as layers, figure out the distribution you’re wanting to use and multiply the canvas size by this factor. You can calculate the resolution in pixels yourself, or just scale your canvas by percentages.

Example: You have 20 cards that are each 750x1000px. To make a 5 by 4 sheet you would need to expand your canvas to 3750x4000px, or 500% in width and 400% in height. Optionally you could do a 7 by 3 distribution on a canvas of 5250x3000px, but this would leave you with an empty slot in your grid, 7 x 3 makes 21.

This isn’t a guide on optimization practices, but it’s recommended that you loosely adhere to the best practices of keeping images as square as possible and not waste space with empty positions in your grid.

Transform or otherwise move your images in to the grid layout in the order you prefer. Photoshop’s built in snapping makes this quick and easy.

If you’re using ImageMagick you can generate grid layout sheets with the montage -tile option.
The following example will produce a 6 by 4 sheet from all the 280x480px png’s in your target folder

magick montage *.png -tile 6×4 -geometry 280×480! out.png

Resolutions and Sizes

For the sake of continuity in a written guide the starting point of this section assumes you have made a sheet as a (sort of) lossless .png in a resolution as high as your source material. You could of course resize your individual images as you make them and end up with the same result as what will be outlined as concepts here, the order you do it in doesn’t really matter.

Real world dimensions are thrown out the window within digital realms like Tabletop Simulator. Players have screens of different sizes and resolutions, and all view the playing field differently making any definitions for scale completely arbitrary. The sizes of your images do not define the scale at which game assets are created or viewed in game. For these reasons (and more) we are discarding terms like “DPI/PPI” and any real world units of measurement.

In the context of image resolution, what determines measures like “image quality” is the pixel resolution of each individual segment, in this example each card in your sheet and the size at which they are viewed. Viewing a 600x400px card up close on a 1920x1080px screen is going to result in a low resolution image. If instead each card is way too large for it’s intended purpose then you end up with diminishing returns where you’re using needless amount of memory and experience long loading times for no tangible benefit.

Because factors like screen sizes and resolutions are variable there can never be a definitive “card resolution” to adhere to, but we can cater to the average user and settle on a middleground in between quality and optimization. Assuming most users use 1080p screens, a per card resolution in between 750x1000px to 1200x1600px should be plenty in most use cases. In a hypothetical sheet of 6 by 4 cards this would be a total image resolution of 4500x4000px to 7200x6400px.

Outro, Scripts and More

ImageMagic is extensively documented both on it’s official site and across various sources like StackExchange [link]

The following block contains a compilation of useful snippets for image processing. Adjust and modify to your needs. If you have your own “go-to” snippets that you think would fit in here then leave them in the comments.

:: Resize all PNG’s magick mogrify -resize 600x%400! *.png :: Crop all PNG’s magick mogrify -crop 600×400+100+100 *.png :: Split a sheet in to individual images magick convert split.png -crop 6×4@ out.png :: Extract and crop pages from a PDF magick convert -density 300 source.pdf -crop 600×400+100+100 a.jpeg

Thank you to Patreon supporters – [link]

SteamSolo.com