# System-wide .box64rc 

# Note that process name are case insensitive!

#
# Linux process
# 
[3dSen.x86_64]
BOX64_DYNAREC_BLEEDING_EDGE=0   # avoid the use of STRONGMEM for much better performances
BOX64_DYNAREC_SAFEFLAGS=0
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_FORWARD=1024
BOX64_DYNAREC_CALLRET=1
BOX64_MAXCPU=4  # surprisingly, having too much cpu core slow down things.4 is more than enough here
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[7z]
# Those are safe to use on 7z and give a bit of a boost
BOX64_DYNAREC_SAFEFLAGS=0
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_FORWARD=512
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[7zz]
# Those are safe to use on 7z and give a bit of a boost
BOX64_DYNAREC_SAFEFLAGS=0
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_FORWARD=512
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[bash]
# LOG tend to mess up script execution in bash
BOX64_LOG=0
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[beyond-all-reason]
BOX64_MALLOC_HACK=2

[Broforce.x86_64]
BOX64_DYNAREC_SAFEFLAGS=0
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_FORWARD=1024
BOX64_DYNAREC_CALLRET=1
BOX64_MAXCPU=4  # surprisingly, having too much cpu core slow down things.4 is more than enough here

[chrome]
BOX64_MALLOC_HACK=2

[deadcells]
BOX64_PREFER_EMULATED=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[dontstarve]
# use emulated sdl2
BOX64_EMULATED_LIBS=libSDL2-2.0.so.0

[dontstarve_steam_x64]
BOX64_EMULATED_LIBS=libSDL2-2.0.so.0

[dota2]
BOX64_CRASHHANDLER=1
BOX64_DYNAREC_STRONGMEM=1

[EtG.x86_64]
BOX64_MAXCPU=4  #it will crash with too many cpu, 4 is enough anyway

[factorio]
BOX64_DYNAREC_SAFEFLAGS=0
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_FORWARD=1024
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_FASTROUND=0
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[BALDI.x86_64]
BOX64_DYNAREC_STRONGMEM=1 #little to no performance impact also makes game not crash
BOX64_PREFER_EMULATED=1

[Baldi's Fun New School Plus Ultimate Edition.x86_64]
BOX64_DYNAREC_STRONGMEM=2 #needed paramiter or else it just dies
BOX64_PREFER_EMULATED=1

[picohot]
# good game
BOX64_DYNAREC_STRONGMEM=1 #needed or else it just crashes
BOX64_CRASHHANDLER=0
BOX64_PREFER_EMULATED=1

[Start Survey Linux.x86_64]
BOX64_DYNAREC_STRONGMEM=2 #Likes to crash without it
BOX64_PREFER_EMULATED=1

[My Dystopian Robot Girlfriend.x86_64]
BOX64_DYNAREC_STRONGMEM=3 # Fixes memory leak related crashes
BOX64_CRASHHANDLER=0 # Better crash handler and not dummy lib
BOX64_PREFER_EMULATED=1 # Load in heavy stuff first

[geekbench6]
BOX64_ENV=BOX64_DYNAREC_STRONGMEM=3
BOX64_ENV1=BOX64_RESERVE_HIGH=1

[geekbench5]
BOX64_ENV=BOX64_DYNAREC_BIGBLOCK=2
BOX64_ENV1=BOX64_DYNAREC_FORWARD=1024
BOX64_ENV2=BOX64_DYNAREC_CALLRET=1

[GridAutosport]
#BOX64_DYNAREC_BIGBLOCK=2
BOX64_NOSANDBOX=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1
BOX64_MAXCPU=16

[Kingdom Rush Origins]
BOX64_RESERVE_HIGH=1
BOX64_EMULATED_LIBS=libmpg123.so.0:libvorbisfile.so.3:libvorbis.so.0:libogg.so.0:libSDL2-2.0.so.0

[heroic]
BOX64_NOSANDBOX=1
BOX64_INPROCESSGPU=1
BOX64_MALLOC_HACK=2
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1
BOX64_DYNAREC_STRONGMEM=1

[heaven_x64]
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_FORWARD=1024
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_SAFEFLAGS=0

[Hue.x86_64]
BOX64_MAXCPU=16

[Kingdom.x86_64]
BOX64_MAXCPU=4

[LotCG.x86_64]
BOX64_DYNAREC_FASTROUND=0

[Mini Metro]
BOX64_ADDLIBS=libstdc++.so.6

[nacl_helper]
BOX64_MALLOC_HACK=1

[NuclearBlaze]
BOX64_EMULATED_LIBS=libopenal.so.1
BOX64_DYNAREC_SAFEFLAGS=0
#BOX64_DYNAREC_BIGBLOCK=3
#BOX64_DYNAREC_FORWARD=1024
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[OxygenNotIncluded]
BOX64_DYNAREC_FASTROUND=0

[pressure-vessel-wrap]
BOX64_NOGTK=1

[ProjectZomboid64]
# This one is still a bit unstable. This might help, but will also slowdown emulation
BOX64_DYNAREC_STRONGMEM=3
BOX64_DYNAREC_SAFEFLAGS=2
BOX64_DYNAREC_ALIGNED_ATOMICS=1
BOX64_JVM=0
BOX64_SSE42=0
BOX64_MAXCPU=4

[Soma.bin.x86_64]
# This is needed or the physics engine will not behave correctly
BOX64_DYNAREC_FASTROUND=0

[spotify]
BOX64_NOSANDBOX=1
BOX64_INPROCESSGPU=1
BOX64_DYNAREC_STRONGMEM=1
BOX64_MALLOC_HACK=2
# this is to save some memory
BOX64_DYNAREC_BIGBLOCK=0

[steam]
BOX64_CRASHHANDLER=1
BOX64_EMULATED_LIBS=libudev.so.0

[streaming_client]
BOX64_EMULATED_LIBS=libSDL2-2.0.so.0:libSDL2_ttf-2.0.so.0

#[steamwebhelper]
#BOX64_NOSANDBOX=1
#BOX64_INPROCESSGPU=1
#BOX64_LOG=0
#BOX64_MALLOC_HACK=2
#BOX64_DYNAREC_BIGBLOCK=0
#BOX64_DYNAREC_CALLRET=1
#BOX64_DYNAREC_STRONGMEM=2

[steamwebhelper.exe]
BOX64_DYNAREC_STRONGMEM=4
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_SAFEFLAGS=2

[steam.exe]
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_STRONGMEM=1
BOX64_CEFDISABLEGPU=1

[steam-runtime-check-requirements]
BOX64_EXIT=1

[steam-runtime-launcher-service]
BOX64_NOGTK=1
BOX64_EXIT=1

[ShovelKnight]
BOX64_SDL2_JGUID=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[Torchlight2.bin.x86_64]
# Those are safe to use on 7z and give a bit of a boost
BOX64_DYNAREC_SAFEFLAGS=0
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_FORWARD=512
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[ToTheMoon.bin.x86_64]
BOX64_PREFER_EMULATED=1

[trine3_linux_64bit]
BOX64_DYNAREC_STRONGMEM=1

[weixin]
BOX64_MALLOC_HACK=2
BOX64_NOSANDBOX=1
BOX64_INPROCESSGPU=1
BOX64_DYNAREC_FASTROUND=0

[wine]
BOX64_MAXCPU=64

[wine64]
BOX64_MAXCPU=64

[zoom]
BOX64_DYNAREC_CALLRET=0 # prevent segfaulting

#
# Wine process
#

[artofrally.exe]
BOX64_DYNAREC_STRONGMEM=1

[BatmanAK.exe]
BOX64_DYNAREC_STRONGMEM=1
BOX64_DYNAREC_ALIGNED_ATOMICS=1

[Battle.net.exe]
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_SAFEFLAGS=2
BOX64_DYNAREC_STRONGMEM=1
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_ALIGNED_ATOMICS=0

[CapcomArcadeStadium.exe]
BOX64_DYNAREC_STRONGMEM=1
BOX64_NOGTK=1

[CapcomArcade2ndStadium.exe]
BOX64_DYNAREC_STRONGMEM=1
BOX64_NOGTK=1

[Cat Quest.exe]
BOX64_DYNAREC_STRONGMEM=1

[Celeste.exe]
BOX64_DYNAREC_SAFEFLAGS=2

[CrysisRemastered.exe]
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_STRONGMEM=1

[DaveTheDiver.exe]
BOX64_DYNAREC_STRONGMEM=1

[DOOMx64.exe]
BOX64_DYNAREC_SAFEFLAGS=0

[DOOMx64vk.exe]
BOX64_DYNAREC_SAFEFLAGS=0

[Doors Paradox.exe]
BOX64_DYNAREC_STRONGMEM=1

[Fallout4.exe]
BOX64_DYNAREC_STRONGMEM=1

[FL64.exe]
BOX64_DYNAREC_STRONGMEM=1
BOX64_DYNAREC_SAFEFLAGS=2
BOX64_DYNAREC_CALLRET=0 # prevent segfaulting

[flatout.exe]
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_BIGBLOCK=3

[FlatOut2.exe]
BOX64_DYNAREC_CALLRET=1
BOX64_DYNAREC_BIGBLOCK=3

[ForzaHorizon4.exe]
BOX64_DYNAREC_STRONGMEM=1   #prevent random crashes it seems
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_FASTROUND=0   #needed or interior view are borken, among other things

[ForzaWebHelper.exe]
BOX64_DYNAREC_STRONGMEM=3
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_SAFEFLAGS=2
BOX64_DYNAREC_CALLRET=0
    
[GenshinImpact.exe]
BOX64_DYNAREC_STRONGMEM=1
BOX64_DYNAREC_SAFEFLAGS=2

[HorizonZeroDawn.exe]
BOX64_DYNAREC_STRONGMEM=1
BOX64_RDTSC_1GHZ=1

[INSIDE.exe]
BOX64_DYNAREC_STRONGMEM=1

[MassEffect.exe]
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_SAFEFLAGS=2
BOX64_DYNAREC_STRONGMEM=1
BOX64_DYNAREC_X87DOUBLE=1
BOX64_DYNAREC_FASTROUND=0

[MinutesTillDawn.exe]
BOX64_DYNAREC_STRONGMEM=1

[MMRX.exe]
BOX64_DYNAREC_STRONGMEM=1

[RocketLeague.exe]
BOX64_DYNAREC_SAFEFLAGS=2
BOX64_DYNAREC_STRONGMEM=1

[Risk of Rain 2.exe]
BOX64_DYNAREC_STRONGMEM=1

[Sunblaze.exe]
BOX64_DYNAREC_STRONGMEM=1

[witcher3.exe]
BOX64_DYNAREC_STRONGMEM=1

[Unturned.exe]
BOX64_DYNAREC_SAFEFLAGS=2

[YandareSimulator.exe]
BOX64_DYNAREC_STRONGMEM=2
BOX64_DYNAREC_SAFEFLAGS=2
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_CALLRET=0

[GoatGame]
BOX64_DYNAREC_STRONGMEM=1