Answers from the documentation; checking which model is on duty
Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
pc-games - Skill - OpenSmartRoute
Skillv1.0.0
pc-games
PC and console game development principles. Engine selection, platform features, optimization strategies.
Imported from sickn33/agentic-awesome-skills (skills/game-development/pc-games/SKILL.md). Install upstream with npx skills add sickn33/agentic-awesome-skills --skill pc-games. Copyright stays with the author.
PC/Console Game Development
Engine selection and platform-specific principles.
1. Engine Selection
Decision Tree
What are you building?
│
├── 2D Game
│ ├── Open source important? → Godot
│ └── Large team/assets? → Unity
│
├── 3D Game
│ ├── AAA visual quality? → Unreal
│ ├── Cross-platform priority? → Unity
│ └── Indie/open source? → Godot 4
│
└── Specific Needs
├── DOTS performance? → Unity
├── Nanite/Lumen? → Unreal
└── Lightweight? → Godot
Comparison
Factor
Unity 6
Godot 4
Unreal 5
2D
Good
Excellent
Limited
3D
Good
Good
Excellent
Learning
Medium
Easy
Hard
License
Tiered subscription/eligibility; verify current Unity terms
MIT engine; console middleware may cost extra
Royalties or seat terms depend on use; verify current EULA
Team
Any
Solo-Medium
Medium-Large
2. Platform Features
Steam Integration
Feature
Purpose
Achievements
Player goals
Cloud Saves
Cross-device progress
Leaderboards
Competition
Workshop
User mods
Rich Presence
Show in-game status
Console Requirements
Platform
Certification
PlayStation
TRC compliance
Xbox
XR compliance
Nintendo
Lotcheck
3. Controller Support
Input Abstraction
Map ACTIONS, not buttons:
- "confirm" → A (Xbox), Cross (PS), B (Nintendo)
- "cancel" → B (Xbox), Circle (PS), A (Nintendo)
Haptic Feedback
Intensity
Use
Light
UI feedback
Medium
Impacts
Heavy
Major events
4. Performance Optimization
Profiling First
Engine
Tool
Unity
Profiler Window
Godot
Debugger → Profiler
Unreal
Unreal Insights
Common Bottlenecks
Bottleneck
Solution
Draw calls
Batching, atlases
GC spikes
Object pooling
Physics
Simpler colliders
Shaders
LOD shaders
5. Engine-Specific Principles
Unity 6
DOTS for performance-critical systems
Burst compiler for hot paths
Addressables for asset streaming
Godot 4
GDScript for rapid iteration
C# for complex logic
Signals for decoupling
Unreal 5
Blueprint for designers
C++ for performance
Nanite for high-poly environments
Lumen for dynamic lighting
6. Anti-Patterns
❌ Don't
✅ Do
Choose engine by hype
Choose by project needs
Ignore platform guidelines
Study certification requirements
Hardcode input buttons
Abstract to actions
Skip profiling
Profile early and often
Remember: Engine is a tool. Master the principles, then adapt to any engine.
When to Use
Use when choosing a PC or console engine, integrating platform features, mapping controller actions, or profiling target hardware.
Limitations
Use this skill only when the task clearly matches the scope described above.
Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Verification
Treat tables as design starting points, not guarantees. Prototype the selected mechanic, test accessibility and recovery paths, and measure frame timing, memory and behavior on target hardware before claiming completion. Store submission and licensing requirements must be checked against current official platform documentation.
Installed into a catalogue, chosen by a router
Install pc-games and it becomes one more candidate the router can pick - when it fits.
A listing is a routing target with a manifest: what it does, which domains it covers, what it costs and who publishes it. Once installed it sits beside your own models and tools, is scored like any other candidate for each request, and shows up in the trace when it wins. Ratings come from workspaces that installed it, one per account.
When a provider is down or over quota the request moves on; the trace says it did.
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
# after Install: the listing is in your workspace's routing pool - a plan picks it for its slotcurl-s-X POST https://osr-api.kindrock-caaab1a2.centralindia.azurecontainerapps.io/api/v1/route -H 'Authorization: Bearer $OSR_API_KEY' -H 'Content-Type: application/json' -d '{"text": "...", "plan": true}'
Manifest
An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.