Files
SVSimServer/SVSim.BattleNode/Sessions/BattleType.cs
gamer147 ae7ff25af0 feat(battle-node): add BattleType, BattleFinishReason, BattlePlayer
Phase 1 foundation types for the v2 broker architecture. Nothing uses
them yet; they land alongside the existing v1.2 code so subsequent
tasks can extract the participant interface and impls.
2026-06-01 19:53:31 -04:00

23 lines
858 B
C#

namespace SVSim.BattleNode.Sessions;
/// <summary>
/// Discriminator for a pending battle and the session it produces. See
/// docs/superpowers/specs/2026-06-01-battle-node-v2-architecture-design.md.
/// </summary>
public enum BattleType
{
/// <summary>Two real players. Server brokers between two WebSockets.
/// Both <c>BattlePlayer</c> slots required.</summary>
Pvp,
/// <summary>One real player; opponent runs in the client (prod's IsAINetwork
/// path; matched only in rank rotation / rank unlimited per prod). Server is
/// ack-only. <c>p2</c> must be null.</summary>
Bot,
/// <summary>One real player; server scripts the opponent (today's v1.2
/// behaviour, preserved as a solo testing harness). <c>p2</c> currently null;
/// future server-driven bot config can ride on <c>p2</c>.</summary>
Scripted,
}