MSW Sprite RUID skill for Claude Code: assign sprite and thumbnail RUIDs correctly
A MapleStory Worlds skill that makes Claude assign RUIDs to sprite renderers correctly, including thumbnail:// icons for avatar items.
- Installs
- 10.1K
- on skills.sh
- Stars
- 38
- on GitHub
- Updated
- Oct 2026
- last repo commit
msw-sprite-ruid is a short rules page for SpriteRendererComponent.SpriteRUID in the world and SpriteGUIRendererComponent.ImageRUID in UI. Both take sprite or animationclip RUIDs directly. A skeleton or avataritem RUID without the thumbnail:// prefix fails silently, so nothing renders.
It also explains the DataRef form for ImageRUID in runtime .mlua. It bundles no scripts. RUIDs themselves come from msw-search.
Good for
- MapleStory Worlds creators whose sprite or avatar icon shows nothing and gives no error
- Developers building inventory or shop slots with avatar item icons
- Anyone assigning RUIDs in scripts, .ui or .model files
Install msw-sprite-ruid
Claude Code
- 1
Copy this prompt.
Install the msw-sprite-ruid skill in Claude Code. Run this command: npx skills add https://github.com/msw-git/msw-ai-coding-plugins-official --skill msw-sprite-ruid --skill msw-general --skill msw-search Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
The plugin route installs msw-maker-base-skill: 13 skills (counted from the git tree) and hooks (6 hook events backed by 12 Node scripts, per hooks.json and the git tree). Read the permissions section first. The skills CLI route copies only the skill folders named, without the hooks. SKILL.md for msw-general says every other MSW skill depends on it, so it is always in the list, plus msw-search which this skill sends you to. The skills also call two MCP servers, msw-maker-mcp and msw-mcp. SKILL.md points to the official setup page for wiring them and the API key: https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1368 The default shown is the skills CLI route, which does not add the hooks.
Built from the package data we hold. Not yet tested by us. Source.
What's in the skill
When it loads
SpriteRendererComponent.SpriteRUID (world) and SpriteGUIRendererComponent.ImageRUID (UI) — native RUID type support (sprite / animationclip direct playback), thumbnail:// prefix for rendering avataritem / skeleton / animationclip as static thumbnail image, avatar item icon in inventory / shop / UI slot. Use when: assigning any RUID to a sprite renderer component, displaying an avatar item or resource as a thumbnail or icon, using animationclip directly in a renderer, rendering inventory item icons, displaying a thumbnail image in a world entity. Keywords: SpriteRUID, ImageRUID, thumbnail://, animationclip, RUID apply, RUID assign, thumbnail, item icon, sprite RUID, RUID to renderer
Sections in SKILL.md
- Native type support
- animationclip: single animation vs multi-state
- thumbnail:// prefix — static thumbnail from any resource
- Primary use case: avataritem icons
- Common pitfalls
Key facts
- Installs on skills.sh
- 10,074 as of Nov 2, 2026
- What is inside
- 1 file: SKILL.md (git tree)
- Last commit to the repo
- Oct 6, 2026
What it includes
sprite and animationclip RUIDs work directly
SpriteRUID is a plain string. ImageRUID takes DataRef(ruid) in runtime .mlua, and a { DataId: ruid } object only in .ui and .model JSON.
Try: “Show this avatar item as an icon in the shop slot.”
Write ·
Native type supportanimationclip RUID or StateAnimationComponent
A looping decoration uses the clip RUID. Multi-state entities such as monsters use StateAnimationComponent with an ActionSheet.
Read ·
Single animation versus multi-stateRenders a static thumbnail of any resource
Accepts sprite, animationclip, skeleton and avataritem RUIDs. It is the way to show avatar item icons in inventory, shop and equip slots.
Write ·
thumbnail:// prefix6 mistakes that fail silently or are rejected
Includes missing prefix, using a thumbnail for live animation, the wrong DataRef form, properties that do not accept thumbnail://, and prefixing an already-thumbnail RUID.
Read ·
Common pitfalls
From the official docs
Permissions
Medium risk
This skill bundles no scripts, but the plugin route adds hooks that write files and log calls. Read the hook findings before installing the plugin.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
The plugin runs 9 hook scripts on 6 events
hooks.json registers 9 hook scripts on 6 events. SessionStart: mlua-session-start.cjs starts the mlua LSP daemon in the background when it finds a RootDesk folder, and inject-agents-md.cjs (next item). UserPromptSubmit: skill-router-reminder.cjs adds the same fixed routing reminder to every prompt. PreToolUse: skill-read-guard.cjs refuses Bash reads such as cat, head or grep on the plugin's skill .md files, and structured-file-guard.cjs refuses reads, edits and shell commands on .model and .ui files. PostToolUse on Edit, Write and MultiEdit: mlua-diagnose-post-tool-use.cjs runs the mlua checker on edited .mlua files and returns a block decision with the errors when it finds any, and a second hook calls the msw-maker-mcp tool maker_refresh_workspace. PostToolUse on Read and Skill, and the InstructionsLoaded event: skill-log.cjs logs skill reads to .mswai/logs/skill.log. PostToolUse on every tool: mcp-log.cjs (below). SessionEnd: mlua-session-end.cjs stops the LSP daemon. Use the skills CLI route in the install box if you do not want hooks. github.com
The plugin writes AGENTS.md and edits CLAUDE.md
inject-agents-md.cjs copies its AGENTS.md to your project root, replacing the file if the content differs, and adds an @AGENTS.md line at the top of CLAUDE.md. Back up an existing AGENTS.md first. github.com
The plugin runs a downloaded package with npx -y
The mlua checks start a background daemon at session start and run again after each .mlua edit. resolve-cmd.cjs looks first for a local copy (env override, the workspace .mswai/runtime folder, the ai-cli vendored copy, mlua-lsp on PATH). If none is found and npx exists, it runs npx -y @maplestoryworlds/mlua-lsp@1.1.4, which downloads that package from the npm registry. github.com
It leads Claude to edit RUID values
The skill bundles no scripts, but the changes it guides are made in your files. Review the diff. github.com
The plugin logs every MCP call to .mswai/logs
mcp-log.cjs runs after every tool call and, for MCP tools from any server, appends one line to .mswai/logs/mcp.log in your project with the tool name, the full arguments and the full response (cut only if MCP_LOG_MAX_OUTPUT_BYTES is set). lsp.log and skill.log are written to the same folder. Our advice: add .mswai/ to .gitignore, because the log can hold anything your MCP servers return. github.com
The plugin blocks direct reads of .model and .ui files
structured-file-guard.cjs refuses Read, Edit, Write and shell commands on .model and .ui files and tells Claude to use the builders. Setting MSW_STRUCTURED_FILE_GUARD_DISABLE=1 turns it off. github.com
Security advisories
No published security advisories as of Nov 2, 2026.
Technical details
| Turning on read-only | SKILL.md names no read-only setting. |
|---|---|
| Scopes |
|
Questions
What does the msw-sprite-ruid skill do?
It tells Claude how to put a RUID into a sprite renderer in MapleStory Worlds, including the thumbnail:// prefix for avatar item icons.
Why is my avatar item invisible?
SKILL.md says a skeleton or avataritem RUID assigned without the thumbnail:// prefix fails silently. Add the prefix to get a static icon.
Which properties accept thumbnail://?
SpriteRUID and ImageRUID. SKILL.md says CostumeManagerComponent Custom equip fields, StateAnimationComponent ActionSheet and SkeletonRendererComponent SkeletonRUID do not.
How do I install it?
Use the install box above. The skills CLI route also installs msw-general and msw-search.
Is it official, made by Nexon?
The repo does not say so. It is published by a personal GitHub account named MSW-Git (account type User, no company or description on the profile). The repo name contains "official" and the README calls it the public release source for MSW maker skills, but nothing in the repo names Nexon as the publisher. marketplace.json lists the owner as MSW-Git with an outlook.kr email address. The skills do link to Nexon's MapleStory Worlds creators docs for MCP setup. Our advice: treat it as a third-party toolkit for Nexon's platform unless Nexon confirms otherwise.
How do I find a RUID?
Use msw-search. SKILL.md names searchAvatarItems for avatar items and searchResources for everything else.
Is msw-sprite-ruid safe to use?
The skill folder is one SKILL.md and bundles no scripts. It leads Claude to edit RUID values in your scripts and data files. The plugin route also adds hooks, so read the permissions section before you install it.
Information
updated Nov 2, 2026
- Repository
- msw-git/msw-ai-coding-plugins-official
- Folder
plugins/msw-maker-base-skill/skills/msw-sprite-ruid
Sources
Docs, issue trackers and discussions this page is built from.
Show all 15Hide
- msw-ai-coding-plugins-official README · github.com
- marketplace.json · github.com
- msw-sprite-ruid SKILL.md · github.com
- skills.sh listing · skills.sh
- MSW-Git GitHub profile · github.com
- hooks.json · github.com
- inject-agents-md.cjs · github.com
- resolve-cmd.cjs · github.com
- mcp-log.cjs · github.com
- structured-file-guard.cjs · github.com
- skill-router-reminder.cjs · github.com
- mlua-diagnose-post-tool-use.cjs · github.com
- skill-log.cjs · github.com
- skill-read-guard.cjs · github.com
- mlua-session-start.cjs · github.com