





🌟 Special thanks to our amazing supporters:
✨ $10 Tier: [Geeks Love Detail]
🌈 $5 Tier: [Arch Toasty][Benedikt][David Martínez Martí]
The February update is now live! Another long changelist with many new features, convenience improvements, and fixes. Some highlights are the extended object coordinates window with aligning and arranging functionality, VR hands, clipboard buttons, more shortcut keys, more scripting UI functionality, and an upgrade to a new version of the JavaScript engine.
The object coordinates window has received a lot of new functionality, in particular when using it for multiple objects:
Add grid arrange functionality for groups of objects: Set the number of rows and the distance you want between objects, and you can arrange them in a grid at the press of a button.
Align on edge functionality for groups of objects: align all selected objects to the same outer edge (North/East/South/West)
Gizmos are now available when opening the object coordinates for a group of objects
When adjusting rotation or scale for groups of objects, you can now switch between rotating/scaling each object by itself or also adjusting their positions to keep the relative positioning intact
Add color markers for axes
Add copy to clipboard buttons for position, rotation, and scale when scripting UI is enabled
Add VR hands: You can now see the hands of VR players using motion controllers. A new option in the video settings allows you to turn off the hands.
When pressing a number key while holding multiple objects, they will now be arranged in a grid with a number of rows equal to the number pressed
Add menu button to menu bar at the top of the screen. Make the menu bar visible by default and add a setting to auto-hide (like the previous behavior).
Add keyboard shortcuts for card and multistate object editor for the new, remove, duplicate, previous, and next actions. The shortcuts are shown in the tooltips for the respective buttons.
Add copy to clipboard buttons for information useful in scripts in a couple of places (template id on top of the object properties pane in the editor, unique id in object and zone properties)
Store whether you want to see names in the object library
When placing snap points based on objects in preview mode, use object rotation as well for rotation snapping
In the container explorer, fall back to card names instead of template names for single cards if no object name exists
Tune camera to avoid issues when moving around on irregular tables
Improve shadow quality in 3D maps
Make snapping easier for small objects snapping close to each other
Tune physics so objects (except dice) are less bouncy by default
Clip long object names in container explorer to ensure consistent grid of objects
Allow picking up additional cards directly from holders (using right click or V)
Move camera back to previous position after editing an object template in preview mode to prevent camera issues
Make context menus more flexible for accomodating long entries (which can be created from scripts)
Adjust mirroring back of image shape cards where the shape is not centered on the image
Increase object limit to 10000, for those really large games
Scripting
Upgrade the JavaScript V8 engine to a more recent version (9.7). This gives you access to the latest JavaScript features like optional chaining (`?.` operator), and it makes your code run even faster!
Add several parameters to `UIElement` that allow you to customize your UIs: `useTransparency`, `twoSided`, `anchorX`, and `anchorY`
Add a new UI widget `LayoutBox` with several properties for sizing and aligning widgets
Add a new class `Package` that allows you to inspect active or installed packages. You can get a package object through `GameWorld.getPackageById` or `GameWorld.getAllowedPackages`
Add `GameWorld.setBackground`, `GameWorld.getBackgroundFilename`, `GameWorld.getBackgroundPackageId` to access and modify the map background from scripts
Support looping sounds with a new parameter in the play methods and `Sound.stopLoop`
Add `GameWorld.setSlotColor` and `GameWorld.getSlotColor`
Add `skipContained` parameter for `GameWorld.getAllObjects`
Add `GameWorld.clearConsole` to clear the built-in console from scripts
Add `ImageWidget.onImageLoaded` and `ImageButton.onImageLoaded`
New `keep` parameter for `Container.take`, `Container.takeAt`, and `Card.takeCards`
Add `Container.getNextTakeIndex`, `Container.contains`
Add `Card.moveCardInStack`
Add `CardDetails.stackIndex`
Add `animationSpeed` parameter to `GameObject.snap`
Add `GameObject.freeze`
Add `Panel.setHorizontalAlignment` and `Panel.setVerticalAlignment` for setting the alignment of all child widgets for HorizontalBox and VerticalBox
Add methods to `CardHolder` to get/set how cards are hidden and if only the owner can interact with cards on the holder
Update the value shown for Slider widgets while player is dragging
Make sure that scripted UI on cards stays in the right place when the card is lifted while highlighted on a card holder
Allow scripts to require other files more than two directories above themselves, as long as they stay within known safe directories
Enable `GameObject.onSnapped` when snapping to snap points attached to the table
`localRotationToWorld` and `worldRotationToLocal` could return incorrect values
Dice rolled again through `Dice.roll` withing `GlobalScriptingEvents.onDiceRolled` did not cause another `onDiceRolled` event
Fix requiring npm packages from node_modules on Mac/Linux
Using `fetch` or `HttpRequest` directly when running a script did not show the "allow URL" dialog when resetting scripts from context menu
Fix crash that occurred when moving objects into or out of a zone from within its `onEndOverlap` event
Fixes
Unique ids (for scripting) of cards were not made available again when dragging cards onto stacks
Translucent objects with low opacity did not get outline highlights
Open container explorer window did not update when content of the container changed
A small copy of the zoomed object in object zoom appeared at the origin (below the table) while zooming
Object zoom did not show objects at the correct place that weren't positioned at their coordinate system origin
Dragged card in stack explorer was shown as red cross
Ensure that releasing the last object does not send it flying when held objects are clumped (after shaking the mouse)
Object zoom with fixed zoom direction did not work properly with objects scaled in-game
Don't allow locking cards on holders
Fix issues with locking objects in multiplayer
Mouse cursor was shown until clicking again when pressing Tab to Ping while chat was open
When taking a card from the front of a stack in ground mode made of cards from different object templates, the remaining part of the stack switched to regular mode
Selection rectangle was drawn for screen cursor while editing templates in preview mode
Undo/Redo in the editor by pressing Ctrl+Z/Ctrl+Y could make previously edited objects appear
Fix rare crash related to snap previews
Placing cards from the object library while showing card fronts placed the card upside down in addition to flipping it
Using non-uniform scale caused issues with cm measures in a couple of placed (object transform window, zone transform window, object size in editor)
The deal and draw actions would not fill the final card on a card holder (before the card limit was reached)
Removing cards from a holder by grouping them caused glitched images of the removed cards to remain in the on-screen hand that would disappear when clicking them
"Include description in tooltip without delay" setting only showed names as tooltips
Fix missing J on image for Jack of Clubs
Fix crash related to editing image shape tokens/cards on Mac
Rewinding could stop working on Macs
---
These new updates we've added are just some of the many features on our early access development roadmap for Tabletop Playground, which you can check out on our Trello HERE.
Don't forget to join our community Discord to chat with the dev team and give us your suggestions for new features for the game!
[ 6079 ]
[ 2063 ]
[ 4245 ]