Repository navigation
feat(TokenController): Rewrite for Jumpgate and Legacy games - #2361
Open
steverobertsuk wants to merge 12 commits into
Open
steverobertsuk wants to merge 12 commits into
steverobertsuk wants to merge 12 commits into
Conversation
script.json listed 4.0.1 as the current version, but no 4.0.1 folder was ever added, so One-Click installs of it failed. The 4.0.0 folder had also been overwritten with later 4.x code. Restore 4.0.0/ to the code released as 4.0.0 (e53c26b) and add 4.0.1/ with the code released as 4.0.1 (72dcd80), so every listed version installs what it says. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Version 5 is written as ES modules and bundled with Rollup, in line with Hexploration and the other reworked Mods. Add the build, version bump and locale sync scripts, Prettier settings, and the npm package that runs them. The released version folders and the generated script.json are excluded from formatting. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
TokenController was reported as not working with Jumpgate and is no longer supported by its author. Rewrite it as version 5: - One !tokencontroller command, with !tc and !token-control kept so version 4 macros still work. - Routes from step codes, drawings (Jumpgate pathv2 and Legacy path) or recorded moves, run as loop, ping-pong or once. - Square, hex, isometric, dimetric and gridless pages, using grid geometry measured in a Jumpgate game and the page grid offset. - Combat detection from the turn tracker, a manual switch or both; lock modes (Roll20's lock, undo moves, hold still); single-file or formation following. - Help and Command Deck handouts, settings as One-Click options, and messages in 24 languages (English for now, others to follow). - Version 4 games are upgraded on startup, and the v4 usage guide, which players could see, is removed. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Cover the pure grid, route and state modules directly, and run the built bundle in a Roll20 sandbox stub with a controllable clock to exercise patrols, following, locks, combat, recording, drawings and the version 4 upgrade. Grid tests include positions Roll20 snapped tokens to in a Jumpgate game. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Add a README for GMs, a changelog covering every release, a developer guide, a map of where each feature lives, and an in-game test plan for Jumpgate and Legacy games. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Build the bundle and its 5.0.0 snapshot, and update script.json with the new version, authors, options and the full list of earlier versions. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
When Google Translate rate-limited a request (HTTP 429) the script neither retried nor reported it, and kept the English text, so whole locales were silently written as English copies. Retry rate limits and server errors as well as timeouts, report every failure, and don't cache a failed string so the next sync tries it again. Format the written files with the project's Prettier settings rather than the defaults, so synced locales pass the format check. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Machine-translate every English string into the 23 supported languages, synced one locale at a time. Strings Google left in English or got badly wrong (button labels, grid names and a few whole sentences in Traditional Chinese) were translated by hand. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Show the Help handout's supported languages as a table of code, name and native name, with each language's flag as a Twemoji image. An image is used because Roll20 on Windows shows emoji flags as pairs of letters, as ConditionTracker found. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Add each version's release date to the changelog, taken from when it was committed. Note that the isometric and dimetric grid positions were also measured in a Legacy game and match Jumpgate. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Rebuild the bundle and its 5.0.0 snapshot with the translations and the new language table. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Date version 5.0.0 in the changelog by when its bundle was built, as shown in the script's banner and startup message. Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
5.0.0 (2026-10-30)
A full rewrite by MidNiteShadow7 of Developesque's TokenController, which was reported as not working in Jumpgate and no longer supported.
Fixed
4.0.1/folder, so installing it failed; the4.0.0/folder had also been overwritten with later code. Both folders now hold the code that was released under those numbers.!tc listwithout arguments no longer throws an error. Path names with spaces work everywhere, including the menu buttons and drafts.SBlinker, can be added.Added
pathv2and Legacypath: lines, polygons, freehand, rectangles and ellipses).UL,UR,DL,DR), steps without a number (one cell) and counted waits (W3) in step codes.calibratecommand for maps whose grid does not line up.@{target}is no longer needed. Followers move with tokens dragged by hand, patrolling tokens and tokens moved by TokenMod.TokenController.ObserveTokenChange,start,stop,resetandrouteOf. Moves are passed to Hexploration v2 so patrols reveal hexes.Changed
!tokencontroller.!tcand!token-controlstill accept every version 4 command.Signed-off-by: Steve Roberts steve@shadowcomputers.co.uk