A minimal top-down 2D shooter prototype.
- Unity 2022 LTS or newer
- Open the project in Unity 2022 LTS+
- Open the scene:
Assets/Scenes/BugHuntScene.unity - Press Play
The scene is fully configured and ready to play - no manual setup required.
- WASD / Arrow Keys: Move the player
- R: Restart (when game over)
Shooting is automatic: the player fires at the closest enemy in range, on a fixed interval.
Assets/
├── Scenes/
│ └── BugHuntScene.unity # Main playable scene
├── Scripts/
│ ├── Core/
│ │ ├── EventBus.cs # Static event system
│ │ └── GameManager.cs # Game state management
│ ├── Enemies/
│ │ ├── Enemy.cs # Enemy AI and health
│ │ └── EnemySpawner.cs # Enemy spawning
│ ├── Player/
│ │ ├── PlayerController.cs # Player movement
│ │ ├── Projectile.cs # Projectile behavior
│ │ └── Shooter.cs # Projectile shooting
│ ├── UI/
│ │ └── SimpleUI.cs # UI display
│ └── Utilities/
│ ├── CinemachineSetup.cs # Camera setup helper
│ ├── SpriteSetup.cs # Sprite configuration
│ └── TiledBackground.cs # Background tiling
├── Resources/
│ ├── Enemy.prefab # Enemy prefab
│ └── Projectile.prefab # Projectile prefab
└── Sprites/
└── WhiteSquare.png # Base sprite asset
- When the game gets harder, enemy hit behavior is strange
- When we play multiple times we see the log "HandleGameOver called!" printed too many times
- When playing on devices that have different performances, the player movement speed is inconsistent
- All scripts compile and the game is fully playable
- Check the Console for debug logs that may hint at issues
- Test the game multiple times, including after restarting with R