Search Unity

32/64bit windows build launcher, shares data folder

Discussion in 'Windows' started by ShuuGames, Sep 29, 2017.

  1. ShuuGames

    ShuuGames

    Joined:
    Jun 25, 2013
    Posts:
    188
    Check out this launcher that I made for running Unity Windows standalone builds. It does two things:
    • execute either 32 or 64 bit version of your game from the same folder
    • detect application crash and tell player to send output log to developers
    Here's ulauncher github page.

    This is pretty simplistic, but does what it's supposed to do. It should run on 32 and 64bit win7, 8 and 10. It'd be great if you can try and report where it works and what issues you encounter.

    Here's a pic from a "Shortest Trip to Earth" game directory where we use it.
     
    Last edited: Sep 29, 2017
    mgear likes this.
  2. ShuuGames

    ShuuGames

    Joined:
    Jun 25, 2013
    Posts:
    188
    An update. After some testing we're convinced that this launcher works well enough and in a few days our game will officially start using it.

    Here's a link to Shortest Trip download to see the launcher in action (once we upload the same zip to IndieDb, gamejolt and itch I update this link)
     
  3. ShuuGames

    ShuuGames

    Joined:
    Jun 25, 2013
    Posts:
    188
    Since Unity 2017.1 the same can be done without launcher. See https://github.com/tlaasik/ulauncher/blob/master/INSTRUCTIONS.md

    1. Make win64 build of your game, this will be your working folder
    • Rename data folder to "Data"
    • Rename UnityEngine.dll to UnityEngine.d64
    • If using mono 2.0 rename "Data\Mono\mono.dll"->"Data\Mono\mono.d64"
    • If using mono 4.6 rename Rename "Data\MonoBleedingEdge\EmbedRuntime\mono-2.0-bdwgc.dll"->"Data\MonoBleedingEdge\EmbedRuntime\mono-2.0-bdwgc.d64"
    2. Make win32 build of your game
    • Copy win32 exe into working folder so that it has different name from 64bit exe file (like "Game32.exe")
    • Copy win32 UnityEngine.dll into working folder with name UnityEngine.d86
    • Copy win32 Mono DLL from data folder into working folder just like before, but now with ".d86" extension
    3. Edit binary files
    • Open UnityEngine.d64 with hex editor or text editor that can handle binary files (like Notepad++)
    • Search and replace "mono.dll" with "mono.d64"
    • Search and replace "mono-2.0-bdwgc.dll" with "mono-2.0-bdwgc.d64"
    • Open UnityEngine.d86 and repeat for d86 extension ("mono.dll"->"mono.d86", "mono-2.0-bdwgc.dll"->"mono-2.0-bdwgc.d86")
    Final working folder should have 2 exe files, UnityEngine.d86, UnityEngine.d64 and Data/. One exe runs 32bit version, another 64bit version.