blushneybusiness-glitch/roblox-omniskills/rbx-anim-tween
Claude Code and agent skill by blushneybusiness-glitch/roblox-omniskills
- community
Checking that the SKILL.md file is still in the repository.
TweenService choreography for jointless world objects — doors, chests, platforms, levers, pickups — with the anticipation, overshoot, and contact sound that separate a hand-animated prop from a sliding brick. Use when the user says "animate the door", "make the chest open", "moving platform", "make it pop in", or when world motion looks stiff or robotic, or objects blink into existence with no transition. Do not use for anything with Motor6D joints — load rbx-anim-rigs — or for endless idle life (bobbing, breathing, sway) — load rbx-anim-procedural instead.
Install
npx vskill@latest install blushneybusiness-glitch/roblox-omniskills/rbx-anim-tweenSKILL.md
rbx-anim-tween
Laws
- Pivot before tween. Rotating motion pivots at the hinge: doors on the hinge edge, lids
on the back edge, levers at the base. Weld the moving parts to an invisible anchored hinge part and tween the hinge's CFrame, or model:PivotTo() in a lerp loop for whole models. A door rotating around its center sweeps through the wall — the single fastest tell.
- Anticipation → action → settle. Wind up 0.1–0.2s opposite the motion (lid presses down
4° before flinging open), fire the main move with Back/Out so overshoot-and-settle comes free, land with a contact sound. Anticipation is the biggest humanizer available for zero extra parts.
- Ease everything.
Linearis legal only for conveyor belts and scrolling textures.
Gameplay feedback runs 0.15–0.4s; ambient loops run 2–6s; anything longer belongs to rbx-anim-cutscenes.
- Anchored, moved by CFrame. Tweened world parts stay Anchored and move via CFrame or
pivot — never let collision physics fight a tween; the fight renders as jitter. Physics motion (falling, knockback) is rbx-physics territory, never faked with tweens.
- State lives on the server. The tween is cosmetic; whether the door is open, the chest
is looted, or the platform has arrived is server state. Any client claim ("I opened it", "I'm standing on it") gets validated server-side before rewards or access change.
- Debounce and recompute. Interactables gate on
if busy then return endand tween FROM
current state toward a recomputed goal, so a double-trigger can never desync a door.
Recipes
Door — handle jiggle ±8° for 0.12s → swing 105° Back/Out 0.5s → 3° settle. Close: swing Quad/In 0.4s with a latch thunk exactly at contact. Sliding auto-door: Quint, 0.35s, hiss sound.
Chest — lid presses down 4° (0.12s) → flings open −110° Back/Out 0.35s → contents rise 0.4s with overshoot + dust burst + light shaft + reward sting. One primary move with 2–3 secondaries is the professional signature; a lone rotating lid is the amateur one. The reward itself is granted by the server, never by the client that played the flourish.
Platform — constant Linear cruise but 0.4s eased ramps at both endpoints; instant-reverse platforms read cheap. Quiet mechanical loop while moving, clunk on arrival. Server owns the platform's position; clients only decorate.
Lever / button — press 0.1s Quad/In, 0.05s hold, release 0.25s Elastic/Out; mechanism it triggers reacts 0.1–0.2s later, not the same frame — cause must visibly precede effect.
Spawn / despawn — spawn: scale 0 → overshoot → 1 (Back/Out 0.3s) plus a puff from rbx-vfx-particles. Despawn: 0.15s Quad/In shrink + fade. Nothing blinks into or out of existence, ever.
Sequencing — reusable TweenInfo preset table named by intent (SNAP 0.15s, SETTLE 0.3s, DRIFT 2s); chain with tween.Completed:Wait() inside task.spawn, or a timestamp table {{t = 0, fn}, {t = 0.15, fn}} driven by one loop — never callbacks nested four deep.
Performance budget
Hundreds of simultaneous tweens are fine; thousands are not — cancel tweens on interrupt instead of stacking them. Persistent loops (a field of spinning pickups) run in ONE RenderStepped connection iterating the set, never one connection per coin — hand those to rbx-anim-procedural. Disconnect every connection when the asset despawns. After each execute_luau build chunk, read get_console_output; verify motion with screen_capture per quality-bars.md.
Load with
rbx-audio-sfx — don't ask, include it: silent motion is an AI-tell; every contact point gets a sound. rbx-vfx-particles for dust/burst secondaries on opens and spawns. rbx-anim-procedural when the object also needs idle life after the choreography ends. Chest/reward flows: rbx-juice-celebrations for the UI side of the payout.
AI-tells
- ☐ Linear easing on organic motion; no anticipation, no overshoot, no settle
- ☐ Doors or lids rotating around their center, clipping through frames
- ☐ Objects blinking into existence or vanishing with no spawn/despawn transition
- ☐ Primary motion with zero secondary motion and zero sound at contact
- ☐ Unanchored parts fighting their own tween (visible jitter)
- ☐ Double-trigger desync: no debounce, tweens stacking from stale start states
- ☐ Client-side "chest opened" claim trusted by the server
Memory
Read: preferences.md for the user's motion taste ([stated] "snappier"/"slower" notes become timing multipliers); the game's projects.md block for existing TweenInfo preset tables and container paths. Write: the shipped preset table (names + exact timings) into the game's projects.md block; any reusable choreography module (DoorRig, ChestRig) into module-library.md with its API line.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/rbx-anim-tween/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/blushneybusiness-glitch/roblox-omniskills/rbx-anim-tween)