Tabletop Simulator - Knil
Hey everyone, this is one of our largest updates yet! We've updated the game engine massively to the latest version of Unity 2019.1 which will give us overall better performance and features. There has also been an optimization pass to reduce stutter causing situations, so everything can be as silky smooth as possible. That's just the tip of the iceberg: reduced game size 4gb, AssetBundle materials, spectator camera improvements, and ton more covered below!

Unity Engine Upgrade:
  • Upgrade Unity version from 5.6.6 to 2019.1.
  • Dx11 on Windows, OpenGLCore on Mac and Linux.
  • FPS should be overall faster. Can be twice as fast in really specific scenes.
  • Physics performance improved.
  • Video textures much faster with more formats support (.m4v and .mov)
  • Incremental garbage collector greatly reduces the game's stutters.

Changes:
  • Dx9 support has been dropped (only 0.01% of players have a gpu that is only Dx9). Dx10 is minimum requirement now.
  • Windows Xp support dropped and with Steam not supporting it anymore either this isn't a surprise.
  • All custom images are now resized to a power of 2 internal, so avoid using non power of 2 images if you can. This is due to Dx11 bug this might be changed back in the future if Unity fixes this.
  • RAW cache from Images and Models had to deleted to due incompatibilities with the engine upgrade.

Known Issues:
  • AssetBundles using crunched textures will not load correctly and need to be re-exported from Unity 2019.1 with the updated Modding Project.
  • AssetBundle mesh colliders might behave differently due to physx upgrade.

New System Requirements:
  • OS: Windows 7 SP1+, macOS 10.12+, Ubuntu 16.04+
  • Graphics card with DX10 (shader model 4.0) capabilities.
  • CPU: SSE2 instruction set support.

Performance Optimizations:
  • Saving mod asset to disk is now async and will not sutter the game.
  • Greatly reduced the time it takes to destroy objects reducing the lag when changing mods.
  • Made the Games & Saved Objects menu async to fix stutters when opening them.

DLC Improvments:
  • DLC are no longer included in the game install and will be downloaded when played the first time.
  • This has reduce the install size of the game by 4 gigs.
  • We can also now update and add new DLCs without having to update the game.
  • Can now have multiple DLCs loaded up at once.

AssetBundle Materials:
  • Added support for loading AssetBundle materials into any Custom Object Image slot.
  • Create holographic playing cards or add normal maps to your custom dice!
  • Works by assigning your material to an AssetBundle and then exporting like normal.

General Improvements:
  • Custom Card added so you can create cards one at a time.
  • Added /rules to global chat which opens a link to the rules on our knowledge base.
  • Update DLC Three Cheers for master with scripted components.
  • Disabled being able to load local files with the Tablet due to javascript exploits.
  • Opening urls now only open steam links in the overlay and all others open in your default browser.
  • Secured many networking related functions from hackers.
  • Added .json to Steam Cloud upload file types.
  • Steam Cloud now supports uploading files greater than 100mb.

Lua:
  • Added filterObjectEnter(object) event: Place it on an object, and it will prevent any objects from being able to enter it. For example, placing it on a deck will not allow cards to enter it. If you return true in the function, the item will be allowed in.

XML UI:
  • Updated plugin to the latest version.
  • Can now get the click button for events like onClick with the value param passed.
  • Xml UI image assets are now no longer compressed to make them look nicer.
  • Xml UI errors now print to chat, to make it easier to debug Xml UI.

Caching Improvement:
  • Added support for adding {verifycache} in front of your urls to have the game check the last-modified header of a url to update the local cache if it is stale. Only does this check once per game session.
  • This is an advanced feature for people that want to host content on there own servers and make sure people get updates without having to change the URLs.
  • https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Last-Modified

VR
  • Added a warning message when you do not have any control bindings (typically because you are using unsupported hardware), instructing you on how to set the bindings up in SteamVR.
  • Fixed objects not clumping when you shake the controller.
  • Fixed stack/deck grab not working with laser pointer.

Spectator Mode
Spectator mode now works when you use a different resolution than your main display. It has had an overhaul, and now works using these commands:

  • displays - Lists all available displays. ID 0 will always be your main game screen.
  • spectator_window - Turn on to activate the spectator window.
  • spectator_activate_with_resolution - Use instead of above to specify display, resolution, etc.
  • vr_spectator_replaces_main_window - In VR, controls whether spectator mode makes its own window or just uses the desktop mirror.
  • spectator_camera_follow_player - When ON the camera will follow your point-of-view.
  • spectator_camera_attachment - Lets you specify a component or pointer to attach camera to.
  • spectator_camera_follow_attachment - When ON the camera will follow the above object.
  • spectator_camera_dolly - When camera is following an object, it will be offset this far in the direction it is facing.
  • spectator_camera_offset_position - When camera is following an object it will be offset by this X Y Z.
  • spectator_camera_offset_rotation - When camera is following an object its facing will be offset by thus X Y Z.
  • spectator_camera_load - Set the camera to a saved camera position.
  • spectator_camera_load_zero - As above, but the position is zero-indexed (useful when coupled with certain commands like Add).
  • spectator_camera_smooth_on_load - Whether smoothing is applied during above.
  • spectator_camera_target - Lets you specify a component or pointer for the camera to track.
  • spectator_camera_tracking - When ON the camera will track the above object.
  • spectator_camera_look_at - Make spectator camera look a component or pointer.
  • spectator_camera_override_player_with_look - When ON the look at and track commands will work when camera is following player.
  • spectator_show_ui - Whether the UI is displayed on the spectator window.
  • spectator_post_processing - Whether post-processing effects are applied to spectator window.
  • spectator_camera_smooth_position - Positional smoothing factor.
  • spectator_camera_smooth_rotation - Rotational smoothing factor.
  • spectator_camera_stay_upright - When ON the camera will not go upside-down.


