Screen Shake
Timed or continuous camera shake with strength, speed, smoothness, decay, edge protection, and audio-aware controls.
Visual filters change the rendered Scene. Check map, token, and text visibility after changing their strength or opacity.
| Reference | Value |
|---|---|
| Package | FXMaster |
| Effect kind | Filter effect |
| Category | Visual |
| Runtime type | screenshake |
| Exposed parameters | 21 |
Important controls
Section titled “Important controls”- Timed: When enabled, the scene effect turns itself off after Duration. Disable for a continuous shake, or enable Audio Aware for audio-triggered bursts.
- Strength: Maximum shake displacement. 0 = no movement; 1 = strongest shake.
- Shake Speed: Controls how quickly the shake changes direction. Higher values feel like rapid vibration; lower values feel like a heavier rolling impact.
- Smoothness: Smooths the shake path. Higher = softer camera drift; lower = harsher impact jitter.
- Decay: How strongly a timed shake fades toward zero over its duration.
- Edge Protection: Slightly overscans the composited image while shaking to reduce exposed edges.
- Audio Aware: Allows bass-heavy audio peaks to trigger Screen Shake. Use Audio Channels to choose what it listens to and Audio Bass Threshold to control sensitivity.
Setup notes
Section titled “Setup notes”- Timed automatically ends the effect after the configured Duration.
- Edge Protection reduces exposed canvas edges during displacement; stronger shake generally needs more protection.
- Audio Aware can turn the filter into a reactive thunder, impact, or music-bass effect.
Bundled preset usage
Section titled “Bundled preset usage”No bundled preset currently uses this effect directly. Add it through Filter Effects or the Direct Effect API.
Parameters
Section titled “Parameters”The table combines the settings available for this effect in Scene and Region contexts. Scene-only and Region-only badges identify controls limited to one context. Hover or focus an info button to see what the parameter changes on the canvas. Select it to keep the card open. Each card also includes the default, range or choices, context, availability, API key, and control type.
screenshake API typeHover or focus an info button to see what the parameter changes on the canvas. Select it to keep the card open. Context badges identify Scene-only and Region-only controls; unbadged parameters are available in both. Hover or focus an availability condition to highlight the parameter that controls it.
| Parameter | Control | Default | Range or choices | Availability |
|---|---|---|---|---|
Below Tokens belowTokens | checkbox | Off | — | Always |
Below Tiles belowTiles | checkbox | Off | — | Always |
Below Foreground belowForeground | checkbox | Off | — | Always |
Levels levelsScene only | scene-levels | All Levels | — | Always |
Sound FX soundFxEnabled | checkbox | Off | — | Always |
Sound FX Sounds soundFxManualSoundIds | multi-select | Rule default | — | |
Timed timed | checkbox | On | — | |
Strength strength | range | 0.55 | 0–1 · step 0.01 | Always |
Blur blur | range | 0.12 | 0–1 · step 0.01 | Always |
Duration duration | range | 1.5 | 0.1–10 · step 0.1 | |
Shake Speed speed | range | 0.55 | 0–1 · step 0.01 | Always |
Smoothness smoothness | range | 0.45 | 0–1 · step 0.01 | Always |
Decay decay | range | 0.8 | 0–1 · step 0.01 | |
Axis axis | select | both | Both, Horizontal, Vertical | Always |
Edge Protection edgeProtection | range | 0.6 | 0–1 · step 0.01 | Always |
Audio Aware audioAware | checkbox | Off | — | Always |
Audio Channels audioChannels | multi-select | Environment | Music, Environment, Interface | |
Audio Bass Threshold audioBassThreshold | range | 0.75 | 0–1 · step 0.01 | |
Darkness Activation darknessActivationEnabled | checkbox | Off | — | Always |
Darkness Activation Range darknessActivationRange | range-dual | {"min":0,"max":1} | 0–1 · step 0.01 | |
Edge Fade % fadePercentRegion only | range | 0 | 0–1 · step 0.01 | Always |
Direct-effect API example
Section titled “Direct-effect API example”The Direct Effect API creates a separate row shown through Manage API Effects. Add a stable apiMacro_…_p or apiMacro_…_f ID when later macro calls need to update or stop the same row.
const created = await FXMASTER.api.effects.play({ filters: [{ "id": "apiMacro_wikiscreenshake_f", "type": "screenshake", "options": { "timed": true, "strength": 0.25, "duration": 1.2, "speed": 0.5, "smoothness": 0.5, "decay": 0.5 } }],});
await FXMASTER.api.effects.filters.stop(created.filters);For complete API behavior, scene targeting, stack ordering, and toggle groups, see the Direct Effect API guide.