Unreal Bridge
TornLux/UnrealBridge
Execute Python scripts inside a running Unreal Engine 5.3+ editor via TCP bridge.
A skill your agent uses when a UE5 task involves Niagara or Chaos destruction: a Niagara fireball, projectile trail, impact explosion, muzzle flash, spell, smoke, sparks, debris, Niagara fluids or…
$ npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install scenario-labs/skills scenario-unreal-vfx --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/game-engines/unreal/scenario-unreal-vfx .claude/skills/scenario-unreal-vfx && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "scenario-unreal-vfx" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unreal/scenario-unreal-vfx into .claude/skills/scenario-unreal-vfx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unreal-vfx", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unreal/scenario-unreal-vfxType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install scenario-labs/skills scenario-unreal-vfx --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/game-engines/unreal/scenario-unreal-vfx .agents/skills/scenario-unreal-vfx && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "scenario-unreal-vfx" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unreal/scenario-unreal-vfx into .agents/skills/scenario-unreal-vfx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unreal-vfx", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install scenario-labs/skills scenario-unreal-vfx --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/game-engines/unreal/scenario-unreal-vfx .cursor/skills/scenario-unreal-vfx && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "scenario-unreal-vfx" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unreal/scenario-unreal-vfx into .cursor/skills/scenario-unreal-vfx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unreal-vfx", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/scenario-labs/skills.git --path skills/game-engines/unreal/scenario-unreal-vfx--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install scenario-labs/skills scenario-unreal-vfx --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/game-engines/unreal/scenario-unreal-vfx .gemini/skills/scenario-unreal-vfx && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "scenario-unreal-vfx" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unreal/scenario-unreal-vfx into .gemini/skills/scenario-unreal-vfx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unreal-vfx", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install scenario-labs/skills scenario-unreal-vfxInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/game-engines/unreal/scenario-unreal-vfx .github/skills/scenario-unreal-vfx && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "scenario-unreal-vfx" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unreal/scenario-unreal-vfx into .github/skills/scenario-unreal-vfx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unreal-vfx", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install scenario-labs/skills scenario-unreal-vfx --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/game-engines/unreal/scenario-unreal-vfx .opencode/skills/scenario-unreal-vfx && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "scenario-unreal-vfx" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unreal/scenario-unreal-vfx into .opencode/skills/scenario-unreal-vfx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unreal-vfx", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
scenario-unreal-vfxA skill your agent uses when a UE5 task involves Niagara or Chaos destruction: a Niagara fireball, projectile trail, impact explosion, muzzle flash, spell, smoke, sparks, debris, Niagara fluids or…
Scenario Unreal Vfx is an agent skill from scenario-labs/skills. Use when a UE5 task involves Niagara or Chaos destruction: a Niagara fireball, projectile trail, impact explosion, muzzle flash, spell, smoke, sparks, debris, Niagara fluids or flipbooks; "Niagara is too expensive", stat NiagaraOverview, Effect Types, pooling, Data Channels, lightweight emitters, VFX scalability; judging an effect's readability, value, color, timing, white blowout or strobing; or a wall that shatters, geometry collection fracture, Dataflow, damage thresholds, floating chunks, debris cost, Chaos…
Its SKILL.md is about 5.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including scripts and reference files (for example `references/critique.md`, `references/expert-notes.md` and `references/gui-paths.md`).
It sits in Game Development, covering Game development. It works with Unreal Engine. The repository describes itself as: Get production-ready images, video, audio, and 3D from any AI agent: skills that pick the right model, price before spending, and keep characters and brands consistent through… The licence is MIT.
11 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit f6f8ab7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
npxpython3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Scenario Unreal Vfx loads about 5.1k tokens when it runs, and up to ~51k if it reads all its reference files. Until then it costs about 138 tokens; SKILL.md has 2,111 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from scenario-labs/skills at commit f6f8ab7, republished under its MIT licence (© scenario-labs). 2,111 words, ~5,143 tokens.
.claude/skills/scenario-unreal-vfx/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Expert level means an effect that tells the player the truth (where it hurts, when it is over), costs what its gameplay class allows across the whole world, and is proven by per-thread numbers on the target core count plus captures scored against a written rubric. Python cannot author Niagara emitters or modules (5.8 API): the agent works through templates with a User parameter contract, Material Instances, Effect Types and Dataflow recipes, and escalates the few graph edits as precise GUI requests. If a sibling skill named here is missing from your available skills, ask the user to install it (npx skills add scenario-labs/skills --skill <name>); unattended, proceed from tool schemas and flag the gap.
REQUIRED BACKGROUND: scenario-unreal-expert (channels, review loop, 5.8 traps).
Status (2026-09-24): Unreal is not installed. Offline checks pass (python3 tests/code/unreal-vfx/run_all.py --offline); every in-editor snippet is not yet run in Unreal; job_00_vfx_probe.py answers the [verify] names.
User.Radius = damage radius), never a hand-matched constant; lingering says "still dangerous" (Keyser #1 [00:09:44], [00:15:21]).fx.Budget.AdjustedUsageDecayRate against oscillation [00:36:50]-[00:37:21].| Input | Why it changes the plan | Default when silent |
|---|---|---|
| Platform, frame rate, min-spec cores | per-thread budgets, quality tables | PC 60 fps; cores from scenario-unreal-performance, 4 if unknown (Kiraly) |
| Gameplay numbers (scenario-unreal-gameplay) | radius, speed, damage window, fire rate, max simultaneous, cast animation timing | ask; never guess a radius |
| Camera and environment | read at gameplay distance over the real ground colors | the game's camera and level |
| Style pillars, importance tier | brightness budget: idle, basic, defensive, damaging, game changer, ultimate (Keyser #1 [00:13:08]) | three pillars from the art lead |
| Crowd and destruction scope | copies on screen; walls per level, must-break objects, low-end platforms | worst realistic fight; real time, Nanite on |
| Budgets | no source gives per-effect ms | [added] all Niagara at or under about 2 ms GT + GT Concurrent and 1.5 ms RT at min spec; confirm with scenario-unreal-performance |
Probe once per engine. job_00_vfx_probe.py (headless). GATE: probe.json answers the [verify] items.
Classify elements, group them into systems. classify_element per element, then system_plan: one Effect Type per system (its most critical element); the rest get Scalability Mode Self, or their own system when spammy or on GPU.
| System (examples) | Effect Type | Critical emitters | Secondary (Scalability Mode Self) |
|---|---|---|---|
| Projectile, beam, tracer | NET_OneShotCritical | head | trail, wisps, embers |
| Impact, hit, muzzle flash | NET_OneShotCritical | flash, damage ring | smoke, sparks (split if spammy or GPU) |
| Debris or impact listener (NDC) | NET_OneShot, budget only with decay damping | none | all |
| AoE, status, pickup | NET_PersistentCritical | rim | interior flavor |
| Ambient dust, leaves, rain | NET_Ambient | none | all |
GATE: system_plan has no error.
Timing plan before building. Write the spawn schedule (wind-up from the cast animation, build-up ending at the hit, flash on the hit, debris and sparks, smoke, window end) and run spawn_schedule_verdict; strobe_risk(speed, head length) gives the stretch a fast head needs. GATE: no error; stretch in the template spec.
Template and contract. duplicate_template, user_parameters, contract_verdict; a missing control becomes one GUI request. Curves in that request pass fade_curve_verdict (opacity fades from mid-life, never shrink-only) and flipbook_playback_verdict (fast then slow). GATE: contract ok.
Look: materials and textures. Master material and instances from scenario-unreal-materials (erosion, gradient-map LUT, depth fade); reuse textures first (Trümpler [00:16:33]), generate glows, LUTs and noise in Python. Import masks with sRGB off, TEXTUREGROUP_Effects, big sources capped by Maximum Texture Size; baked flipbooks are premultiplied, so the material must divide RGB by A (premultiplied_check). Smoke and fire: baked flipbooks by default; Fluids are Beta. GATE: audit_vfx_textures, flipbook_check clean.
System properties and scalability. set_system_properties: effect_type, max_pool_size = the type's system cap, prime 0 for mid-play loads, warmup 0, current-frame data off for static effects; world-space trails need fixed bounds of speed x lifetime (fixed_bounds_check). Effect Types from EFFECT_TYPE_PRESETS (create_effect_type [verify] or GUI once). GATE: no NO_EFFECT_TYPE in audit_niagara; caps_verdict, budget_verdict clean.
Wire to gameplay. scenario-unreal-gameplay spawns with the pooling method, sets User parameters from gameplay data, spawns the wind-up from the cast animation, writes Data Channel payloads, applies strain on hit (strain_plan; collision plus strain for must-break objects). On hit, deactivate the trail and let its particles finish [added]. GATE: a PIE hit spawns from the pool (FX Outliner InUse / FreeInPool).
Destructible asset. Watertight, non-intersecting source (mesh_watertight_check); fixed seed; pattern by material (concrete noise and grout, wood shrink-fracture-stretch, glass slices or a crack material); two or three levels, anchored; Proximity graph with an area threshold; one damage model; one convex per cluster; interior material with a distance-to-surface bake (Caillaud t_jy [00:29:14]); Remove on Break ranges plus Cluster Crumbling; removal multiplier in the low-end device profile; disable settled debris that never wakes (Xiao Yue [00:28:45]). VFX on breaks needs Chaos data generation in Project Settings plus break notification on the component (enable_break_events, Xiao Yue [00:08:42]); switch only broken bones to a debris profile. Then harden_gc; piece count in a gym at 10, 50, 100 (Caillaud t_jy [00:35:12]). GATE: gc_recipe_verdict, gc_verdict, physmat_check clean.
Review loop. Textured review level, Manual exposure, the gameplay camera; live_capture_series.py or capture_ages with clean plates; score_captures.py (a blank frame voids the series); LOOK at the color, grayscale and squint sheets; repeat in PIE ("the viewport lies", Shishido [00:05:05]), over green and brown ground for the color-blind check, in a crowd grid and at sg.EffectsQuality 0 to 3. On white-out run duplicate_spawn_check on Debugger counts first. One change per pass. GATE: no rubric fail; judgment rows scored (references/critique.md).
Measure. Fixed worst fight at the target core count: stat unit, stat NiagaraOverview, Debug HUD, Insights with -statnamedevents (Niagara is invisible without it, Kiraly [00:10:52]); init_for_performance_baseline(); lever_check before each change; budget_oscillation when budgets are on. Destruction: frame series around the break, CVD, t.OverrideFPS 60 [verify]. GATE: niagara_overview_verdict, before_after, destruction_run_verdict within budget, visual parity.
Deliver the budget sheet to scenario-unreal-performance.
| Value | Relative to | Source |
|---|---|---|
| NET_OneShot: 15 per system, about 30 per type, Spawn Only, Kill and Clear, instant cull 0.0 | fire-and-forget, not critical | Kiraly [00:22:26] |
| NET_PickupPersistent: 5 (sight lines), Continuous, Asleep, cull delay 1.0 s | persistent critical | Kiraly [00:24:03] |
| Max Pool Size 32, Prime 0 (defaults); type cap = pool size | per system | Kiraly [00:32:18], [00:33:22] |
| Flipbook 8 x 8 on 1024 = 128 px tiles, end frame 63, bake at 30 fps | baker | Flipbook Baker doc |
| Thresholds 5000 / 500 / 50; strain 50000, radius 100, velocity 500 | quickstart wall | Chaos docs |
| Boxes below 0.3 relative size; 4,000 fragments in 4 levels, about 200 bodies hit | leaf proxies; clustering | Xiao Yue [00:25:51], [00:22:32] |
| Remove on sleep 3 s; removal 5 to 10 s, then a per-platform multiplier | debris | Caillaud [00:10:43], [00:11:24] |
audit_niagara, audit_gc, audit_vfx_textures, caps_verdict, system_plan, gc_recipe_verdict); per-thread stats at the target core count, averages and spikes; break spike and recovery; capture rubric (footprint vs radius, value bands, blowout, saturation under values, 60 / 30 / 10 with the accent at the focal point, size classes held over time, head contrast, color-blind contrast, intensity curve, schedule, strobing); image_checks rejects blank frames.| Mistake | What it looks like | Fix |
|---|---|---|
| Hand-matched radius | ring larger than the damage zone | User.Radius from gameplay |
| White blowout | flat white blob | count duplicates, then an alpha-blended saturated layer behind the additive core |
| Round head at speed | strobing dots | stretch along velocity, motion blur in the texture |
| Build-up after the hit; smoke before the flash | muddy payoff | spawn schedule: stop at the hit, causes first |
| Shrink-only fade | popcorning cards | opacity fade from mid-life, matched layer colors |
| Effect Type per emitter | embers get the uncullable type | one type per system, Scalability Mode Self |
| Distance culling to cut RT | RT unchanged | lever_check: caps, CPU sims, stateless |
| Budget without decay | cull, respawn, cull | decay rate, non-critical types only |
| Fixed bounds smaller than the trail | trail vanishes on screen | fixed_bounds_check |
| Destroying the projectile on impact | trail pops off | deactivate, let particles finish |
| Sleep to hold a wall | wakes on a bump | anchor or kinematic bones |
| Default connection graph | floating chunks, corner hinges | Proximity or Bounds Overlap Filtered |
| MSC with a tuned threshold array | tuning does nothing | tensile strength on the physical material |
| Field or strain falloff per bullet | physics spike | strain plus breaking velocity, no falloff |
| Debris profile on the whole GC | player walks through the intact wall | switch broken bones on the break event |
| Sleeping debris that never wakes | solver cost | disable |
gc.removal_duration = ... | refused (read-only attribute) | set_editor_property |
r.HeterogeneousVolumes.Allow (5.8); Niagara Editor Preview Actor (5.7).root_proxy_data, size_specific_data, set_dataflow_asset; per-bone data (anchors, Remove on Break, one-way levels) is not on the class.references/expert-notes.md: principles by expert, timestamps, disagreements, what the U7 grade found missing.references/procedures.md: full code, test path and status per procedure.references/critique.md: the rubric (metrics, thresholds, judgment rows).references/gui-paths.md: editor menus for the same work.references/sources.md: every source, credential, URL, best timestamps, revision history.scripts/ue_vfx.py: offline verdicts and metrics; in-editor helpers (not yet run).© scenario-labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts, references) in skills/game-engines/unreal/scenario-unreal-vfx of scenario-labs/skills.
Open the folder on GitHubat commit f6f8ab7
Scenario Unreal Vfx next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Scenario Unreal Vfx this skillscenario-labs/skills | 946 | — | ~5.1k | Automated safety check: Pass | MIT | |
| Unreal BridgeTornLux/UnrealBridge | 306 | — | ~8.4k | Automated safety check: Notes | MIT | |
| Unreal Blueprint Authoringflopperam/unreal-engine-mcp | 1.1k | — | ~1.6k | Automated safety check: Pass | None | |
| UMG Material MCPwinyunq/UnrealMotionGraphicsMCP | 210 | — | ~913 | Automated safety check: Pass | MIT | |
| Unreal Animation Bone Editorkevinpbuckley/VibeUE | 730 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Unreal Engine MCPEpicGames/unreal-engine-skills-for-claude-code-plugin | 338 | — | ~1.8k | Automated safety check: Pass | MIT |
TornLux/UnrealBridge
Execute Python scripts inside a running Unreal Engine 5.3+ editor via TCP bridge.
flopperam/unreal-engine-mcp
Walks an agent through creating and editing Unreal Engine Blueprints with the Flopperam MCP's bp_* tools, from inspection to commit and verification.
winyunq/UnrealMotionGraphicsMCP
Creates, edits and compiles Unreal Engine 5.8 material assets as one HLSL Custom node through the UMG MCP bridge, instead of editing .uasset files directly.
kevinpbuckley/VibeUE
Previews, validates and bakes bone-rotation edits on Unreal Engine AnimSequences, enforcing a coordinate space and a constraint-checked preview-validate-bake loop.
EpicGames/unreal-engine-skills-for-claude-code-plugin
Drives a live Unreal Editor through the unreal-mcp server: spawn actors, edit Blueprints, materials and sequences, change properties and trigger Live Coding.
flopperam/unreal-engine-mcp
Guides scene and world building in Unreal Engine through the Flopperam MCP: placing actors, sculpting landscapes, scattering foliage, editing materials and verifying the level.
scenario-labs/skills
A skill your agent uses when drawing or animating with Grease Pencil in Blender 5.x from Python: 2D or 2.5D illustration, frame-by-frame animation, a cutout or part-based 2D character, strokes with…
scenario-labs/skills
A skill your agent uses when grooming hair or fur in Blender with hair curves, such as a character hairstyle, animal fur, procedural fur in geometry nodes, or hair cards and mesh hair for games.
scenario-labs/skills
A skill your agent uses when lighting, rendering or compositing in Blender: light a character, product or hero shot, interior at dusk or night, three-point or motivated lighting, sun and sky, HDRI…
scenario-labs/skills
A skill your agent uses when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making…
scenario-labs/skills
A skill your agent uses when animating characters or scenes in Godot 4.7: AnimationPlayer clips and RESET, AnimationTree state machines and blend spaces built in code, Mixamo or glTF import, loop…
scenario-labs/skills
A skill your agent uses when adding or fixing sound in Godot 4.7: audio buses and effects, volume sliders, 'too many sounds', combat audio with hundreds of enemies, sounds clipping or distorting, 3D…
Works with
Categories
A skill your agent uses when a UE5 task involves Niagara or Chaos destruction: a Niagara fireball, projectile trail, impact explosion, muzzle flash, spell, smoke, sparks, debris, Niagara fluids or…. Scenario Unreal Vfx is an agent skill from scenario-labs/skills.
Scenario Unreal Vfx fits situations like: A UE5 task involves Niagara; chaos destruction: a Niagara fireball; projectile trail; impact explosion.
Run `npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a claude-code`. Or copy the skill folder (skills/game-engines/unreal/scenario-unreal-vfx in scenario-labs/skills) into .claude/skills/scenario-unreal-vfx in your project. Claude Code loads it when a task matches its description.
Run `npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a codex`. Or copy the skill folder (skills/game-engines/unreal/scenario-unreal-vfx in scenario-labs/skills) into .agents/skills/scenario-unreal-vfx in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add scenario-labs/skills --skill scenario-unreal-vfx -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/scenario-unreal-vfx, .gemini/skills/scenario-unreal-vfx, .github/skills/scenario-unreal-vfx and .opencode/skills/scenario-unreal-vfx in your project.
Going by SKILL.md and its folder, Scenario Unreal Vfx needs Python for the scripts in its folder and the command-line tools its instructions call (npx and python3). Our summary lists: Python 3; Node.js.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Scenario Unreal Vfx is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.1k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 46k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Scenario Unreal Vfx: Unreal Bridge (TornLux/UnrealBridge, 306 stars), Unreal Blueprint Authoring (flopperam/unreal-engine-mcp, 1.1k stars), UMG Material MCP (winyunq/UnrealMotionGraphicsMCP, 210 stars) and Unreal Animation Bone Editor (kevinpbuckley/VibeUE, 730 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
scenario-labs (a GitHub organization) maintains it in scenario-labs/skills, which has 946 GitHub stars. The repository holds 146 skills in this directory. The repository was last updated on October 10, 2026.
Source: scenario-labs/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.