namespace NeonSprawl.Server.Game.PositionState; /// Configured player ids seeded at host start (dev player + Bruno/manual QA fixtures). public static class GamePlayerSeed { /// Distinct normalized player ids from and . public static IReadOnlyList GetSeedPlayerIds(GamePositionOptions options) { var seen = new HashSet(StringComparer.OrdinalIgnoreCase); var list = new List(); Add(options.DevPlayerId, seen, list); foreach (var id in options.FixturePlayerIds) { Add(id, seen, list); } return list; } private static void Add(string? raw, HashSet seen, List list) { var t = raw?.Trim(); if (string.IsNullOrEmpty(t) || !seen.Add(t)) { return; } list.Add(t); } }