Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 

Repository files navigation

No Generative AI was used in the making of this
To either request support or contribute findings to the project, our discord server can be found here

IF YOU HAVE ANY QUESTIONS OR DESIRE TO MAKE A CONTRIBUTION, MY CONTACTS ARE AS FOLLOWS.

Email: sqookymrsmiku@proton.me
Discord: _bluster_
Steam: https://steamcommunity.com/id/happylilsqooky/

Deadlock-Optimization-Resources

This Repository seeks to act similar to an awesome-list where it is a list of resource and documentation on how to utilize and apply them.
Please contribute as I am not all knowing

Contents

Ingame-Adjustments

gameinfo.gi Modifications

  • My Performance Config Repo
    As far as I am aware boot's and Kaizuchanru's configs provide the best frametime. My config provides optimizations but attempts to maintain the visual fidelity of normal deadlock

Launch Options

These are the only launch options I am aware of that actually do anything of substance

  • -threads x
    How many threads to use, replace x with whatever you want, the Valve Wiki says "your cores +1". This should only be needed if your computer is relatively low power as it might mess up threading on systems with better cpus

  • -high Pretty sure this tells the os to give it higher priority. This also shouldn't be needed unless the system is poor.

Rendering Backend

  • DirectX11
    Launch command is -dx11. As time has passed vulkan seems to run better for myself and others. Only supports FSR2.

  • Vulkan
    Launch command is -vulkan. Runs better than DX11 from my testing. Supports FSR3

  • DXVK
    DXVK seems to increase frame stability for older gpus and with newer AMD GPUs improves framerates. It might require cacheing of shaders again. It is automatically used when running in DX11 through Proton on Linux, but must be installed manually on Windows.

Guide to installing DXVK on windows to install dxvk you need to 1. Go to this link, https://github.com/doitsujin/dxvk/releases 2. Download dxvk-2.7.1.tar.gz 3. Use 7zip to unzip dxvk-2.7.1.tar.gz 4. Then put the files d3d11.dll and dxgi.dll in the directory steamapps/common/Deadlock/game/bin/win64

These Don't do Anything (to the Extent of my Knowledge)

  • -noassert
    This should dispell the purple warnings in console when something in the code breaks but it seems to send them anyway.
  • +@panorama_min_comp_layer_cache_cost_TURNED_OFF 256
    The + prefix indicates this is a command we're executing in the dev console, but this command doesn't exist. I don't know where it comes from.

Launch Options I Could Find From Poking Around in the Code

  • -allow_third_party_software
    Lets things hook into the application or at least run custom code I believe? not fully sure.
  • -insecure
    Disables the anti-cheat. Most useful for mods
  • -steampath
    Use a custom steam path I think?
  • -tools
    Launches the dev tools! Deadlock doesn't ship with dev tools tho...
  • -trusted
    Not sure what this does

Do not play with these. They could cause issues. I don't know what they do.

  • -debugbreak
  • -nocrashdialog
  • -noiocp

List of Every Launch Flag

