Graveyard Keeper

Graveyard Keeper

Not enough ratings
Fix Crashing on Launch
By Avianographer
If you experience a crash when launching Graveyard Keeper and have the Citrix Workspace application installed, this guide is for you.
   
Award
Favorite
Favorited
Unfavorite
Summary
Graveyard Keeper is built using the Unity development platform. The Unity Player, which is responsible for executing the game's code, has a known issue parsing virtual display adapters. This causes Unity Player to throw an exception and exit the program. Since Citrix Workspace installs one such virtual display adapter by default, this will cause Graveyard Keeper to crash on launch.
Cause
When Unity initializes the display adapters for use in the game, it performs the following steps.

  1. Queries the Windows Management Instrumentation (WMI) namespace for display adapters using the GetDisplayAdapterPropertyWMI Unity function.
  2. Queries each display adapter's driver for version information.
  3. Determines the appropriate display adapter to use.
  4. Places the display adapter into Direct3D mode.
  5. Creates a graphics object for the developer to use.

When Unity receives the information from WMI, it is explicitly expecting "SUBSYS_" to be part of the PNPDeviceID string. Virtual display adapters do not have "SUBSYS_" in their PNPDeviceID string, so Unity throws an exception and exits.
Resolution
In order to fully resolve this issue without the use of a workaround (see below), the developer must build their game with a version of Unity after 2017.4.16f1 or 2018.2.17f1 and deploy the updated files to users.
Workaround
In the absence of an update from the developer, the following steps may be completed in order to work around this issue.

  1. Begin by uninstalling the Citrix Workspace application. Even though the uninstaller will not prompt you to do so, you must reboot after completing this step. The virtual display adapter is not fully removed until you do.
  2. Download the latest version of the Citrix Workspace installer[www.citrix.com].
  3. Open an elevated Command Prompt window. If you are unfamiliar with how to do so, here is a guide from Bleeping Computer[www.bleepingcomputer.com].
  4. Navigate to the location to which you downloaded the installer. If this is your Downloads folder (the default location), you would type
    cd C:\Users\<yourusername>\Downloads
    Replace <yourusername> with your Windows user name. (e.g. C:\Users\Avian\Downloads)
  5. Run this command to execute the Citrix Workspace installer and exclude the virtual display adapter.
    CitrixWorkspaceApp.exe ADDLOCAL=ReceiverInside,ICA_Client,AM,SELFSERVICE,DesktopViewer,Flash,Vd3d,WebHelper,BrowserEngine
    Note: This should be a single line. If your Steam application or web browser splits this into two separate lines, you must combine them again with a space between "CitrixWorkspaceApp.exe" and "ADDLOCAL=".
  6. The installation will proceed normally. It is recommended to reboot your system after this installation.