Skip to content

Doorstop still doesnt work on first launch #34

@CptMoore

Description

@CptMoore

version: v4.0.0 release
platform: Windows
game: BattleTech
distribution: Steam

Issue;
Doorstop uses ENV variables to keep track if it already ran, but dynamically set ENV variables are copied by steam during a restart of the games process.

Steps to reproduce:

  • make sure steam is not running
  • launch BATTLETECH directly via BattleTech.exe (have steam not running)
  • steam code detects that it needs to restart, that happens apparently after doorstop already ran
  • the game restarts with env variables set from the previous run, that includes env variables set dynamically by doorstop
  • thus doorstop thinks it doesnt need to run anymore

Workarounds not working:

  • ignore_disable_switch does not work, because the ENV variable DOORSTOP_INITIALIZED is set too, and that leads to skipping of calling the entrypoint
  • using a steam_appid.txt file so steam does not restart the game, however steamworks is broken and the game does not work properly (NRE etc..)
  • Always use the steam launcher: There are wrappers / launchers that ignore that and run the exe directly, and users who run the exe directly too.

Fix ideas?

  • Clear all dynamically set doorstop env variables if doorstop detects that it is in a new unmodified process, leading to doorstop to run again.

Reference for RogueTech Discord: #rogueticket-7596

Logs when using the ignore_disable_switch workaround:
log before restart
log after restart

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions