Sequence v1.0.0: Keyframe animation engine#2272
Open
KenanMillet wants to merge 21 commits into
Open
Conversation
…tiered display, button-triggered generation
…to { keyframes: [...] }
Examples: spin, hover, pulse, orbit, shake, torch-flicker, rgb-cycle, boss-phase-2 Engine fixes: - Per-attribute lerp segments (no longer blocked by unrelated keyframes) - parseFloat numeric initialState values (fixes string math) - Batch obj.set() for all core attrs (fixes lighting updates) - Resolve expressions in runningStates pre-computation - Fix Color objects in _wrapNode (prototype preservation) - Duck-type Color coercion (lerpColor, batchSet, evalExpr) - Duration derived from resolved keyframe times (not stored) New features: - registerString type with levenshtein-based string lerp - get() expression function (cross-attribute access) - cell()/unit() expression functions (grid/map-scale conversion) - round/floor/ceil accept optional step argument - UDL lighting attributes registered (bright_light_distance, etc.) - Example namespacing (source/name keys, no collisions) - Archived example handouts - Play/Loop buttons in example list, example! output, stopped menu - [open] link in playback menu - registerColor parse detects expressions
…ption/valueType in registerAttribute
…s, drop fn shorthand from public API, detail struct.args
… play/loop/open to save messages
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.
First stable release of Sequence, a keyframe animation engine for Roll20 tokens.
What it does
Record token movements and attribute changes, then play them back with smooth interpolation, easing curves, expression-driven values, and looping. Recordings are stored as handouts and are fully portable between campaigns.
Highlights
!sequence example.orig,prev,t,sin,cos,rand,freeze, color functions, and more.cell(n)for grid cells,unit(n)for map-scale distance,get("attr")for cross-attribute access.Commands
record,stop,play,preview,pause,resume,list,edit,delete,example,example!,snapshot,man,gen-dev-docs, and more. Full command list in README.Files
Sequence/Sequence.js— main scriptSequence/1.0.0/Sequence.js— versioned copySequence/script.json— One-Click metadataSequence/README.md— user documentationSequence/TODO.md— roadmapDependencies
None (standalone). Integrates with Choreograph and SelectManager when available.