Production ready: hardening, limits, docs
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -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
@@ -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)))
|
||||||
|
|||||||
@@ -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")]
|
||||||
|
|||||||
@@ -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
@@ -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;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user