The majority of these will do nothing or not reach the dll they come from. This is just more for my own personal posterity.
  • --disallow-code-generation-from-strings
  • --jitless
  • --stack-size=%d
  • -0000
  • -5?KYks
  • -5dI
  • -5x5
  • -64OS
  • -9D\t/9a
  • -?Vb,?H$+?Z
  • -AvRJ
  • -BH>t
  • -BH>t
  • -D AMD_MEDIA_OPS
  • -D65K
  • -DBF
  • -Infinity
  • -JCN
  • -NE2
  • -Normal
  • -Q"Ej
  • -RestartSelfFromAlternateLocation_RelaunchTime
  • -Stop:
  • -Subnormal
  • -UUSW
  • -U`5K
  • -VXW
  • -Zero
  • -\6G5
  • -abandoned
  • -aggs
  • -all
  • -applaunch %d
  • -assert
  • -assert_content
  • -attachtodebugger
  • -auto -title "auto_bug %04d-%02d-%02d %02d:%02d:%02d"
  • -breakimmediately
  • -bugvoice
  • -bugvoice
  • -cached
  • -camdistance
  • -cammousemove
  • -chatwheel
  • -chatwheel_pingwheel
  • -citadel_swtich_player_cam
  • -cl-fast-relaxed-math
  • -cl-mad-enable
  • -classes
  • -cloth
  • -codemsg "
  • -component
  • -con_logfile
  • -consoleapp
  • -consolelog
  • -diff
  • -dx11
  • -dxlevel
  • -dxlevel %s: %s
  • -emaildumps
  • -empty
  • -enable_qaccessible
  • -error
  • -extended
  • -herochatwheel
  • -in_ability_ping
  • -inf
  • -inf
  • -instance
  • -l34
  • -l34
  • -loose
  • -mB:t
  • -mB:t
  • -mem
  • -mem
  • -memory-
  • -more
  • -multiple
  • -multiple_tools_instances
  • -narrow
  • -no model-
  • -noautoargs
  • -nofocus
  • -noscreenshot
  • -novconsole
  • -perfectworld
  • -person
  • -product
  • -psrs
  • -report
  • -retail
  • -retire
  • -rollback
  • -rtest1
  • -rtx
  • -s2-mix-blend-mode
  • -s2-mix-blend-mode
  • -sSO\
  • -save
  • -sdk
  • -sdk
  • -shaderdebugging
  • -shadowTargetSize
  • -short
  • -show_ability_upgrade_radial
  • -show_none
  • -show_used_combos
  • -snap
  • -snapshots
  • -stream
  • -stream end
  • -testmode
  • -testmode
  • -testscript
  • -testscript_inline
  • -ticks
  • -toggle
  • -touch
  • -vulkan
  • -vulkan_disable_validation_core_checks
  • -vulkan_disable_validation_object_lifetimes
  • -vulkan_disable_validation_shaders
  • -vulkan_disable_validation_unique_handles
  • -vulkan_enable_gpu_validation
  • -vulkan_enable_sync_validation
  • -vulkan_enable_thread_safety_validation
  • -world
  • -worldwide

External-Adjustments

Upscaling Tomfoolery

A means of modifying upscaling in deadlock. It allows you to force FSR4 and various other cool tweaks. It potentially allows for frame gen to be forced on nvidia gpus, but under linux it only presents the option when running under vulkan, and the debug menu for fg doesn't work. This leads me to believe that it isn't possible but your mileage may vary

Lossless Scaling is a means of allowing external upscaling and frame generation. There is a linux port of the frame gen avalible here.

Windows Specific

Use a Custom ISO

A custom ISO is a modified windows install without any bloat at a base level I've only heard people talk about tiny11, seems good.

Debloat Windows

You generally should ensure that your windows install is debloated.

  • Winutil
    Well documented debloater tool. Generally the most advised.

Process Lasso

Process Lasso Allows you to increase the priority of Deadlock in regards to windows CPU allocation. It can be downloaded here

Linux Specific

Enviornment Variable Settings

  • ENABLE_LAYER_MESA_ANTI_LAG=1 Experimental Mesa anti-lag layer
  • PROTON_FSR4_UPGRADE=1 Makes older GPUs use FSR4 in place of FSR3 (I think)
  • PROTON_FSR4_RDNA3_UPGRADE=1 Makes newer GPUs use FSR4 in place of FSR3
  • PROTON_ENABLE_WAYLAND=1 Forces proton to run native in wayland. Seemed to make the game run smoother
  • PROTON_NO_WM_DECORATION=1 Disables window decoration, can help with window snapping on select compositors, but usually won't be needed.
  • MANGOHUD=1 Needs Mangohud, you already know what it is. Useful for checking performance stats.

So for example using all of these would look something like ENABLE_LAYER_MESA_ANTI_LAG=1 PROTON_FSR4_RDNA3_UPGRADE=1 PROTON_ENABLE_WAYLAND=1 MANGOHUD=1 gamemoderun %command% -vulkan

Cpu

You should utilize a tool such as cpupower or gamemoderun to ensure your cpu is set to performance mode.

Gpu

AMD GPUs

Make sure your MESA drivers are up to date. You can use software such as LACT or CoreCTRL to make sure your GPU's performance governor is set properly

Nvidia GPUs

  • Make sure you're using an x11 based window manager/desktop enviornment. As far as I'm aware nvidia gpus still perform marginally worse under wayland

OS

Desktop Enviornment

Some desktop enviornments are more performance heavy than others. You can consider using a standalone wm if you're desperate for performance. The ones I would recommend from personal experience are as follows:

  • MangoWC
    Runs under wayland, pretty versatile and well optimized
  • i3
    It's like driving a brick at two hundred miles an hour.
  • fvwm3
    While it is incredibly performant and I absolutely adore fvwm3, it is incredibly barebones and old.

Kernel

Ntsync Performance Module

You can enable the Ntsync performance module which should help with frametimes by running

sudo mkdir -p /etc/modules-load.d/
echo 'ntsync' | sudo tee /etc/modules-load.d/ntsync.conf
Performance Kernels

There are various performance oriented kernels

  • CachyOS' Kernel. Most notably using the BORE CPU scheduler with various other patches targeting performance.

  • Liquorix I don't have much experience with Liquorix so I can't offer much insight but it seems to be actively developed

  • Linux-Tachyon The isolated kernel from Intel's ClearLinux, it should provide a performance boost on Intel machines but I don't have the means to test it on an AMD CPU. Also obligatory Death Grips reference.

  • Xanmod Seems to be a bit slow on development but was more popular in the past.

  • TKG TKG's kernel needs to be manually compiled to select their performance options but it runs very well and is updated regularly.

Proton

Various versions of proton could yield a marginal performance boost.

Event Tracing

Event tracing is a powerful way of profiling everything going on in your device. While this is a minor security risk, tracking down the cause of performance issues like stutters is trivial when tracing. Useful for finding what your pc's weakpoint is.

Windows Specific

Valve recommends the player trace with Event Tracing for Windows (ETW). ETW-related apps suited for Deadlock are:

Linux Specific

Valve doesn't explictly recommend any tools for linux, although my personal recommendation is perf.

About

This Repository seeks to act similar to an awesome-list where it is a list of resource and documentation on how to utilize and apply them. Additionally it being a github repository allows for easier seo and contribution from other members of the community.

Topics

Resources

Stars

14 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors