Translate public UI and docs to English

This commit is contained in:
Kroonk
2026-05-23 10:22:23 +02:00
parent 01f72a32cb
commit d3d66c863b
4 changed files with 171 additions and 171 deletions

View File

@@ -1,48 +1,48 @@
# Brogether Setup
Stand: 2026-05-23
Status: 2026-05-23
## Aktueller Zustand
## Current State
- Brotato Steam wurde lokal gefunden unter `C:\Program Files (x86)\Steam\steamapps\common\Brotato`.
- Die recovered Scripts melden Brotato `1.1.15.3` und ModLoader `6.3.0`.
- GDRETools wurde nach `.tools/gdretools` geladen.
- Godot Mod Loader v6.3.0 wurde nach `.tools/godot-mod-loader` geladen.
- Brotato- und DLC-Scripts wurden nach `recovered/` recovered.
- Das erste Mod-Skeleton liegt unter `src/mods-unpacked/Brogether-Brogether`.
- Brotato Steam was found locally at `C:\Program Files (x86)\Steam\steamapps\common\Brotato`.
- Recovered scripts report Brotato `1.1.15.3` and ModLoader `6.3.0`.
- GDRETools was downloaded to `.tools/gdretools`.
- Godot Mod Loader v6.3.0 was downloaded to `.tools/godot-mod-loader`.
- Brotato and DLC scripts were recovered to `recovered/`.
- The mod source lives in `src/mods-unpacked/Brogether-Brogether`.
## Lokalen Test-Build installieren
## Install A Local Test Build
```powershell
.\scripts\install-local.ps1
```
Das erzeugt `dist/Brogether-Brogether-0.1.0.zip` und kopiert es fuer lokale Tests in einen bereits abonnierten Brotato-Workshop-Ordner:
This creates `dist/Brogether-Brogether-0.1.0.zip` and copies it into an already subscribed Brotato Workshop folder for local testing:
```text
C:\Program Files (x86)\Steam\steamapps\workshop\content\1942280\<workshop-id>
```
Brotato laedt in der Steam-Version nur Workshop-Ordner, deren ID Steam als abonniert meldet. Darum wird das lokale ZIP fuer den ersten Test neben eine vorhandene abonnierte Workshop-Mod gelegt. Spaeter ersetzen wir das durch einen eigenen privaten/unlisted Brogether-Workshop-Eintrag.
Brotato's Steam build only loads Workshop folders that Steam considers subscribed. That is why the local ZIP is placed next to an existing subscribed Workshop mod for the first tests. Later, this should be replaced by Brogether's own private or unlisted Workshop item.
Danach Brotato ueber Steam starten. Die Mod sollte im Mod-Menue auftauchen.
Start Brotato through Steam afterwards. The mod should appear in the mod menu.
Brogether selbst bleibt danach unsichtbar, bis es geoeffnet wird. Im Hauptmenue fuegt die Mod einen `BROGETHER`-Button hinzu. Alternativ oeffnet `F5` dasselbe Modal. Das Modal verhaelt sich bewusst wie Brotatos F8-Feedback-Fenster: es pausiert, legt sich ueber das Spiel und kann mit `Escape`, `F5` oder `Close` geschlossen werden.
Brogether stays hidden until opened. The mod adds a `BROGETHER` button to the main menu. Alternatively, `F5` opens the same modal. The modal intentionally behaves like Brotato's F8 feedback window: it pauses the game, overlays the screen, and can be closed with `Escape`, `F5`, or `Close`.
Die UI hat jetzt einen ersten Lobby-Browser. Dort kann man Lobbys suchen, eine Lobby mit optionalem Passwort erstellen und einer ausgewaehlten Lobby beitreten. Nach Host/Join wechselt Brogether in einen Wartebereich mit Steam-Namen und statischen Initialen-Avataren fuer die Lobby-Spieler.
The UI currently has a first lobby browser. You can search for lobbies, create a lobby with an optional password, and join a selected lobby. After hosting or joining, Brogether switches to a waiting room with Steam names and static initials avatars for lobby players.
Ohne zweiten Client kann im Wartebereich `Add Fake` gedrueckt werden. Dadurch erscheint ein lokaler Test-Peer. Mit `Ready` und `Fake Ready` lassen sich beide Ready-Zustaende pruefen. Einen eigenen Brogether-Startbutton gibt es erst, wenn die echte Run-Synchronisation dran ist; bis dahin nutzt man Brotatos normalen Startablauf.
Without a second client, press `Add Fake` in the waiting room. This adds a local test peer. Use `Ready` and `Fake Ready` to test both ready states. A dedicated Brogether start button will only come back once real run synchronization is implemented; until then, use Brotato's normal start flow.
## Debug-Hotkeys im Spiel
## Debug Hotkeys
- `F5`: Brogether-Modal ein-/ausblenden
- `F6`: oeffentliche Dev-Steam-Lobby erstellen
- `F7`: Brogether-Lobby suchen und beitreten
- `F9`: Lobby verlassen
- `F10`: Ping-Paket an den anderen Spieler senden
- `F11`: lokalen Loopback-Test ohne zweiten Client ausfuehren
- `F5`: toggle Brogether modal
- `F6`: create public development Steam lobby
- `F7`: search and join Brogether lobby
- `F9`: leave lobby
- `F10`: send ping packet to the other player
- `F11`: run local loopback test without a second client
Die Ausgabe landet im Godot/Brotato-Log. Das erste Ziel ist, auf zwei Steam-Clients folgende Meldungen zu sehen:
Output goes to the Godot/Brotato log. The first two-client goal is to see these messages:
- `Steam ready`
- `created lobby`
@@ -51,38 +51,38 @@ Die Ausgabe landet im Godot/Brotato-Log. Das erste Ziel ist, auf zwei Steam-Clie
- `packet from ... ping`
- `packet from ... pong`
Ohne zweiten Steam-Client kann `F11` die Paketlogik lokal simulieren. Das ersetzt keinen echten Steam-P2P-Test, prueft aber, ob Handshake-, Ping- und Pong-Verarbeitung in Brogether funktionieren.
Without a second Steam client, `F11` simulates packet flow locally. It does not replace a real Steam P2P test, but it checks whether handshake, ping, and pong handling work inside Brogether.
Zusaetzlich schreibt Brogether ein eigenes Debug-Log nach:
Brogether also writes its own debug log:
```text
C:\Users\tommi\AppData\Roaming\Brotato\brogether.log
```
## Naechster technischer Schritt
## Next Technical Step
Wenn der P2P-Handshake zwischen zwei Steam-Clients funktioniert, erweitern wir die Mod um:
Once the P2P handshake works between two Steam clients, extend the mod with:
1. Hook in die Run-Erstellung. Erledigt: `extensions/main_ext.gd` meldet Run-Start.
2. Host/Client-Rollenmodell. Grundlegend vorhanden ueber Steam-Lobby-Owner.
3. Minimalen Player-Snapshot-Sync. Grundlegend vorhanden: Position, Leben, Dead-State alle 250 ms.
4. Erst danach Gegner-, Wave- und Shop-Sync.
1. Hook into run creation. Done: `extensions/main_ext.gd` reports run start.
2. Host/client role model. Basic version exists through Steam lobby owner.
3. Minimal player snapshot sync. Basic version exists: position, health, dead state every 250 ms.
4. Enemy, wave, and shop sync after that.
## Aktueller Multiplayer-Stand
## Current Multiplayer State
Brogether hat jetzt eine Script-Extension fuer `res://main.gd`. Beim Start einer Wave/Run schreibt sie:
Brogether has a script extension for `res://main.gd`. At the start of a wave/run, it logs:
- `run scene ready`
- `players spawned`
- periodische `host_snapshot`/`client_snapshot` Pakete, wenn eine Lobby mit Peer existiert
- periodic `host_snapshot` / `client_snapshot` packets if a lobby with a peer exists
- `run scene exiting`
Die Snapshots enthalten derzeit nur das sichere Minimum: Spielerindex, Position, Leben, Max-Leben und Dead-State. Das ist noch kein spielbarer Remote-Player, aber die Transport- und Hook-Struktur ist damit vorbereitet.
Snapshots currently contain only the safe minimum: player index, position, health, max health, and dead state. This is not a playable remote player yet, but the transport and hook structure is prepared.
Es gibt intern eine experimentelle Funktion zum Vorbereiten lokaler 2-Spieler-Coop-Slots. Sie ist bewusst nicht mehr an einen Hotkey gebunden, weil sie Brotatos lokale Coop-UI aktiviert und im normalen Menue stoeren kann. Wenn ein 2-Spieler-Run existiert, versucht Brogether eingehende Remote-Snapshots auf den zweiten lokalen Player anzuwenden.
There is an internal experimental function to prepare local 2-player co-op slots. It is intentionally not bound to a hotkey anymore because it activates Brotato's local co-op UI and can disturb normal menus. If a 2-player run exists, Brogether tries to apply incoming remote snapshots to the second local player.
## Editor-Hinweis
## Editor Note
Fuer den ersten In-Game-Test ist noch kein Godot-Editor noetig: die Mod wird als ZIP gebaut und direkt von Brotato geladen.
No Godot editor is required for the first in-game test: the mod is built as a ZIP and loaded directly by Brotato.
Fuer spaetere Hook-Arbeit ist ein GodotSteam-Editor sinnvoll. Die aktuellen GodotSteam-3.x-Releases liefern auf GitHub/Codeberg vor allem Templates; wenn wir den Editor brauchen, sollten wir gezielt eine zu Brotatos recovered Engine-Version passende GodotSteam-Binary verwenden oder selbst bauen. Vanilla-Godot ist fuer das recovered Brotato-Projekt problematisch, weil der `Steam`-Singleton fehlt.
For later hook work, a GodotSteam editor can be useful. Current GodotSteam 3.x releases mostly provide templates; if an editor is needed, use or build a GodotSteam binary that matches Brotato's recovered engine version. Vanilla Godot is problematic for the recovered Brotato project because the `Steam` singleton is missing.

