release: docs/TODO.md + networking docs + readme expansion #2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "develop"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Promotes docs work from develop to main. Two commits land on main:
b34f73e— docs: capture #1 #2 #3 bootstrap bugs in docs/TODO.md9f2d75f— docs: expand networking docs (README + docs/networking.md + UserEngine.ini.example)5e7e3e4(merge commit) — PR #1 from feature/bootstrap-fixes into developWhy this is release-worthy
Test plan
Surfaces all publicly-useful learnings from the first end-to-end world test on the Multipass dune-test VM (Ubuntu 24.04 + k3s), generalized to a universal "what does my topology need?" reference. No personal-host details (no specific WAN IPs, no specific HostIds, no ISP-specific findings). User directive (verbatim, 2026-05-24): "How much of it is 'dont mention we did this' and how much is 'this is super helpful to others' that we can document for the ubuntu setup process? Cause this SHOULD work bare metal, but we are using an ubuntu VM, which either way, that much I know we should document." Changes: * ubuntu-scripts/README.md — three new troubleshooting subsections: - "Network topology — bare-metal vs VM" — explains why VM-based installs need iptables DNAT (game pods use hostNetwork:true and bind to the VM's bridge IP, not the host's LAN IP). Includes the working iptables rule pattern + the persistence step. - "NAT options — choosing your reachability path" — matrix covering real-public-IPv4 / single-NAT / double-NAT / CGNAT / LAN-only, with detection commands and recommended fix per case. Links to docs/networking.md for deeper detail. - "kubectl apply -f /home/dune/.dune/sh-*.yaml resets your world" — the rendered spec ships image tags as 0-0-shipping placeholder, so re-applying it after update-from-downloads or kubectl patch operations overwrites the live-patched state. Treat the rendered YAML as a seed, not the live source of truth. * docs/networking.md (NEW) — the deep design doc: - How HOST_DATACENTER_IP_ADDRESS announces work - Game-server port architecture (UDP 7777-7889 + TCP 31982) - Bare-metal vs VM topology with ASCII diagrams - Full iptables DNAT pattern for VM installs - NAT-piercing options for every common residential topology (single-NAT, double-NAT, CGNAT, LAN-only) with concrete commands - Tunnel-service options (Playit.gg, Tailscale Funnel, Cloudflare Spectrum, self-hosted WireGuard) - Diagnostic commands (ss listener check, tcpdump on WAN, director log search, iptables counter check) - Common failure-mode lookup table * ubuntu-scripts/examples/UserEngine.ini.example (NEW) — annotated example CVar overrides anyone can use as a starting point. Includes: - Sandworm tuning block - Sandstorm + treasure - World-border kill-mechanisms DISABLED (Hazard.EnableQuicksandOnIGWBorders, Vehicle.LevelBorders*) — for friend-server sandbox use - Resource yield multipliers (commented out, pointing to Funcom defaults) - Vehicle fuel multiplier (dw.VehiclePowerConsumptionMultiplier=0) flagged with the "this is Funcom-internal dw.* namespace, verify on your build" caveat - Player-death loot toggle (commented out, for PvE-friendly configs) Personal-host details (specific WAN/HostId/ISP topology) deliberately kept out — those stayed in the session conversation and are not part of the public release.