Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

UE4cfgdumper Switch: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 4: Line 4:
|description=Dump RAM pointers to graphics settings.
|description=Dump RAM pointers to graphics settings.
|author=masagrator
|author=masagrator
|lastupdated=2024/02/01
|lastupdated=2024/10/11
|type=Utilities
|type=Utilities
|version=1.0.6
|version=1.1.3
|license=GPL-3.0
|license=GPL-3.0
|download=https://dlhb.gamebrew.org/switchhomebrews/ue4cfgdumperswitch.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/ue4cfgdumperswitch.7z
Line 27: Line 27:
Currently supported settings:
Currently supported settings:
* t.MaxFPS
* t.MaxFPS
* r.DynamicRes.MaxScreenPercentage
* r.VelocityOutputPass
* r.DefaultFeature.AntiAliasing
* r.TemporalAA.Algorithm
* r.TemporalAA.HistoryScreenPercentage
* r.TemporalAASamples
* r.TemporalAACurrentFrameWeight
* r.TemporalAAFilterSize
* r.TemporalAA.AllowDownsampling
* r.TemporalAAUpsampleFiltered
* r.TemporalAA.R11G11B10History
* r.TemporalAAPauseCorrect
* r.TemporalAACatmullRom
* r.TemporalAA.Quality (only UE5)
* r.TemporalAA.UseMobileConfig (only UE5)
* r.Velocity.EnableVertexDeformation
* r.BasePassOutputsVelocity
* r.VertexDeformationOutputsVelocity
* r.DynamicRes.MinScreenPercentage
* r.SceneColorFringeQuality
* r.ScreenPercentage
* r.Tonemapper.Sharpen
* r.Tonemapper.Quality
* r.TemporalAA.Upsampling
* r.Mobile.ShadingPath
* r.TemporalAA.Quality
* r.LensFlareQuality
* r.LensFlareQuality
* r.BloomQuality
* r.BloomQuality
* r.SceneColorFringeQuality
* r.AmbientOcclusionRadiusScale
* r.AmbientOcclusionRadiusScale
* r.ShadowQuality
* r.ShadowQuality
Line 35: Line 60:
* r.PostProcessAAQuality
* r.PostProcessAAQuality
* r.DepthOfFieldQuality
* r.DepthOfFieldQuality
* r.ScreenPercentage
* r.MSAA.CompositingSampleCount
* r.MSAA.CompositingSampleCount
* r.MobileMSAA
* r.MobileMSAA
Line 46: Line 70:
* r.SkyLightingQuality
* r.SkyLightingQuality
* r.DynamicRes.OperationMode
* r.DynamicRes.OperationMode
* r.DynamicRes.MinScreenPercentage
* r.DynamicRes.MaxScreenPercentage
* r.DynamicRes.FrameTimeBudget
* r.DynamicRes.FrameTimeBudget
* r.Tonemapper.Sharpen
* r.Tonemapper.Quality
* r.Upscale.Quality
* r.Upscale.Quality
* r.DisableDistortion
* r.DisableDistortion
* r.TemporalAA.Upsampling
* r.SSR.Quality
* r.SSR.Quality
* r.SSS.Quality
* r.SSS.Quality
Line 59: Line 78:
* r.RefractionQuality
* r.RefractionQuality
* r.MaxQualityMode
* r.MaxQualityMode
* r.Mobile.ShadingPath
* r.LightFunctionQuality
* r.LightFunctionQuality
* r.SSGI.Enable
* r.SSGI.Enable
Line 87: Line 105:


