diff --git a/README.md b/README.md index 357b393..c03835d 100644 --- a/README.md +++ b/README.md @@ -283,7 +283,7 @@ Jeder Host braucht eigene Spieldateien (rund 60 bis 90 GB). Die Ports müssen au Im Admin-Bereich (Einstellungen → Gameserver → Messer-Server) 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)`). In der Lobby eines Matches mit Messerrunde stehen die freien Messer-Server 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“. diff --git a/client/src/pages/Overview.jsx b/client/src/pages/Overview.jsx index a6be664..a6a3c9d 100644 --- a/client/src/pages/Overview.jsx +++ b/client/src/pages/Overview.jsx @@ -1,4 +1,4 @@ -import { useEffect, useState } from 'react'; +import { useState } from 'react'; import { Link, useNavigate } from 'react-router-dom'; import { api } from '../lib/api.js'; import { FORMAT_LABEL, serverLabel, timeAgo } from '../lib/labels.js'; @@ -30,7 +30,6 @@ export default function Overview() { - {matches === null ? (

Lade Matches …

@@ -253,37 +252,3 @@ function CodeTicket() { ); } - -/** Offene Messer-Server für die Seitenwahl, zum direkten Verbinden. */ -function KnifeServers() { - const [servers, setServers] = useState([]); - useEffect(() => { - let alive = true; - const load = () => api('/knife-servers').then((res) => alive && setServers(res.servers)).catch(() => {}); - load(); - const t = setInterval(load, 10_000); - return () => { - alive = false; - clearInterval(t); - }; - }, []); - if (servers.length === 0) return null; - return ( -
-

Messer-Server für die Seitenwahl {servers.length}

-

Ohne Passwort, auch im LAN-Reiter von Steam. Nach eurer Messerrunde setzt sich der Server selbst zurück.

-
    - {servers.map((k) => ( -
  • - {k.name} - {k.modeShort && {k.modeShort}} - {k.mapName} - {k.playerCount ? `${k.playerCount} Spieler` : 'frei'} - {k.connect} - Verbinden -
  • - ))} -
-
- ); -}