Skip to content

Gaslight v2.2.0 - #2294

Open
KenanMillet wants to merge 37 commits into
Roll20:masterfrom
KenanMillet:Gaslight-ScriptKit
Open

Gaslight v2.2.0#2294
KenanMillet wants to merge 37 commits into
Roll20:masterfrom
KenanMillet:Gaslight-ScriptKit

Conversation

@KenanMillet

Copy link
Copy Markdown
Contributor

Gaslight v2.2.0

Summary

Major update adding an interactive initiative HUD, ScriptKit integration with guided examples, and numerous quality-of-life improvements to the scripting engine and token management.

New Features

Initiative HUD

  • Pin-based turn tracker on the master page foreground layer
  • Gestures: swipe right/left to advance/retreat turns, drag up/down to reorder, delete to remove from initiative
  • Diamond-shaped highlight marks current turn (draggable to reposition)
  • Current turn reticle on the map (inherits styling from diamond, independently customizable)
  • Frame resize controls slot count and padding
  • Proportional slot distribution above/below the diamond
  • !gaslight init [sync|trim] command to sync after plugin-added initiative

ScriptKit Integration

  • Help system, man pages, examples browser, whatsnew
  • 5 interactive guide-only examples: getting-started, core-mechanics, initiative-hud, relay, scripting
  • Applied script examples with handout generation: stealth, truesight, madness
  • Annotations and pings during guide walkthroughs

Token Management

  • !gaslight stage --default on|off — set character-level auto-stage
  • !gaslight sync --default / desync --default — character-level sync config
  • Asymmetric unlink/delete: parent tokens cascade, non-parent copies detach
  • Auto-add linked copies to initiative when staging mid-combat
  • HUD and turn order cleaned up on token deletion

Scripting Engine Fixes

  • gl_* compProp resolution now falls back from token gmnotes to character attribute
  • Fixed regex for [default] suffix in @(target.gl_field[0]) syntax
  • Fixed == to = in all example scripts (APILogic uses single =)
  • registerGlCompProp now runs on startup and handout changes (not just split)
  • Removed unused evaluationContext / scope system

Dependencies

Added: ScriptKit (required for help system and examples)

Existing: Anchor, Mirror, RollCapture (optional), ZeroFrame, SelectManager, APILogic, Fetch

Testing

  • All guide examples tested end-to-end in Roll20
  • Initiative HUD gestures (swipe, reorder, delete, resize, reticle) tested
  • Staging mid-combat with initiative sync verified
  • Asymmetric unlink/delete verified for NPC and PC tokens
  • GLS script evaluation verified (winds-of-magic, madness, stealth, truesight)
  • Dry-run mode verified for script debugging

…size/offset tracking, remove dead token-based HUD code
…ard, delayed initial reflow), text rotation tracking
… destroy cascade, hudRegistry stateKey/defaults/ids abstraction
…gex for [default] suffix, fix == to = in examples), remove evaluationContext
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant