Skip to content

Add vessel tutorial and manual control on main menu#406

Open
Shombith03 wants to merge 2 commits into
developmentfrom
claude/explore-ai-menu-vessel-RhZxw
Open

Add vessel tutorial and manual control on main menu#406
Shombith03 wants to merge 2 commits into
developmentfrom
claude/explore-ai-menu-vessel-RhZxw

Conversation

@Shombith03

Copy link
Copy Markdown
Contributor

Summary

Implements an interactive vessel tutorial and manual control system accessible from the main menu. Players can now double-tap the screen center (or press both gamepad sticks) to take manual control of the AI vessel, with a dedicated first-launch tutorial that guides them through speed control, slow-down, and prism skimming mechanics.

Key Changes

  • MainMenuVesselTutorialController: New controller that orchestrates the first-launch vessel tutorial on the main menu. Detects FTUE Phase1 initialization and walks players through:

    • Speed-up input (spreading controllers apart)
    • Slow-down input (bringing controllers together)
    • Prism skimming mechanic
    • Smooth camera transitions from menu to behind-vessel and back
    • Automatic FTUE progression to Phase2 upon completion
  • MainMenuVesselReentryController: New controller providing always-available manual vessel control on the main menu. Features:

    • Double-tap detection in screen center region (configurable)
    • Gamepad entry via both stick button press
    • Gamepad B button to exit control
    • Smooth camera panning between menu and gameplay positions
    • Persistent menu state restoration on exit
  • VesselTutorialUI: New simple overlay UI component for tutorial prompts and exit button with fade animations and canvas group management

  • SkimmerImpactor: Added OnPrismSkimmed static event to detect when a prism is skimmed, enabling tutorial step completion detection

  • ScreenSwitcher: Added HideAllUI() and ShowAllUI() public methods to manage NavBar and screen visibility during vessel interactions

  • TutorialFlowController: Updated to skip Phase1 flow when the new vessel tutorial is active, preventing duplicate tutorial execution

Implementation Details

  • Both controllers use coroutines for smooth camera transitions with configurable pan durations
  • Tutorial uses WaitForSustainedInput() helper to require held input for specified duration
  • Camera state is stored before transitions and restored when returning to menu
  • Time is explicitly unpaused during vessel control to ensure gameplay runs
  • AI pilot is disabled during manual control and re-enabled on exit
  • Tutorial completion advances FTUE progress to Phase2_GameplayTimer

https://claude.ai/code/session_01XHn6GSZ1cLEFZs3qunpPVL

claude added 2 commits March 7, 2026 18:23
Introduces a first-launch tutorial that pans the camera behind the AI vessel
and walks the player through speed-up (spread controllers), slow-down (pinch),
and prism-skim steps before returning to the app shell. Also adds an always-
available double-tap re-entry feature to take manual control of the menu vessel.

New files:
- MainMenuVesselTutorialController: FTUE tutorial orchestrator
- MainMenuVesselReentryController: double-tap vessel re-entry
- VesselTutorialUI: overlay for prompts and exit button

Modified:
- ScreenSwitcher: HideAllUI/ShowAllUI convenience methods
- TutorialFlowController: guard to skip old Phase1 when vessel tutorial active
- SkimmerImpactor: static OnPrismSkimmed event for tutorial detection

https://claude.ai/code/session_01XHn6GSZ1cLEFZs3qunpPVL
…and HOME screen guard

- Toggle ActionHandler subscription when switching between AI and player control
- Set input idle state properly on enter/exit
- Hide HUD explicitly when returning to AI control
- Only detect double-tap re-entry when on HOME screen with no modals open

https://claude.ai/code/session_01XHn6GSZ1cLEFZs3qunpPVL
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