Ein bereiter Spieler pro Team reicht standardmäßig für den Veto-Start
REQUIRE_FULL_TEAMS ist jetzt standardmäßig false; vollständige Teams lassen sich weiterhin per Umgebungsvariable erzwingen.
This commit is contained in:
1 parent
bf438511d6
commit
e304556346
3 files changed
+5
-5
No files matched your search
+2
-2
@@ -9,8 +9,8 @@ DATABASE_FILE=data/cs2-mapveto.db
|
|||||||
MAP_POOL_FILE=server/config/map-pools.json
|
MAP_POOL_FILE=server/config/map-pools.json
|
||||||
# Wenn gesetzt, ist dieses Passwort zum Erstellen von Matches nötig.
|
# Wenn gesetzt, ist dieses Passwort zum Erstellen von Matches nötig.
|
||||||
CREATE_MATCH_PASSWORD=
|
CREATE_MATCH_PASSWORD=
|
||||||
# true: Veto erst, wenn beide Teams vollständig (2 bzw. 5 Spieler) und bereit sind.
|
# false (Standard): ein bereiter Spieler pro Team reicht. true: Teams müssen vollständig sein (2 bzw. 5 Spieler).
|
||||||
REQUIRE_FULL_TEAMS=true
|
REQUIRE_FULL_TEAMS=false
|
||||||
# true, wenn die App hinter einem Reverse-Proxy läuft (für korrekte Client-IP beim Rate-Limit).
|
# true, wenn die App hinter einem Reverse-Proxy läuft (für korrekte Client-IP beim Rate-Limit).
|
||||||
TRUST_PROXY=false
|
TRUST_PROXY=false
|
||||||
|
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ Die Tests decken Veto-Engine und Ablaufvalidierung, RCON-Protokoll (gegen einen
|
|||||||
Diese Codes gelten nur für die Webseite. Der CS2-Serverzugang wird getrennt bereitgestellt (Schritt 6). Der Organisator kann jeden Code jederzeit neu erzeugen; der alte Link wird damit ungültig.
|
Diese Codes gelten nur für die Webseite. Der CS2-Serverzugang wird getrennt bereitgestellt (Schritt 6). Der Organisator kann jeden Code jederzeit neu erzeugen; der alte Link wird damit ungültig.
|
||||||
4. **Spieler treten bei:** Über den Teamlink gibt ein Spieler seinen Namen ein (optional die SteamID64) und landet in genau diesem Team. Pro Team sind maximal 2 bzw. 5 Spieler erlaubt.
|
4. **Spieler treten bei:** Über den Teamlink gibt ein Spieler seinen Namen ein (optional die SteamID64) und landet in genau diesem Team. Pro Team sind maximal 2 bzw. 5 Spieler erlaubt.
|
||||||
- Der erste Spieler eines Teams wird Captain. Organisator oder Captain können den Captain wechseln.
|
- Der erste Spieler eines Teams wird Captain. Organisator oder Captain können den Captain wechseln.
|
||||||
- Jeder Spieler setzt sich auf „bereit“. Ein Team ist bereit, wenn es vollständig ist (abschaltbar mit `REQUIRE_FULL_TEAMS=false`), einen Captain hat und alle bereit sind.
|
- Jeder Spieler setzt sich auf „bereit“. Ein Team ist bereit, sobald mindestens ein Spieler beigetreten ist, es einen Captain hat und alle beigetretenen Spieler bereit sind. Mit `REQUIRE_FULL_TEAMS=true` muss das Team zusätzlich vollständig sein (2 bzw. 5 Spieler).
|
||||||
5. **Map-Veto:** Sind beide Teams bereit, startet der Organisator das Veto. Die Captains bannen und wählen abwechselnd nach dem festen Ablauf (siehe unten). Die Seite zeigt jederzeit:
|
5. **Map-Veto:** Sind beide Teams bereit, startet der Organisator das Veto. Die Captains bannen und wählen abwechselnd nach dem festen Ablauf (siehe unten). Die Seite zeigt jederzeit:
|
||||||
- welches Team am Zug ist
|
- welches Team am Zug ist
|
||||||
- welche Aktion ansteht
|
- welche Aktion ansteht
|
||||||
@@ -272,7 +272,7 @@ Alle Variablen mit Standardwerten stehen in [`.env.example`](.env.example). Die
|
|||||||
| `PUBLIC_URL` | `http://localhost:5173` | Basis für Einladungslinks |
|
| `PUBLIC_URL` | `http://localhost:5173` | Basis für Einladungslinks |
|
||||||
| `DATABASE_FILE` | `data/cs2-mapveto.db` | SQLite-Datei |
|
| `DATABASE_FILE` | `data/cs2-mapveto.db` | SQLite-Datei |
|
||||||
| `CREATE_MATCH_PASSWORD` | leer | Passwort zum Erstellen von Matches |
|
| `CREATE_MATCH_PASSWORD` | leer | Passwort zum Erstellen von Matches |
|
||||||
| `REQUIRE_FULL_TEAMS` | `true` | Veto nur mit vollständigen Teams |
|
| `REQUIRE_FULL_TEAMS` | `false` | `true`: Veto nur mit vollständigen Teams |
|
||||||
| `SERVER_ADAPTER` | `demo` | `demo`, `docker` oder `static` |
|
| `SERVER_ADAPTER` | `demo` | `demo`, `docker` oder `static` |
|
||||||
| `SERVER_IDLE_TIMEOUT_MINUTES` | `30` | Frist bis zum automatischen Herunterfahren |
|
| `SERVER_IDLE_TIMEOUT_MINUTES` | `30` | Frist bis zum automatischen Herunterfahren |
|
||||||
| `SERVER_MAX_LIFETIME_HOURS` | `8` | harte Obergrenze pro Server |
|
| `SERVER_MAX_LIFETIME_HOURS` | `8` | harte Obergrenze pro Server |
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ export function loadConfig(overrides = {}) {
|
|||||||
databaseFile: path.resolve(REPO_ROOT, str('DATABASE_FILE', 'data/cs2-mapveto.db')),
|
databaseFile: path.resolve(REPO_ROOT, str('DATABASE_FILE', 'data/cs2-mapveto.db')),
|
||||||
mapPoolFile: path.resolve(REPO_ROOT, str('MAP_POOL_FILE', 'server/config/map-pools.json')),
|
mapPoolFile: path.resolve(REPO_ROOT, str('MAP_POOL_FILE', 'server/config/map-pools.json')),
|
||||||
createMatchPassword: str('CREATE_MATCH_PASSWORD'),
|
createMatchPassword: str('CREATE_MATCH_PASSWORD'),
|
||||||
requireFullTeams: bool('REQUIRE_FULL_TEAMS', true),
|
requireFullTeams: bool('REQUIRE_FULL_TEAMS', false),
|
||||||
trustProxy: bool('TRUST_PROXY', false),
|
trustProxy: bool('TRUST_PROXY', false),
|
||||||
|
|
||||||
serverAdapter: str('SERVER_ADAPTER', 'demo'),
|
serverAdapter: str('SERVER_ADAPTER', 'demo'),
|
||||||
|
|||||||
Reference in new issue
Block a user