Example autoexec.cfg:
+spectator_window -spectator_show_ui # Make easier to type versions of spectator_camera_ commands. # i.e. cam_load instead of spectator_camera_load alias cam_* spectator_camera_* +cam_stay_upright # make right control have camera follow player while held # @ makes it not output to console bind +right_control @+cam_follow_player bind -right_control @-cam_follow_player # make semicolon look at object under pointer # need to start line with > to stop <hovered> being evaluated, # and exec to make it evaluate when activated >bind semicolon exec cam_look_at <hovered> # make period toggle object tracking, and comma set tracked object bind period !cam_tracking >bind comma exec cam_target <hovered> # make right shift cycle through first 3 camera positions alias next_camera add cam_load_zero 1 3 bind right_shift next_camera # make some buttons to load specific camera positions ui_button 1 600 0 cam_load 1 ui_button 2 600 -30 cam_load 2 ui_button 3 600 -60 cam_load 3
System Console
  • '/' commands now worked when typed into console tab
  • Fixed color command ignoring permissions

New commands:
  • chat_font_size - The size of the font in the chat windows.
  • say_global, say_game, say_team - Transmits text to specified chat channel.
  • subtract - Like add, but allows you to subtract current value from another (good for ping-ponging between two numbers).
  • vr_steamvr_bindings - Lists all current steamVR bindings.
  • ui_button - Lets you make a button on your screen which will perform a command.
  • highlight - Highlights specified component.
  • mod_caching, mod_caching_raw, mod_threading, and mod_thread_count.

    Last three variables are typically used as parameters in other commands, buy enclosing them with << and >>.

  • find - Call with parameters to find a component. Will then be set to that component.
  • grabbed - Equals the component you are currently holding.
  • hovered - Equals the component you are hovering over.

For example:
find -name "Blue Player Token" highlight <<find>>
If you want to set up a binding/alias/button in a script then you need to start the line with a >, surround the variable with < and > instead, and use exec.
>bind right_control exec spectator_camera_attachment <hovered>
Fixes:
  • Fixed blury comfirmation UI for tablet.
  • Fixed saving .rawm to disk when regular caching.
  • Fixed random sort for Games and Saved Objects is now actually working correctly.
  • Fixed custom objects not probably being positioned on the UI correctly.
  • Fixed the black background fade stuttering on when open exist to main menu window.
  • Fixed some format stuff for file browser or tooltips. Added back .jpeg.
  • Fixed line tool, including flick and joint.
Tabletop Simulator - Knil
Hey there everyone! This is one of biggest updates yet, we have a lot of great stuff coming for you guys in this update, but we want to make sure it's stable before pushing it live. So, we are doing a public beta first and we want to hear from you about any issues!

To opt into the beta:
* Right click on Tabletop Simulator in your Steam library.
* Choose Properties -> Beta.
* Then in the drop down for "Select the beta you would like to opt into:" choose "public_beta".

Unity Engine Upgrade:
* Upgrade Unity version from 5.6.6 to 2019.1.
* Dx11 on Windows, OpenGLCore on Mac and Linux.
* FPS should be overall faster. Can be twice as fast in really specific scenes.
* Physics performance improved.
* Video textures much faster with more formats support (.m4v and .mov)
* Incremental garbage collector greatly reduces the game's stutters.

Changes:
* Dx9 support has been dropped only 0.01% of players have a gpu that is only Dx9. Dx10 is minimum requirement now.
* Windows Xp support dropped and with Steam not supporting it anymore either this isn't a surprise.
* All custom images are now resized to a power of 2 internal, so avoid using non power of 2 images if you can. This is due to Dx11 bug this might be changed back in the future if Unity fixes this.
* RAW cache from Images and Models had to deleted to due incompatibilities with the engine upgrade.

Known Issues:
* Due the massive engine upgrade AssetBundle are the most effected due to Unity changes you might have to re-export your AssetBundle from 2019.1 with the updated Modding Project.
* Old AssetBundles using crunched textures will not load correctly and need to be re-exported.
* AssetBundle mesh colliders might behave differently due to physx upgrade.

Performance Optimizations:
* Saving mod asset to disk is now async and will not sutter the game.
* Greatly reduced the time it takes to destroy objects reducing the lag when changing mods.
* Made the Games & Saved Objects menu async to fix stutters when opening them.

DLC Improvments:
* DLC are no longer included in the game install and will be downloaded when played the first time.
* This has reduce the install size of the game by 4 gigs.
* We can also now update and add new DLCs without having to update the game.

AssetBundle Materials:
* Added support for loading AssetBundle materials into any Custom Object Image slot.
* Create holographic playing cards or add normal maps to your custom dice!
* Works by assigning your material to an AssetBundle and then exporting like normal.

