LordAshes-BeyondLinkViaChrome icon

BeyondLinkViaChrome

Transfer data from D&D Beyond to Talespire in near real time using Chrome Extension.

Last updated 4 days ago
Total downloads 36
Total rating 0 
Categories Tweaks Networked Tools Integration Minis
Dependency string LordAshes-BeyondLinkViaChrome-1.1.0
Dependants 0 other mods depend on this mod

This mod requires the following mods to function

bbepisTaleSpire-BepInExPack-5.4.10 icon
bbepisTaleSpire-BepInExPack

Unified BepInEx all-in-one modding pack - plugin framework, detour library

Preferred version: 5.4.10
brcoding-SetInjectionFlagPlugin-2.3.0 icon
brcoding-SetInjectionFlagPlugin

Allows players to flag mods are installed

Preferred version: 2.3.0
LordAshes-StatMessagingPlugin-1.6.3 icon
LordAshes-StatMessagingPlugin

Adds support for JSON broadcast messages to clients, based on Creature Name synchronization. Use this plugin for any Character Name synchronization to ensure compatability with other plugins.

Preferred version: 1.6.3

README

Beyond Link Via Chrome Plugin

This unofficial TaleSpire plugin for transferring data from D&D Beyond to Talespire in near real time. While the Beyond Link Plugin uses a General Data Parser for allowing data from different sources, it does not parse D&D Beyond Data well because the JSON data has a list of features that are part of the character but not the stat totals. This means the parser needs to perform calculations to obtain the totals. The Beyond Link Via Chrome Plugin changes that. It is specifically for D&D Beyond only but it is able to read the final totals from the D&D Beyond characters. This plugin, updates current HP, max HP, AC, used HD and total HD. This plugin also updates DSM files with ability score rolls, save rolls, skill rolls and attack rolls, if you want to use the Dice Selection plugin in conjunction with this plugin. However, if the Dice Selection plugin is not used, this plugin can still be used to get the benefits of updating the main stats.

The design uses a 3 component solution: the Chrome Extension, the Beyond Link Server and the actual TaleSpire BeyondLinkViaChrome plugin. However, the Beyond Link Server is mostly transparent to the user - it is started by the plugin and closes itself automatically if TaleSpire is stopped. However, this 3 component implementation means that the TaleSpire plugin portion is never waiting for data. The data exchange is done between the Chrome Extension and the Beyond Link Server. Since the Beyond Link Server runs outside of TaleSpire (stand alone), if the communication fails or is slow it will not have any direct impact (i.e. block) on TaleSpire GUI (beyond general device resources). The Beyond Link Server makes any data changes available to the plugin via local files which means any failures to update statistics will just make the plugin use the old value and pick up the new value on the next pass.

Change Log

1.1.0: Added refresh rate selection. Ensure that Chrome refresh rate is same. 1.1.0: Added ability to assign extracted file values to stats. 1.0.0: Initial release

Install

  1. Use R2ModMan or similar installer to install this plugin.
  2. Open Chrome to the address chrome://extensions/
  3. Ensure Developer Mode is on
  4. Use the Load Unpackaged option to load the Chrome Extension from the BeyondLinkChromeExtension folder of the installed plugin

Note: The Chrome Extension has, intentionally, not been packaged so that the user can see and potentially edit what the extension does.

Customization

The R2ModMan configruation for the plugin has settings for the stat names (single string separated by commas) and settings for which files are used to populate each of the stats. Each setting is a string of two files names - the current value and the max value. The files are generated by the Beyond Link Server based on the Chrome extracted data. Any data that is not determined to be a DSM roll is converted into a file (using the same hierarchy name as in the JSON file extracted by Chrome) and be used by this setting to assign it to one of the 8 stats. If a value, such as AC, does not have a current vs max, just use the same file twice since each setting must specify a file for the current and max value. Only numeric data can be stored in stats. Leave slots blank in order to not use them.

Usage

There are two mode of using this plugin: Basic and Advanced.

Basic Mode involves using this to update the current HP, max HP, AC, used HD and total HD on minis. Advanced Mode involves also using the plugin, in conjunction with the Dice Selection Plugin, to make rolls.

Basic Mode

  1. Start TaleSpire
  2. When the plugin starts a new window will appear. Do not close this window, just Alt-Tab (or otherwise) switch back to the TaleSpire screen.
  3. Rename a mini to match the D&D Beyond name.
  4. Open a D&D Beyond character, in the Chrome browser, that corresponds to the name used in step 3.
  5. Click the Short Rest button to open the Hit Dice information. This is needed in order to obtain properly Hit Dice information.
  6. Wait around 10 seconds and the mini's stats should synchronize. Updates occurs every 5 seconds or so.
  7. When TaleSpire closes, the window that opened in step 2 will disappear within about 10 seconds.

Advanced Mode

The Beyond Link Via Chrome plugin automatically makes corresponding DSM files used by the Dice Selection plugin. These are also updated in near real time but the issue is that Dice Selection plugin only reads the configruation files on startup to avoid introducing performance hits. This means by the time the plugin synchronizes the D&D Beyond roll information, Dice Selection plugin has already read the old configuration and the updated rolls will not be used until next time.

There are two work-arounds to get your D&D Beyond rolls updated with Dice Selection plugin:

Restart Talespire

One way to update the rolls from D&D Beyond is to start Talespire using the instruction in the Basic Mode and then wait about 10 seconds for the data to update. This will also update the DSM files. Now restart Talespire. Please note that exiting to the main menu is not sufficient, you must close down TaleSpire. Restart Talespire and your rolls will be updated.

Typically this is the easiest way to update the rolls and since rolls don't typically need to be updated frequently (usually only when you level up or get new equipment), restarting is not a big deal.

Learn Mode

It is possible to run a component of the Beyond Link Via Chrome stand alone to get it to sync all the D&D Beyond rolls before starting TaleSpire. The steps for this are as follows:

  1. Start the BeyondLinkServer (found in the plugin directory) with a parameter of Learn BeyondLinkServer Learn
  2. Open a D&D Beyond character in the Chrome browser.
  3. Click the Short Rest button to open the Hit Dice information. This is needed in order to obtain properly Hit Dice information.
  4. Wait around 10 seconds and the character's information should be synced. You will see entries for all the found information identified in the BeyondLInkServer window. This process has created the related DSM files prior to TaleSpire being started so the Dice Selection plugin can get the latest roll information when it starts.
  5. You can close the BeyondLinkServer window.
  6. Start Talespire using the steps in the Basic Mode. Your rolls should be updated.

Note: You do not need to do this every time. You only need to do these steps when rolls change such as when you level up (and your proficient changes or you get an ASI) or when your equipment changes.

Limitations

  1. The tab with the D&D Beyond character must remain open in Chrome in order to get updates.
  2. The Short Rest dialog needs to be open in order to get correct Hit Dice information. If the Short Rest windows is closed, the Hit Dice informatation may be wrong.
  3. The Beyond Link Server component which takes data from Chrome and turns it into uable files by the plugin is currently single client only. Since all the communication is done in bursts with the socket being closed in between this is acceptable for a few characters. With larger parties it is suggested to distribute the updating jobs between the players.
  4. Some of the current information may not be optimized for multi classing characters.

Available versions

Please note that the install buttons only work if you have compatible client software installed, such as the Thunderstore Mod Manager. Otherwise use the zip download links instead.

Upload date Version number Downloads Download link  
2021-10-12 1.1.0 22 Version 1.1.0 Install
2021-10-10 1.0.0 14 Version 1.0.0 Install