Prove the pipeline end to end: a minimal mod in mod/, loaded by TpF3, with a visible log line or effect. HITL: the human launches the game and confirms. Also settle whether the modId must equal the folder name haylan_tf3_overtake.
Part of #1
Blocked by: #9
## Question
Prove the pipeline end to end: a minimal mod in mod/, loaded by TpF3, with a visible log line or effect. HITL: the human launches the game and confirms. Also settle whether the modId must equal the folder name haylan_tf3_overtake.
The game detects mod/ from the staging area as haylan_tf3_overtake (stdout: new ModHubMod was installed and will be added to filesystem haylan_tf3_overtake ... (source: StagingArea)).
print reaches stdout.txt. preRunFn runs on every mod (re)load; postRunFn runs once a game is started (pre then post on game load). The mod produced no errors.
The game loads .tl directly: there's no build step and no .lua in mod/. tl check is only for type-checking.
Log location (Steam, this machine):E:\Program Files (x86)\Steam\userdata\94065030\3493540\local\crash_dump\stdout.txt (general form <Steam>\userdata\<steamid>\3493540\local\crash_dump\stdout.txt). The agent can read it directly.
modId vs. folder name: both are haylan_tf3_overtake, and that works. Whether they must match wasn't tested. Keep them equal; it doesn't block anything on this map.
## Resolution
Pipeline proven end to end (2026-10-05).
- The game detects `mod/` from the staging area as `haylan_tf3_overtake` (stdout: `new ModHubMod was installed and will be added to filesystem haylan_tf3_overtake ... (source: StagingArea)`).
- `print` reaches `stdout.txt`. `preRunFn` runs on every mod (re)load; `postRunFn` runs once a game is started (pre then post on game load). The mod produced no errors.
- **The game loads `.tl` directly**: there's no build step and no `.lua` in `mod/`. `tl check` is only for type-checking.
- **Log location (Steam, this machine):** `E:\Program Files (x86)\Steam\userdata\94065030\3493540\local\crash_dump\stdout.txt` (general form `<Steam>\userdata\<steamid>\3493540\local\crash_dump\stdout.txt`). The agent can read it directly.
- **modId vs. folder name:** both are `haylan_tf3_overtake`, and that works. Whether they *must* match wasn't tested. Keep them equal; it doesn't block anything on this map.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Part of #1
Blocked by: #9
Question
Prove the pipeline end to end: a minimal mod in mod/, loaded by TpF3, with a visible log line or effect. HITL: the human launches the game and confirms. Also settle whether the modId must equal the folder name haylan_tf3_overtake.
Resolution
Pipeline proven end to end (2026-10-05).
mod/from the staging area ashaylan_tf3_overtake(stdout:new ModHubMod was installed and will be added to filesystem haylan_tf3_overtake ... (source: StagingArea)).printreachesstdout.txt.preRunFnruns on every mod (re)load;postRunFnruns once a game is started (pre then post on game load). The mod produced no errors..tldirectly: there's no build step and no.luainmod/.tl checkis only for type-checking.E:\Program Files (x86)\Steam\userdata\94065030\3493540\local\crash_dump\stdout.txt(general form<Steam>\userdata\<steamid>\3493540\local\crash_dump\stdout.txt). The agent can read it directly.haylan_tf3_overtake, and that works. Whether they must match wasn't tested. Keep them equal; it doesn't block anything on this map.