General Improvements:
* Custom Card added so you can create cards one at a time.
* Added /rules to global chat which opens a link to the rules on our knowledge base.
* Update DLC Three Cheers for master with scripted components.
* Disabled being able to load local files with the Tablet due to javascript exploits.
* Opening urls now only open steam links in the overlay and all others open in your default browser.
* Secured many networking related functions from hackers.
* Added .json to Steam Cloud upload file types.
* Steam Cloud now supports uploading files greater than 100mb.

System Console:
* Added `mod_caching`, `mod_caching_raw`, `mod_threading`, and `mod_thread_count`.
* Added `say_global`, `say_game`, `say_team` commands.
* `/` commands now work when typed into system console.
* Added subtract command.
* Renamed vr_bindings command to vr_steamvr_bindings
* Added say_global, say_game, say_team commands.

Spectator Mode:
* Spectator mode should be working correctly with differing monitor resolutions.
* Added `displays` command, reworked `spectator_activate_with_resolution` command (can now specify display)
* `spectator_camera_attachment` - sets component or pointer for camera to attach to.
* `spectator_camera_follow_attachment` - when this is on the camera will move as if attached to above entity.
* `spectator_camera_follow_player` - renamed, was `spectator_camera_follow`.
* `spectator_camera_dolly` - distance camera is offset along the direction it is looking.
* `spectator_camera_offset_position` - vector3 positional offset from attachment.
* `spectator_camera_offset_rotation` - vector3 rotational offset from attachment.
* `spectator_camera_look_at` - make camera look at specified component or pointer.
* `spectator_camera_target` - sets component or pointer for camera to track.
* `spectator_camera_tracking` - when ON the camera will constantly track the above entity.
* `spectator_camera_override_player_with_look` - when ON look and track commands will override follow_player.
* `spectator_camera_stay_upright` - when ON the camera will avoid being upside-down.

Lua:
* Added onObjectTryEnter(object) callback: if present on an object then it will be called when another object would be inserted into it (like a card into a deck or a token into a bag). If it returns false then the item will not be able to enter.

XML UI:
* Updated plugin to the latest version.
* Can now get the click button for events like onClick with the value param passed.
* Xml UI image assets are now no longer compressed to make them look nicer.
* Xml UI errors now print to chat, to make it easier to debug Xml UI.
* Fixed line tool, including flick and joint.

Caching Improvement:
* Added support for adding {verifycache} in front of your urls to have the game check the last-modified header of a url to update the local cache if it is stale. Only does this check once per game session.
* This is an advanced feature for people that want to host content on there own servers and make sure people get updates without having to change the URLs.
* https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Last-Modified

Fixes:
* Fixed blury comfirmation UI for tablet.
* Fixed saving .rawm to disk when regular caching.
* Fixed random sort for Games and Saved Objects is now actually working correctly.
* Fixed custom objects not probably being positioned on the UI correctly.
* Fixed the black background fade stuttering on when open exist to main menu window.
* Fixed some format stuff for file browser or tooltips. Added back .jpeg.
* Fixed line tool, including flick and joint.
Tabletop Simulator - MrStump
Oh my! More optimizations are always nice, as the community continues to produce fantastic and more technically complex creations. But if you’re hungry for a new feature, we hope you’ll enjoy the new Video Images, which allow you to use videos as textures for assets. Plus, a long requested feature: Spectator Mode! Whatever your taste, we think this patch has a little something for everybody.

As usual, included in the patch is our latest DLC: Deck Quest!



DLC - Deck Quest
https://store.steampowered.com/app/610699/
  • Deck Quest is now available for $7.99 with a 20% launch discount.
  • Scripted setup to help get into the game quickly.
  • Select your seats and click the Shuffle button in the middle of the table.

Loading Improvements:
  • Overall loading should be much faster and smoother than in the past!
  • New image caching folder “Images RAW” that stores .rawt files to speed up loading by up to 20 times.
  • General optimization to use less memory when loading your games up.
  • Greatly reduced custom image ram usage by ~50%.
  • AssetBundles now load in async and with less stutters.
  • Loading generates much less garbage for the garbage collector to clean up to reduce stutters.
  • Fixed normal maps for Custom Models not working correctly and being slow.
  • Better error handling when trying to load assets with an unsupported file type.
  • Added CMYK JPG detection to avoid game crash.

Video Images:
https://giant.gfycat.com/RightJointAchillestang.webm
  • Enjoy animated textures for you assets or play jigsaw with animated video!
  • Import videos (.mp4 and .webm) into the image slot on any custom asset.
  • Note: Linux does not support .mp4.

Graphics:
  • New sharpen post processing to enhance the overall clarity of the game.
  • Configuration graphic changes are instant now without having to hit apply.

Improvements:
  • Reduced CPU usage when lots of objects are loaded up.
  • Added game load time to system console.
  • Optimized DLC Cosmic by removing all the extra scripting zones from each expansion.
  • Added console commands rewind_interval and unload_interval.

Scripting:
There's now a way to interact with Unity's built in components using this new API. You can control all aspects of your assetbundles for example changing the light settings, all from Lua. You can read more about it on the API page.

self.getComponentInChildren("Light").set("intensity", 20)

Object and GameObject:
  • getComponent(name) return Component
  • getComponents(optional name) return Component[]
  • getComponentInChildren(name) return Component
  • getComponentsInChildren(optional name) return Component[]
  • getChild(name) return GameObject
  • getChildren() return GameObject[]
  • name return string

