commit e7c053eba5afaaebc3afd07e955b3e2b48175f7f
parent d1227d473999bf4f03aa0ab913b097f9c6862e93
Author: Francisco Armando Rosmino <franciscorosmino@rosmino.com.ar>
Date: Sat, 3 Oct 2026 13:30:06 -0300
README: jugar otra y AGAIN
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Diffstat:
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/catan/README.md b/catan/README.md
@@ -112,6 +112,10 @@ Sin contraseña, *Mis partidas* usa las partidas guardadas en esta compu
(`~/.local/share/catan/online`, como antes). El tráfico va en texto plano; si querés
cifrarlo, usá un túnel SSH (`ssh -L 7373:localhost:7373 mivps`) o stunnel.
+Al terminar una partida, **jugar otra** (`a`, o tocar la línea en el cuadro final) arma
+una nueva con las mismas opciones: local, con otro reparto; online, el servidor la crea
+con la misma gente en los mismos asientos y a los demás les aparece en *Mis partidas*.
+
**Si alguien se olvida la contraseña**: el servidor no la guarda (solo la llave que
deriva el cliente), pero el administrador puede ponerle una nueva a ese asiento:
diff --git a/comun/README.md b/comun/README.md
@@ -69,6 +69,9 @@ el protocolo de líneas es el mismo. Todo el WebSocket vive en `ws.c` (sin socke
prueba sobre buffers) y `srv.c` lo llama en tres puntos; `-DSRV_NO_WS` lo saca. Como el
navegador exige TLS, delante va Caddy o nginx haciendo `wss://` → `ws://127.0.0.1:puerto`.
+`AGAIN` arma otra partida como la actual (mismas opciones, la misma gente en los mismos
+asientos, otro reparto si el juego implementa `GameModule.again`).
+
`ADMIN <secreto> RESET <código> <llave> <nombre>` cambia la llave de un asiento (para
quien se olvidó la contraseña; el nombre va al final porque puede tener espacios); el secreto está en `<datos>/admin.key` (el servidor lo
crea la primera vez). `deploy/admin.sh` (instalado como `<juego>-admin` por