[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M78CF1P0G2MV451PRDTHDCCD":3,"skill-same:01M78CF1P0G2MV451PRDTHDCCD":48},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":27,"commitSha":28,"skillDirectory":29,"forksCount":14,"repositoryHtmlUrl":30,"repositoryHomepageUrl":31,"ownerHtmlUrl":32,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":33,"install":34,"resources":47},"01M78CF1P0G2MV451PRDTHDCCD","2d-games",null,"2D game development principles. Sprites, tilemaps, physics, camera.","princepatel04477-web\u002Ftrivoxa-group","princepatel04477-web","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F227740714?v=4","01M788ZAJ2KECD5KXVP55PZXKS","Prince Patel","01M788ZAJTCN8YSD737MRSKC5Q",0,"MIT","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fgame-development\u002F2d-games\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: 2d-games\ndescription: \"2D game development principles. Sprites, tilemaps, physics, camera.\"\nrisk: none\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# 2D Game Development\n\n> Principles for 2D game systems.\n\n---\n\n## 1. Sprite Systems\n\n### Sprite Organization\n\n| Component | Purpose |\n|-----------|---------|\n| **Atlas** | Combine textures, reduce draw calls |\n| **Animation** | Frame sequences |\n| **Pivot** | Rotation\u002Fscale origin |\n| **Layering** | Z-order control |\n\n### Animation Principles\n\n- Frame rate: 8-24 FPS typical\n- Squash and stretch for impact\n- Anticipation before action\n- Follow-through after action\n\n---\n\n## 2. Tilemap Design\n\n### Tile Considerations\n\n| Factor | Recommendation |\n|--------|----------------|\n| **Size** | 16x16, 32x32, 64x64 |\n| **Auto-tiling** | Use for terrain |\n| **Collision** | Simplified shapes |\n\n### Layers\n\n| Layer | Content |\n|-------|---------|\n| Background | Non-interactive scenery |\n| Terrain | Walkable ground |\n| Props | Interactive objects |\n| Foreground | Parallax overlay |\n\n---\n\n## 3. 2D Physics\n\n### Collision Shapes\n\n| Shape | Use Case |\n|-------|----------|\n| Box | Rectangular objects |\n| Circle | Balls, rounded |\n| Capsule | Characters |\n| Polygon | Complex shapes |\n\n### Physics Considerations\n\n- Pixel-perfect vs physics-based\n- Fixed timestep for consistency\n- Layers for filtering\n\n---\n\n## 4. Camera Systems\n\n### Camera Types\n\n| Type | Use |\n|------|-----|\n| **Follow** | Track player |\n| **Look-ahead** | Anticipate movement |\n| **Multi-target** | Two-player |\n| **Room-based** | Metroidvania |\n\n### Screen Shake\n\n- Short duration (50-200ms)\n- Diminishing intensity\n- Use sparingly\n\n---\n\n## 5. Genre Patterns\n\n### Platformer\n\n- Coyote time (leniency after edge)\n- Jump buffering\n- Variable jump height\n\n### Top-down\n\n- 8-directional or free movement\n- Aim-based or auto-aim\n- Consider rotation or not\n\n---\n\n## 6. Anti-Patterns\n\n| ❌ Don't | ✅ Do |\n|----------|-------|\n| Separate textures | Use atlases |\n| Complex collision shapes | Simplified collision |\n| Jittery camera | Smooth following |\n| Pixel-perfect on physics | Choose one approach |\n\n---\n\n> **Remember:** 2D is about clarity. Every pixel should communicate.\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","# 2D Game Development\n\n> Principles for 2D game systems.\n\n---\n\n## 1. Sprite Systems\n\n### Sprite Organization\n\n| Component | Purpose |\n|-----------|---------|\n| **Atlas** | Combine textures, reduce draw calls |\n| **Animation** | Frame sequences |\n| **Pivot** | Rotation\u002Fscale origin |\n| **Layering** | Z-order control |\n\n### Animation Principles\n\n- Frame rate: 8-24 FPS typical\n- Squash and stretch for impact\n- Anticipation before action\n- Follow-through after action\n\n---\n\n## 2. Tilemap Design\n\n### Tile Considerations\n\n| Factor | Recommendation |\n|--------|----------------|\n| **Size** | 16x16, 32x32, 64x64 |\n| **Auto-tiling** | Use for terrain |\n| **Collision** | Simplified shapes |\n\n### Layers\n\n| Layer | Content |\n|-------|---------|\n| Background | Non-interactive scenery |\n| Terrain | Walkable ground |\n| Props | Interactive objects |\n| Foreground | Parallax overlay |\n\n---\n\n## 3. 2D Physics\n\n### Collision Shapes\n\n| Shape | Use Case |\n|-------|----------|\n| Box | Rectangular objects |\n| Circle | Balls, rounded |\n| Capsule | Characters |\n| Polygon | Complex shapes |\n\n### Physics Considerations\n\n- Pixel-perfect vs physics-based\n- Fixed timestep for consistency\n- Layers for filtering\n\n---\n\n## 4. Camera Systems\n\n### Camera Types\n\n| Type | Use |\n|------|-----|\n| **Follow** | Track player |\n| **Look-ahead** | Anticipate movement |\n| **Multi-target** | Two-player |\n| **Room-based** | Metroidvania |\n\n### Screen Shake\n\n- Short duration (50-200ms)\n- Diminishing intensity\n- Use sparingly\n\n---\n\n## 5. Genre Patterns\n\n### Platformer\n\n- Coyote time (leniency after edge)\n- Jump buffering\n- Variable jump height\n\n### Top-down\n\n- 8-directional or free movement\n- Aim-based or auto-aim\n- Consider rotation or not\n\n---\n\n## 6. Anti-Patterns\n\n| ❌ Don't | ✅ Do |\n|----------|-------|\n| Separate textures | Use atlases |\n| Complex collision shapes | Simplified collision |\n| Jittery camera | Smooth following |\n| Pixel-perfect on physics | Choose one approach |\n\n---\n\n> **Remember:** 2D is about clarity. Every pixel should communicate.\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n",{"name":5,"risk":24,"source":25,"date_added":26,"description":7},"none","community","2026-02-27","master","877653a671c51fae6476bd9f0d34ee6c408d68b9",".github\u002Fskills\u002Fgame-development\u002F2d-games","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group","https:\u002F\u002Ftrivoxa-group.vercel.app","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web","2026-08-01 17:29:31",{"source":8,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add princepatel04477-web\u002Ftrivoxa-group --skill 2d-games",{"tool":40,"command":41},"bunx","bunx skills add princepatel04477-web\u002Ftrivoxa-group --skill 2d-games",{"tool":43,"command":44},"pnpm","pnpm dlx skills add princepatel04477-web\u002Ftrivoxa-group --skill 2d-games","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fgame-development\u002F2d-games\u002FSKILL.md",true,[],[49,56,63,70,77,84],{"skillNo":50,"name":51,"nameZh":6,"description":52,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":53,"categories":54,"keywords":55,"publishedAt":19},"01M78G4Z5RFJ72G536XYPC77PG","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fzustand-store-ts\u002FSKILL.md",[],[],{"skillNo":57,"name":58,"nameZh":6,"description":59,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":60,"categories":61,"keywords":62,"publishedAt":19},"01M78G4WQMHRST36KDP7AV3NR3","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fzoom-automation\u002FSKILL.md",[],[],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":19},"01M78G4T37F4SPS7M4KT0A8JJB","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fzoho-crm-automation\u002FSKILL.md",[],[],{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":76,"publishedAt":19},"01M78G4QAJMF71KD1G38MNDQYK","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fzod-validation-expert\u002FSKILL.md",[],[],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":19},"01M78G4MS3WE96MH5P561KFY95","zipai-optimizer","Adaptive token optimizer: intelligent filtering, surgical output, ambiguity-first, context-window-aware, VCS-aware, MCP-aware.","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fzipai-optimizer\u002FSKILL.md",[],[],{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":19},"01M78G4GZ0T47C6929V9CVH1AK","zeroize-audit","Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C\u002FC++\u002FRust code handling secrets, keys, passwords, or other sensitive data.","https:\u002F\u002Fgithub.com\u002Fprincepatel04477-web\u002Ftrivoxa-group\u002Fblob\u002Fmaster\u002F.github\u002Fskills\u002Fzeroize-audit\u002FSKILL.md",[],[]]