What problem does it solve? Choosing the wrong design pattern in Unity leads to over-engineered code, hidden coupling, and hard-to-debug systems. This Skill helps you decide whether a pattern like ScriptableObject, an event bus, a state machine, or object pooling is actually justified for your problem. ## Core Features & Use Cases - Pattern Selection Guidance: Covers ScriptableObject, C# events/delegates, global event buses, interfaces, state machines, object pools, service layers, and generics/attributes, each with explicit use and avoid criteria. - Decision Lab Comparisons: Compares 2-3 plausible implementations side by side on switch cost, query cost, code complexity, and failure modes, with a worked example of pausing AI on 100 enemies. - Structured Recommendations: Outputs recommended patterns, why they fit, why simpler alternatives fall short, minimal implementation boundaries, and known tradeoffs. - Use Case: When building a cutscene system that must freeze 100 enemies, use this Skill to weigh a field flag, disabling MonoBehaviours, or a managed subset list before committing to an approach. ## Quick Start Ask the agent which Unity design pattern fits your problem, for example whether you should use a state machine or an event bus for your current system.