Component:
  • game_object return GameObject
  • get(varName) return value
  • getVars() return Dictionary<string Name, string Type>
  • set(varName, value) return bool
  • name return string

Scripting Fixes:
  • Fixed Component UI menu triggering onObjectDestroy lua events.
  • Fixed XML UI syncing issue for connecting players.

Spectator Mode

Spectator mode provides a second fullscreen viewport to be used for streaming / recording. The UI can be shown or hidden on it, and its camera can follow your own or be set to any stored position.
Spectator mode requires a second monitor to display on. If you only have one physical monitor then you can use something like spacedesk.net to get around this limitation.
Spectator mod is controlled via the following console commands:

  • spectator_window - turn on to activate the spectator window
  • spectator_show_ui - whether the UI is displayed on the spectator window
  • spectator_camera_follow - when enabled spectator camera will follow your view
  • spectator_camera_load - set spectator camera to a stored position
  • spectator_camera_load_zero - same as above, but zero-indexed (so 0 = slot 1, 1 = slot 2, etc.)
  • spectator_camera_smooth_position - factor used to smooth spectator camera movement
  • spectator_camera_smooth_rotation - factor used to smooth spectator camera rotation
  • spectator_camera_smooth_on_load - when enabled smoothing will be applied when loading camera positions as well as when following player
  • spectator_post_processing - whether post-processing effects are applied to the spectator window
  • vr_spectator_replaces_main_window - in VR, controls whether spectator mode makes its own window or just uses the desktop mirror.


Example autoexec.cfg:
+spectator_window -spectator_show_ui +spectator_camera_follow spectator_camera_smooth_position 0.1 spectator_camera_smooth_rotation 0.1 # set right control key to toggle player follow bind right_control !spectator_camera_follow # set space to make spectator camera follow player while it is held down # @ = silence command in console bind +space @+spectator_camera_follow bind -space @-spectator_camera_follow # set keys to jump to specific camera positions bind comma spectator_camera_position 1 bind period spectator_camera_position 2 bind semicolon spectator_camera_position 3 # set right shift key to cycle through the first 3 camera positions alias next_camera add spectator_camera_position_from_zero 1 3 bind right_shift next_camera

Fixes:
  • Fixed memory leaks with custom assets when changing urls on an already loaded custom object.
  • Fixed ui search overlapping issues.
  • Fixed with hackers being able to delete objects without being admin.
  • Fixed hand zones not working on colliders that where child objects.
  • Fixed flick tooltip showing garbage.


v11.2.1

Custom Model Loading:
Speed up loading of cached models by up to 20 times with new .rawm format and "Models Raw" folder.
This uses the same principle as the what we've done to the images to speed up loading of your .obj files.

Spectator Mode:
Added `spectator_activate_with_resolution` command.
Fixed spectator window freezing after returning to main menu.
Fixed post processing on spectator window.

Fixes:
Fixed scroll bar in Configuration > UI > MISC.
Fixed normals maps not working with non square images.
Fixed issues with XML UI rich text.
Tabletop Simulator - MrStump
Update v11.1 New DLC - Tortuga 1667, and SO... MANY... IMPROVEMENTS!

This patch is filled to bursting with general improvements that you, the community, have been asking for. Better Fog of War, useful scripting additions, better VR, game chat announcements of clearing and measurements, Jigsaw puzzle improvements and MORE! If you don't see the improvements you were hoping for in this update, we're still hard at work on even more improvements for the future!

And what's this?! It is a great official DLC release: Tortuga 1667



DLC - Tortuga 1667
https://store.steampowered.com/app/610697/Tabletop_Simulator__Tortuga_1667/
  • Tortuga 1667 is now available for $6.99 with a 20% launch discount.
  • Scripted setup to help get into the game quickly.
  • Select your seats and press one of the on-table buttons to begin.
  • Read the Notebook for additional info.

Jigsaw Puzzle Improvements
  • The game can now detect if the jigsaw puzzle is complete.
  • The "Shuffle" and "Check" commands can be found if you right-click on the puzzle box.
  • The UI that opens when a new puzzle is created now remembers the settings you used on your last puzzle.
  • Pieces will rotate to nearest 90-degree rotation when snapping in place.

Improved Fog of War
  • Higher maximum reveal range!
  • Field of View (and field of view offset) added!
  • You can cause items in the Fog to become hidden again if a "reveal" moves off of them. This works like Fog of War in many RTS games. You can enable this feature by right-clicking the Fog of War Zone with the Fog of War Zone Tool and enabling it.
  • Some performance improvements have been made as well.
  • Revealer Objects can now also be hidden from each other.

Miscellaneous Settings Menu
Some new features, as they are worked on, do not have their own UI menu yet. We've got them collected in the "MISC" setting menu!
  • To locate the menu, go to: "Configuration > Interface > Misc..."
  • Tweak the camera rotation speed.
  • Hide VR players.
  • Center on mouse when zooming.
  • Switch from "inches" to "metric".
  • You will see some other patch notes that mention the "MISC" menu. They can be modified here as well.

General Improvements
  • If you press a number key when over a single card, it will draw that single card (like it would if the card was part of a deck).
  • You can shuffle cards in your hand by highlighting the ones you want to shuffle and clicking R.
  • Dice rolling in high-gravity rooms has been improved.
  • New "Sort" categories have been added to various menus. "Classic" now has "Last Played", "DLC" now has "Purchased", and "Workshop" now has "Downloaded".
  • When you open the search menu, the keyboard cursor will jump up to the Search box. This is so you can just start typing to begin a search, rather than needing to click in the "Search" text box.
  • Both "Previous State" and "Next State" options have been added. They have keyboard shortcuts, PgUp and PgDn by default. You can change which keys scroll through the states of an object in the Configuration menu. You can change if they wrap (the last one leads back to the first) in the Misc menu.
  • The line tool is now able to log its measurements, printing them to the Game tab. This is off by default, but can be enabled in the Misc menu.
  • Server Browser sorting now works during the refresh.
  • You can now use Ctrl-F6 to toggle all UI panels on/off.
  • The tablet should now work on Linux. This is experimental.
  • The on-screen hand interaction area is now much smaller if nothing is currently in the hand to avoid accidental interactions.
  • Added chat message notifying if someone deletes all vector lines, 3d texts, or decals.
  • You can now Shift+F keys to cycle through your tools in reverse order.
  • The version number on the bottom right of the main menu is now click-able to bring up patch notes.
  • Fixed objects getting stuck above tiny play areas.


Scripting
  • Added group(table). This allows you to group a table of objects, in the same way the "G" key would for a player! It returns a list of the grouped objects.
  • Added addDecal(table), getDecals(), and setDecals(table). Now scripting can add decals into the game world.
  • Added object.getJoints().
  • When a table of parameters for a joint is returned, it now includes joint_object_guid. This is the GUID for the object which is attached by the joint.
  • Added desired_position to the list of parameters returned by .getCustomObject() when it is used on a Jigsaw Puzzle piece. This parameter is the "solved" position for the piece.
  • New Time class added, used to easily fetch information like os.time(), but also other informations like time passed since last frame, total frames passed, etc.
  • pingTable(vector) added to the Player class. Now a script can emulate a player pinging.
  • Added setComponentVar(componentName, varName, value) and getComponentVar(componentName, varName) as an object function. This allows you to access components that you have made part of your AssetBundle via scripting. For example, changing lights or colliders on the fly. These functions will also work on the components of default objects like "Collider" and "Light".
You can find details and examples for these, and all of Tabletop Simulator's functions, in the Tabletop Simulator API.

Bugs Fixed
  • Scripting can now properly read whose turn it is (according to the Turns system).
  • Fixed custom objects in scripting zones failing to trigger events.
  • Fixed items that are hidden being revealed for a frame when switching states.
  • Prevented "scaling permission" pop-up when using Vector paint.
  • Removed Grey player's ability to delete notebook pages.
  • Improved snapping for very small and very large objects.
  • Thief animation fixed. (poor little guy gets sick during Unity changes for some reason)
  • Fixed shuffling deck from right-click menu not triggering OnObjectRandomize.
  • Fixed collisions trigger when loading custom objects.


VR
Keep tabs on VR improvements on the discussion page.

VR Improvements
  • Updated to SteamVR action+binding system.
  • VR controllers can now act as a joypad for control binding; turn on Joypad Emulation in the VR settings, and make sure the Controller option at the bottom of the Controls window is ticked.
  • Using above, most normal control bindings should work where approriate in VR (e.g. Copy, Paste, Flip, etc.)
  • Can now attach the VR UI screen to a controller: rotate your wrist as if you were looking at your watch.
  • Added Drawings, Text, Gizmo, Snap, and Decal tools.
  • Fixed Zone tools, Line tool (displays measurement, arrow ping).
  • Fixed objects (such as chess pieces) warping into upright rotation on grab (now smooth-moves).
  • Trigger Click Effect now known as Orient Object.
  • Orient Object action should now work on all card-like objects (dominos, mahjong tiles, etc). Also works on jigsaw pieces: will rotate them to next 90-degree angle.
  • Fixed snap points.
  • Made resize room visual effect less opaque.
  • Fixed non-hands objects being picked up by VR virtual hand.
  • Fixed tooltips & icons on Oculus Rift.
  • Pad bindings now use compass notation (i.e. vr_left_pad_north = left controller, up on pad)

VR Settings
  • Physical UI Screen, Attached UI Screen, UI Scale - Control how the VR UI Screen is displayed.
  • Display VR Players - Can select whether other VR players are visible (off, hands-only, hands+headset)
  • Wall mode - will rotate room so the table is vertical.
  • Align Zoomed Object - Zoom object now matches rotation of the object it is displaying.
  • Grabbing Hides Gem - Hides controller gem when holding on object.
  • Hover Tooltips - Display UI hover tooltips above controller.
  • Interface Click Threshold - When the interface click action is bound to an analog input it will use this value.
  • Laser Activation Threshold - When laser activation is bound to an analog input it will use this value.
  • Laser Beam Thickness, Laser Dot Size - Control how big the laser pointer is.
  • Left Tool Hotkeys & Right Tool Hotkeys - Bind the default tool select hotkeys to the pad.
  • Tooltips Action Enabled - Can be turned off here to disable tooltips (instead of having to unbind the action).
  • Floor of mist - change the floor.

