Skip to content

Add Explosive Joust multiplayer game mode#425

Open
Shombith03 wants to merge 3 commits into
developmentfrom
claude/explosive-joust-scripts-xLazv
Open

Add Explosive Joust multiplayer game mode#425
Shombith03 wants to merge 3 commits into
developmentfrom
claude/explosive-joust-scripts-xLazv

Conversation

@Shombith03

Copy link
Copy Markdown
Contributor

Summary

This PR introduces a new multiplayer arcade game mode called "Explosive Joust" where players collide with crystals to create explosions and score points by catching opponents in the blast radius.

Key Changes

  • New Game Mode: Added MultiplayerExplosiveJoust (mode 36) to the GameModes enum
  • Impact Effect System: Created VesselExplosiveJoustByExplosionEffectSO to handle explosion collision logic between vessels
    • Validates that collisions occur between different domains (prevents same-team hits)
    • Prevents self-hits from the explosion creator
    • Posts joust score to the attacker (vessel that created the explosion)
    • Raises event for UI feedback on explosive joust collisions
  • Game Configuration: Updated ArcadeGameExplosiveJoust asset with:
    • New game mode ID (36)
    • Updated display name and description
    • New scene reference (MinigameExplosiveJoust)
    • New call-to-action target type (432)
  • Explosion System: Refactored AOEExplosion prefab to use ExplosionImpactorDataContainer for effect management
  • Scene Setup: Added new MinigameExplosiveJoust scene to build settings
  • Call-to-Action: Added PlayGameMultiplayerExplosiveJoust (432) to CallToActionTargetType enum

Implementation Details

The explosive joust mechanic works by:

  1. Detecting when a vessel is hit by an explosion created by another vessel
  2. Validating cross-domain collision (different teams/players)
  3. Crediting the score to the explosion creator rather than the impacting vessel
  4. Using a data container pattern for explosion effects to support different game mode configurations

https://claude.ai/code/session_015mmNeN2a7N3U7d735NyRYG

claude and others added 3 commits March 18, 2026 20:42
- Create VesselExplosiveJoustByExplosionEffectSO: scores a joust when
  a Manta's crystal explosion catches an enemy vessel
- Add MultiplayerExplosiveJoust (36) to GameModes enum
- Add PlayGameMultiplayerExplosiveJoust (432) to CallToActionTargetType
- Create ExplosiveJoustExplosionImpactorDataContainer SO with the new effect
- Update ArcadeGameExplosiveJoust SO: correct Mode, DisplayName, SceneName, CTA
- Wire AOEExplosion prefab's explosionImpactorDataContainer to the new container
- Update scene JoustStatsReporter gameMode to MultiplayerExplosiveJoust
- Add MinigameExplosiveJoust scene to EditorBuildSettings

https://claude.ai/code/session_015mmNeN2a7N3U7d735NyRYG
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants