creating-server-protocol — Request-Response protocol example creating-server-protocol, moorestech, community, Request-Response protocol example, ide skills, Unity game server development, Claude Code, Cursor, Windsurf

v1.0.0
GitHub

About this Skill

Perfect for Game Development Agents needing automated server protocol creation using C#, .NET Core, and Unity. creating-server-protocol is a skill for creating server protocols for Unity game development, supporting Request-Response and Event-type protocols for real-time communication.

Features

Generates protocol classes using C# and .NET Core
Supports Request-Response and Event-type protocols for real-time communication
Uses MessagePack for efficient data serialization
Creates packet response files in the `moorestech_server/Assets/Scripts/Server.Protocol/PacketResponse/` directory
Follows protocol patterns and code examples from `references/protocol-patterns.md`

# Core Topics

moorestech moorestech
[63]
[7]
Updated: 2/25/2026

Agent Capability Analysis

The creating-server-protocol skill by moorestech is an open-source community AI agent skill for Claude Code and other IDE workflows, helping agents execute tasks with better context, repeatability, and domain-specific guidance. Optimized for Request-Response protocol example, Unity game server development.

Ideal Agent Persona

Perfect for Game Development Agents needing automated server protocol creation using C#, .NET Core, and Unity.

Core Value

Empowers agents to create Request-Response and Event-type protocols for game servers, supporting efficient client-server communication using MessagePack and custom protocol classes.

Capabilities Granted for creating-server-protocol

Implementing Request-Response protocols for client-initiated actions
Designing Event-type protocols for server-side state changes
Automating factory game server setup using Unity and .NET Core

! Prerequisites & Limits

  • Requires C# and .NET Core expertise
  • Unity game engine dependency
  • Limited to Request-Response and Event-type protocols
Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

creating-server-protocol

Install creating-server-protocol, an AI agent skill for AI agent workflows and automation. Works with Claude Code, Cursor, and Windsurf with one-command...

SKILL.md
Readonly

サーバープロトコル作成ガイド

プロトコル選択

条件種類
クライアントが明示的に情報を要求/操作を実行Request-Response型
サーバー側の状態変化をクライアントに通知Event型

詳細パターンとコード例: references/protocol-patterns.md を参照。

Request-Response型の作成手順

Step 1: プロトコルクラスを作成

moorestech_server/Assets/Scripts/Server.Protocol/PacketResponse/ に新規ファイルを作成。