Console Commands
All New Console Commands
  • camera_clear_saved_positions
  • camera_load_rotation_rate
  • camera_restore_saved_positions
  • camera_store_saved_positions
  • component_default_autoraise
  • component_default_grid
  • component_default_hands
  • component_default_ignore_fow
  • component_default_reveal_fow
  • component_default_snap
  • component_default_sticky
  • component_default_tooltip
  • component_override_defaults
  • component_state_wrapping
  • drawing_erase_all
  • drawing_render_fully_visible
  • dice_roll_height_multiplier
  • jigsaw_randomize
  • jigsaw_validate
  • measure_in_metric
  • measure_logging
  • mouse_wheel_zoom_and_center
  • sendkey
  • ui_config_misc
  • ui_panel_chat
  • ui_panel_main
  • ui_panel_notepad
  • ui_panel_player
  • ui_panel_tools
  • vr_display_network_players_off
  • vr_display_network_players_hands
  • vr_display_network_players_all
  • vr_grabbing_hides_gem
  • vr_hover_tooltips
  • vr_interface_click_threshold
  • vr_left_controller_bind_tool_hotkeys
  • vr_mode_display_network_players
  • vr_mode_ui_attachment
  • vr_joypad_emulation
  • vr_laser_activation_threshold
  • vr_laser_beam_thickness
  • vr_laser_dot_size
  • vr_right_controller_bind_tool_hotkeys
  • vr_tooltips_action_enabled
  • vr_ui_attach_left
  • vr_ui_attach_right
  • vr_ui_detached
  • vr_ui_floating
  • vr_ui_scale
  • vr_ui_suppressed
  • vr_wall_mode
  • vr_zoom_object_aligned

Renamed Console Commands
  • vr_trigger_click_effect_delay -> vr_orient_object_delay
  • vr_thumbstick_repeat_duration -> vr_interface_repeat_duration

Removed Console Commands
  • vr_cards_held_like_in_hand
  • vr_tooltips_when_gripping
  • vr_trigger_activates_laser
  • vr_trigger_activates_ui
  • vr_trigger_click_effect
Tabletop Simulator - MrStump
This sale has come to an end!



Tabletop Simulator is on sale now for 50% off!
You can buy the individual game, or the 4-pack at the discounted price.

https://store.steampowered.com/app/286160/Tabletop_Simulator/

Additionally, almost all DLC are on sale for up to 50% off.

https://store.steampowered.com/dlc/286160/

Sale ends 2/11/19 at 1pm EST.
Tabletop Simulator - MrStump
Sadly, this Steam sale has come to a close. But there will be others!



Tabletop Simulator is on sale now for 50% off!
You can buy the individual game, or the 4-pack at the discounted price.

https://store.steampowered.com/app/286160/Tabletop_Simulator/

Additionally, almost all DLC are on sale for up to 50% off.

https://store.steampowered.com/dlc/286160/

Congratulations to all the Steam Award winners, and Happy Holidays to our fantastic community. We continue to plug away at improving the game, so keep your ideas and your feedback coming. We'll catch you in the new year!

Sale ends 1/3/19 at 1pm EST.
Tabletop Simulator - MrStump


Tabletop Simulator and its DLC is one sale now for 50% off!
You can buy the individual game, or the 4-pack at the discounted price.

https://store.steampowered.com/app/286160/Tabletop_Simulator/

Additionally, almost all DLC are on sale for up to 50% off.

https://store.steampowered.com/dlc/286160/

We hope you enjoy your Autumn and any turkeys you may or may not be devouring.

Sale ends November 27th at 10am (PST).
Tabletop Simulator - MrStump
It has been a while since the last update, because we've been plugging away at making it a big one. Fog of War, Play Area control, Line Tool improvements, Additive Loading, VR Improvements, and much of it covered in our brand new Knowledge Base. Oh my!

We're also back at it with a new official DLC: Draco Magi!



DLC - Draco Magi
https://store.steampowered.com/app/610696/Tabletop_Simulator__Draco_Magi/
  • Draco Magi now available for $6.99 with a 20% launch discount.
  • Includes the base game, as well as the expansion.
  • Scripted setup to help you get into the game quickly.
  • Select your seats and press one of the on-table buttons to begin.
  • Read the Notebook for additional info.

Fog of War:
  • Found under the Zone tools, Fog of War acts similarly to a hidden zone, with the zone hiding objects that are within it.
  • You can right click any object to enable "Reveal Fog Of War" in its Toggles menu. This object now reveals fog, instead of being hidden inside of it.
  • Right clicking it again shows options for visibility range as well as what color objects are revealed for.
  • The piece reveals area of the fog, which is represented by a black plane.
  • Did we mention it can be accessed via scripting? See below.
  • GM (black seat) players can see everything in the fog.
  • Objects also have a "Ignore Fog of War" toggle, to disable the hiding effect on that piece.
  • All "Boards" are unaffected by fog, and are still visible. You can set your Custom Models or AssetBundles to be "boards" if you want them visible as well.
  • Read about other options and system details on the Zone Tools section of the new Knowledge Base.


Credit to B.I.O.S. for the table.

Play Area:
  • Want the camera to move further from the table? Or not be able to? Play area lets you set that distance limit.
  • Use this to make a small room that the player can't sneak out of.
  • Use it to make even BIGGER setups.
  • The setting can be modified under **Options** at the top of the screen, then under the **Game** settings.

Improved Line Tool:
  • Your measurements with the line tool are now visible for all players!
  • The line never covers the number.
  • It is not blurry. What more could you ask for from a line?!

