diff --git a/README.md b/README.md index 947b288..ab6a269 100644 --- a/README.md +++ b/README.md @@ -3,39 +3,58 @@ A Godot 4.6 multiplayer cooperative game supporting both local and online multiplayer with physics-based interactions. Start with arguments: + --host or --join # instantly hosts or joins a game + --room-debug # shows information above each room what types of puzzles it has, and if player entered the room or not... ## Features ### Multiplayer Support - **Host or Join**: Any player can host a game or join an existing one + - **Local Multiplayer**: Each machine can have multiple local players (up to 4) + - First local player uses keyboard controls + - Additional local players use gamepads + - **Online Multiplayer**: Players can join from different machines + - **Drop-in/Drop-out**: Players can join at any time during gameplay ### Gameplay Mechanics - **Top-Down Action RPG**: Classic top-down perspective with smooth character movement + - **Physics-Based Interactions**: + - **Lift (Tap Grab)**: Pick up objects above your head and carry them + - **Push/Pull (Hold Grab)**: Hold the grab button to push or pull objects + - **Throw**: While lifting, tap grab again to throw in movement direction + - **Arc Physics**: Thrown objects and players fly in realistic arcs with Z-axis simulation + - **Dynamic Shadows**: Shadows scale and fade based on height + - **Box Breaking**: Boxes shatter into 4 pieces when hitting players or other boxes + - **Damage System**: Players take damage and knockback from thrown boxes ### Camera System - Dynamic camera that follows all local players + - Automatically adjusts zoom based on player spread + - Smooth camera movement for comfortable gameplay ## Controls ### Player 1 (Keyboard) + - **WASD** or **Arrow Keys**: Move + - **E (Tap)**: Lift object above head - **E (Hold)**: Push/Pull object - **E (While Lifting + Moving)**: Throw object @@ -53,13 +72,18 @@ Start with arguments: ### Starting a Game 1. **Host a Game**: + - Set the number of local players (1-4) + - Click "Host Game" + - Share your IP address with friends who want to join 2. **Join a Game**: - Set the number of local players (1-4) + - Enter the host's IP address + - Click "Join Game" ### Command-Line Testing (Easy Multiplayer Testing)