feat(ConditionTracker): Version 1.1.0 Release#2224
Open
steverobertsuk wants to merge 32 commits into
Open
Conversation
…public chat messaging, and added a report on token condition status - Implemented profiles for Savage Worlds, Shadowrun, Shadow of the Demon Lord, Starfinder, Star Wars RPG (FFG), Stars Without Number, Traveller, Vaesen, Vampire: The Masquerade, Warhammer Fantasy Roleplay 4e, Warhammer 40,000 RPG, Warhammer Age of Sigmar: Soulbound, Werewolf: The Apocalypse, and Worlds Without Number. - Each profile includes standard conditions, condition data, default markers, custom effect types, and labels. - Enhanced validation by adding a function to validate game system IDs against a predefined list of valid systems. - Added option to suppress public chat messaging - Added a report on token condition status Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
- Added savedEffects.js to handle creation, retrieval, updating, and removal of saved effects. - Introduced SavedEffect type definition for better type safety. - Implemented functions to manage saved effects for tokens, including adding, updating, and removing effects. - Created savedEffectsCommands.js to handle chat commands related to saved effects, including adding, editing, and promoting effects. - Implemented user-friendly menus for managing saved effects in chat. - Added snooze functionality for saved effects, allowing temporary suspension of reminders. - Enhanced state management in state.js to initialize saved effects storage.
…te management - Introduced functions to get, set, and clear token-level actor type overrides in the state. - Enhanced ensureState to initialize actorOverrides and tokens if they do not exist. - Updated MACRO_DEFINITIONS to include a new classify macro.
Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
… across multiple locales Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…yer controlled characters Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
… string values correctly Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…features and improvements
…ecks for tokens on the objects layer Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
… names and IDs - Updated README.md to include the new ConditionTrackerClassify macro. - Modified TESTING.md to verify the existence of the new macro. - Enhanced actor classification logic in actorClassification.js for better token eligibility checks. - Improved command handling in commands.js to support token reference resolution by id, exact name, or partial name. - Added new validation messages for ambiguous and not found token references in validation.js. - Introduced examples section in handout.js and localized examples for user guidance. - Refactored savedEffectsCommands.js to streamline imports and improve code organization.
…irmation and timing estimates
…s to track pruned keys during synchronization Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…readability and organization Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…mat output during build Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…os and parser for improved command handling and state management - Moved DEFAULT_CLASSIFY_MACRO_BODY import to maintain consistency. - Enhanced logMacroSyncResult for better readability. - Removed unused macroExists function. - Added extractConditionTrackerCommand to support whisper-wrapped commands. - Updated parseCommand to utilize the new command extraction method. - Introduced enablePostApplyMacroButtons option in the configuration. - Implemented last-apply payload storage and retrieval functions. - Reorganized system imports for better clarity and structure.
…eveloper guide with versioning instructions, and add set-version script to package.json Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…e MOD_FILE_MAP with new scripts and package.json updates Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
… functions for improved readability and maintainability Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…larity and improved documentation Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…er handling of custom marker sets Signed-off-by: Steve Roberts <steve@shadowcomputers.co.uk>
…ear marker option
…sr/condition-tracker-v1-1
- Updated CHANGELOG.md to reflect the release date change and added issue reference for marker picker feature. - Changed versioning in ConditionTracker.js, package.json, and script.json to 1.1.0.
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.
[1.1.0] - 2026-05-15 · Milestone
Added
public(full label visible in Turn Tracker and chat),masked(vague public label shown to players; full details whispered to GM), andgm(no Turn Tracker row; GM-whisper only when affected token reaches the top of initiative).!condition-tracker --savedcommands:--saved(view list),--saved add(guided wizard),--saved edit <id>,--saved remove <id>,--saved promote <id> --visibility public|masked|gm,--saved snooze <id> --scope turn|rounds|combat --rounds <n>,--saved snooze-clear <id>.gmormaskedsaved effects reaches the top of the Turn Tracker, the GM receives a whispered reminder listing hidden effects with inline action buttons. Duplicate reminders within the same turn are suppressed via a stable turn-key.--config marker-pick): Added!condition-tracker --config marker-pick <condition>which whispers a visual card showing every campaign token marker as a 28×28 icon button. Clicking any button immediately sets that marker for the given condition — no need to look up marker names manually. The currently configured marker is highlighted in the picker. (#16).--config marker-clear): Added!condition-tracker --config marker-clear <condition>to remove a custom marker mapping for a condition, restoring the system default or leaving the slot unset.--config markernow resolves custom marketplace marker names (e.g.005-Unconscious) to their fullname::idtag format automatically viaCampaign().get('token_markers'). Passing the fullname::idtag form directly is also supported.!condition-tracker --report-tokencommand: Added GM-only per-token condition reporting for selected tokens, including conditions applied to and conditions sourced by each token (#8).gameSystemconfiguration support (includingdnd5e,dnd4e,dnd35,pathfinder1e,pathfinder2e,starfinder, and many additional systems) (#9).--source,--target, and--subjectnow accept token ids, exact token names, exact linked character names, and unique partial name matches (#10).ConditionTrackerSavedandConditionTrackerClassifymacros: Auto-installed for all GM players alongside the wizard, multi-target, and report-token macros (#12).ct_mod_actor_typeattribute → unlinked-token eligibility check → game-system sheet adapter → generic NPC attribute scan →controlledbyfallback.ignoredby default and excluded from the wizard token picker.dnd5e,dnd4e,dnd35,pathfinder1e,pathfinder2e, andstarfinderread the sheet's native NPC attribute for automatic detection.npc,is_npc,npcflag,sheet_type, andcharacter_typeas a fallback for unsupported sheets.!condition-tracker --classifycommand: Explicitly override a token's actor type for selected tokens (#13).--classify pc|npc|ignored— mark selected tokens permanently.--classify auto— remove the override and restore automatic detection.--classify show— diagnostic whisper showing classification, source, and reason for each selected token.--scope character(default) — writes the override to the character'sct_mod_actor_typeattribute; persists across all tokens that share the character sheet.--scope token— writes a token-level override to script state; useful for unlinked tokens or per-token overrides on shared sheets.Changed
isPlayerToken()now delegates entirely to the newclassifyToken()engine, applying override and adapter logic consistently everywhere the function is called (wizard token picker, zero-HP cleanup prompts, token-change events).ignoredtokens. Previously, unlinked tokens with names appeared in the NPC column; they are now hidden unless explicitly classified aspcornpc.enablePostApplyMacroButtonsconfiguration support to optionally show macro-creation action buttons in post-apply GM whispers.Developer
prebuildversion bump step (scripts/bump-version.mjs) that auto-increments the trailing numeric segment inscript.json(e.g.1.1.0.beta-3.4→1.1.0.beta-3.5; plain semver falls back to patch increment). To set an explicit version usenpm run set-version -- <version>and then build vianode scripts/build.mjsto skip the auto-bump.scripts/build.mjsnow synchronizespackage.jsonversion toscript.jsonbefore bundling, keeping package metadata aligned with release metadata.