Repository navigation
v0.1.8
Granular diagnostics for the most common bug reports.
Injection failures. The vague "DLL injection timeout or failed: 258" line now turns into one of three actionable messages depending on what actually went wrong:
- Game crashed mid-injection — usually SmartScreen/AV killed it. Suggests unblocking + adding an exclusion.
- LoadLibrary hung past 5s — DLL is blocked (Mark of the Web), antivirus scanning, missing runtime, or non-ASCII path. Suggests right-click → Properties → Unblock.
- LoadLibrary returned NULL — DLL was rejected outright. Same set of suggestions, all spelled out in-message.
The launcher's console now also emits Inject: … lines as the injection progresses so we can see how far it got before failing. Polled in 250 ms increments instead of one big 5s wait, so a process exit during injection is caught immediately.
WM_QUIT diagnostics. The trampoline's WM_QUIT — exiting log now includes wParam + hwnd. wParam=0 is normal close; anything else means the game's own startup code asked to quit (DirectDraw/DirectInput init failure on that user's GPU/AV environment is the typical cause). Helps users with a 4ms-after-launch crash get a useful bug-report line.
This release is diagnostics only — no behavior changes. If you're already on v0.1.7 and things work, you don't need to update; this just makes failure modes legible for users hitting them.