2.4 KiB
Chronos
Chronos je jednoduchá multiplayerová hra napsaná v Javě.
Hra je napsaná tak aby byla co nejvíce modulární. Více info o struktuře projektu zde.
Jak spustit
Backend
Backend je připraven k jednoduchému spuštění pomocí Docker Compose.
-
Ujistěte se, že máte nainstalovaný Docker a Docker Compose.
-
Ve složce
backendspusťte následující příkaz:docker-compose up -
Backend server bude automaticky spuštěn na portu
8080a propojen s MySQL databází.
Není potřeba žádné další nastavení. Všechny potřebné služby a závislosti jsou definovány v souboru docker-compose.yml.
Frontend
Frontend je Maven projekt, který lze snadno spustit pomocí následujících kroků:
-
Ujistěte se, že máte nainstalovanou Java 23 a Maven.
-
Ve složce
frontendspusťte příkaz:mvn clean package -
Po úspěšném sestavení spusťte frontend příkazem:
java -jar target/chronos-1.0-SNAPSHOT.jar
Technické specifikace
Backend
Backend je implementován jako HTTP server, který zpracovává všechny herní požadavky. Podporuje současný provoz více her a využívá SQL databázi k ukládání herních dat.
Technologie:
- Jazyk: Java
- Framework: Spring
- Databáze: Relační SQL databáze (např. MySQL)
Poznámka: Použití relační databáze nebylo ideální rozhodnutí. Já vím
Environmentální proměnné
Pro správnou funkci backendu je nutné nastavit následující environmentální proměnné pro připojení k databázi:
DATASOURCE_URL: JDBC URL databáze (např.jdbc:mysql://localhost:3306/chronos).DB_USERNAME: Uživatelské jméno pro přístup k databázi (např.root).DB_PASSWORD: Heslo pro přístup k databázi (např.root).
Poznámka: Tyto enviromentální proměnné jsou nastaveny automaticky pokud používáte Docker Compose pro spuštění backendu.
Frontend
Frontend je napsán ve Vanilla Javě a zajišťuje uživatelskou interakci.
Configurační soubor
Konfigurační soubor se automaticky ukládá do různých standardních lokací podle operačního systému:
- Unix-like systémy:
~/.config/Chronos/config.json - Windows:
C:\Users\<username>\AppData\Chronos\config.json - MacOS:
~/Library/Application Support/Chronos/config.json