@@ -107,34 +107,37 @@ private static bool IsAlreadyRunning() {
107107 private static readonly string LOGFILENAME = "Player.log";
108108
109109 public static readonly (string Name, DateTime StartDate)[] Seasons = new (string Name, DateTime StartDate)[] {
110- ("S1", new DateTime(2020, 8, 4, 0, 0, 0, DateTimeKind.Utc)), // Season 1 (Ultimate Knockout)
111- ("S2", new DateTime(2020, 10, 8, 0, 0, 0, DateTimeKind.Utc)), // Season 2 (Medieval Knockout)
112- ("S3", new DateTime(2020, 12, 15, 0, 0, 0, DateTimeKind.Utc)), // Season 3 (Winter Knockout)
113- ("S4", new DateTime(2021, 3, 22, 0, 0, 0, DateTimeKind.Utc)), // Season 4 (Fall Guys 4041)
114- ("S5", new DateTime(2021, 7, 20, 0, 0, 0, DateTimeKind.Utc)), // Season 5 (Jungle Adventure)
115- ("S6", new DateTime(2021, 11, 30, 0, 0, 0, DateTimeKind.Utc)), // Season 6 (Party Spectacular)
116- ("SS1", new DateTime(2022, 6, 21, 0, 0, 0, DateTimeKind.Utc)), // Season 1 (Free For All)
117- ("SS2", new DateTime(2022, 9, 15, 0, 0, 0, DateTimeKind.Utc)), // Season 2 (Satellite Scramble)
118- ("SS3", new DateTime(2022, 11, 22, 0, 0, 0, DateTimeKind.Utc)), // Season 3 (Sunken Secrets)
119- ("SS4", new DateTime(2023, 5, 10, 0, 0, 0, DateTimeKind.Utc)), // Season 4 (Creative Construction)
120- ("10.3", new DateTime(2023, 8, 16, 0, 0, 0, DateTimeKind.Utc)), // Summer Breeze Update
121- ("10.4", new DateTime(2023, 9, 27, 0, 0, 0, DateTimeKind.Utc)), // Fall Force Update
122- ("10.5", new DateTime(2023, 11, 7, 0, 0, 0, DateTimeKind.Utc)), // Tool Up Update
123- ("10.6", new DateTime(2023, 12, 6, 0, 0, 0, DateTimeKind.Utc)), // Power Party Update
124- ("10.7", new DateTime(2024, 1, 23, 0, 0, 0, DateTimeKind.Utc)), // Shapes and Stickers Update
125- ("10.8", new DateTime(2024, 2, 28, 0, 0, 0, DateTimeKind.Utc)), // Survival Update
126- ("10.9", new DateTime(2024, 5, 4, 0, 0, 0, DateTimeKind.Utc)), // Fall Forever Update
127- ("11.0", new DateTime(2024, 6, 11, 0, 0, 0, DateTimeKind.Utc)), // June '24 Update
128- ("11.1", new DateTime(2024, 7, 23, 0, 0, 0, DateTimeKind.Utc)), // July '24 Update
129- ("11.2", new DateTime(2024, 9, 3, 0, 0, 0, DateTimeKind.Utc)), // Scrapyard Stumble Update
130- ("11.3", new DateTime(2024, 10, 8, 0, 0, 0, DateTimeKind.Utc)), // Falloween 2024 Update
131- ("11.4", new DateTime(2024, 11, 7, 0, 0, 0, DateTimeKind.Utc)), // November '24 Update
132- ("11.5", new DateTime(2024, 12, 10, 0, 0, 0, DateTimeKind.Utc)), // Winter Update
133- ("11.6", new DateTime(2025, 2, 4, 0, 0, 0, DateTimeKind.Utc)), // Fall and Fantasy Update
134- ("18.0", new DateTime(2025, 4, 1, 0, 0, 0, DateTimeKind.Utc)), // Ranked Knockout Update
135- ("19.0", new DateTime(2025, 5, 27, 0, 0, 0, DateTimeKind.Utc)), // Yeetropolis Update
136- ("20.0", new DateTime(2025, 7, 29, 0, 0, 0, DateTimeKind.Utc)), // Tropical Tides Update
137- ("21.0", new DateTime(2025, 9, 16, 0, 0, 0, DateTimeKind.Utc)), // Slime Factory Update
110+ ("S1", new DateTime(2020, 8, 4, 0, 0, 0, DateTimeKind.Utc)), // Season 1 (Ultimate Knockout)
111+ ("S2", new DateTime(2020, 10, 8, 0, 0, 0, DateTimeKind.Utc)), // Season 2 (Medieval Knockout)
112+ ("S3", new DateTime(2020, 12, 15, 0, 0, 0, DateTimeKind.Utc)), // Season 3 (Winter Knockout)
113+ ("S4", new DateTime(2021, 3, 22, 0, 0, 0, DateTimeKind.Utc)), // Season 4 (Fall Guys 4041)
114+ ("S5", new DateTime(2021, 7, 20, 0, 0, 0, DateTimeKind.Utc)), // Season 5 (Jungle Adventure)
115+ ("S6", new DateTime(2021, 11, 30, 0, 0, 0, DateTimeKind.Utc)), // Season 6 (Party Spectacular)
116+ ("SS1", new DateTime(2022, 6, 21, 0, 0, 0, DateTimeKind.Utc)), // Season 1 (Free For All)
117+ ("SS2", new DateTime(2022, 9, 15, 0, 0, 0, DateTimeKind.Utc)), // Season 2 (Satellite Scramble)
118+ ("SS3", new DateTime(2022, 11, 22, 0, 0, 0, DateTimeKind.Utc)), // Season 3 (Sunken Secrets)
119+ ("SS4", new DateTime(2023, 5, 10, 0, 0, 0, DateTimeKind.Utc)), // Season 4 (Creative Construction)
120+ ("10.3", new DateTime(2023, 8, 16, 0, 0, 0, DateTimeKind.Utc)), // Summer Breeze Update
121+ ("10.4", new DateTime(2023, 9, 27, 0, 0, 0, DateTimeKind.Utc)), // Fall Force Update
122+ ("10.5", new DateTime(2023, 11, 7, 0, 0, 0, DateTimeKind.Utc)), // Tool Up Update
123+ ("10.6", new DateTime(2023, 12, 6, 0, 0, 0, DateTimeKind.Utc)), // Power Party Update
124+ ("10.7", new DateTime(2024, 1, 23, 0, 0, 0, DateTimeKind.Utc)), // Shapes and Stickers Update
125+ ("10.8", new DateTime(2024, 2, 28, 0, 0, 0, DateTimeKind.Utc)), // Survival Update
126+ ("10.9", new DateTime(2024, 5, 4, 0, 0, 0, DateTimeKind.Utc)), // Fall Forever Update
127+ ("11.0", new DateTime(2024, 6, 11, 0, 0, 0, DateTimeKind.Utc)), // June '24 Update
128+ ("11.1", new DateTime(2024, 7, 23, 0, 0, 0, DateTimeKind.Utc)), // July '24 Update
129+ ("11.2", new DateTime(2024, 9, 3, 0, 0, 0, DateTimeKind.Utc)), // Scrapyard Stumble Update
130+ ("11.3", new DateTime(2024, 10, 8, 0, 0, 0, DateTimeKind.Utc)), // Falloween 2024 Update
131+ ("11.4", new DateTime(2024, 11, 7, 0, 0, 0, DateTimeKind.Utc)), // November '24 Update
132+ ("11.5", new DateTime(2024, 12, 10, 0, 0, 0, DateTimeKind.Utc)), // Winter Update
133+ ("11.6", new DateTime(2025, 2, 4, 0, 0, 0, DateTimeKind.Utc)), // Fall and Fantasy Update
134+ ("18.0", new DateTime(2025, 4, 1, 0, 0, 0, DateTimeKind.Utc)), // Ranked Knockout Update
135+ ("19.0", new DateTime(2025, 5, 27, 0, 0, 0, DateTimeKind.Utc)), // Yeetropolis Update
136+ ("20.0", new DateTime(2025, 7, 29, 0, 0, 0, DateTimeKind.Utc)), // Tropical Tides Update
137+ ("21.0", new DateTime(2025, 9, 16, 0, 0, 0, DateTimeKind.Utc)), // Slime Factory Update
138+ ("21.0.1", new DateTime(2025, 11, 11, 0, 0, 0, DateTimeKind.Utc)), // Arctic Adventures Update
139+ ("21.1", new DateTime(2026, 1, 1, 0, 0, 0, DateTimeKind.Utc)), // Myths and Legends Update
140+ ("21.2", new DateTime(2026, 3, 1, 0, 0, 0, DateTimeKind.Utc)), // Fools Folly Update
138141 };
139142 private static DateTime SeasonStart, WeekStart, DayStart;
140143 private static DateTime SessionStart = DateTime.UtcNow;
@@ -301,7 +304,7 @@ private static bool IsAlreadyRunning() {
301304 private readonly object dbTaskLock = new object();
302305 public List<Task> dbTasks = new List<Task>();
303306
304- private readonly int currentDbVersion = 134 ;
307+ private readonly int currentDbVersion = 135 ;
305308
306309 public readonly string[] PublicShowIdList = {
307310 "main_show",
@@ -355,6 +358,7 @@ private static bool IsAlreadyRunning() {
355358 "knockout_mode",
356359 // "knockout_duos",
357360 // "knockout_squads",
361+ "reversed_knockout_show",
358362 "no_elimination_explore",
359363 "event_only_races_any_final_template",
360364 "event_only_fall_ball_trios_ranked",
@@ -2041,6 +2045,22 @@ private void UpdateDatabaseDateFormat() {
20412045 private void UpdateDatabaseVersion() {
20422046 for (int version = this.CurrentSettings.Version; version < currentDbVersion; version++) {
20432047 switch (version) {
2048+ case 134: {
2049+ List<RoundInfo> roundInfoList = (from ri in this.RoundDetails.FindAll()
2050+ where string.Equals(ri.ShowNameId, "reversed_knockout_show")
2051+ select ri).ToList();
2052+
2053+ Profiles profile = this.Profiles.FindOne(Query.EQ("LinkedShowId", "main_show"));
2054+ int profileId = profile?.ProfileId ?? -1;
2055+ foreach (RoundInfo ri in roundInfoList) {
2056+ if (profileId != -1) ri.Profile = profileId;
2057+ ri.IsFinal = ri.Round == 3 || string.Equals(ri.Name, "round_door_dash");
2058+ }
2059+ this.StatsDB.BeginTrans();
2060+ this.RoundDetails.Update(roundInfoList);
2061+ this.StatsDB.Commit();
2062+ break;
2063+ }
20442064 case 133: {
20452065 List<RoundInfo> roundInfoList = (from ri in this.RoundDetails.FindAll()
20462066 where string.Equals(ri.ShowNameId, "event_only_finals_v3_ranked")
@@ -6079,6 +6099,7 @@ public string GetMainGroupShowId(string showId) {
60796099 case "classic_solo_main_show":
60806100 case "ftue_uk_show":
60816101 case "knockout_mode":
6102+ case "reversed_knockout_show":
60826103 case "no_elimination_explore":
60836104 case "event_only_races_any_final_template":
60846105 case "turbo_2_show":
0 commit comments