Update 14.0 - Engine Upgrade, Feature Additions & Performance Improvements
Tabletop Simulator v14.0 - Engine Upgrade, Feature Additions & Performance Improvements!
A quick note from the team: We know it’s been a long time since the last big update. Behind the scenes we’ve been doing a lot of groundwork on the engine and tools, and this patch is the first step to a renewed focus on regular updates and improvements to TTS. Thank you for your patience and for sticking with us ❤️
Thanks to everyone who tried out this update in the public beta—your feedback was invaluable in helping us make it as good as it is. A lot of the new features and fixes came directly from what you shared with us.
Read First (Important Changes)
-
New minimum OS / platform requirements:
-
Windows: 64-bit Windows 10 21H1+ (Windows 11 supported)
-
macOS: 11 Big Sur+
-
Linux: Ubuntu 22.04 / 24.04 (64-bit)
-
Win 32-bit builds are no longer supported.
-
Keybind behavior changed: keybinds now use physical key location instead of character (better across keyboard layouts). Keybinds have been reset due to this change.
-
Image pipeline update: your RAW image cache will be cleared with this update due to image pipeline changes and new translucency support.
-
Voice chat: if you are the host and disable voice chat, it disables voice chat for all players.
Gameplay, rules, and your saves are unchanged. This is primarily an engine + quality-of-life update.
Summary
-
Engine & platform
-
Engine upgrade to Unity 6 LTS for smoother performance, better stability, and faster loading in many cases. Over 5 years of engine improvements!
-
Native Apple Silicon support on macOS with a universal app (Apple Silicon + Intel), using Metal by default on Apple Silicon.
-
The game executable is now code signed, improving trust with Windows and reducing false positives with antivirus.
-
Rendering & mod assets
-
New Vulkan graphics API option on Windows & Linux (experimental) for potentially better performance in heavy scenes.
-
New rendering & image upgrades: higher quality PCSS shadows, optional image translucency, and WebP image support for more efficient mods.
-
Quality of life
-
Camera movement improvements, deal from bottom of deck, keyboard layout–friendly keybind behavior, turns system improvements, controller pointer smoothing, music player overhaul, notepad improvements, grid tools, erase-all controls, Cloud Manager upgrades, and new console options.
-
Lua / creators
-
Lua upgrades including a new turn-order API, improved deck dealing controls (including “deal from bottom”), putObject index support, plus stability fixes for scripting and drafting/hand selection workflows.
Engine, Platform & Security
-
Updated TTS to Unity 6 LTS.
-
Updated all plugins to their latest compatible versions.
-
The game executable is now code signed, improving trust with Windows and reducing false positives with antivirus.
New OS / Platform Requirements
-
Windows
-
64-bit only.
-
Minimum: Windows 10 version 21H1 (build 19043) or newer.
-
Windows 11 fully supported.
-
macOS
-
Minimum: macOS 11 Big Sur or newer.
-
Ships as a universal app that runs on both Intel and Apple Silicon (M-series).
-
On Apple Silicon, TTS runs natively (no Rosetta required).
-
Linux
-
Officially supported/tested: Ubuntu 22.04 / 24.04, 64-bit.
-
Wayland and X11 supported (behavior may vary by distro/driver).
If you're on an older OS than the above, TTS may not launch after this update. Please update your system.
Graphics APIs
-
macOS (Apple Silicon)
-
Metal is now the default graphics API when running on Apple Silicon.
-
If you're not on Apple Silicon, the game uses OpenGLCore by default.
-
Windows & Linux
-
Added Vulkan as a new experimental graphics API.
-
In very demanding scenes, Vulkan can offer better performance on supported hardware.
-
If you hit visual glitches or stability problems, switch back to the default renderer.
Security
-
Includes the latest Unity 6 security fixes, addressing known file-loading vulnerabilities in older engine versions.
-
Combined with code signing, this should reduce security prompts and exploit risk.
General & Performance
-
Greatly increased snappiness of WASD camera movement with less "floaty" gravity.
-
Keybinds now use physical key location instead of character, so bindings line up across different keyboard layouts.
-
Turn order UI now updates dynamically in the top-right player list whenever turn order changes.
-
Controller input for moving pointers should now feel slightly smoother.
-
Greatly optimized network serialization on CPU via more efficient bitpacking.
-
Image loading improvements
-
Loading new (uncached) images is now more performant.
-
Improved image quality in many cases.
-
Reduced likelihood of crashes when large or many new images are being loaded.
-
Added support for WebP images, a more efficient image format than JPG or PNG. (Feedback #2273)
-
Voice chat improvements:
-
Disabling voice chat in the configuration menu properly stops all voice chat processes.
-
This can fix audio issues with some Bluetooth headsets.
-
If you are the host and disable voice chat, it disables voice chat for all players.
-
Added an error message when trying to use voice chat when it isn't connected.
-
UI theme can now automatically follow your system theme if none is manually selected.
Rendering Options
-
Added a higher quality shadow setting PCSS, which gives more realistic shadows and blurs based on distance.
-
Added a new console command Translucency that allows images to support partial translucency (EXPERIMENTAL, please send us feedback on this!).
Connectivity & Session Safety
- Added a popup when disconnecting while players are still connected to offer them host migration. (Feedback #2663)
Note: Your RAW image cache will be cleared with this update due to image pipeline changes and new translucency support.
Music Player
-
Added search filter for playlists. (Feedback #2143)
-
Added Clear Playlist button.
-
Added Export Playlist and Import Playlist
-
Save your current playlist to a file.
-
Add a playlist file into your current playlist.
-
Added Upload Music Folder
-
Select a folder and upload all songs in it at once, with naming.
-
TTS will now suggest a name for a song when you provide a URL or file.
-
Fix: Music player no longer breaks when loading a new mod. (Feedback #2038)
-
Fix: Music events no longer break when a song ends with no playlist active.
-
Fix: Music player no longer resets when loading a save file with no music saved on it.
Notepad (On-Screen Notes)
-
On-screen notes region is now resizable.
-
New notepad settings for:
-
Font
-
Font size
-
Text justification
-
New console commands:
-
ui_notepad_edit
-
ui_notepad_left_align
-
ui_notepad_locked
-
ui_notepad_fixed_width_font
-
ui_notepad_font_size
-
ui_notepad_size
-
ui_notepad_text
Grid
-
While Grid settings are open, the grid now renders on top of everything, making adjustments easier.
-
Controlled via ui_grid_highlight_when_editing (console / Misc setting).
-
New anchor & gizmo mode
-
Click the Gizmo button in the Grid window.
-
Select a component to center the grid on it.
-
Ctrl+click a second component to size the grid appropriately (using your snap settings). (Feedback #1871)
-
Added measure_grid_multiplier command.
Erase All
-
Applies to drawn lines, text, and decals.
-
Non-promoted players
-
"Erase all" now only erases their own drawings/decals. (Feedback #1841)
-
Promoted players
-
Can erase everything
-
Can erase just their own
-
Can erase all content from a specific player
Cloud Manager
-
Cloud folder dropdown now has a "Select Folder" button that opens the Cloud Manager folder browser. (Feedback #711)
-
Starred folders
-
Folders can now be Starred (button next to folder name).
-
Starred folders show first in the folder browser dropdown. (Feedback #711)
-
Cloud search now restricts results to the current folder. (Feedback #1839)
-
Fix: Resolved several file browser issues and cleaned up its underlying code to improve stability.
Dealing: Deal From Bottom
-
Holding ALT while dealing or drawing from a deck will now take the card from the bottom of the deck. (Feedback #2680)
-
The deck will do a small “hop” animation to make it clear when this happens.
-
Works both with the number keys and the GUI.
-
Dealing hand objects will now correctly deal to your new hand if you change the table.
Misc Features
-
Custom Figurine
-
Added toggle to use a minimal collider on the card part. (Feedback #1929)
-
Added option to mirror the back texture. (Feedback #2107)
-
Added Reset Scale to an object's scale context menu. (Feedback #2078)
-
Hotseat player names are now remembered between sessions. (Feedback #2070)
-
Added vr_floor command / VR setting
-
Lets you turn off the floor independently of fog / "Floor Of Mist". (Feedback #2173)
-
Server browser improvements
-
Player names now show in the server browser.
-
Your name is hidden if you are offline, invisible, or you untick the "Show Name In Server Browser" option.
Console Commands
New/updated commands:
-
component_hotkey_state_change
-
When enabled, press number keys while hovering an object to change its State.
-
Appears in Misc Settings.
-
ui_notebook
-
Shows the Notebook window.
-
text_tool_default_font_size
-
Sets default size for the Text tool. (Feedback #2000)
-
autorun_lua
-
Controls whether Lua automatically runs when updated.
-
camera_reset_on_color_change
-
Controls whether the camera automatically moves to your seat when you change color. (Feedback #256)
-
show_name_in_server_browser
-
Controls whether your name is listed in the server browser for public servers you join.
-
measure_grid_multiplier
-
Applies a scale multiplier when the line measure tool is in Grid mode.
Fixes:
-
Fixed help command not working on commands that have no arguments.
-
Removed old console commands related to global chat. (Feedback #2117)
Open Beta Fixes
-
Fixed a major networking issue where loading a save file could break the game state. (Feedback #2641)
-
Fixed rewinds and autosaves not working correctly. (Feedback #2656)
-
Fixed an issue where XML UI could be blocked by incorrect objects, including the invisible floor at y = 1. (Feedback #2647)
-
Fixed a 64-depth issue when downloading and loading mods. (Feedback #2640)
-
Fixed hand selection working incorrectly with the new Lua drafting mechanic.
-
Fixed an issue where you could erase your drawn lines incorrectly. (Feedback #2702)
-
Fixed several HandSelectMode issues. (Feedback #2618)
-
Fixed a bug in Lua Wait.collect. (Feedback #2635)
Fixes
-
Fixed an issue where XML UI would not be blocked by objects when it should.
-
Fixed XML UI not hiding in hidden zones. (Feedback #2673)
-
Fixed partial transparency when importing UI and decal images for the first time.
-
Fixed advancing the turn immediately after loading a game always going to the first player instead of the second.
-
Fixed a macOS issue where text could be entered while the Cmd modifier key was held. (Feedback #2636)
-
Fixed infinite bags visually breaking after Undo or Reload. (Feedback #2665)
-
Fixed drop indicator not showing color when dropping with Alt + Right Click for decks and stacks.
-
Fixed grid size inputs not allowing you to type a . at the end.
-
Fixed onLoad not executing in Hot Seat Mode. (Feedback #2629)
-
Fixed RPG tileset snapping preview so it now displays correctly.
-
Fixed Flick and Combine sometimes requiring a double click when you are a client.
-
Fixed right click while drawing a line not canceling for everyone else. (Feedback #125)
Misc Fixes
-
You can now obtain the "Be Social" achievement using in-game chat. (Feedback #1895)
-
Fixed game crashing when trying to load a CMYK JPG.
-
Fixed line tool not converting to cm in component mode. (Feedback #1934)
-
Fixed "Showing Hand" button displaying incorrect color after seat swap.
-
Fixed on-screen hand blocking in-game UI. (Feedback #1757)
-
Fixed hotseat turn not being set to correct player on load. (Feedback #1960)
-
Fixed hotseat players being unable to drop cards in searched deck. (Feedback #1959)
-
Fixed hotseat turn incorrectly resetting when loading a Classic game.
-
When starting a hotseat game, the game now only picks larger tables, so all player colors are immediately selectable.
-
Fixed context menu not clamping to screen. (Feedback #1966)
-
Fixed context menu appearing in the wrong position when right-clicking a card in hand. (Feedback #2051)
-
Fixed unintuitive Text Tool placement behavior.
-
Fixed appearance of custom card aspect ratios when searching containers. (Feedback #2021)
-
Fixed cards merging incorrectly with a deck when the deck is on a snap point. (Feedback #2063)
-
Fixed left edge of search dialog not having a collider. (Feedback #2077)
-
Fixed Japanese language name in language select. (Feedback #2116)
-
Fixed shake detector triggering when the user spams Tap.
-
Fixed Random Domino/Card/Mahjong Tile not generating every possible object. (Feedback #2160, #2154