Additive Load:
When in the Game menu, when clicking the 3 dots that appear in the upper right of a Game when you go to select it, you will see a new option: Additive Load.
  • Clicking this option causes all of the game pieces from the save to be loaded into your CURRENT game.
  • So all your current game objects remain where they were and the ones from the save you Additive Loaded from will appear as well.
  • An ideal use for this is to save different dungeon/map setups, then load them into your current game after clearing space.

New Knowledge Base:
The new Knowledge Base.
  • The old Knowledge Base was built to explain the many systems in Tabletop Simulator.
  • A replacement for the old Knowledge Base, the new Knowledge Base has a fast, much more modern setup.
  • It is patterned on the update API.
  • There have been some additional documents created, updates to classics and more.
  • It also allows you to submit improvements via GitHub.

VR Improvements:
  • On-Screen Keyboard:
    • Turn on in Interface settings. Displays an on-screen keyboard - mainly for use in VR (makes searching a lot easier). Can be toggled in VR with button on right of screen.
  • VR Settings UI:
    • You no longer need to use console commands to configure your VR experience.
    • Accessible through Interface settings, or in VR with button on right of screen.
    • Added setting to disable displaying network player VR peripherals; accessible in VR settings or via console command vr_display_network_players
    • Added settings for how selection works: either a box with a fixed height (as it has been), a box exactly as you draw it, or a box anchored to the table surface.
    • Long hover tooltips now wordwrap.
  • System Console:
    • A number of commands are now persistent: you do not need to add them to your autoexec to set them at startup; instead they will remember their setting between sessions.
    • help will show which commands persist.
  • New Commands:
    • reset
    • ui_config_vr
    • ui_keyboard_default_state
    • ui_keyboard_show
    • ui_keyboard_scale
    • ui_keyboard_echo_duration
    • vr_display_network_players
    • vr_mode_selection_style
    • vr_selection_style_anchored
    • vr_selection_style_exact
    • vr_selection_style_fixed



Scripting Changes:
Not as much here as in some other patches. But we made sure you had access to some of the new toys.
  • Added Physics.play_area
  • Added object.setFogOfWarReveal(table)
  • Added object.getFogOfWarReveal()
  • Added object.ignore_fog_of_war
  • Read more about these in the API.

Bug Fixes:
  • Peeking cards no longer causes their name/description to become available for all players to see for a few moments.
  • Improvements to the console's color changing commands to prevent abuse.
Tabletop Simulator - Knil
Hey everyone got meaty patch for you guys this time focusing on improving the drawing tool with improved visuals and functionality. We also got a plethora of great VR improvements that can be seen below like virtual hands. Also like normal we got a bunch of great scripting improvements.



Drawing Tool:
  • Sharper less blurry look.
  • Added line, box, and circle tool.
  • Can now control thickness using +/-.
  • Added draw indicator to easier to see where you will be drawing.
  • Can now draw on any angled surface on objects.
  • Pixel paint removed.
  • Fixed up bugs plaguing lines on objects.

General:
  • Added Steam rich presence to see what games your friends are playing and if there is any room!
  • Server browser now streams in results instead of in one big chunk.
  • You can stop this refresh by clicking the refresh again.
  • Raised max packet size from 1 mb to 10 mb allowing you to load larger save files when promoted.
  • Input fields are now auto selected for popup dialogs.
  • Removed "Hacking in Unity" discord message.
  • Objects will now have their face hidden while face-down (set per object, defaults to on for objects such as cards / decks / dominos)
  • Rotation Value identifiers which begin with `#` will not be displayed in tooltip.
  • Tutorial now always uses Museum backdrop (as it has good text contrast)

Scripting:
    Updates to the new Wait class:
  • Added repetitions to Wait.time to better emulate Timer. Wait.time(func, time, number_repetitions).
  • Using -1 will cause infinite repetitions
  • Improvements to stop() so it should work more as expected.
    Returns from getObject and getStates improved to a common standard, includes:
  • Name and Nickname
  • Description
  • Lua Script and Lua Script State
    New Object functions:
  • obj.drop() causes the item, if held by a player, to be dropped.
  • setHiddenFrom(players) Hides objects from a specific player/players. Uses "hand zone" hiding.
  • setInvisibleTo(players) Hides objects from a specific player/players. Uses "hidden zone" hiding.
  • attachHider(...) and attachInvisibleHider(...) are more advanced version of
  • setHiddenFrom and setInvisibleTo, there to help handle complex situations easily.
    Old Object Functions (with new features!)
  • setRotationValues() now allows you to start a name/value with a # and it won't display the value in the tooltip.
  • randomize(color) Now an optional string can be added so that
  • onObjectRandomized will trigger, indicating that player color triggered it.
    New base function:
  • get/setVectorLines() Allows for lines to be placed via scripting using the new vector line tools`
    New Spawnable object: Custom Decks!
  • Technically this was added before, but now it works and is documented!
  • Spawn using spawnObject then set it using setCustomObject
    Clarifications to the Object class
  • Some functions, let setSnapPoints or call, work on both Object and Global.
  • To highlight which Object functions can be directed at the game world, they have been broken out on the Object page into a "Global Functions" section.
    New Object member Variables
  • use_rotation_value_flip can be used to modify which direction objects flip.
  • is_face_down determines if an object's "face" is pointed down (like with cards). The face is the direction that faces the positive Y value.
  • hide_when_face_down hides an Object when it is face-down. Objects are hidden like if in a hidden zone. The face is the direction that faces the positive Y value.
    New Event
  • onObjectEnterContainer has long been a requested event, and it is now available!

VR:
  • New virtual hand feature that lets you interact with your hand just like if it was attached to your left controller.
  • Click trigger while holding a card to straighten it and hide it from other players. Click again to toggle.
  • When you pull an object out of the search inventory (for example, removing a card from a deck) it will appear at the controller tip, and be grabbed if possible.
  • Improved controller tooltips.
  • Tooltip showing click button for Vive on main menu.
  • Fixed VR tutorial.
  • Flick and Line tools now working properly.
  • Reduced jitter on scale + rotate.
  • Up no longer defaults to teleport (but that can be re-enabled with `vr_teleport_with_pad`)
  • Down on pad now defaults to Zoom, on both controllers.
  • Pad now has context commands when hovering over objects.
  • Lots of other VR changes/improvement that can all be found here.

Stats Monitor:
  • Added a stats monitor for fps, memory, and sound.
  • Activated with stats_monitor console cmd.

Fixes:
  • Fixed auto raise over tablet freaking out.
  • Fixed input bug spamming hotkeys into input fields when first selecting.
  • Fixed locking object while it then unlocking it dropping through world.
  • Fixed splitting into 10 decks merges some of the decks.
  • Fixed decal on flipped cards bug.
  • Fixed vector, decals, infinite bags hiding bugs.
  • Fixed onscreen hands not showing decals and vector lines.
  • Fixes convert URL to steam cloud now works on UI custom assets.
  • Fixed string size limit over the network being increased for large xml.
Tabletop Simulator - Knil
Hey we got another great patch for you guys today with a ton of great scripting changes, give host, and a brand new file browser!

Give Host:
  • Allows the host of game to pass the hosting off to another player that is connected to them.
  • The selected player will receive a confirmation dialog to accept the new host and can accept or decline.
  • If accepted all players will disconnect and then have the choice to reconnect to the new host in the exact same setup and layout they were just playing in.
  • Everything will be preserved from the previous host.



New File Browser:
  • Brand new file browser.
  • Can search and favorite folders to easily find your assets.
  • Works in VR now.

Split & Cut:
  • New split added to contextual menu that let's you split a deck / stack in a certain number of stacks.
  • Cut has been improved by letting you choose at what proportion you want to split the deck / stack.

Scripting Improvement:
    Lua
  • putObject() now returns an Object.
  • Using it to combine two cards will return an object reference to the newly formed deck.
  • Using it to put an object into a container/stack/deck will return the container/stack/deck it was made part of.

    New class Notes
  • Contains notebook and set/getNotes functions.
  • Deprecated the old "Base" versions of these functions.

    New class Wait
  • This new class allows you to easily trigger functions after some form of delay.
  • Contains frames, time, condition, and stop functions.
  • Deprecated Timer class entirely.

    New Object functions
  • obj.cut(int) - Cuts a deck at the given card index.
  • obj.split(int) - Splits a deck in a number of stacks.
  • obj.getRotationValue - Returns the current rotationValue of an object (see: gizmo tool).
  • This function existed previously, but was not documented.

    Event Functions
  • Added onObjectPeek(object, player) - Triggers when peek is used by a player.
  • Added object.onPeek(player), object.onRandomize(player).

    Misc
  • Player Color strings convert automatically
  • Example: printToAll("Hello", "Green").
  • Snap points created on objects use Vectors local to the Object, rather than global.
  • This applies to both position and rotation.
  • Fix for optional parameters of spawnObjectJSON().
  • Fix motor_force not working on jointTo().

    New Object Member Variables
  • loading_custom - Indicates if the assets of a custom element are being loaded.
  • spawning - Indicates if any object is currently in the process of spawning.
  • These are helpful to determine if elements are loaded into the game fully
  • Especially useful with the new Wait class!

    Callback Changes
  • Callbacks are being overhauled to use brand new syntax where you directly pass the function instead of the function string name, function owner, and params.
  • Ex: Wait.time(|| print("Done"), 1) or Wait.time(function() print("Done") end, 1)
  • Effected are spawnObject/Json(), takeObject(), and Webrequests.

    Custom UI:
  • New Lua function:
  • UI.setValue(string id, string value) - Updates the value that appears within element tags {>>(ex: <Text>THIS</Text>)<<}
  • UI.getValue(string id)- Obtains the value that appears within element tags {>>(ex: <Text>THIS</Text>)<<}
  • Both support Rich Text!
  • Added get/setCustomAssets() with keys named and url.
  • New InputField attribute placeholder- Greyed out text that appears in the input if there is no text present.

Chat Improvements
  • Added optional timestamps for chat found in chat settings.
  • Improved black outline around text in chat.
  • Numbers in chat are now monospace.

Onscreen indicators
  • Added on screen indicators to the edge of the screen for ping arrow and peek icons.
  • Never miss a notification because you were looking at the wrong direction.

UI Improvements
  • Add clear input x button to all search inputs.
  • Added a scale animation to popup menus.
  • Added a safe guard to restore UIs dragged off the screen.

VR Fixes:
...

Search news
Archive
2019
May   Apr   Mar   Feb   Jan  
Archives By Year
2019   2018   2017   2016   2015  
2014   2013   2012   2011   2010  
2009   2008   2007   2006   2005  
2004   2003   2002