2d-games
npx machina-cli add skill vudovn/antigravity-kit/2d-games --openclaw2D Game Development
Principles for 2D game systems.
1. Sprite Systems
Sprite Organization
| Component | Purpose |
|---|---|
| Atlas | Combine textures, reduce draw calls |
| Animation | Frame sequences |
| Pivot | Rotation/scale origin |
| Layering | Z-order control |
Animation Principles
- Frame rate: 8-24 FPS typical
- Squash and stretch for impact
- Anticipation before action
- Follow-through after action
2. Tilemap Design
Tile Considerations
| Factor | Recommendation |
|---|---|
| Size | 16x16, 32x32, 64x64 |
| Auto-tiling | Use for terrain |
| Collision | Simplified shapes |
Layers
| Layer | Content |
|---|---|
| Background | Non-interactive scenery |
| Terrain | Walkable ground |
| Props | Interactive objects |
| Foreground | Parallax overlay |
3. 2D Physics
Collision Shapes
| Shape | Use Case |
|---|---|
| Box | Rectangular objects |
| Circle | Balls, rounded |
| Capsule | Characters |
| Polygon | Complex shapes |
Physics Considerations
- Pixel-perfect vs physics-based
- Fixed timestep for consistency
- Layers for filtering
4. Camera Systems
Camera Types
| Type | Use |
|---|---|
| Follow | Track player |
| Look-ahead | Anticipate movement |
| Multi-target | Two-player |
| Room-based | Metroidvania |
Screen Shake
- Short duration (50-200ms)
- Diminishing intensity
- Use sparingly
5. Genre Patterns
Platformer
- Coyote time (leniency after edge)
- Jump buffering
- Variable jump height
Top-down
- 8-directional or free movement
- Aim-based or auto-aim
- Consider rotation or not
6. Anti-Patterns
| ❌ Don't | ✅ Do |
|---|---|
| Separate textures | Use atlases |
| Complex collision shapes | Simplified collision |
| Jittery camera | Smooth following |
| Pixel-perfect on physics | Choose one approach |
Remember: 2D is about clarity. Every pixel should communicate.
Source
git clone https://github.com/vudovn/antigravity-kit/blob/main/.agent/skills/game-development/2d-games/SKILL.mdView on GitHub Overview
2D Game Development lays out practical guidelines for building 2D games, from visuals to physics and camera behavior. It covers sprite systems (atlas, animation, pivots, layering), tilemap design, physics shapes, and camera setups. Following these principles helps you create clear, performant experiences across genres.
How This Skill Works
Sprites are organized into atlases with animation sequences and pivot points to optimize draw calls and ensure correct transforms. Tilemaps define layer roles (Background, Terrain, Props, Foreground) and use appropriate collision shapes for reliable gameplay. Cameras provide follow, look-ahead, or room-based behaviors, with fixed timesteps and careful layer filtering to maintain smooth visuals.
When to Use It
- Start a new 2D game project needing solid visuals and gameplay systems
- Design a platformer requiring precise movement, coyote time, and jump buffering
- Build a top-down game with 8-directional movement and aiming
- Create levels with layered backgrounds and parallax effects
- Optimize rendering by using sprite atlases and simplified collision shapes
Quick Start
- Step 1: Configure a sprite atlas, define animations, and set pivot points for correct transforms
- Step 2: Design tilemap layers (Background, Terrain, Props, Foreground) and assign simple collision shapes
- Step 3: Implement camera types (Follow and Look-ahead) and enforce a fixed physics timestep for consistency
Best Practices
- Use texture atlases to minimize draw calls
- Keep animation frame rate in the 8-24 FPS range and apply squash/stretch for impact
- Choose simple collision shapes (box, circle, capsule) and reserve polygons for complex cases
- Use a fixed timestep to ensure physics stability and determinism
- Match camera style to gameplay and avoid jitter; implement smooth following and, when needed, look-ahead
Example Use Cases
- Atlas-based sprites reduce draw calls in a platformer
- Auto-tiling enhances terrain variety in tilemaps
- Room-based camera supports metroidvania-style level transitions
- Follow camera with look-ahead improves action readability
- Coyote time and jump buffering improve platformer feel