fix mail verify
build container / build (push) Failing after 1m25s

This commit is contained in:
2026-11-02 02:16:44 +01:00
parent 1ccf4a760b
commit 3de09009d6
5 changed files with 159 additions and 9 deletions
+25 -7
View File
@@ -139,6 +139,12 @@ passt.
Backend und Game-Server ein und macht die Lone-Wolf-Raten datengetrieben (siehe
„Spieldaten anpassen“). Fehlt ein Anker, bricht der Build ebenfalls ab.
`docker/patch-auto-verify-email.js` markiert bei aktivem
`options.auto_verify_email` neue Konten beim Signup und bestehende beim nächsten
Login als verifiziert und überspringt die Verifikationsmail. Ohne den Schalter
bleibt das Upstream-Verhalten unverändert. Auch dieser Patch bricht den Build
ab, wenn ein Anker in `api.js` fehlt.
## Spieldaten anpassen (`files/custom/game.js`)
Werte bestehender Elemente und neue Elemente lassen sich ohne Quelltextänderung
@@ -183,12 +189,13 @@ Custom-Datei zurückgesetzt werden; dann den Game-Server neu starten.
## Gut zu wissen
- **E-Mail-Verifizierung:** AWS SES ist nicht konfiguriert. Beim Registrieren
erscheint im Backend-Log `send_email error InvalidClientTokenId`. Das ist
erwartet – die Registrierung funktioniert trotzdem, es wird nur keine Mail
verschickt. Bis zur Verifizierung hängt das Konto an „Not Verified“
(Gold/Glück −25 %). Der Verifizierungslink funktioniert auch ohne Mailversand;
er lässt sich in MongoDB nachsehen:
- **E-Mail-Verifizierung:** AWS SES ist nicht konfiguriert. Deshalb setzt
`options.auto_verify_email: true` neue Konten beim Signup und bestehende beim
nächsten Login auf „verifiziert“; die Verifikationsmail wird übersprungen. Der
„Not Verified“-Debuff (Gold/Glück −25 %) tritt damit nicht mehr auf. Auf
`false` gestellt, gilt wieder der Upstream-Ablauf: Im Backend-Log erscheint
`send_email error InvalidClientTokenId`, und der Verifizierungslink muss
manuell geöffnet werden:
```sh
docker compose exec al-mongo mongosh --quiet adventureland --eval \
@@ -197,7 +204,18 @@ Custom-Datei zurückgesetzt werden; dann den Game-Server neu starten.
```
Link im Browser öffnen, danach neu einloggen. Alternativ `info.verified` direkt
auf `true` setzen (siehe Admin-Befehl oben).
auf `true` setzen (siehe Admin-Befehl oben). Die `/ev`-Route bleibt in beiden
Fällen funktionsfähig.
- **Tutorial-Belohnung (`c0`):** Jedes Konto mit `auth_id` (Steam/MAS) kann nach
abgeschlossenem Tutorial einmal `c0` abholen. Die Belohnung ist ein zufälliger
kosmetischer Look aus dem `cosmo0`-Pool (über 100 Varianten). Der Game-Server
prüft dafür `player.verified` **und** `player.auth_id`
(`node/server.js:5272`). Bei reinen Web-Accounts ohne Steam/MAS bleibt
`auth_id` leer, deshalb ist die Belohnung trotz Auto-Verifizierung weiterhin
gesperrt. Die alten Klassen-Belohnungen (`creward`) sind in
`design/classes.js` auskommentiert und werden vom Client nicht angefragt;
Hardcore-Rewards gelten nur auf dem Hardcore-Server.
- **„Authorization Failure“ (Gold/Glück −85 %, XP −20 %):** Das ist die
DRM-Prüfung des Game-Servers. Sie verlangt für jedes Konto ab 2019 eine