# ysp struktur

## Synligt i /home/jdc/Games/ysp

- `Starta YSoccer` ar enda startfilen du normalt ska anvanda. Den oppnar en terminalmeny.
- `options` ar filen du andrar for spelarfart, skottstyrka, passningsstyrka, bollkontroll och crit.
- `code/` innehaller spelet och koden.
- `notes/` innehaller anteckningar, ideer och gamla startnoteringar.

Startmenyn har 5 val. Val 5, `Joina en online-server`, visar `jdc` och ansluter till `jdc.se` med samma TCP/UDP-portar som ligger i ysp:s egna prefs.

## code/gamefiles

Runtime-mappen for spelet. Har ligger jar-filer, grafik, ljud, lagdata, sparfiler, prefs, cache och interna startscript.

Viktiga filer:
- `YSoccer-1.0.0.jar`: klienten.
- `YSoccer-server-1.0.0.jar`: online-servern.
- `.internal/`: interna script for start, online-host och kontrollfix.
- `.home/.prefs/YSoccer25`: ysp:s egna installningar.

## code/ysoccer-code

Kallkoden. Den innehaller upstream YSoccer-kod plus vara andringar.

Viktigaste delen:
- `java/`: Java/LibGDX-versionen som byggs till jar.
- `java/core/src/main/java/`: spelkod och matchmotor.
- `java/assets/`: data och assets som packas in i jar.
- `blitzmax/`: aldre/original-relaterad kod fran YSoccer-projektet. Den anvands inte for jar-bygget vi kor nu.

Bygg fran:

```sh
cd /home/jdc/Games/ysp/code/ysoccer-code/java
./gradlew --no-daemon lwjgl3:jar server:jar
```

Efter bygg ska jar-filerna kopieras till:

```sh
/home/jdc/Games/ysp/code/gamefiles/YSoccer-1.0.0.jar
/home/jdc/Games/ysp/code/gamefiles/YSoccer-server-1.0.0.jar
```
