godot-genre-rts — скилл для Claude Code: RTS на Godot
Готовые рецепты для стратегий в реальном времени на Godot: выделение юнитов рамкой, очередь приказов, туман войны, экономика и ИИ-противники.
npx skills add thedivergentai/Game-Dev-Agentic-Skills --skill godot-genre-rts -a claude-codeЧто делает godot-genre-rts
Скилл описывает, как собрать RTS в Godot без типичных грабель. Внутри — набор скриптов на GDScript: менеджер выделения рамкой для 2D и через рейкаст для 3D, контроллер юнита со стейт-машиной и NavigationAgent, пул запросов пути, менеджер армии на WorkerThreadPool, туман войны через маску в SubViewport, менеджер экономики как Autoload и рендер толпы через MultiMeshInstance3D.
Основная часть файла — список антипаттернов. Например, не советует обновлять RVO-обход каждый кадр для всех юнитов: вместо этого включать обход только на ходу и разносить запросы пути по времени. Для тумана войны предлагается шейдерная маска, а не ручной расчёт видимости. Для сотен юнитов — MultiMeshInstance с INSTANCE_CUSTOM вместо отдельных MeshInstance3D.
Есть дерево выбора: до примерно 80 активных юнитов хватает обычных NavigationAgent с RVO, дальше нужны пул запросов и серверная симуляция. Скилл ссылается на соседние скиллы того же набора — по вводу, камере, навигации, шейдерам, TileMap и экономике. Ставить есть смысл, если вы уже пишете RTS на Godot и упёрлись в производительность или в логику приказов.
Какие задачи решает
- сделать выделение юнитов рамкой и добавление по Shift
- выстроить очередь приказов с обходом через Force Move
- разнести запросы пути по кадрам, чтобы юниты не дёргались
- закрыть карту туманом войны через шейдерную маску
- отрисовать сотни юнитов одним MultiMesh вместо отдельных нод
Примеры запросов агенту
- Собери выделение юнитов рамкой и добавление по Shift для 2D-RTS на Godot
- Сделай очередь приказов move, attack, gather с сериализацией в Dictionary
- Настрой туман войны через SubViewport и шейдерную маску на TileMapLayer
Как установить godot-genre-rts
1Через Skills CLI (Vercel)
npx skills add thedivergentai/Game-Dev-Agentic-Skills --skill godot-genre-rts -a claude-code2Вручную: положить файлы
~/.claude/skills/godot-genre-rts/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/godot-genre-rts/
1Через Skills CLI (Vercel)
npx skills add thedivergentai/Game-Dev-Agentic-Skills --skill godot-genre-rts -a codex2Вручную: положить файлы
.agents/skills/godot-genre-rts/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add thedivergentai/Game-Dev-Agentic-Skills --skill godot-genre-rts -a cursor2Вручную: положить файлы
.cursor/skills/godot-genre-rts/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install thedivergentai/Game-Dev-Agentic-Skills godot-genre-rts2Вручную: положить файлы
.github/skills/godot-genre-rts/SKILL.md1Через Skills CLI (Vercel)
npx skills add thedivergentai/Game-Dev-Agentic-Skills --skill godot-genre-rts -a gemini-cli2Командой платформы
gemini skills install https://github.com/thedivergentai/Game-Dev-Agentic-Skills --path skills/godot-genre-rtsВручную: положить файлы
.devin/skills/godot-genre-rts/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add thedivergentai/Game-Dev-Agentic-Skills --skill godot-genre-rts -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о godot-genre-rts
Как установить godot-genre-rts в Claude Code?
Выполните npx skills add thedivergentai/Game-Dev-Agentic-Skills --skill godot-genre-rts -a claude-code. Скилл окажется в ~/.claude/skills/godot-genre-rts/SKILL.md.
Что делает godot-genre-rts?
Даёт агенту план по системам RTS на Godot: выделение и приказы, навигация с RVO, туман войны, экономика, ИИ-противники. Плюс список того, чего делать не стоит.
Когда нужен MultiMesh вместо обычных нод?
Скилл разводит два режима: примерно до 80 активных юнитов хватает NavigationAgent с RVO и обычных нод, дальше он советует пул запросов пути и рендер через MultiMeshInstance.