# msw-general

Foundation skill for MapleStory Worlds work: shared tools, platform rules and validated .model templates. Every other MSW skill builds on it.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 9900 installs · ★ 38
- Author: MSW-Git
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/MSW-Git/msw-ai-coding-plugins-official/tree/HEAD/plugins/msw-maker-base-skill/skills/msw-general/SKILL.md
- Updated: 2026-10-06
- HTML: https://affpapa.org/en/nevibecode/skills/msw-general

## What it does

This skill sets the shared groundwork for MapleStory Worlds: how to find resources, how to author `.model` and `.map` files, which platform rules to follow. Other MSW skills reference it, so it comes first.

Inside is a catalog of validated `.model` templates grouped by category: monsters, NPCs, player, terrain, map objects, particles, sound, tile maps, UI. Starting a new `.model` from an empty file is discouraged — pick the closest template, swap the three identifiers (`EntryKey`, `Id`, `Name`) through `ModelBuilder`, then adjust components. Save into a typed subfolder of `RootDesk/MyDesk/Models/`, for example `Models/Monsters/{Name}.model`, then `refresh`.

There is a separate rule for repeated objects: if the same entity shows up in a map twice or more, author a `.model` and place instances by `modelId` instead of copy-pasting `@components`. One edit in the model updates every instance, and the `.map` stays readable. Dynamic spawning through `SpawnByModelId` needs a model regardless of count. Before touching entities the skill requires reading `references/entity.md`; before editing `.map`, `.model` or `.ui` it requires the builder protocol.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add MSW-Git/msw-ai-coding-plugins-official --skill msw-general -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/msw-general/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/msw-general/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add MSW-Git/msw-ai-coding-plugins-official --skill msw-general -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/msw-general/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add MSW-Git/msw-ai-coding-plugins-official --skill msw-general -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/msw-general/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install MSW-Git/msw-ai-coding-plugins-official msw-general
```

2. **Manually: put the files in place**
- File: `.github/skills/msw-general/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add MSW-Git/msw-ai-coding-plugins-official --skill msw-general -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/MSW-Git/msw-ai-coding-plugins-official --path plugins/msw-maker-base-skill/skills/msw-general
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/msw-general/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add MSW-Git/msw-ai-coding-plugins-official --skill msw-general -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/MSW-Git/msw-ai-coding-plugins-official/tree/HEAD/plugins/msw-maker-base-skill/skills/msw-general/SKILL.md

## When to use it
- build a monster or NPC `.model` from a ready template
- place five identical trees via `modelId` instead of copy-paste
- match a sprite and animation to an entity's role
- wire hit effects and interaction sounds
- keep model and map instances from drifting apart

## Example prompts
- read msw-general and build a `.model` for a chasing monster
- use msw-general to place 10 trees via `modelId` in this map
- check with msw-general that every entity has `SpriteRUID` set

## Similar
- [build-rigged-game-assets](https://affpapa.org/en/nevibecode/skills/build-rigged-game-assets.md) — skill · 1200 installs
- [add-3d-assets](https://affpapa.org/en/nevibecode/skills/add-3d-assets.md) — skill · 938 installs
- [scenario](https://affpapa.org/en/nevibecode/skills/scenario.md) — skill · 659 installs
- [hatch-pet](https://affpapa.org/en/nevibecode/skills/nexu-io-hatch-pet.md) — skill · 3100 installs
- [fal-3d](https://affpapa.org/en/nevibecode/skills/fal-3d.md) — skill · 2800 installs
- [build-vesperfall-review-assets](https://affpapa.org/en/nevibecode/skills/build-vesperfall-review-assets.md) — skill · 1200 installs

From the same set: [msw-git/msw-ai-coding-plugins-official](https://affpapa.org/en/nevibecode/by/msw-git/msw-ai-coding-plugins-official.md) — 14 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
