Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 99be8f1dab | |||
| b3e66fc072 | |||
| 1c75367c87 | |||
| 6238078565 |
@@ -23,10 +23,9 @@ explicitly out of scope.
|
|||||||
| # | Type | Task | Depends on |
|
| # | Type | Task | Depends on |
|
||||||
|---|------|------|-----------|
|
|---|------|------|-----------|
|
||||||
| 1 | architecture | `ApiClient` autoload: HTTP + JWT storage + error contract | — |
|
| 1 | architecture | `ApiClient` autoload: HTTP + JWT storage + error contract | — |
|
||||||
| 2 | implementation | Main-menu **login** wiring (form-encoded) | 1 |
|
| 2 | implementation | Main-menu **login + register** UI built & wired (form-encoded + JSON/age gate) | 1 |
|
||||||
| 3 | implementation | Main-menu **register** wiring (JSON + age gate) | 2 |
|
| 3 | implementation | **World list** screen consuming `GET /api/worlds` | 1 |
|
||||||
| 4 | implementation | **World list** screen consuming `GET /api/worlds` | 2 |
|
| 4 | testing | End-to-end headless smoke test + manual verify | 1,2,3 |
|
||||||
| 5 | testing | End-to-end headless smoke test + manual verify | 1,3,4 |
|
|
||||||
|
|
||||||
## Design decisions captured (resolved in task 1)
|
## Design decisions captured (resolved in task 1)
|
||||||
- Token storage: in-memory singleton property for the MVP; a `save_to_disk` seam is left
|
- Token storage: in-memory singleton property for the MVP; a `save_to_disk` seam is left
|
||||||
@@ -35,3 +34,8 @@ explicitly out of scope.
|
|||||||
never crash on network failure; non-2xx surfaces `{status, detail}` from the backend.
|
never crash on network failure; non-2xx surfaces `{status, detail}` from the backend.
|
||||||
- Base URL: read from a ProjectSetting, defaulting to `http://127.0.0.1:8000`.
|
- Base URL: read from a ProjectSetting, defaulting to `http://127.0.0.1:8000`.
|
||||||
- Login is form-encoded; register is JSON — the client helper must support both content types.
|
- Login is form-encoded; register is JSON — the client helper must support both content types.
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
- The main-menu auth UI does **not** exist yet (main_menu.gd currently has only Play/Quit
|
||||||
|
stubs). Task 2 must **build** the login/register UI, not merely wire an existing one.
|
||||||
|
- The world-list screen also needs to be **built** (a new scene), not just wired.
|
||||||
|
|||||||
@@ -0,0 +1,74 @@
|
|||||||
|
[preset.0]
|
||||||
|
|
||||||
|
name="Linux"
|
||||||
|
platform="Linux/X11"
|
||||||
|
runnable=true
|
||||||
|
advanced_options=false
|
||||||
|
dedicated_server=false
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter=""
|
||||||
|
export_path="export/linux/agp-game.x86_64"
|
||||||
|
encryption_include_filters=""
|
||||||
|
encryption_exclude_filters=""
|
||||||
|
encrypt_pck=false
|
||||||
|
encrypt_directory=false
|
||||||
|
script_export_mode=2
|
||||||
|
|
||||||
|
[preset.0.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
debug/export_console_wrapper=1
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
texture_format/bptc=true
|
||||||
|
texture_format/s3tc=true
|
||||||
|
texture_format/etc=false
|
||||||
|
texture_format/etc2=false
|
||||||
|
binary_format/architecture="x86_64"
|
||||||
|
ssh_remote_deploy/enabled=false
|
||||||
|
|
||||||
|
[preset.1]
|
||||||
|
|
||||||
|
name="Windows Desktop"
|
||||||
|
platform="Windows Desktop"
|
||||||
|
runnable=true
|
||||||
|
advanced_options=false
|
||||||
|
dedicated_server=false
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter=""
|
||||||
|
export_path="export/windows/agp-game.exe"
|
||||||
|
encryption_include_filters=""
|
||||||
|
encryption_exclude_filters=""
|
||||||
|
encrypt_pck=false
|
||||||
|
encrypt_directory=false
|
||||||
|
script_export_mode=2
|
||||||
|
|
||||||
|
[preset.1.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
debug/export_console_wrapper=1
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
texture_format/bptc=true
|
||||||
|
texture_format/s3tc=true
|
||||||
|
texture_format/etc=false
|
||||||
|
texture_format/etc2=false
|
||||||
|
binary_format/architecture="x86_64"
|
||||||
|
codesign/enable=false
|
||||||
|
application/icon=""
|
||||||
|
application/console_wrapper_icon=""
|
||||||
|
application/icon_interpolation=4
|
||||||
|
application/file_version=""
|
||||||
|
application/product_version=""
|
||||||
|
application/company_name=""
|
||||||
|
application/product_name=""
|
||||||
|
application/file_description=""
|
||||||
|
application/copyright=""
|
||||||
|
application/trademarks=""
|
||||||
|
application/export_angle=0
|
||||||
|
application/export_d3d12=0
|
||||||
|
d3d12/agility_sdk_multizip=0
|
||||||
Executable
+42
@@ -0,0 +1,42 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Headless CI export for Linux and Windows.
|
||||||
|
#
|
||||||
|
# Requires:
|
||||||
|
# - Godot 4.6.2 (the exact version this project + export_presets.cfg were
|
||||||
|
# built against; a different Godot minor version's export templates are
|
||||||
|
# not guaranteed compatible)
|
||||||
|
# - The matching export templates installed at
|
||||||
|
# ~/.local/share/godot/export_templates/4.6.2.stable/
|
||||||
|
# (download: https://godotengine.org/download/archive/4.6.2-stable/,
|
||||||
|
# "Export templates" -- NOT the same as the editor download)
|
||||||
|
# - godot on PATH (or set GODOT_BIN below)
|
||||||
|
#
|
||||||
|
# Usage: scripts/build.sh
|
||||||
|
# Output: export/linux/agp-game.x86_64, export/windows/agp-game.exe
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
cd "$(dirname "$0")/.."
|
||||||
|
|
||||||
|
GODOT_BIN="${GODOT_BIN:-godot}"
|
||||||
|
if ! command -v "$GODOT_BIN" >/dev/null 2>&1; then
|
||||||
|
if [ -x "$HOME/godot/godot" ]; then
|
||||||
|
GODOT_BIN="$HOME/godot/godot"
|
||||||
|
else
|
||||||
|
echo "godot binary not found (checked PATH and ~/godot/godot)." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Godot version: $("$GODOT_BIN" --version)"
|
||||||
|
|
||||||
|
mkdir -p export/linux export/windows
|
||||||
|
|
||||||
|
echo "=== Exporting Linux/X11 ==="
|
||||||
|
"$GODOT_BIN" --headless --path . --export-release "Linux" export/linux/agp-game.x86_64
|
||||||
|
|
||||||
|
echo "=== Exporting Windows Desktop ==="
|
||||||
|
"$GODOT_BIN" --headless --path . --export-release "Windows Desktop" export/windows/agp-game.exe
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Build artifacts:"
|
||||||
|
ls -la export/linux export/windows
|
||||||
Reference in New Issue
Block a user