Lanes for stages. #35

Closed
opened 2026-08-21 13:18:01 +00:00 by dutchie031 · 1 comment
Owner

To make missions even more dynamic it would be great to have the support for "lanes".

General Idea

Lanes are where MissionStage are grouped together.
So you can have multiple "threads" inside of your mission.

lanes.excalidraw.png

Current flows and ideas

  • A stage is started when it meets the requirements.
    • All existing previous stages in it's lane need to be completed.
      In example: A4 requires A1, A2 to be completed. A3 does not exist and is therefore deemed "completed".
    • GlobalStage primary lane needs to be at or above it's own stage number
      In example: A4 requires STAGE 3 to be completed.

This enables the ME to create:

  • Multiple independent lanes
  • Multi-verse style
  • Merging into the "primary" lane when all need to come together.

Current Blocker/Issue

CAP only will look at the "global" stage, at the moment.
The naming convention for the CAP units does not easily support lanes.

It could, but the naming conventions easily get confusing and insanely long.

  • OnCompletion handling for lanes
  • StageLane Mermaid diagram creation for easier visualisation
  • OnStageNumberChanged implementation
    • Pre-activation on correct stage and stagelane
    • Activation on correct stage and stagelane
  • wired into persistence
  • Correctly wire for "pre-activation"
To make missions even more dynamic it would be great to have the support for "lanes". ## General Idea Lanes are where `MissionStage` are grouped together. So you can have multiple "threads" inside of your mission. ![lanes.excalidraw.png](/attachments/f24707bf-42e0-4777-aa16-0b3303bd19bc) ## Current flows and ideas - A stage is started when it meets the requirements. - All existing previous stages in it's lane need to be completed. In example: A4 requires A1, A2 to be completed. A3 does not exist and is therefore deemed "completed". - GlobalStage `primary lane` needs to be at or above it's own stage number In example: A4 requires `STAGE 3` to be completed. ## This enables the ME to create: - Multiple independent lanes - Multi-verse style - Merging into the "primary" lane when all need to come together. ## Current Blocker/Issue CAP only will look at the "global" stage, at the moment. The naming convention for the CAP units does not easily support lanes. It could, but the naming conventions easily get confusing and insanely long. - [x] OnCompletion handling for lanes - [x] StageLane Mermaid diagram creation for easier visualisation - [ ] OnStageNumberChanged implementation - [ ] Pre-activation on correct stage and stagelane - [ ] Activation on correct stage and stagelane - [ ] wired into persistence - [ ] Correctly wire for "pre-activation"
dutchie031 added the Kind/Feature
Status
ToBeRefined
5
Priority
Medium
3
labels 2026-08-21 13:18:01 +00:00
Author
Owner

Although CAP compatibility is not figured out.

I've started on this anyway.
It would still be worth while and it will have the options to kinda have branches.

CAP integration will be a seperate issue.

  • create issue for cap integration
Although CAP compatibility is not figured out. I've started on this anyway. It would still be worth while and it will have the options to kinda have branches. CAP integration will be a seperate issue. - [ ] create issue for cap integration
dutchie031 self-assigned this 2026-08-22 14:52:58 +00:00
dutchie031 added reference feature/lanes 2026-08-22 14:53:04 +00:00
dutchie031 referenced this issue from a commit 2026-09-07 17:08:28 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Spearhead/spearhead#35