Add reconnect + graceful-disconnect tasks to the roadmap
Split the roadmap into Current tasks and Future work. Current tasks (new, this session): - Graceful disconnect asks the DLL to disable all subsystems (game runs vanilla, DLL stays injected/dormant), on an explicit Disconnect and on graceful exit. - Reconnect to an already-injected DLL, including across a tool restart/crash, by detecting the live DLL via its IPC heartbeat and re-attaching to the same per-pid section without re-injecting. DLL self-cleanup on host crash is out of scope by design. Future work: the pre-existing open directions (per-game profiles, multi-guest pad mapping, raw-mouse movement forwarding, native-D3D12 capture path), moved under their own subsection so they read as deferred rather than active. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
16
README.md
16
README.md
@@ -108,7 +108,21 @@ default** and covers anything the hooked path doesn't.
|
||||
|
||||
## Roadmap
|
||||
|
||||
Open tasks (completed work lives in **Lessons learned** + the test suite, not here):
|
||||
Completed work lives in **Lessons learned** + the test suite, not here.
|
||||
|
||||
### Current tasks
|
||||
|
||||
- **Graceful disconnect unhooks everything.** On an explicit *Disconnect* and on a graceful tool
|
||||
exit, ask the injected DLL to disable *all* subsystems so the game runs exactly as if it was never
|
||||
hooked (every hook's original bytes restored). The DLL stays injected but dormant — ready for a
|
||||
later reconnect. Today neither path tells the DLL anything, so the hooks are left active/frozen.
|
||||
- **Reconnect to an already-injected DLL.** Support disconnect → reconnect reusing the DLL that's
|
||||
already in the game, *including across a tool restart or crash*: the host detects the live DLL
|
||||
(via its advancing IPC heartbeat on the per-pid section), re-attaches to the same shared section,
|
||||
and resumes control without re-injecting. (DLL self-cleanup on host *crash* is explicitly **not**
|
||||
required — relaunch, reconnect, then disconnect gracefully to clean up.)
|
||||
|
||||
### Future work
|
||||
|
||||
- **Per-game profiles** — persist each game's subsystem / capture-mode / audio choices and re-apply
|
||||
them on attach.
|
||||
|
||||
Reference in New Issue
Block a user