Ragdoll SlingshotsAI · Claude 3.5
Game information
AI generation prompt
Core Game Loop and Mechanics
This is a physics prototype focused on demonstrating realistic ragdoll simulation. The player observes a ragdoll character standing on a platform, and can test the physics by firing rocks at it using a debug button.
Moment-to-moment gameplay:
- A ragdoll character stands on a platform
- Player clicks the "Fire Rock" button to launch a projectile
- The rock flies toward the ragdoll and impacts it
- The ragdoll reacts realistically to the impact, potentially falling or stumbling
- Player can fire multiple rocks to observe different physics interactions
What makes it engaging:
- Satisfying physics reactions and ragdoll movements
- Experimenting with different impact points and forces
- Watching the ragdoll recover or collapse in realistic ways
Starting Scope
For this initial prototype, implement:
- A single ragdoll character composed of geometric primitives
- A solid platform for the ragdoll to stand on
- Physics simulation with realistic collisions and constraints
- A debug button that fires rocks at the ragdoll
- Basic camera view showing the entire scene
NOT included in this iteration:
- Slingshot mechanics
- Multiple characters
- Game loop, scoring, or win/lose conditions
- Edit mode
- UI beyond the debug button
- Title screen or menus
Game Perspective
fixed-screen - Single screen view showing the platform and ragdoll character. The camera is positioned to show the full scene with the platform centered.
Game World and Level Design
Scene Layout:
- A single horizontal platform (3:1 aspect ratio rectangle) positioned in the lower-middle portion of the screen
- One ragdoll character standing upright on the platform
- Rocks spawn off-screen and travel toward the ragdoll when fired
Physics Environment:
- Gravity pulls objects downward
- All solid objects have collision detection (ragdoll parts, platform, rocks)
- Ragdoll joints have constraints to simulate realistic body movement
- Rocks have sufficient mass and velocity to create visible impact
Edit Mode Design
No edit mode in this prototype iteration.
Control Design
Desktop:
- Mouse click on "Fire Rock" button to launch a projectile
Mobile:
- Tap "Fire Rock" button to launch a projectile
Debug Mode:
config.debugOn(boolean) - When true, displays the "Fire Rock" button- Default: true
Art Style and Visual Theme
Minimalist Geometric Style:
- All shapes rendered using Canvas/CSS - no generated image assets needed
- Clean, solid colors with no textures
- Simple anti-aliased shapes
Ragdoll Character Composition:
- Head: Circle (medium size)
- Torso: Rounded rectangle (vertical orientation, larger than head)
- Upper arms: Thin rounded rectangles/pills (connected to shoulders)
- Lower arms: Thin rounded rectangles/pills (connected to elbows)
- Upper legs: Thin rounded rectangles/pills (connected to hips)
- Lower legs: Thin rounded rectangles/pills (connected to knees)
Color Palette:
- Ragdoll: Warm skin tone (#F4C2A0 or similar)
- Platform: Brown/tan (#8B7355)
- Rocks: Dark grey (#555555)
- Background: Light blue sky (#87CEEB)
- Button: Simple UI color (white background, dark text)
Technical Rendering:
- Use Canvas 2D API for all rendering
- Ragdoll joints should be visible as connection points
- Smooth anti-aliased edges on all shapes
- Simple shadows or outlines optional for depth
Physics Implementation Details
Ragdoll Structure:
- Use a physics engine (Matter.js from CDN) for realistic simulation
- Each body part is a rigid body with appropriate mass
- Joints connect body parts with constraints:
- Neck: Head to torso
- Shoulders: Upper arms to torso
- Elbows: Upper arms to lower arms
- Hips: Upper legs to torso
- Knees: Upper legs to lower legs
- Joint constraints should allow realistic range of motion but prevent unnatural bending
- Ragdoll starts in a standing pose with slight joint stiffness to maintain posture
Collision System:
- All body parts have collision detection enabled
- Platform is a static rigid body
- Rocks are dynamic rigid bodies
- Collision response should be realistic (bounce, friction, energy transfer)
Rock Projectile:
- Small circle (radius ~20-30 pixels)
- Spawns off-screen to the left or right
- Fires horizontally toward the ragdoll's center mass
- Sufficient velocity to create visible impact (~15-25 units/second)
- Mass appropriate for realistic physics interaction
Debug Button:
- Positioned in top-right corner of screen
- Large enough for easy touch interaction (96x96 minimum)
- Clear label: "Fire Rock"
- Each click spawns and fires one rock