Extending gameplay functionality with Lua & XML
I've released various tools on the Steam workshop to help players get the most from their games. A thorough knowledge of the Tabletop Simulator API has allowed me to take advantage of the advanced functionality offered through a combination of Lua and XML to make customising and managing gameplay easier.
You can find all the tools I've made on my Steam Workshop page. Here are some of the better ones I've made:
UI Themer VIEW ON WORKSHOP
This tool lets a user customise their interface and easily make, modify and share UI Themes from within the game. It supports exporting themes and creating simple buttons for quickly accessing them. Supports loading from text, URL, or exported buttons.
The tool is written in Lua and uses the XML UI features to provide an efficient interface. Users can import their current colour schemes and quickly share them with their friends. Every button and input includes helpful tooltips and instructions.
Battle Atlas VIEW ON WORKSHOP
This tools lets a user easily create 2D Battlemaps in-game from a huge range of modular tiles, then combine them into a single asset for use in custom tabletop RPG campaigns.
The mod is powered by a custom, external API written in PHP. Images are stitched together at high quality from over 300 tiles and are provided as a simple token with an embedded button. This allows a player to quickly toggle maps during a game with minimal interruption to the game.
Dice Roll Display VIEW ON WORKSHOP
A simple addon to give dice rolls a little more oomph, as well as making them easier to read on large tables. It also includes sound effects!
3D Grid Lines VIEW ON WORKSHOP
An improvement over the stock grids feature, this tool uses raycasts to detect objects in the game and draw a 3-dimensional grid that can adjust for terrain and obstacles. The player can choose the grid resolution, size, and style to get a grid that works for their custom battle map.