==Changelog==
==Changelog==
'''v1.1.3'''
* Don't dump R-X sections when trying to get R-- sections
* Stricter size checks so it won't memory overflow
'''v1.1.2'''
* Add new possible description for UE5's <code>r.DynamicRes.MaxScreenPercentage</code> (Fixes issue with finding it in <code>Gori: Cuddly Carnage</code>)
* Fix memory leaks when searching with alternative descriptions
'''v1.1.1'''
* Add new settings to UE4 (thanks to PR [https://github.com/masagrator/UE4cfgdumper/pull/4 #4] )
** <code>r.BasePassOutputsVelocity</code>
** <code>r.VertexDeformationOutputsVelocity</code>
* Better support for UE5 games
** Fix searching for:
*** <code>r.DynamicRes.MinScreenPercentage</code>
*** <code>r.DynamicRes.MaxScreenPercentage</code>
*** <code>r.SceneColorFringeQuality</code>
*** <code>r.ScreenPercentage</code>
*** <code>r.Tonemapper.Sharpen</code>
*** <code>r.Tonemapper.Quality</code>
*** <code>r.TemporalAA.Upsampling</code>
*** <code>r.Mobile.ShadingPath</code>
*** <code>r.TemporalAA.Quality</code>
** Add new settings:
*** <code>r.VelocityOutputPass</code> (which superseeds <code>r.BasePassOutputsVelocity</code>)
*** <code>r.Velocity.EnableVertexDeformation</code> (which superseeds <code>r.VertexDeformationOutputsVelocity</code>)
* Print now not found settings at the end of each pass
'''v1.1.0'''
*Add support for searching:
**r.TemporalAA.Algorithm
**r.TemporalAA.HistoryScreenPercentage
**r.TemporalAASamples
**r.TemporalAACurrentFrameWeight
**r.TemporalAAFilterSize
**r.TemporalAA.AllowDownsampling
**r.TemporalAAUpsampleFiltered
**r.TemporalAA.R11G11B10History
**r.TemporalAAPauseCorrect
**r.TemporalAACatmullRom
**r.TemporalAA.Quality (only UE5)
**r.TemporalAA.UseMobileConfig (only UE5)
*For UE4 games now you can choose to skip searching for FixedFrameRate & CustomTimeStep which can save you few minutes from your life
'''v1.0.8'''
*Add support for searching r.DefaultFeature.AntiAliasing.
'''v1.0.7'''
*Add support for 24 FPS FixedFrameRate search used by Princess Peach Showtime.
'''v1.0.6'''
'''v1.0.6'''
* Add support for searching in Mortal Kombat 1 FixedFrameRate and CustomTimeStep addresses.
* Add support for searching in Mortal Kombat 1 FixedFrameRate and CustomTimeStep addresses.

Latest revision as of 08:22, 12 October 2024

UE4cfgdumper
Ue4cfgdumperswitch.png
General
Authormasagrator
TypeUtilities
Version1.1.3
LicenseGPL-3.0
Last Updated2024/10/11
Links
Download
Website
Source

UE4cfgdumper is a tool that automatically searches for some of the graphics and gameplay settings available in Unreal Engine 4. Instead of doing this manually in Edizon or waiting for the main to disassemble, you can use this tool to get common settings pointers dumped in a few minutes. It requires dmnt:cht (a cheat engine used by Atmosphere) to run.

The tool automatically detects if a game is running on Unreal Engine 4 or 5, prints which version and encoding is in use. It has been tested on games like Hellblade, Borderlands 3, Hogwarts Legacy, Kao the Kangaroo, The Dark Pictures Anthology: Little Hope, Dragon Ball Z KAKAROT, so it should work for at least most UE4 games.

Please note that this tool does not create 60 FPS or resolution cheats, etc. You must make your own cheats based on the results. The tool dumps offsets into two forms: cheats format that contains the address and default value of each setting, and log format that prints name, address + default value not only in hexadecimal but also decimal form.

Currently supported settings:

  • t.MaxFPS
  • r.DynamicRes.MaxScreenPercentage
  • r.VelocityOutputPass
  • r.DefaultFeature.AntiAliasing
  • r.TemporalAA.Algorithm
  • r.TemporalAA.HistoryScreenPercentage
  • r.TemporalAASamples
  • r.TemporalAACurrentFrameWeight
  • r.TemporalAAFilterSize
  • r.TemporalAA.AllowDownsampling
  • r.TemporalAAUpsampleFiltered
  • r.TemporalAA.R11G11B10History
  • r.TemporalAAPauseCorrect
  • r.TemporalAACatmullRom
  • r.TemporalAA.Quality (only UE5)
  • r.TemporalAA.UseMobileConfig (only UE5)
  • r.Velocity.EnableVertexDeformation
  • r.BasePassOutputsVelocity
  • r.VertexDeformationOutputsVelocity
  • r.DynamicRes.MinScreenPercentage
  • r.SceneColorFringeQuality
  • r.ScreenPercentage
  • r.Tonemapper.Sharpen
  • r.Tonemapper.Quality
  • r.TemporalAA.Upsampling
  • r.Mobile.ShadingPath
  • r.TemporalAA.Quality
  • r.LensFlareQuality
  • r.BloomQuality
  • r.AmbientOcclusionRadiusScale
  • r.ShadowQuality
  • r.MotionBlurQuality
  • r.PostProcessAAQuality
  • r.DepthOfFieldQuality
  • r.MSAA.CompositingSampleCount
  • r.MobileMSAA
  • r.MSAACount
  • r.MaxAnisotropy
  • r.ViewDistanceScale
  • r.EyeAdaptationQuality
  • r.Shadow.DistanceScale
  • r.Tonemapper.GrainQuantization
  • r.SkyLightingQuality
  • r.DynamicRes.OperationMode
  • r.DynamicRes.FrameTimeBudget
  • r.Upscale.Quality
  • r.DisableDistortion
  • r.SSR.Quality
  • r.SSS.Quality
  • r.SSS.Scale
  • r.RefractionQuality
  • r.MaxQualityMode
  • r.LightFunctionQuality
  • r.SSGI.Enable
  • r.SSGI.Quality
  • r.GTSyncType
  • foliage.LODDistanceScale
  • r.Streaming.FullyLoadUsedTextures
  • r.TonemapperFilm
  • r.SecondaryScreenPercentage.GameViewport
  • r.VSync
  • rhi.SyncInterval
  • bUseFixedFrameRate (search method for this and next ones is not compatible with games using older UE than 4.19)
  • bSmoothFrameRate
  • FixedFrameRate
  • CustomTimeStep

User guide

Run game and wait for main menu to appear.

Run UE4cfgdumper.

When it's finished, it will print at the end where files are saved. It follows pattern: sdmc:/switch/ue4cfgdumper/*title_id*/*build_id*.txt and .log.

Media

UE4cfgdumper test run (Marek)

Changelog

v1.1.3

  • Don't dump R-X sections when trying to get R-- sections
  • Stricter size checks so it won't memory overflow

v1.1.2

  • Add new possible description for UE5's r.DynamicRes.MaxScreenPercentage (Fixes issue with finding it in Gori: Cuddly Carnage)
  • Fix memory leaks when searching with alternative descriptions

v1.1.1

  • Add new settings to UE4 (thanks to PR #4 )
    • r.BasePassOutputsVelocity
    • r.VertexDeformationOutputsVelocity
  • Better support for UE5 games
    • Fix searching for:
      • r.DynamicRes.MinScreenPercentage
      • r.DynamicRes.MaxScreenPercentage
      • r.SceneColorFringeQuality
      • r.ScreenPercentage
      • r.Tonemapper.Sharpen
      • r.Tonemapper.Quality
      • r.TemporalAA.Upsampling
      • r.Mobile.ShadingPath
      • r.TemporalAA.Quality
    • Add new settings:
      • r.VelocityOutputPass (which superseeds r.BasePassOutputsVelocity)
      • r.Velocity.EnableVertexDeformation (which superseeds r.VertexDeformationOutputsVelocity)
  • Print now not found settings at the end of each pass

v1.1.0

  • Add support for searching:
    • r.TemporalAA.Algorithm
    • r.TemporalAA.HistoryScreenPercentage
    • r.TemporalAASamples
    • r.TemporalAACurrentFrameWeight
    • r.TemporalAAFilterSize
    • r.TemporalAA.AllowDownsampling
    • r.TemporalAAUpsampleFiltered
    • r.TemporalAA.R11G11B10History
    • r.TemporalAAPauseCorrect
    • r.TemporalAACatmullRom
    • r.TemporalAA.Quality (only UE5)
    • r.TemporalAA.UseMobileConfig (only UE5)
  • For UE4 games now you can choose to skip searching for FixedFrameRate & CustomTimeStep which can save you few minutes from your life

v1.0.8

  • Add support for searching r.DefaultFeature.AntiAliasing.

v1.0.7

  • Add support for 24 FPS FixedFrameRate search used by Princess Peach Showtime.

v1.0.6

  • Add support for searching in Mortal Kombat 1 FixedFrameRate and CustomTimeStep addresses.
  • Allow searching for FixedFrameRate and CustomTimeStep offsets in Unreal Engine 5, but block brute force searching as it's not pheasible to do it anymore.

v1.0.4

  • Increase speed of searching settings with descriptions.
  • Search if game supports CustomTimeStep variable before printing any info about it.

v1.0.3

  • Print CustomTimeStep as int.

v1.0.2

  • Now also searches potential candidates for FixedFrameRate/bUseFixedFrameRate/CustomTimeStep pointers (this process hogs up CPU Core #3, so OS may not be responsive while this is executed).
  • Use colors for pointing out important informations.
  • Apply Boost Mode.

v1.0.1

  • Add better support for older Unreal Engine 4 titles.
  • Add additionally older descriptions for some settings.
  • It will also print offset for FixedFrameRate if found, but this is more helpful for hackers as of right now because we cannot locate correct address properly atm.

v1.0.0

  • Shadow update 1: Fix potential segfaults because of pulling too big mappings.

External links

Advertising: