msw-sprite-ruid
msw-git/msw-ai-coding-plugins-official
Assign sprite and animation RUIDs directly to renderers; use thumbnail:// prefix for item icons and static previews.
What is msw-sprite-ruid?
Native RUID type support for SpriteRendererComponent (world) and SpriteGUIRendererComponent (UI). Handles sprite and animationclip RUIDs directly, and provides thumbnail:// prefix to render static images from avataritem, skeleton, and other resources as icons or previews.
- Assign sprite or animationclip RUIDs directly to SpriteRUID (world) and ImageRUID (UI) properties without extra animator components
- Render static thumbnail images from any resource type using thumbnail:// prefix for inventory icons, shop listings, and item previews
- Support both single looping animations and multi-state animations via StateAnimationComponent integration
- Prevent silent failures when assigning skeleton or avataritem RUIDs by using the correct thumbnail:// prefix
How to install msw-sprite-ruid
npx skills add https://github.com/msw-git/msw-ai-coding-plugins-official --skill msw-sprite-ruidHow to use msw-sprite-ruid
- 1.For world sprites: assign sprite or animationclip RUID directly to SpriteRendererComponent.SpriteRUID as a plain string
- 2.For UI images: assign sprite or animationclip RUID to SpriteGUIRendererComponent.ImageRUID as { DataId = ruid }
- 3.For static thumbnails (icons, previews): prepend thumbnail:// to any resource RUID before assigning to SpriteRUID or ImageRUID
- 4.For multi-state animations (stand/move/attack): use StateAnimationComponent + ActionSheet instead of assigning animationclip directly
- 5.Search for avatar item and resource RUIDs using the msw-search skill before assigning
Use cases
- Displaying avatar item icons in inventory slots and shop UI
- Rendering background decorations or idle effects as looping animations
- Creating static preview thumbnails for equipment or cosmetic items
- Assigning animationclip RUIDs directly to world sprite renderers without StateAnimationComponent for simple animations
- Showing item icons in equip preview panels and UI slots
- Game developers building inventory and shop UI systems
- Developers implementing avatar customization and equipment preview screens
- Programmers working with sprite-based animations and visual effects
- UI engineers creating item icon displays and thumbnail galleries
msw-sprite-ruid FAQ
It fails silently — no error is thrown, but nothing renders. Always use the thumbnail:// prefix for skeleton and avataritem RUIDs.
No. The thumbnail:// prefix creates a static image only. For live animations, assign the animationclip RUID directly without any prefix.
Inside the DataId field: { DataId = "thumbnail://" .. ruid }. It is not a separate property.
No. Use it only for multi-state animations (stand/move/attack/hit/die). For single looping animations, assign the animationclip RUID directly to SpriteRUID or ImageRUID.
No. The thumbnail:// prefix converts a source resource into its thumbnail. If msw-search already returned a thumbnail sprite RUID, assign it directly without the prefix.
Full instructions (SKILL.md)
Source of truth, from msw-git/msw-ai-coding-plugins-official.
name: msw-sprite-ruid description: "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"
MSW Sprite RUID
Rules for assigning a RUID to SpriteRendererComponent.SpriteRUID (world) or
SpriteGUIRendererComponent.ImageRUID (UI).
Native type support
Both components accept a sprite or animationclip RUID directly — no extra
animator component required.
| Component | Property | Value form | Native RUID types |
|---|---|---|---|
SpriteRendererComponent (world) | SpriteRUID | plain string | sprite, animationclip |
SpriteGUIRendererComponent (UI) | ImageRUID | { "DataId": "..." } | sprite, animationclip |
-- World: sprite or animationclip RUID both work
self.Entity.SpriteRendererComponent.SpriteRUID = ruid
-- UI: sprite or animationclip RUID both work
self.Entity.SpriteGUIRendererComponent.ImageRUID = { DataId = ruid }
A skeleton / avataritem RUID assigned without the thumbnail:// prefix
fails silently (no error, nothing renders).
animationclip: single animation vs multi-state
- Single looping animation (background deco, idle effect, prop): set
SpriteRUIDorImageRUIDdirectly to theanimationclipRUID. - Multi-state (stand / move / attack / hit / die): use
StateAnimationComponent+ActionSheet. Seemsw-general/references/monster.md.
thumbnail:// prefix — static thumbnail from any resource
Prepend thumbnail:// to SpriteRUID or ImageRUID to render a static
thumbnail image from any resource — useful for icons, preview images, and item
thumbnails.
thumbnail://<32-char hex RUID>
Accepted types: sprite · animationclip · skeleton · avataritem
-- World thumbnail (any resource type)
self.Entity.SpriteRendererComponent.SpriteRUID = "thumbnail://" .. anyRuid
-- UI thumbnail (any resource type)
self.Entity.SpriteGUIRendererComponent.ImageRUID = { DataId = "thumbnail://" .. anyRuid }
Primary use case: avataritem icons
avataritem RUIDs cannot render without thumbnail://. With the prefix they
become item icons for inventory slots, shop listings, and equip previews.
slotEntity.SpriteGUIRendererComponent.ImageRUID = {
DataId = "thumbnail://" .. avatarItemRuid,
}
Search avatar item RUIDs with the msw-search skill (searchAvatarItems).
Common pitfalls
skeleton/avataritemdirectly intoSpriteRUID/ImageRUIDwithout prefix → silently invisible.thumbnail://= static image only. For live animation, assign theanimationclipRUID directly (no prefix).ImageRUIDprefix goes insideDataId:{ "DataId": "thumbnail://..." }— not a separate field.CostumeManagerComponent.Custom*Equip,StateAnimationComponent.ActionSheet, andSkeletonRendererComponent.SkeletonRUIDdo not acceptthumbnail://.- Do not prepend
thumbnail://to a RUID that was already retrieved as a thumbnail or icon image frommsw-search. The prefix converts a source resource into its thumbnail — applying it to an already-thumbnail sprite is logically redundant. If the search query targeted an icon / thumbnail image and returned aspriteRUID, assign that RUID directly without any prefix. - To search for RUIDs use the
msw-searchskill —searchAvatarItemsfor avatar items;searchResourcesfor everything else.
Related skills
More from msw-git/msw-ai-coding-plugins-official and the wider catalog.

msw-ui-system
MSW `.ui` design, component API, builder, and runtime patterns—single entry point for UI development.

msw-avatar
Manage avatar costumes (17 equip slots) and animation state mapping for any entity.

msw-behaviourtree
Author MSW `.behaviourtree` files end-to-end with automatic spec generation and validation.

msw-combat-system
Complete MSW combat pipeline: attacks, damage, hit reactions, game feel, state management, events, and AI FSM with native API support.

context-engineering-collection
Structured guidance for building production-grade AI agent systems through context engineering, memory design, and multi-agent coordination.

printing-press
Generate a ship-ready CLI for an API with a lean research → generate → build → shipcheck loop.