Merge remote-tracking branch 'origin/main'

This commit is contained in:
2026-06-14 21:49:08 +02:00
+2 -23
View File
@@ -27,28 +27,8 @@ Un client che perde la connessione viene marcato come disconnesso ma non rimuove
---
## Requisiti di sistema
- **Java 25** o superiore
- I JAR sono fat-jar (tutte le dipendenze incluse), non è necessario installare librerie esterne
- La GUI richiede un display grafico (non funziona in ambienti headless puri)
---
## Compilazione
Per generare i JAR dalla sorgente:
```bash
./mvnw package -DskipTests
```
I tre JAR vengono prodotti nella cartella `target/`:
| File | Descrizione |
|---|---|
| `target/Server.jar` | Server di gioco |
| `target/ClientTUI.jar` | Client testuale (TUI) |
| `target/ClientGUI.jar` | Client grafico (GUI) |
---
@@ -64,6 +44,7 @@ All'avvio il server elenca le interfacce di rete IPv4 attive e chiede all'operat
```
[0] eth0 -> 192.168.1.10
[1] eth1 -> 192.168.95.7
Choose interface: 0
192.168.1.10
Server RMI: 192.168.1.10
@@ -104,7 +85,7 @@ All'avvio il client chiede interattivamente:
| `draw lower tribe <pos>` | Pesca la carta tribù in posizione `<pos>` dalla riga inferiore |
| `draw lower building <pos>` | Pesca la carta edificio in posizione `<pos>` dalla riga inferiore |
| `totem <pos>` | Sceglie il totem in posizione `<pos>` (fase di selezione totem) |
| `skip` | Passa il turno |
| `skip` | Passa il turno (se non si possono eseguire altre azioni) |
| `clear` | Ridisegna la board a schermo |
| `details buildings` | Mostra la descrizione di tutti gli edifici |
| `details events` | Mostra la descrizione di tutti gli eventi |
@@ -163,8 +144,6 @@ Premere **Accedi** per connettersi. La GUI si avvia in modalità fullscreen; pre
3. I client su altre macchine usano quel IP come `Server IP`.
4. Assicurarsi che le porte **1099**, **8080**, **8081** siano raggiungibili dalla rete.
> **Nota RMI**: RMI richiede che il client possa raggiungere il server all'IP dichiarato durante l'avvio. Se server e client sono sulla stessa macchina usare `localhost`; se sono su macchine diverse usare l'IP della rete locale (non `localhost`).
---
## Struttura del progetto