Production ready: hardening, limits, docs

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-26 20:55:29 +02:00
co-authored by Claude Opus 5.5
parent 0c26265a2c
commit bf01651ccd
5 changed files with 23 additions and 8 deletions
+1 -1
View File
@@ -11,7 +11,7 @@ namespace MSCO
public const string Help = public const string Help =
"connect <host[:port]> - join a dedicated server\n" + "connect <host[:port]> - join a dedicated server\n" +
"disconnect - leave the server / game\n" + "disconnect - leave the server / game\n" +
"host [port] / join <ip> [port] - LAN test session\n" + "host [port] / join <ip> [port] - direct LAN game (no Steam)\n" +
"save - save the game (host / singleplayer)\n" + "save - save the game (host / singleplayer)\n" +
"/admin - admin menu (kick / ban)\n" + "/admin - admin menu (kick / ban)\n" +
"vehicles | rig - debug info about vehicles / player models\n" + "vehicles | rig - debug info about vehicles / player models\n" +
+2 -2
View File
@@ -216,7 +216,7 @@ namespace MSCO
float nameX = row.x + 26; float nameX = row.x + 26;
if (s.IsLocal) if (s.IsLocal)
{ {
// Server auf diesem PC (wie bei FiveM "localhost") // Server auf diesem PC (localhost)
nameX += Pill(nameX, row, "LOCAL", pillStyle); nameX += Pill(nameX, row, "LOCAL", pillStyle);
} }
if (!string.IsNullOrEmpty(s.Version) && s.Version != MSCO.ModVersion) if (!string.IsNullOrEmpty(s.Version) && s.Version != MSCO.ModVersion)
@@ -283,7 +283,7 @@ namespace MSCO
} }
} }
/// <summary>Server-Profil wie bei FiveM: wem der Server gehört, Version, Spieler, Laufzeit ...</summary> /// <summary>Server-Profil: wem der Server gehört, Version, Spieler, Laufzeit ...</summary>
void DrawServerProfile(MultiplayerManager mp, ServerListEntry s) void DrawServerProfile(MultiplayerManager mp, ServerListEntry s)
{ {
if (GUILayout.Button("◂ BACK", tabStyle, GUILayout.Height(26), GUILayout.Width(90))) if (GUILayout.Button("◂ BACK", tabStyle, GUILayout.Height(26), GUILayout.Width(90)))
+3 -3
View File
@@ -8,7 +8,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MSCO")] [assembly: AssemblyTitle("MSCO")]
[assembly: AssemblyDescription("MSCLoader Mod file")] [assembly: AssemblyDescription("MSCLoader Mod file")]
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("MBM")]
[assembly: AssemblyProduct("MSCO")] [assembly: AssemblyProduct("MSCO")]
[assembly: AssemblyCopyright("Copyright © 2026 by MBM")] [assembly: AssemblyCopyright("Copyright © 2026 by MBM")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers // You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below: // by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyVersion("2.6.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyFileVersion("2.6.0.0")]
+16 -1
View File
@@ -10,7 +10,7 @@ Multiplayer-Mod für **My Summer Car** (MSCLoader). Spiel mit bis zu 3 Spielern
## Features ## Features
**Verbinden** **Verbinden**
- Launcher im Hauptmenü im Stil von FiveM: P2P-Seite und Server-Browser - Launcher im Hauptmenü: P2P-Seite und Server-Browser
- **P2P über Steam:** HOST GAME, Freunde einladen, Beitritt über die Steam-Freundesliste (max. 3 Spieler) - **P2P über Steam:** HOST GAME, Freunde einladen, Beitritt über die Steam-Freundesliste (max. 3 Spieler)
- **Server-Browser:** Suche, Filter (Steam / Non-Steam / volle ausblenden), Ping, Server-Profil - **Server-Browser:** Suche, Filter (Steam / Non-Steam / volle ausblenden), Ping, Server-Profil
(Besitzer, Version, Laufzeit, Spieler), lokale Server auf diesem PC werden automatisch gefunden (Besitzer, Version, Laufzeit, Spieler), lokale Server auf diesem PC werden automatisch gefunden
@@ -43,6 +43,21 @@ Multiplayer-Mod für **My Summer Car** (MSCLoader). Spiel mit bis zu 3 Spielern
Mods-Ordner kopieren (Standard: `Documents\MySummerCar\Mods`). Mods-Ordner kopieren (Standard: `Documents\MySummerCar\Mods`).
3. Spiel **über Steam** starten – ohne Steam gehen nur Non-Steam-Server. 3. Spiel **über Steam** starten – ohne Steam gehen nur Non-Steam-Server.
### Einen eigenen Server betreiben
Siehe [MSCO-Dedicated-Server](https://git.mbm.wtf/MrMaho/MSCO-Dedicated-Server) – Lizenzschlüssel gibt es kostenlos
unter https://msco.mbm.wtf/keys.
## Probleme?
| Problem | Lösung |
|---|---|
| Server fehlt im Browser | REFRESH drücken; Filter (STEAM / NON-STEAM) prüfen; der Server muss von außen erreichbar sein |
| „This server requires Steam“ | Spiel über Steam starten |
| Warnung „Version mismatch“ | Mod und Server auf dieselbe Version bringen (Releases) |
| Eigener Spielstand weg | Wird nach dem Verlassen automatisch wiederhergestellt; Sicherung liegt in `AppData\LocalLow\Amistech\My Summer Car\MSCO_Backup` |
| Absturz / Hänger beim Beitreten | `output_log.txt` im Spielordner an den Server-Betreiber bzw. als Issue schicken |
## Befehle ## Befehle
In der F8-Konsole direkt, in der MSCLoader-Konsole mit `mp` davor (z.B. `mp connect ...`): In der F8-Konsole direkt, in der MSCLoader-Konsole mit `mp` davor (z.B. `mp connect ...`):
+1 -1
View File
@@ -41,7 +41,7 @@ namespace MSCO
const string PrefMasterUrl = "MSCO_MasterUrl"; const string PrefMasterUrl = "MSCO_MasterUrl";
const int QueryTimeoutMs = 3000; const int QueryTimeoutMs = 3000;
// Wie bei FiveM: ein Server auf diesem PC erscheint automatisch oben in der Liste // Ein Server auf diesem PC erscheint automatisch oben in der Liste
static readonly int[] LocalPorts = { 7777, 7778, 7779, 7780 }; static readonly int[] LocalPorts = { 7777, 7778, 7779, 7780 };
public const float AutoRefreshSeconds = 15f; public const float AutoRefreshSeconds = 15f;