The Problem
After Effects has no native concept of animation states. If you want a button with hover, press, and release states -- something trivial in Flash/Animate -- you're stuck manually managing pre-comps, time remapping expressions, and marker-based triggers. For interactive motion design (UI prototypes, game HUDs, interactive presentations), this gap costs hours of tedious setup per element.
What FlashBack Does
FlashBack brings Flash/Animate-style timeline state control to After Effects as a dockable ScriptUI panel. Select any layers, click Buttonify, and they're wrapped into a state composition with a managed timeline. Each state gets its own section of the timeline, and transitions between states are controlled by markers using a clean double-colon syntax: stateName::behavior::target.
The Five Behaviors
The system supports five animation behaviors that cover every common interactive pattern. Stop plays a state and holds on the last frame. Loop plays a state and loops continuously. Go-to-and-Play (gtap) jumps to a target state and plays it. Go-to-and-Stop (gtas) jumps to a target state and freezes on the first frame. Snap is a single-frame static state for instant asset swaps with no animation.
Built-In Presets
Two interaction presets ship with the tool. Touch provides in, idle, press, release, and out states for touchscreen interactions. Click extends this with hover and hoverOut states for mouse-based interactions. These presets create the full state machine structure with a single click.
Technical Details
The panel is written in ExtendScript (ES3) as a dockable ScriptUI panel -- meaning it runs inside After Effects' own scripting engine with zero external dependencies. It manipulates compositions, layers, markers, and time remapping through the AE DOM API. The expression builder dynamically reads source comp markers, so moving markers in the timeline automatically updates behavior. State management includes duplicate name validation, default state snapshots (new states auto-reset to baseline), and error recovery with descriptive alerts.
The trigger system scans the current composition, lets you pick any layer and state, and adds the appropriate marker with one click. Original layers are always preserved -- FlashBack duplicates into the state comp rather than moving.
Tech Stack
ExtendScript (ES3), After Effects ScriptUI API, AE DOM (CompItem, AVLayer, MarkerValue, TimeRemapProperty).