csharp
1using System; 2using System.Collections.Generic; 3using MessagePack; 4using Server.Protocol; 5 6namespace Server.Protocol.PacketResponse 7{ 8 public class YourProtocol : IPacketResponse 9 { 10 public const string ProtocolTag = "va:yourProtocol"; 11 12 private readonly ISomeDependency _dependency; 13 14 public YourProtocol(ServiceProvider serviceProvider) 15 { 16 _dependency = serviceProvider.GetService<ISomeDependency>(); 17 } 18 19 public ProtocolMessagePackBase GetResponse(byte[] payload) 20 { 21 var data = MessagePackSerializer.Deserialize<YourRequestMessagePack>(payload); 22 // ビジネスロジック 23 return new YourResponseMessagePack(/* result */); 24 } 25 26 #region MessagePack 27 28 [MessagePackObject] 29 public class YourRequestMessagePack : ProtocolMessagePackBase 30 { 31 // Key(0)=Tag, Key(1)=SequenceId は基底クラスで予約済み 32 [Key(2)] public int SomeField { get; set; } 33 34 [Obsolete("デシリアライズ用のコンストラクタです。基本的に使用しないでください。")] 35 public YourRequestMessagePack() { } 36 37 public YourRequestMessagePack(int someField) 38 { 39 Tag = ProtocolTag; 40 SomeField = someField; 41 } 42 } 43 44 [MessagePackObject] 45 public class YourResponseMessagePack : ProtocolMessagePackBase 46 { 47 [Key(2)] public string ResultData { get; set; } 48 49 [Obsolete("デシリアライズ用のコンストラクタです。基本的に使用しないでください。")] 50 public YourResponseMessagePack() { } 51 52 public YourResponseMessagePack(string resultData) 53 { 54 Tag = ProtocolTag; 55 ResultData = resultData; 56 } 57 } 58 59 #endregion 60 } 61}

Step 2: PacketResponseCreatorに登録

moorestech_server/Assets/Scripts/Server.Protocol/PacketResponseCreator.cs のコンストラクタに追加:

csharp
1_packetResponseDictionary.Add(YourProtocol.ProtocolTag, new YourProtocol(serviceProvider));

Step 3: テストを作成

/creating-server-tests スキルを使用してテストを作成。配置先: Tests/CombinedTest/Server/PacketTest/

Step 4: コンパイル確認

MCPツールまたはunity-test.shでコンパイルを確認。


Event型の作成手順

Step 1: イベントパケットクラスを作成

moorestech_server/Assets/Scripts/Server.Event/EventReceive/ に新規ファイルを作成。

csharp
1using System; 2using Game.Context; 3using MessagePack; 4using Server.Event; 5 6namespace Server.Event.EventReceive 7{ 8 public class YourEventPacket 9 { 10 public const string EventTag = "va:event:yourEvent"; 11 private readonly EventProtocolProvider _eventProtocolProvider; 12 13 public YourEventPacket(EventProtocolProvider eventProtocolProvider) 14 { 15 _eventProtocolProvider = eventProtocolProvider; 16 // ゲームイベントを購読(UniRx .Subscribe) 17 ServerContext.SomeEvent.OnSomething.Subscribe(OnSomething); 18 } 19 20 private void OnSomething(SomeEventData eventData) 21 { 22 var messagePack = new YourEventMessagePack(eventData.Value); 23 var payload = MessagePackSerializer.Serialize(messagePack); 24 25 // 全プレイヤー: AddBroadcastEvent / 特定プレイヤー: AddEvent(playerId, ...) 26 _eventProtocolProvider.AddBroadcastEvent(EventTag, payload); 27 } 28 29 #region MessagePack 30 31 [MessagePackObject] 32 public class YourEventMessagePack 33 { 34 // EventのMessagePackはProtocolMessagePackBaseを継承しない。Key(0)から開始 35 [Key(0)] public string Value { get; set; } 36 37 [Obsolete("デシリアライズ用のコンストラクタです。基本的に使用しないでください。")] 38 public YourEventMessagePack() { } 39 40 public YourEventMessagePack(string value) 41 { 42 Value = value; 43 } 44 } 45 46 #endregion 47 } 48}

Step 2: イベントパケットを初期化

イベントを発火する責任を持つシステムのコンストラクタでインスタンス化し、フィールドに保持する(GC防止)。

例: ブロック配置イベント → BlockUpdateSystemで初期化、レールノード作成イベント → RailGraphDatastore関連で初期化。

Step 3: テストを作成

/creating-server-tests スキルを使用。配置先: Tests/CombinedTest/Server/PacketTest/Event/

Step 4: コンパイル確認

MCPツールまたはunity-test.shでコンパイルを確認。


注意事項

  • タグの一意性を必ず確認する(既存タグと重複しないこと)
  • MessagePackのKey番号: Request/ResponseはKey(2)から、EventデータはKey(0)から
  • [Obsolete]付き引数なしコンストラクタは省略不可
  • イベント購読はUniRxの.Subscribe()を使用(/csharp-event-pattern参照)
  • コードのコメントは日本語・英語の2行セット

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is creating-server-protocol?

Perfect for Game Development Agents needing automated server protocol creation using C#, .NET Core, and Unity. creating-server-protocol is a skill for creating server protocols for Unity game development, supporting Request-Response and Event-type protocols for real-time communication.

How do I install creating-server-protocol?

Run the command: npx killer-skills add moorestech/moorestech. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for creating-server-protocol?

Key use cases include: Implementing Request-Response protocols for client-initiated actions, Designing Event-type protocols for server-side state changes, Automating factory game server setup using Unity and .NET Core.

Which IDEs are compatible with creating-server-protocol?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for creating-server-protocol?

Requires C# and .NET Core expertise. Unity game engine dependency. Limited to Request-Response and Event-type protocols.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add moorestech/moorestech. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use creating-server-protocol immediately in the current project.

Related Skills

Looking for an alternative to creating-server-protocol or another community skill for your workflow? Explore these related open-source skills.

View All

widget-generator

Logo of f
f

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

149.6k
0
AI

flags

Logo of vercel
vercel

flags is a Next.js feature management skill that enables developers to efficiently add or modify framework feature flags, streamlining React application development.

138.4k
0
Browser

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI