# setup-multiplayer-services

Points the agent at Unity Multiplayer Services for online play: network topology, hosting, matchmaking, sessions and lobbies.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 5100 installs · ★ 1149
- Author: Unity-Technologies
- License: LicenseRef-Unknown · policy=link-only · description only; the file stays with the author
- Source: https://github.com/Unity-Technologies/skills/tree/HEAD/skills/setup-multiplayer-services/SKILL.md
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/skills/setup-multiplayer-services

## What it does

This skill sets the order in which the agent works with Unity Multiplayer Services. The default route runs through `Unity.Services.Multiplayer`, using `IMultiplayerService` and `ISession`. Lower-level clients such as `Unity.Services.Lobbies`, `Unity.Services.Matchmaker` and `Unity.Services.Relay` come into play only when the main API cannot cover the task, or when the user names those namespaces directly.

Under the hood sits a folder of references. One covers the API surface with option tables and method signatures, another helps pick an implementation for the task, a third gives sample wording for questions to the user. A dedicated file handles dedicated servers: `Unity.Services.Multiplayer.Server`, `IMultiplayerServerService`, `UNITY_SERVER` and asmdef constraints. Package and cloud prerequisites are laid out in tables by workflow. Where the model's memory conflicts with the docs, the skill says to trust Unity's documentation map, and if that map is out of reach, the skill's own markdown plus the installed package in the project.

One rule concerns how the agent talks to you. Plans and clarifying questions keep Lobby, Matchmaker, Relay and Sessions together unless you separated them yourself. In code, real type and namespace names are used. Note that the whole thing assumes the Multiplayer Sessions package is already in the project and the cloud prerequisites are met; without them the guidance has nothing to attach to, so the skill starts by checking what is installed.

## Requirements
- Works with: Unity

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add Unity-Technologies/skills --skill setup-multiplayer-services -a claude-code
```

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

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add Unity-Technologies/skills --skill setup-multiplayer-services -a codex
```

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

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add Unity-Technologies/skills --skill setup-multiplayer-services -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install Unity-Technologies/skills setup-multiplayer-services
```

2. **Manually: put the files in place**
- File: `.github/skills/setup-multiplayer-services/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add Unity-Technologies/skills --skill setup-multiplayer-services -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/Unity-Technologies/skills --path skills/setup-multiplayer-services
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add Unity-Technologies/skills --skill setup-multiplayer-services -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/Unity-Technologies/skills/tree/HEAD/skills/setup-multiplayer-services/SKILL.md

## When to use it
- pick a network topology for a session-based game
- set up hosting and player joins through sessions
- work through matchmaking and room flow
- stand up a dedicated server on `Unity.Services.Multiplayer.Server`
- check current SDK docs instead of guessing from memory

## Example prompts
- Pick a network topology for a four-player co-op game and explain the sessions choice
- Set up a lobby with matchmaking using `IMultiplayerService` and `ISession`
- Show how to run a dedicated server with `IMultiplayerServerService` under `UNITY_SERVER`

## Similar
- [orbit-card](https://affpapa.org/en/nevibecode/skills/orbit-card.md) — skill · 10000 installs
- [cad](https://affpapa.org/en/nevibecode/skills/cad.md) — skill · 14000 installs
- [step-parts](https://affpapa.org/en/nevibecode/skills/step-parts.md) — skill · 11200 installs
- [sdf](https://affpapa.org/en/nevibecode/skills/sdf.md) — skill · 10500 installs
- [urdf](https://affpapa.org/en/nevibecode/skills/urdf.md) — skill · 10500 installs
- [hatch-pet](https://affpapa.org/en/nevibecode/skills/hatch-pet.md) — skill · 3300 installs

From the same set: [unity-technologies/skills](https://affpapa.org/en/nevibecode/by/unity-technologies/skills.md) — 31 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