View File

@@ -1,103 +1,103 @@
# Brogether Steam Workshop Upload
Stand: 2026-05-23
Status: 2026-05-23
Diese Anleitung beschreibt den einfachen Upload-Weg fuer Brogether ueber Brotatos mitgeliefertes `GodotWorkshopUtility.exe`.
This guide describes the simple upload path for Brogether using Brotato's bundled `GodotWorkshopUtility.exe`.
## Was du brauchst
## Requirements
- Brotato auf Steam installiert.
- Steam muss laufen und dein Account muss online sein.
- Dein Steam-Account muss Brotato besitzen.
- Der aktuelle Brogether-ZIP-Build:
- Brotato installed through Steam.
- Steam must be running and your account must be online.
- Your Steam account must own Brotato.
- The current Brogether ZIP build:
```powershell
.\scripts\package.ps1
```
Danach liegt die Datei hier:
After that, the ZIP is here:
```text
dist\Brogether-Brogether-0.1.0.zip
```
- Optional, aber empfohlen: ein Workshop-Preview-Bild als PNG oder JPG. Am besten `512x512`, unter `1 MB`.
- Fuer den ersten Upload brauchst du noch keine Workshop-ID. Steam erzeugt sie beim Upload.
- Fuer spaetere Updates brauchst du die Workshop-ID aus der URL deines Workshop-Eintrags.
- Optional but recommended: a Workshop preview image as PNG or JPG. `512x512` and below `1 MB` is a good target.
- For the first upload, you do not need a Workshop ID. Steam creates it.
- For later updates, you need the Workshop ID from your Workshop item URL.
## Wichtig Vor Dem Upload
## Before Uploading
Brogether ist noch ein Prototyp. Fuer den ersten Workshop-Eintrag empfehle ich:
Brogether is still a prototype. For the first Workshop item, the recommended settings are:
- Sichtbarkeit zuerst auf `Private` oder `Unlisted` lassen.
- Titel klar als Test/Prototype markieren.
- Beschreibung deutlich machen, dass echter Zwei-Spieler-Gameplay-Sync noch nicht fertig ist.
- Nach dem Upload direkt die Workshop-ID notieren.
- Keep visibility on `Private` or `Unlisted` first.
- Mark the title clearly as a test/prototype.
- Make the description clear that real two-player gameplay sync is not finished yet.
- Note the Workshop ID immediately after upload.
## Schritt Fuer Schritt: Erster Upload
## First Upload
1. Steam starten und online lassen.
2. Brotato schliessen, falls es offen ist.
3. Im Projektordner den ZIP bauen:
1. Start Steam and stay online.
2. Close Brotato if it is running.
3. Build the ZIP from the project folder:
```powershell
.\scripts\package.ps1
```
4. Brotatos Workshop-Uploader starten:
4. Start Brotato's Workshop uploader:
```text
C:\Program Files (x86)\Steam\steamapps\common\Brotato\GodotWorkshopUtility.exe
```
5. Im Uploader bei der Mod-Datei diesen ZIP auswaehlen:
5. Select this ZIP as the mod file:
```text
C:\Users\tommi\Documents\PotatoConnect\dist\Brogether-Brogether-0.1.0.zip
```
6. Optional ein Preview-Bild auswaehlen. Wenn der Upload wegen des Bildes fehlschlaegt, erst einmal ohne Bild hochladen.
7. Das Feld fuer die Workshop Item ID leer lassen.
8. Upload starten und warten, bis der Uploader Erfolg meldet.
9. Wenn Steam nach der Workshop Legal Agreement fragt, im Browser/Steam-Overlay akzeptieren.
10. Den neuen Workshop-Eintrag in Steam oeffnen.
11. Sichtbarkeit rechts im Workshop-Eintrag auf `Private`, `Unlisted` oder spaeter `Public` setzen.
12. Die Workshop-ID aus der URL notieren. Beispiel:
6. Optionally select a preview image. If the upload fails because of the image, try the first upload without one.
7. Leave the Workshop Item ID field empty.
8. Start the upload and wait for a success message.
9. If Steam asks for the Workshop Legal Agreement, accept it in Steam or in your browser.
10. Open the new Workshop item in Steam.
11. Set visibility to `Private`, `Unlisted`, or later `Public`.
12. Note the Workshop ID from the URL. Example:
```text
https://steamcommunity.com/sharedfiles/filedetails/?id=1234567890
```
Die ID waere hier:
The ID would be:
```text
1234567890
```
## Schritt Fuer Schritt: Update Eines Bestehenden Workshop-Eintrags
## Updating An Existing Workshop Item
1. ZIP neu bauen:
1. Build the ZIP again:
```powershell
.\scripts\package.ps1
```
2. `GodotWorkshopUtility.exe` starten.
3. Wieder `dist\Brogether-Brogether-0.1.0.zip` auswaehlen.
4. Optional dasselbe Preview-Bild auswaehlen.
5. Dieses Mal die bestehende Workshop-ID eintragen.
6. Upload starten.
7. Danach im Steam Workshop Titel, Beschreibung, Sichtbarkeit und Bilder pruefen.
2. Start `GodotWorkshopUtility.exe`.
3. Select `dist\Brogether-Brogether-0.1.0.zip` again.
4. Optionally select the same preview image.
5. This time, enter the existing Workshop ID.
6. Start the upload.
7. After uploading, check the Steam Workshop title, description, visibility, and images.
Hinweis: Der Godot Mod Loader Wiki-Hinweis sagt, dass der Titel bei Updates vom Uploader wieder ueberschrieben werden kann. Also nach jedem Upload kurz in Steam kontrollieren.
Note: The Godot Mod Loader wiki mentions that the uploader can overwrite the title during updates. Check the Steam Workshop item after every upload.
## Vorschlag Fuer Workshop-Titel
## Suggested Workshop Title
```text
Brogether - Online Multiplayer Prototype
```
## Vorschlag Fuer Workshop-Beschreibung
## Suggested Workshop Description
```text
Brogether is an experimental online multiplayer prototype for Brotato.
@@ -118,25 +118,25 @@ Not finished yet:
Use this only for testing with friends who know it is still experimental.
```
## Was Tester Danach Machen
## What Testers Need To Do
1. Steam Workshop-Eintrag abonnieren.
2. Warten, bis Steam den Workshop-Download abgeschlossen hat.
3. Brotato starten.
4. Im Mod-Menue Brogether aktivieren, falls noetig.
5. Brotato neu starten, wenn die Mod erst nach Neustart sauber geladen wird.
6. Im Hauptmenue `BROGETHER` oeffnen.
1. Subscribe to the Steam Workshop item.
2. Wait until Steam finishes the Workshop download.
3. Start Brotato.
4. Enable Brogether in the mod menu if required.
5. Restart Brotato if the mod only loads cleanly after restart.
6. Open `BROGETHER` from the main menu.
## Troubleshooting
- Mod taucht nicht auf: Steam Workshop-Download abwarten, Brotato neu starten, Mod-Menue pruefen.
- Upload findet Datei nicht: ZIP-Pfad pruefen und vorher `.\scripts\package.ps1` ausfuehren.
- Upload mit Icon schlaegt fehl: Icon unter `1 MB` halten, am besten `512x512 PNG`, oder den ersten Upload ohne Icon testen.
- Zugriff verweigert oder Item bleibt versteckt: Steam Workshop Legal Agreement akzeptieren.
- Update erstellt neuen Eintrag: Beim Update muss die bestehende Workshop-ID eingetragen sein.
- Logs fuer Upload/Download liegen laut Steamworks-Doku unter anderem in `Steam\logs\Workshop_log.txt` und `Steam\workshopbuilds\depot_build_<appid>.log`.
- Mod does not appear: wait for the Steam Workshop download, restart Brotato, and check the mod menu.
- Upload cannot find the file: check the ZIP path and run `.\scripts\package.ps1` first.
- Upload fails with an icon: keep the icon below `1 MB`, preferably `512x512 PNG`, or test the first upload without an icon.
- Access denied or item stays hidden: accept the Steam Workshop Legal Agreement.
- Update creates a new item: enter the existing Workshop ID when updating.
- Steam upload/download logs can be found in places such as `Steam\logs\Workshop_log.txt` and `Steam\workshopbuilds\depot_build_<appid>.log`.
## Quellen
## Sources
- Godot Mod Loader Wiki: Steam Workshop Uploader: https://wiki.godotmodding.com/guides/modding/tools/workshop_uploader/
- Godot Mod Loader Wiki: Distributing Mods: https://wiki.godotmodding.com/guides/modding/distributing_mods/