From ea062378468154beea662d4a02e194a1df3a6618 Mon Sep 17 00:00:00 2001 From: MrEgosar Date: Thu, 29 Oct 2026 21:39:05 +0100 Subject: [PATCH] Name: Maxlan statt MaxLAN auf der Webseite und in den Servernamen --- .env.example | 2 +- README.md | 8 ++++---- client/index.html | 2 +- client/src/App.jsx | 4 ++-- client/src/pages/StreamOverviewPage.jsx | 4 ++-- client/src/pages/StreamPage.jsx | 4 ++-- client/src/styles.css | 2 +- docs/Spieler-Anleitung.pdf | Bin 4730638 -> 4730422 bytes server/src/config.js | 2 +- server/src/servers/dockerAdapter.js | 2 +- 10 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.env.example b/.env.example index d02de84..8ecda7f 100644 --- a/.env.example +++ b/.env.example @@ -65,7 +65,7 @@ KNIFE_MAP=de_mirage KNIFE_WARMUP_SECONDS=90 KNIFE_MAX_SERVERS=4 # Anfang des Servernamens im Serverbrowser, danach folgen die Teamnamen -CS2_SERVERNAME_PREFIX=MaxLAN +CS2_SERVERNAME_PREFIX=Maxlan DOCKER_BIN=docker # --- Static-Pool-Adapter (SERVER_ADAPTER=static) --- diff --git a/README.md b/README.md index 6d525d3..b521e68 100644 --- a/README.md +++ b/README.md @@ -194,7 +194,7 @@ Die Wahl wird als `mp_teamname_1` (Team mit CT-Start) und `mp_teamname_2` (T-Sta - **Map-Bilder** liegen lokal unter `client/public/maps/.webp` (960 px breit, je ca. 50–90 KB). `"image"` in `map-pools.json` verweist darauf. Neue oder fehlende Bilder lädt `npm run images` von [ghostcap-gaming/cs2-map-images](https://github.com/ghostcap-gaming/cs2-map-images), verkleinert sie und trägt den Pfad ein (`npm run images -- --force` lädt alle neu). Die Bilder stammen aus dem Spiel; die Rechte liegen bei Valve. Ohne Bild zeigt die Kachel ein Muster in der Map-Farbe. - **Seiten-Embleme** für CT und T liegen unter `client/public/sides/ct.png` und `client/public/sides/t.png` (quadratisch, z. B. 256×256). Fehlt eine Datei, erscheint ein schlichtes Ersatzsymbol. -- **Logo und Farben:** Das MaxLAN-e.V.-Logo liegt freigestellt unter `client/public/brand/maxlan-logo.webp`. Die Farben stehen als Variablen am Anfang von `client/src/styles.css`: Logo-Blau `#344A99` für Team A und Hauptbuttons, Logo-Rot `#A72A1C` für Team B und den Abschluss der Kopfzeile, jeweils aufgehellt für die Lesbarkeit. +- **Logo und Farben:** Das Maxlan-e.V.-Logo liegt freigestellt unter `client/public/brand/maxlan-logo.webp`. Die Farben stehen als Variablen am Anfang von `client/src/styles.css`: Logo-Blau `#344A99` für Team A und Hauptbuttons, Logo-Rot `#A72A1C` für Team B und den Abschluss der Kopfzeile, jeweils aufgehellt für die Lesbarkeit. - Bestehende Matches behalten die Map-Liste, mit der sie erstellt wurden. Neue Bilder erscheinen in neu erstellten Matches. > Die mitgelieferten Map-Pools entsprechen dem Stand der Entwicklung. Valve ändert den aktiven Map-Pool regelmäßig. Map-IDs bitte gegen die eigene Serverinstallation prüfen. Eine Map, die nicht existiert, führt zu „Konfiguration fehlgeschlagen“ mit Meldung. @@ -274,7 +274,7 @@ Jeder Host braucht eigene Spieldateien (rund 60 bis 90 GB). Die Ports müssen au Im Admin-Bereich (Reiter „Matches“) startet „Messer-Server starten“ einen Gameserver, der keinem Match gehört und dauerhaft läuft. Teams verbinden sich, spielen eine Messerrunde und gehen wieder. - Modus wählbar: **Competitive 5v5** (12 Plätze, Maps aus dem Competitive-Pool) oder **Wingman 2v2** (6 Plätze, Maps aus dem Wingman-Pool). -- Offen, ohne Passwort, sichtbar im LAN-Reiter von Steam (`MaxLAN | Messer 1 5v5 (Seitenwahl)`) und auf der Startseite mit „Verbinden“. +- Offen, ohne Passwort, sichtbar im LAN-Reiter von Steam (`Maxlan | Messer 1 5v5 (Seitenwahl)`) und auf der Startseite mit „Verbinden“. - Nur Messer, kein Geld, eine Runde. Vorher läuft eine Aufwärmphase zum Verbinden (`KNIFE_WARMUP_SECONDS`, Standard 90). Nach der Runde startet das Spiel von selbst neu (`mp_match_end_restart`). Wird der Server leer, setzt die App ihn zusätzlich zurück. - Fällt ein Messer-Server aus, startet die App ihn neu, höchstens fünfmal in Folge. Danach steht er auf „ausgefallen“ und lässt sich im Admin-Bereich neu starten. - Knöpfe pro Server: „Runde starten“ (Aufwärmphase sofort beenden), „Zurücksetzen“, „Neu starten“ (neuer Container), „Entfernen“. @@ -288,7 +288,7 @@ Der LAN-Reiter des Steam-Serverbrowsers (Steam → Ansicht → Spielserver → L - Pro Host lassen sich die LAN-Ports in `CS2_DOCKER_HOSTS` mit `"lanPorts":"27016-27019"` einschränken, wenn dort schon etwas anderes auf einem dieser Ports läuft. `"lanPorts":""` schaltet es für einen Host ab. Im Admin-Bereich steht das in der Spalte „LAN-Ports (Steam)“. - Ist ein Port trotzdem belegt, versucht der Start automatisch die nächsten freien Ports. - Server auf LAN-Ports laufen im Netz des Hosts (`--network host`), weil die Port-Weiterleitung von Docker die Suchanfragen (Broadcasts) des Serverbrowsers nicht weitergibt. Die Firewall des Hosts muss die Ports deshalb selbst erlauben. -- Der Servername im Browser ist `MaxLAN | Team A vs. Team B`. Den Anfang ändert `CS2_SERVERNAME_PREFIX`. +- Der Servername im Browser ist `Maxlan | Team A vs. Team B`. Den Anfang ändert `CS2_SERVERNAME_PREFIX`. - Die Server sind mit Passwort geschützt und zeigen ein Schloss. Ohne `CS2_GSLT` laufen sie mit `sv_lan 1` und erscheinen nicht im Internet-Reiter. ### Option B: Vorhandene Server (`SERVER_ADAPTER=static`) @@ -499,7 +499,7 @@ Alle Variablen mit Standardwerten stehen in [`.env.example`](.env.example). Die | `CS2_PORT_RANGE_START`, `CS2_PORT_RANGE_END` | `27015`, `27115` | Bereich der Spielports; CSTV liegt jeweils `CS2_TV_PORT_OFFSET` darüber | | `CS2_LAN_PORTS` | `27015-27020` | Spielports für den LAN-Reiter von Steam, werden zuerst vergeben; leer = aus | | `CS2_TV_PORT_OFFSET` | `100` | Abstand CSTV-Port zum Spielport (27015 → 27115) | -| `CS2_SERVERNAME_PREFIX` | `MaxLAN` | Anfang des Servernamens im Serverbrowser | +| `CS2_SERVERNAME_PREFIX` | `Maxlan` | Anfang des Servernamens im Serverbrowser | | `CS2_START_TIMEOUT_MINUTES` | `20` | Startzeit eines Servers inklusive Download der Spieldateien | | `KNIFE_MAP` | `de_mirage` | Standard-Map für Messer-Server | | `KNIFE_WARMUP_SECONDS` | `90` | Zeit zum Verbinden, bevor die Messerrunde beginnt | diff --git a/client/index.html b/client/index.html index c0bd84c..7534055 100644 --- a/client/index.html +++ b/client/index.html @@ -4,7 +4,7 @@ - CS2 Mapveto – MaxLAN e.V. + CS2 Mapveto – Maxlan e.V. diff --git a/client/src/App.jsx b/client/src/App.jsx index 0247fea..e5ea837 100644 --- a/client/src/App.jsx +++ b/client/src/App.jsx @@ -32,8 +32,8 @@ function MainLayout() { return (
- - MaxLAN e.V. + + Maxlan e.V. CS2 Mapveto {config?.server.simulated && ( diff --git a/client/src/pages/StreamOverviewPage.jsx b/client/src/pages/StreamOverviewPage.jsx index cc1f6c0..b48d3c8 100644 --- a/client/src/pages/StreamOverviewPage.jsx +++ b/client/src/pages/StreamOverviewPage.jsx @@ -46,7 +46,7 @@ export default function StreamOverviewPage() { return (
- MaxLAN e.V. + Maxlan e.V.

Stream-Übersicht nicht verfügbar

{error}

@@ -64,7 +64,7 @@ export default function StreamOverviewPage() {
- MaxLAN e.V. + Maxlan e.V.
Counter-Strike 2 {liveCount > 0 && {liveCount} live} diff --git a/client/src/pages/StreamPage.jsx b/client/src/pages/StreamPage.jsx index e5d9e12..96ce3ec 100644 --- a/client/src/pages/StreamPage.jsx +++ b/client/src/pages/StreamPage.jsx @@ -67,7 +67,7 @@ export function ScaledStage({ children }) { function StreamMessage({ title, text }) { return (
- MaxLAN e.V. + Maxlan e.V.

{title}

{text &&

{text}

}
@@ -99,7 +99,7 @@ function StreamContent({ matchId, code }) { return (
0 ? 'has-maps' : 'no-maps'}`}>
- MaxLAN e.V. + Maxlan e.V.
Counter-Strike 2 {state.modeLabel} diff --git a/client/src/styles.css b/client/src/styles.css index fc140cb..58af54d 100644 --- a/client/src/styles.css +++ b/client/src/styles.css @@ -1,6 +1,6 @@ /* ---------- Tokens ---------- */ :root { - /* MaxLAN-Farben aus dem Logo: Blau #344A99, Rot #A72A1C auf Schwarz */ + /* Maxlan-Farben aus dem Logo: Blau #344A99, Rot #A72A1C auf Schwarz */ --brand-blue: #344a99; --brand-red: #a72a1c; diff --git a/docs/Spieler-Anleitung.pdf b/docs/Spieler-Anleitung.pdf index 674f7e02feab7021740d85828fb3a3040b254a7d..c129a0a86b3b4fcfc6b3c5d99d4dfa5eace8127b 100644 GIT binary patch delta 23576 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≈GDEjiBrF0@h8sNGUFfKlS#=7{mjQ8J^7KC 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 y+0Yebn^_y^%VW^825EeEJ_|s&R4v diff --git a/server/src/config.js b/server/src/config.js index d145ca0..30e7741 100644 --- a/server/src/config.js +++ b/server/src/config.js @@ -155,7 +155,7 @@ export function loadConfig(overrides = {}) { // Abstand des CSTV-Ports zum Spielport, z. B. Spiel 27015 -> CSTV 27115 tvPortOffset: int('CS2_TV_PORT_OFFSET', 100), // Anfang des Servernamens im Serverbrowser, danach folgen die Teamnamen - serverNamePrefix: str('CS2_SERVERNAME_PREFIX', 'MaxLAN'), + serverNamePrefix: str('CS2_SERVERNAME_PREFIX', 'Maxlan'), // Optional: mehrere Docker-Hosts als JSON-Liste, z. B. // [{"name":"host1","dockerHost":"ssh://cs2@192.168.178.111","publicHost":"192.168.178.111","portStart":27100,"portEnd":27139}] hosts: parseDockerHosts(str('CS2_DOCKER_HOSTS')), diff --git a/server/src/servers/dockerAdapter.js b/server/src/servers/dockerAdapter.js index 7305a7a..507410e 100644 --- a/server/src/servers/dockerAdapter.js +++ b/server/src/servers/dockerAdapter.js @@ -90,7 +90,7 @@ export class DockerServerAdapter { return plan; } - /** Servername im Steam-Serverbrowser, z. B. "MaxLAN | Team A vs. Team B". */ + /** Servername im Steam-Serverbrowser, z. B. "Maxlan | Team A vs. Team B". */ serverName(matchId, teamNames) { const prefix = this.options.serverNamePrefix ? sanitizeConsoleText(this.options.serverNamePrefix, 24) : ''; if (!teamNames) return `${prefix} ${matchId}`.trim();