ROM Hack Xenoblade Chronicles 3 Graphics Settings

masagrator

The patches guy
OP
Developer
Joined
Oct 14, 2018
Messages
6,271
Trophies
3
XP
12,037
Country
Poland
For any emulation discussion related to this game go here:
https://gbatemp.net/threads/xenoblade-chronicles-3-emulator-etc-discussion.616262/
Any post not on topic will be reported.

There are two methods to apply mod:
- for people with DLC installed
- for people without DLC installed

People without DLC must install additionally exefs patch, so with each new game update they must also update exefs patch to get config working.

Graphics settings are stored in binary file, so script is necessary to convert it up back to bin file.

Structure
Header:
Python:
MAGIC "INIB"
int32 10000 #unknown purpose
uint32 0x10 #offset of entry table
uint32 0x175 #entry count

So new config file has 373 entries in comparison to 224 entries in XCDE. Quite a buff.

But issue is that we don't have names of those settings.
Entry table:
Python:
int32 hash #murmur3 hash of config name
int32 type #0 - bool, 1 - float, 2 - (float, float, float), 3 - (float, float, float, float)
uint32 offset #direct offset of value

and at the end values.
main doesn't calculate those name hashes in runtime, it has hashes stored already in main, so we don't have access to original names of configs. So 148 entries are unknown (found few by brute force).

Took config names from XCDE config file to fill names for what we can, for unknown names I am using hash as name (starting with 0x)

ao_av_Shwstr for whatever reason is repeated. Since JSON doesn't accept repeated keys and I wanted this to output the same file as original, I have decided to store one name as string, second as hash 0xDD677246.

If someone can write some sophisticated dictionary brute force attack on hashes and run it to fill out names, it would be appreciated.
C++:
{
    "tonemap": true,
    "ssao": false,
    "bloom": false,
    "godray": true,
    "AntiAliasing": true,
    "ColReduction": true,
    "dof": false,
    "lensFlare": false,
    "aoskip": false,
    "lut": true,
    "toneHistogramLow": 0.8,
    "toneHistogramHigh": 0.9,
    "tonemax": 1.0,
    "tonemin": 0.15,
    "tonescale": 7.0,
    "toneUpSpeed": 0.1,
    "toneDownSpeed": 0.5,
    "toneBlmmax": 1000.0,
    "toneBlmmin": 0.001,
    "toneBlmmul": 100.0,
    "godray_inival": 0.95,
    "godray_decay": 0.99,
    "godray_scale": 1.235,
    "blm_border_sub": 1.0,
    "blm_border_mul": 0.105,
    "blm_border_sub2": 0.0,
    "blm_border_mul2": 0.0,
    "blm_border_max": 3.5,
    "blm_str1": 1.0,
    "blm_str2": 1.0,
    "blm_str3": 1.0,
    "blm_gauss1": 0.9,
    "blm_gauss2": 0.8,
    "blm_gauss3": 0.8,
    "blm_weight1": 0.63,
    "blm_weight2": 0.1,
    "blm_weight3": 0.14,
    "blm_weight4": 0.53,
    "blm_weight5": 0.58,
    "blm_deviation1": 0.2,
    "blm_deviation2": 0.5,
    "blm_deviation3": 1.0,
    "blm_deviation4": 1.0,
    "blm_deviation5": 1.0,
    "blm_saturation1": 0.0,
    "blm_saturation2": 0.0,
    "blm_saturation3": 0.0,
    "blm_saturation4": 0.0,
    "blm_saturation5": 0.35,
    "blm_emissive_str": 9.0,
    "blm_tone_scale": 0.05,
    "blm_emissive_max": 20.0,
    "blm_emissive_min": 0.0,
    "bloom2": true,
    "0x5D63DA76": 1.0,
    "0xFC6A6BB8": 1.1,
    "0x3857A64C": 0.7,
    "0x2B755BF": 0.1, // related settings starts here
    "0x35CD4D20": 0.11,
    "0x506684C7": 0.25,
    "0xD357E3AE": 0.36, // related settings ends here
    "lens_max": 1.0,
    "lens_rot": 0.0,
    "lens_sub": 1.5,
    "lens_mul": 3.5,
    "lens_weight": 0.1,
    "lens_decay": 1.0,
    "lens_str": 1.5,
    "lens_paMax": 4.0,
    "lens_UVDecay": 0.29,
    "AA_Sharpness": 8.0,
    "AA_Range": 0.5,
    "AA_Threshold": 0.17,
    "AA_ThresholdMin": 0.05,
    "red_sclX": 1.0,
    "red_sclY": 1.0,
    "red_hdsclX": 0.75,
    "red_hdsclY": 0.75,
    "red_Auto": true,
    "red_AtMaxX": 1.0,
    "red_AtMaxY": 1.0,
    "red_AtMinX": 0.7,
    "red_AtMinY": 0.7,
    "red_AtRate": 99.0,
    "ao_Lengs": 0.1, //Ignored (not read at all)
    "ao_LengsRatio": 1.98, //Ignored (not read at all)
    "ao_range": 5.7, //Ignored (not read at all)
    "ao_rangeRatio": 1.0, //Ignored (not read at all)
    "ao_sub": 0.02, //Ignored (not read at all)
    "ao_subRatio": 0.15, //Ignored (not read at all)
    "ao_Mul": 2.0, //Ignored (not read at all)
    "ao_blurRange": 0.72, //Ignored (not read at all)
    "ao_blurScale": 0.75, //Ignored (not read at all)
    "ao_av_Shwstr": 0.5,
    "blur": false,
    "blurStr": 0.2,
    "blurAlpha": 40.0,
    "blurSub": 0.025,
    "blurBlurRange": 0.32,
    "shadowStr": 1.0,
    "shadowHalf": true,
    "shadowColor": [
        1.0,
        1.0,
        1.0
    ],
    "simShwStr": 1.6,
    "simShwIn": 0.7,
    "simShwMin": 0.15,
    "sRGBMode": true,
    "gamma": 6.0,
    "ao_av_CenterWeight": 1.09,
    "ao_av_MaxDistance": 0.15,
    "ao_av_MaxRadius": 0.2,
    "ao_av_FadeOutStart": 70000.0,
    "ao_av_FadeOutDistance": 10000.0,
    "ao_av_BlurFallOff": 0.05,
    "ao_av_BlurScale": 1.6,
    "0xDD677246": 0.5, //ao_av_Shwstr
    "cam_near": 0.1,
    "cam_far": 80000.0,
    "avmp01": [
        0.5,
        0.5,
        0.5
    ],
    "avmp02": [
        0.5,
        0.5,
        0.5
    ],
    "avmp03": [
        0.5,
        0.5,
        0.5
    ],
    "avmp04": [
        0.5,
        0.5,
        0.5
    ],
    "avmp05": [
        0.5,
        0.5,
        0.5
    ],
    "avmp06": [
        0.5,
        0.5,
        0.5
    ],
    "avmp07": [
        0.5,
        0.5,
        0.5
    ],
    "avmp08": [
        0.5,
        0.5,
        0.5
    ],
    "avmp09": [
        0.5,
        0.5,
        0.5
    ],
    "avmp10": [
        0.5,
        0.5,
        0.5
    ],
    "avmp11": [
        0.5,
        0.5,
        0.5
    ],
    "avmp12": [
        0.5,
        0.5,
        0.5
    ],
    "avmp13": [
        0.5,
        0.5,
        0.5
    ],
    "avmp14": [
        0.5,
        0.5,
        0.5
    ],
    "avmp15": [
        0.5,
        0.5,
        0.5
    ],
    "avmp16": [
        0.5,
        0.5,
        0.5
    ],
    "cloud_h_min": 1000.0,
    "cloud_h_max": 1100.0,
    "cloud_color": [
        1.0,
        1.0,
        1.0
    ],
    "toonDirType": 0.0,
    "toonDirBackBright": 1.0,
    "toonDirElevation": 0.1,
    "toonDirPntSptRatio": 0.5,
    "toonDirLightScaleVal": 0.75,
    "toonDirInOutMin": 0.6,
    "toonIBLScaleVal": 0.28,
    "toonShadowAlpha": 0.15,
    "toonCharShadowAlpha": 0.02,
    "toonCharShadowMin": 0.46,
    "0xF333710C": 8.0,
    "0xFFD3EE80": 15.0,
    "0x8D2766E2": 30.0,
    "0xF6FF1D20": 0.5, // related settings start here
    "0x1A1693FE": 6.0,
    "0x189ADEE9": 9.5, //related settings end
    "0x301232E3": 0.1,
    "0xA7951F52": true, //Ignored (not read at all)
    "0x6099124E": 0.0, //Ignored (not read at all)
    "0xC94C3D6C": 0.0,
    "0x9B196145": 2.3,
    "0x5789A4A": true,
    "0xB12E641E": 40.0,
    "0xC4662501": 0.0,
    "0x5F104B4": 0.4,
    "0x336AFD5E": 1.5,
    "0xD6CEDAEF": [
        0.0,
        0.0,
        0.0
    ],
    "0x712CE7F5": 8.0, //related settings start here
    "0x72A9D801": 15.0,
    "0x9144CB69": 30.0, //related settings end here
    "0x7DECFD2B": 0.5, //related settings start here
    "0x35BB3EB": 6.0,
    "0xF7FE9B66": 9.5, //related settings end here
    "0x427B5122": 0.1,
    "rim_color": [ //Ignored (not read at all)
        1.0,
        1.0,
        1.0
    ],
    "rim_intensity": 3.0, //Ignored (not read at all)
    "iblDirectLightIntensity": 1.0,
    "iblSkyIntensity": 1.5,
    "iblBlendBetweenFrame": 30.0,
    "0xCC9776A3": 2.2,
    "skyToneDirLightIntensity": 0.2,
    "skyToneAmbientIntensity": 0.32,
    "tssao": true,
    "tssaoRadius": 1.0,
    "tssaoIntensityMul": 1.0,
    "tssaoIntensityPow": 0.16,
    "tssaoOutputAO": 0.35,
    "tssaoPostBlurSharpness": 0.55,
    "tssaoLuminanceCorrection": 0.3,
    "tssaoSelectiveFiltering": true, //Ignored (not read at all)
    "tssaoWeakenRatio": 0.8,
    "ssr": true,
    "ssrIntensity": 1.0,
    "ssrShinessFade": 0.8, //Ignored (not read at all)
    "ssrGroundness": 0.73,
    "ssrFadeSec": 5.0,
    "shadowCloud": true,
    "shadowCloudStr": 0.8,
    "shadowCloudSize": 300.0,
    "shadowCloudScrollDir": 150.0,
    "shadowCloudScrollSpeed": 6.0,
    "shadowRaytraceDistance": 0.15,
    "shadowRaytracePitch": 0.0,
    "tmaa": true,
    "tmaaSharpness_0": 0.4,
    "tmaaSharpness_1": 0.6,
    "tmaaSharpness_2": 0.6,
    "tmaaSharpness_3": 0.72,
    "tmaaSharpness_4": 0.8,
    "tmaaSharpness_5": 0.9,
    "tmaaSharpness_Hnd_0": 1.2,
    "tmaaSharpness_Hnd_1": 1.1,
    "tmaaSharpness_Hnd_2": 1.1,
    "tmaaSharpness_Hnd_3": 1.12,
    "tmaaSharpness_Hnd_4": 1.2,
    "tmaaSharpness_Hnd_5": 1.3,
    "tmaaBlendDefault": 0.05,
    "tmaaBlendPBR": 0.0,
    "tmaaBlendMPF": 0.3,
    "tmaaBlendToon": 0.05,
    "tmaaNewUpScale": true,
    "tmaaSharpnessType": 2.0,
    "tmaaSharpnessAwareIntensity": 0.2,
    "shwCharParm": 17.92,
    "shwHalfLamParm": 1.0,
    "wetMaxShiness": 0.5,
    "wetDarkness": 0.48,
    "wetShinessScale": 0.6,
    "wetToInsideFrame": 10.0,
    "wetToOutsideFrame": 20.0,
    "TransReduction": true,
    "trans_red_sclX": 0.5,
    "trans_red_sclY": 0.5,
    "blur2": true,
    "blur2Str": 10.0,
    "blur2Sub": 0.25,
    "blur2ObjScale": 0.65,
    "blur2CameraScale": 0.8,
    "blur2BlurRange": 0.7,
    "blur2PixelRange": 20.0,
    "blur2HLV": true,
    "gpucount": 64.0,
    "leafSpecColMinShiness": 0.1,
    "leafSpecColMaxShiness": 0.4,
    "leafSpecColRatio": 0.85,
    "furBlur": true,
    "furBlurStr": 0.3,
    "furBlurPixelRange": 20.0,
    "0x9e2bdf35": true, //AliasingAttoonDefault(?)
    "0xCBF60DCC": 0.45,
    "0xE7B8E359": 20.0,
    "0x3E8B2DFF": 0.172,
    "0xFAB5D0F": 0.396,
    "0x15D13C05": 0.403,
    "0x1F3EB72A": 0.3,
    "0xFE2A5D4C": 0.545,
    "0xEEF1A09B": 0.291,
    "0xCB34ED6F": 0.478,
    "0xE3A59F1C": 0.701,
    "0x94F0215F": 0.612,
    "lightShaft": true,
    "lightShaftTonemapScale": 1.0,
    "lightShaftTonemapLuminance": 6.5,
    "reduceDirLightRim": 3.0,
    "monochromeToonId": 128.0,
    "monochromeFogScale": 0.5,
    "0x6EF1CDA4": true,
    "0xBDDCEAFD": 2.0,
    "0x11FECE04": true,
    "0xB1F493C2": 0.5,
    "0xF5EB7B25": 3.0,
    "0x44D18825": 0.0, //outlineRimRatio(?)
    "0x2FCECF30": 0.4,
    "lightRimColor": [
        0.88,
        0.91,
        1.0,
        0.0
    ],
    "0xFB0982CB": 0.4,
    "0x2496CDB5": 0.8,
    "0x829607F": 0.3,
    "0xFCA5701C": 0.6,
    "0x9DB8A56E": [
        0.81,
        0.86,
        1.0,
        0.0
    ],
    "0x55FB8D0A": 0.4,
    "0xC7CE9119": 0.8,
    "0xA72DEF7C": 0.3,
    "0xC7A407A3": 0.6,
    "0xBA390E46": false,
    "0x5F14B998": 0.0,
    "0x57CEA10C": 0.0,
    "0x649AAB9D": true,
    "0xDBBE01E6": false,
    "0xD770A81C": 1.0,
    "0xD63B15D7": 1.0,
    "0x8644220F": 0.0,
    "0xB0D850D5": 0.0,
    "0x6B9AE74E": 2.0,
    "0x4E9A09B4": 1.0,
    "vignetteColor": [
        0.0,
        0.0,
        0.0,
        1.0
    ],
    "0xA19E7F6A": 0.0,
    "0xC4B90990": 0.0,
    "0xB8F7EDAE": false,
    "0x784D9270": [
        0.5,
        0.5,
        1.0
    ],
    "0xDF6D3430": 10.0,
    "0xB3EB5046": 0.3,
    "0x6FA1D395": 5.0,
    "0xFD3F07AF": 0.2,
    "0x6272E208": 0.5,
    "0x29B2FD3A": 1.0,
    "0x22858515": 1.0,
    "0xF4524CBA": true,
    "0x61D26460": 9.0,
    "0x4236F1E7": 10.0,
    "0xC191A703": 0.1,
    "0x83BC7501": 0.8,
    "0x26C9A218": true,
    "0x6533AC49": 0.5,
    "0x8946B815": 0.3,
    "0x76E6D31": 1.0,
    "0x5AFB4305": [
        1.0,
        0.3,
        0.0
    ],
    "0x396603C6": 2.0,
    "0xC6AEF946": 1.5,
    "0xF873E01": 0.7,
    "0xCEE2545E": 400.0,
    "0x122F2051": 200.0,
    "0x32DA3BA1": 0.5,
    "0xE35FE997": 1.0,
    "0xF2509119": 0.8,
    "0xB6C16A92": 0.2,
    "0x7AC5C042": [
        0.06,
        0.0,
        0.15
    ],
    "0xDB44E95F": 1.0,
    "0x394D8ADD": 1.0,
    "0xCC286031": 0.0,
    "0xD0044ECA": 0.0,
    "0x46FDEFE": 400.0,
    "0xF2F951A0": 400.0,
    "0xAE7AAA37": [
        1.0,
        0.24,
        0.0
    ],
    "0x90795FB8": 0.5,
    "0xE95E879C": 0.0, //"frAWE"(?)
    "0xA671F91F": 25.0,
    "ifmg": 75.0,
    "0x3C5AB47C": 75.0,
    "0x1C71EDDC": 0.0,
    "0x9A1225D0": 0.0,
    "0x60392758": 75.0,
    "0xCF37604F": 75.0,
    "0x95236DF0": 0.0,
    "0x692E4637": 1.0,
    "0x7B297FB2": [
        1.0,
        0.52,
        0.08
    ],
    "0x27733291": 1.2,
    "0xDDFD9943": 0.0,
    "0x3DB94B93": 0.0,
    "0x8AB3E426": 80.0,
    "0x1811244E": 80.0,
    "0x2871F67": 300.0,
    "0x1EAA9061": 400.0,
    "0x8A1103DB": 1.0,
    "0x7BF25AFD": 3.5,
    "0xFBD4A02": 0.3, //Ignored (not read at all)
    "0xEBCB4443": 300.0, //Ignored (not read at all)
    "0x30EC7F91": 1.0,
    "0x7F693558": -1.0,
    "0x4E548": 0.65,
    "0x38041560": 0.4,
    "0xCDFD665A": 50.0,
    "0xFD3B3C9A": 0.0,
    "0x68F91A18": 0.0,
    "0x2988AA37": [
        1.0,
        0.54,
        0.0
    ],
    "0x948D0A42": 3.0,
    "0xF4DBB5E9": 0.0,
    "0xF51E544F": 0.0,
    "0x4860955B": 200.0,
    "0x736ED30F": 400.0,
    "0xF58EB9B5": 1.0,
    "0x5CB90504": 1.0,
    "0x81154B3B": 3.0,
    "0xB8C8D60E": true,
    "0x2328A055": 1.0,
    "0x66A4EB5F": 3.0,
    "0xD211F9B0": 2.5,
    "0x27D2D389": 3.5
}

Tutorial

Requirements:
  • Python 3.10.0+
  • python library pymmh3 (you can install it with command "pip3 install pymmh3" in cmd/bash if you checked "Add to PATH"/"Add Python to environment variables" when installing Python)

Instructions:
  1. Download "GraphicsSettings.zip" and unpack it
  2. Edit "lib_nx.json" with whatever text editor you like. You can use IDE with JSON support (f.e. Visual Studio Code) to check if you didn't broke something in file. Don't change keys (strings before ":") if you don't know what you are doing!
  3. Run "libnxToBin.py"
Now depending on if you have DLC installed or not:

Without DLCWith DLCAdditional patches

  1. Compatible titleID and versions:
    • 010074F013262000 - 1.0.0, 1.1.0, 1.1.1, 1.2.0, 1.2.1, 1.3.0, 2.0.0

    Mod is using patch file that was based on Next Method from XC2 thread to get config working outside of ard.
    1. Put "atmosphere" folder on root of your sdcard
    2. Run game
  2. This works with any version of game.

    Tested personally on:
    - DLC Wave 1 (010074F013263001)

    1. Go to atmosphere\contents\010074f013262000\romfs\stream\dumpbin in your GraphicsSettings folder, copy lib_nx.bin to Switch sdcard folder (create folders if they don't exist, only one is necessary):
      • for DLC Wave 1 users:
        atmosphere/contents/010074F013263001/romfs/monolib/shader
      • for DLC Wave 2 users:
        atmosphere/contents/010074F013263002/romfs/monolib/shader
      • for DLC Wave 3 users:
        atmosphere/contents/010074F013263003/romfs/monolib/shader
      • for DLC Wave 4 users:
        atmosphere/contents/010074F013263004/romfs/monolib/shader
    2. Run game



Remember that messing up with settings can bring unexpected results, in worst case crashing game or even damaging save.
Thanks to @PhiZero and @OldManKain for testing.
I didn't test it personally.

Whatever presets you will figure out, you can upload in this topic.[/tab]
 

Attachments

  • GraphicsSettings.zip
    6.6 KB · Views: 41
Last edited by masagrator,

masagrator

The patches guy
OP
Developer
Joined
Oct 14, 2018
Messages
6,271
Trophies
3
XP
12,037
Country
Poland
Asked mod to close previous thread because of incomprehensible flood of emulator-related questions that were not related to this topic and thread turned into garbage can.

Authors of presets I would like to ask to post it here again - either links to original posts or upload again.
Any new post not related to thread will be reported by me and I guess deleted by mod.
 

Lyzard

Well-Known Member
Newcomer
Joined
Oct 24, 2008
Messages
78
Trophies
1
XP
253
Country
Asked mod to close previous thread because of incomprehensible flood of emulator-related questions that were not related to this topic and thread turned into garbage can.

Authors of presets I would like to ask to post it here again - either links to original posts or upload again.
Any new post not related to thread will be reported by me and I guess deleted by mod.
i don't get it, i installed dlc, changed lib_nx.bin in atmosphere\contents\010074f013262000\romfs\stream\dumpbin

but i dont have a file named 010074F013263001.

i can clearly see a difference though. my graphics are improved with your maxed dock settings.
 

masagrator

The patches guy
OP
Developer
Joined
Oct 14, 2018
Messages
6,271
Trophies
3
XP
12,037
Country
Poland
i don't get it, i installed dlc, changed lib_nx.bin in atmosphere\contents\010074f013262000\romfs\stream\dumpbin

but i dont have a file named 010074F013263001.

i can clearly see a difference though. my graphics are improved with your maxed dock settings.
Then that means you must have installed exefs patch.
How I know that? Because stream\dumpbin folder call doesn't exist in game, I fully made it up. :ph34r: So it cannot work without my patch.

Edit: I think I get you know.
You thinked that method without DLC wouldn't work if you have DLC installed? :rofl:
No, that's not how this works. Just by not using method for DLC owners you are making maintaining your config a worse experience. New game update will come, you will install it and poof - it doesn't work. This is what you will get in near future.
 
Last edited by masagrator,

Helsionium

Alpha and Omega
Member
Joined
Jul 18, 2008
Messages
422
Trophies
1
Age
34
Location
Innsbruck, Austria
Website
www.helsionium.eu
XP
685
Country
Austria
I have a question specifically for @deathblade200 but it might interest others as well.
They mentioned improving performance on Switch by turning down motion blur to 0.1. I'm interested in trying this as part of my own config, but what setting(s) do I have change? Only "blur2Str" or all float values whose names start with "blur2"?

I'm interested because I currently still experience framedrops in some (few) cutscenes at max resolution even with GPU 921/RAM 1862. I tried overclocking RAM to 1996 MHz but it's very unstable on my Erista Switch.
 

deathblade200

Well-Known Member
Member
Joined
May 10, 2016
Messages
1,371
Trophies
0
XP
1,344
Country
United States
I have a question specifically for @deathblade200 but it might interest others as well.
They mentioned improving performance on Switch by turning down motion blur to 0.1. I'm interested in trying this as part of my own config, but what setting(s) do I have change? Only "blur2Str" or all float values whose names start with "blur2"?

I'm interested because I currently still experience framedrops in some (few) cutscenes at max resolution even with GPU 921/RAM 1862. I tried overclocking RAM to 1996 MHz but it's very unstable on my Erista Switch.
I change
blur2Str": 0.1,
"blur2Sub": 0.1,
"blur2ObjScale": 0.1,
"blur2CameraScale": 0.1,
"blur2BlurRange": 0.1,
"blur2PixelRange": 0.1,

there is also blur2HLV but I didn't see any difference changing it
do not change "blur2": true to false or some cutscenes will have issues
 
  • Like
Reactions: Helsionium

Chrisssj2

Well-Known Member
Member
Joined
Feb 12, 2008
Messages
2,704
Trophies
1
XP
4,384
Country
Netherlands
I tried using the 60 fps cheat code for XC3. with a XC3 graphics preset (romfs/exefs) and it doesn't seem to work together?!
 

DunArd

Well-Known Member
Newcomer
Joined
May 31, 2020
Messages
81
Trophies
0
Age
29
XP
413
Country
Spain
I will link here my preset, to not lose it in the closed thread and whoever wants to use it does not lose sight of it.

https://gbatemp.net/threads/archived-xenoblade-chronicles-3-graphics-settings.615901/post-9891927

Updated presets with IPS patch for 1.1.0 update.

Updated presets to v1.1

Updated presets to v1.2 (final update).

Changelog:
Fixed some bugs with the AO indoors and when changing open zones
Reduced blur effect to have greater stability in combat (Thanks deathblade200 for sharing the info in the thread)
Tweaked shadows in characters: in some scenes they presented poorly defined shadows on the face

As we say in Spain: Never say never (Nunca digas nunca). Updated preset to v1.3.
Changelog:
Upgraded shadows to consume less
Disabled TMAAUpscaleNew for better quality in cutscenes
Enhanced blur and blur2
Tweaked AA and TMAA Sharpness for better quality and less consumption
Changed values for resolution and dynamic resolution, now the game works mostly like a charm in all scenarios: colonies, closed areas, huge areas, combats, scenes and menus (now the map works at 30FPS when it used to work at 20FPS)
*Since the maximum resolution is the one that can run the game and it adapts through dynamic resolution, I have decided to merge the portable and dock preset into one

NOTE: Since this is the final update, I'll not support the preset anymore, if in the future we receive a patch for the game, you only need to add new IPS file from OP Masagrator post to get working the mod again.

To avoid comments out of context or destructive criticism as has happened before with a certain user: I share these presets for personal taste and for whoever wants to enjoy them, at no time do I specify that they are the best they will find or that my settings are the only valid ones. They are adjustments made from my personal experience, arranged to my liking and optimized to the level that Nintendo Switch can support.

These are the general JSON settings, whoever wants to edit it for their own benefit or research is free to do so.
{
"tonemap": true,
"ssao": true,
"bloom": true,
"godray": true,
"AntiAliasing": true,
"ColReduction": true,
"dof": false,
"lensFlare": true,
"aoskip": false,
"lut": true,
"toneHistogramLow": 0.8,
"toneHistogramHigh": 0.9,
"tonemax": 1.0,
"tonemin": 0.15,
"tonescale": 7.0,
"toneUpSpeed": 0.1,
"toneDownSpeed": 0.5,
"toneBlmmax": 1000.0,
"toneBlmmin": 0.001,
"toneBlmmul": 100.0,
"godray_inival": 0.95,
"godray_decay": 0.99,
"godray_scale": 1.235,
"blm_border_sub": 1.0,
"blm_border_mul": 0.105,
"blm_border_sub2": 0.0,
"blm_border_mul2": 0.0,
"blm_border_max": 3.5,
"blm_str1": 1.0,
"blm_str2": 1.0,
"blm_str3": 1.0,
"blm_gauss1": 0.9,
"blm_gauss2": 0.8,
"blm_gauss3": 0.8,
"blm_weight1": 0.63,
"blm_weight2": 0.1,
"blm_weight3": 0.14,
"blm_weight4": 0.53,
"blm_weight5": 0.58,
"blm_deviation1": 0.2,
"blm_deviation2": 0.5,
"blm_deviation3": 1.0,
"blm_deviation4": 1.0,
"blm_deviation5": 1.0,
"blm_saturation1": 0.0,
"blm_saturation2": 0.0,
"blm_saturation3": 0.0,
"blm_saturation4": 0.0,
"blm_saturation5": 0.43,
"blm_emissive_str": 9.0,
"blm_tone_scale": 0.05,
"blm_emissive_max": 20.0,
"blm_emissive_min": 0.0,
"0x66F0BD34": true,
"0x5D63DA76": 1.0,
"0xFC6A6BB8": 1.1,
"0x3857A64C": 0.7,
"0x2B755BF": 0.1,
"0x35CD4D20": 0.11,
"0x506684C7": 0.25,
"0xD357E3AE": 0.36,
"lens_max": 1.0,
"lens_rot": 0.0,
"lens_sub": 1.5,
"lens_mul": 3.0,
"lens_weight": 0.1,
"lens_decay": 1.0,
"lens_str": 1.7,
"lens_paMax": 4.0,
"lens_UVDecay": 0.29,
"AA_Sharpness": 16.0,
"AA_Range": 0.78,
"AA_Threshold": 0.20,
"AA_ThresholdMin": 0.05,
"red_sclX": 1.0,
"red_sclY": 1.0,
"red_hdsclX": 1.0,
"red_hdsclY": 1.0,
"red_Auto": true,
"red_AtMaxX": 0.85,
"red_AtMaxY": 1.0,
"red_AtMinX": 0.60,
"red_AtMinY": 0.65,
"red_AtRate": 93.0,
"ao_Lengs": 0.1,
"ao_LengsRatio": 1.98,
"ao_range": 5.7,
"ao_rangeRatio": 1.0,
"ao_sub": 0.02,
"ao_subRatio": 0.15,
"ao_Mul": 2.0,
"ao_blurRange": 0.72,
"ao_blurScale": 0.75,
"ao_av_Shwstr": 0.5,
"blur": true,
"blurStr": 0.15,
"blurAlpha": 8.0,
"blurSub": 0.025,
"blurBlurRange": 0.16,
"shadowStr": 1.10,
"shadowHalf": false,
"shadowColor": [
1.05,
1.0,
1.0
],
"simShwStr": 1.90,
"simShwIn": 0.85,
"simShwMin": 0.15,
"sRGBMode": true,
"gamma": 6.0,
"ao_av_CenterWeight": 1.09,
"ao_av_MaxDistance": 0.15,
"ao_av_MaxRadius": 0.2,
"ao_av_FadeOutStart": 70000.0,
"ao_av_FadeOutDistance": 10000.0,
"0xFF8D3307": 0.05,
"ao_av_BlurScale": 1.6,
"0xDD677246": 0.5,
"cam_near": 0.1,
"cam_far": 80000.0,
"avmp01": [
0.5,
0.5,
0.5
],
"avmp02": [
0.5,
0.5,
0.5
],
"avmp03": [
0.5,
0.5,
0.5
],
"avmp04": [
0.5,
0.5,
0.5
],
"avmp05": [
0.5,
0.5,
0.5
],
"avmp06": [
0.5,
0.5,
0.5
],
"avmp07": [
0.5,
0.5,
0.5
],
"avmp08": [
0.5,
0.5,
0.5
],
"avmp09": [
0.5,
0.5,
0.5
],
"avmp10": [
0.5,
0.5,
0.5
],
"avmp11": [
0.5,
0.5,
0.5
],
"avmp12": [
0.5,
0.5,
0.5
],
"avmp13": [
0.5,
0.5,
0.5
],
"avmp14": [
0.5,
0.5,
0.5
],
"avmp15": [
0.5,
0.5,
0.5
],
"avmp16": [
0.5,
0.5,
0.5
],
"cloud_h_min": 1000.0,
"cloud_h_max": 1100.0,
"cloud_color": [
1.05,
1.0,
1.1
],
"toonDirType": 0.0,
"toonDirBackBright": 1.0,
"toonDirElevation": 0.1,
"toonDirPntSptRatio": 0.5,
"toonDirLightScaleVal": 0.55,
"toonDirInOutMin": 0.6,
"toonIBLScaleVal": 0.28,
"toonShadowAlpha": 0.23,
"toonCharShadowAlpha": 0.04,
"toonCharShadowMin": 0.4,
"0xF333710C": 8.0,
"0xFFD3EE80": 15.0,
"0x8D2766E2": 30.0,
"0xF6FF1D20": 0.5,
"0x1A1693FE": 6.0,
"0x189ADEE9": 9.5,
"0x301232E3": 0.1,
"0xA7951F52": true,
"0x6099124E": 0.0,
"0xC94C3D6C": 0.0,
"0x9B196145": 2.3,
"0x5789A4A": true,
"0xB12E641E": 40.0,
"0xC4662501": 0.0,
"0x5F104B4": 0.4,
"0x336AFD5E": 1.5,
"0xD6CEDAEF": [
0.0,
0.0,
0.0
],
"0x712CE7F5": 8.0,
"0x72A9D801": 15.0,
"0x9144CB69": 30.0,
"0x7DECFD2B": 0.5,
"0x35BB3EB": 6.0,
"0xF7FE9B66": 9.5,
"0x427B5122": 0.1,
"rim_color": [
1.0,
1.0,
1.0
],
"rim_intensity": 3.0,
"iblDirectLightIntensity": 1.0,
"iblSkyIntensity": 1.6,
"iblBlendBetweenFrame": 30.0,
"0xCC9776A3": 2.2,
"0xDC58DD66": 0.2,
"0x81CA303C": 0.32,
"tssao": true,
"tssaoRadius": 1.0,
"tssaoIntensityMul": 1.10,
"tssaoIntensityPow": 0.16,
"tssaoOutputAO": 0.45,
"tssaoPostBlurSharpness": 0.5,
"tssaoLuminanceCorrection": 0.2,
"tssaoSelectiveFiltering": true,
"tssaoWeakenRatio": 0.8,
"ssr": true,
"ssrIntensity": 1.0,
"ssrShinessFade": 0.8,
"ssrGroundness": 0.73,
"ssrFadeSec": 5.0,
"shadowCloud": true,
"shadowCloudStr": 0.8,
"shadowCloudSize": 300.0,
"shadowCloudScrollDir": 150.0,
"shadowCloudScrollSpeed": 6.0,
"shadowRaytraceDistance": 0.20,
"shadowRaytracePitch": 0.05,
"tmaa": true,
"tmaaSharpness_0": 0.54,
"tmaaSharpness_1": 0.56,
"tmaaSharpness_2": 0.58,
"tmaaSharpness_3": 0.62,
"tmaaSharpness_4": 0.66,
"tmaaSharpness_5": 0.70,
"tmaaSharpness_Hnd_0": 0.5,
"tmaaSharpness_Hnd_1": 0.4,
"tmaaSharpness_Hnd_2": 0.4,
"tmaaSharpness_Hnd_3": 0.44,
"tmaaSharpness_Hnd_4": 0.5,
"tmaaSharpness_Hnd_5": 0.55,
"tmaaBlendDefault": 0.05,
"tmaaBlendPBR": 0.0,
"tmaaBlendMPF": 0.3,
"tmaaBlendToon": 0.05,
"tmaaNewUpScale": false,
"tmaaSharpnessType": 2.0,
"tmaaSharpnessAwareIntensity": 0.05,
"shwCharParm": 17.92,
"shwHalfLamParm": 1.0,
"wetMaxShiness": 0.55,
"wetDarkness": 0.60,
"wetShinessScale": 0.7,
"wetToInsideFrame": 12.0,
"wetToOutsideFrame": 24.0,
"TransReduction": true,
"trans_red_sclX": 0.5,
"trans_red_sclY": 0.5,
"blur2": true,
"blur2Str": 3.5,
"blur2Sub": 0.25,
"blur2ObjScale": 0.65,
"blur2CameraScale": 0.8,
"blur2BlurRange": 0.7,
"blur2PixelRange": 20.0,
"blur2HLV": true,
"gpucount": 64.0,
"leafSpecColMinShiness": 0.1,
"leafSpecColMaxShiness": 0.4,
"leafSpecColRatio": 0.85,
"furBlur": true,
"furBlurStr": 0.3,
"furBlurPixelRange": 20.0,
"0x9E2BDF35": true,
"0xCBF60DCC": 0.45,
"0xE7B8E359": 20.0,
"0x3E8B2DFF": 0.172,
"0xFAB5D0F": 0.396,
"0x15D13C05": 0.403,
"0x1F3EB72A": 0.3,
"0xFE2A5D4C": 0.545,
"0xEEF1A09B": 0.291,
"0xCB34ED6F": 0.478,
"0xE3A59F1C": 0.701,
"0x94F0215F": 0.612,
"lightShaft": true,
"0x4B214CF3": 1.2,
"0x2EBCBD3E": 7.5,
"reduceDirLightRim": 3.0,
"monochromeToonId": 128.0,
"monochromeFogScale": 0.5,
"0x6EF1CDA4": true,
"0xBDDCEAFD": 2.0,
"0x11FECE04": true,
"0xB1F493C2": 0.5,
"0xF5EB7B25": 3.0,
"0x44D18825": 0.0,
"0x2FCECF30": 0.4,
"0x635B1A7B": [
0.88,
0.91,
1.0,
0.0
],
"0xFB0982CB": 0.4,
"0x2496CDB5": 0.8,
"0x829607F": 0.3,
"0xFCA5701C": 0.6,
"0x9DB8A56E": [
0.81,
0.86,
1.0,
0.0
],
"0x55FB8D0A": 0.4,
"0xC7CE9119": 0.8,
"0xA72DEF7C": 0.3,
"0xC7A407A3": 0.6,
"0xBA390E46": false,
"0x5F14B998": 0.0,
"0x57CEA10C": 0.0,
"0x649AAB9D": true,
"0xDBBE01E6": false,
"0xD770A81C": 1.0,
"0xD63B15D7": 1.0,
"0x8644220F": 0.0,
"0xB0D850D5": 0.0,
"0x6B9AE74E": 2.0,
"0x4E9A09B4": 1.0,
"0xF4096DDB": [
0.0,
0.0,
0.0,
1.0
],
"0xA19E7F6A": 0.0,
"0xC4B90990": 0.0,
"0xB8F7EDAE": false,
"0x784D9270": [
0.5,
0.5,
1.0
],
"0xDF6D3430": 10.0,
"0xB3EB5046": 0.3,
"0x6FA1D395": 5.0,
"0xFD3F07AF": 0.2,
"0x6272E208": 0.5,
"0x29B2FD3A": 1.0,
"0x22858515": 1.0,
"0xF4524CBA": true,
"0x61D26460": 9.0,
"0x4236F1E7": 10.0,
"0xC191A703": 0.1,
"0x83BC7501": 0.8,
"0x26C9A218": true,
"0x6533AC49": 0.5,
"0x8946B815": 0.3,
"0x76E6D31": 1.0,
"0x5AFB4305": [
1.0,
0.3,
0.0
],
"0x396603C6": 2.0,
"0xC6AEF946": 1.5,
"0xF873E01": 0.7,
"0xCEE2545E": 400.0,
"0x122F2051": 200.0,
"0x32DA3BA1": 0.5,
"0xE35FE997": 1.0,
"0xF2509119": 0.8,
"0xB6C16A92": 0.2,
"0x7AC5C042": [
0.06,
0.0,
0.15
],
"0xDB44E95F": 1.0,
"0x394D8ADD": 1.0,
"0xCC286031": 0.0,
"0xD0044ECA": 0.0,
"0x46FDEFE": 400.0,
"0xF2F951A0": 400.0,
"0xAE7AAA37": [
1.0,
0.24,
0.0
],
"0x90795FB8": 0.5,
"0xE95E879C": 0.0,
"0xA671F91F": 25.0,
"ifmg": 75.0,
"0x3C5AB47C": 75.0,
"0x1C71EDDC": 0.0,
"0x9A1225D0": 0.0,
"0x60392758": 75.0,
"0xCF37604F": 75.0,
"0x95236DF0": 0.0,
"0x692E4637": 1.0,
"0x7B297FB2": [
1.0,
0.52,
0.08
],
"0x27733291": 1.2,
"0xDDFD9943": 0.0,
"0x3DB94B93": 0.0,
"0x8AB3E426": 80.0,
"0x1811244E": 80.0,
"0x2871F67": 300.0,
"0x1EAA9061": 400.0,
"0x8A1103DB": 1.0,
"0x7BF25AFD": 3.5,
"0xFBD4A02": 0.3,
"0xEBCB4443": 300.0,
"0x30EC7F91": 1.0,
"0x7F693558": -1.0,
"0x4E548": 0.65,
"0x38041560": 0.4,
"0xCDFD665A": 50.0,
"0xFD3B3C9A": 0.0,
"0x68F91A18": 0.0,
"0x2988AA37": [
1.0,
0.54,
0.0
],
"0x948D0A42": 3.0,
"0xF4DBB5E9": 0.0,
"0xF51E544F": 0.0,
"0x4860955B": 200.0,
"0x736ED30F": 400.0,
"0xF58EB9B5": 1.0,
"0x5CB90504": 1.0,
"0x81154B3B": 3.0,
"0xB8C8D60E": true,
"0x2328A055": 1.0,
"0x66A4EB5F": 3.0,
"0xD211F9B0": 2.5,
"0x27D2D389": 3.5
}

Common features:
- Better shadows with greater distance and quality
- Antialiasing revamped, now more efficient, ported from my older XC1 and XC2 settings.
- Better resolution with their respective improvements in the LOD, terrain and vegetation (they are linked to the internal resolution of the game)
- Slightly tweaked colours in bloom, shadows and clouds for better environment
- Performance mostly reach 30 FPS in larger areas, battles and cutscenes if you overclock CPU/GPU/RAM to:
Overclock Settings in Portable mode: 1224/460/1600MHz, recommended OC GPU to 768MHz with charger/dock to have the best image quality.

Installation (WITHOUT DLCs):
- Unzip and drop Atmosphere folder in the MicroSD root for Switch.

Comparison screenshot:
ImgSli
Vanilla (3).jpg

Modded (3).jpg

I hope you enjoy it :grog:
 

Attachments

  • DunArd's v1.3 Switch Preset.rar
    3.8 KB · Views: 225
Last edited by DunArd,

Fukuro

Active Member
Newcomer
Joined
Mar 21, 2019
Messages
25
Trophies
0
Age
34
XP
118
Country
Russia
Pls help me understand. If i just put your attached bin file to my sdcard without tinkering with python and WordPad will i see any improvement? Or do i need to edit myself first?
 

Chrisssj2

Well-Known Member
Member
Joined
Feb 12, 2008
Messages
2,704
Trophies
1
XP
4,384
Country
Netherlands
Last edited by Chrisssj2,

cobjak

Well-Known Member
Member
Joined
Jan 16, 2019
Messages
278
Trophies
0
Age
31
XP
552
Country
France
i tried this just for fun and the quality is incredible (portable mod) :

"AA_Sharpness": 999.0,
"red_sclX": 2.5,
"red_sclY": 2.5,
"red_hdsclX": 2.5,
"red_hdsclY": 2.5,
"red_Auto": false,
"red_AtMaxX": 2.5,
"red_AtMaxY": 2.5,
"red_AtMinX": 2.5,
"red_AtMinY": 2.5,
"red_AtRate": 999.0,

can we go higher than 2.5 ? I read it's the maximum but i didn't know that it was supported by the switch!

also i found that "0xB8F7EDAE": true, = "dark mode"
"0xdbbe101e6": true = vignette (shadow on border)
 

deathblade200

Well-Known Member
Member
Joined
May 10, 2016
Messages
1,371
Trophies
0
XP
1,344
Country
United States
i tried this just for fun and the quality is incredible (portable mod) :

"AA_Sharpness": 999.0,
"red_sclX": 2.5,
"red_sclY": 2.5,
"red_hdsclX": 2.5,
"red_hdsclY": 2.5,
"red_Auto": false,
"red_AtMaxX": 2.5,
"red_AtMaxY": 2.5,
"red_AtMinX": 2.5,
"red_AtMinY": 2.5,
"red_AtRate": 999.0,

can we go higher than 2.5 ? I read it's the maximum but i didn't know that it was supported by the switch!

also i found that "0xB8F7EDAE": true, = "dark mode"
"0xdbbe101e6": true = vignette (shadow on border)
going above 1.0 will get you "glares" such as duplicates of your blue lines and glitchy screen effects in general. it doesn't really do anything else
 

Fukuro

Active Member
Newcomer
Joined
Mar 21, 2019
Messages
25
Trophies
0
Age
34
XP
118
Country
Russia
You don't edit bin file. You are using it as mod.
Then I dont get why I aint got no noticable changes. Switch is overclocked. Flaged to docked. Bin file is in created folder as per instructions. Using dlc method. Yet resolution and quality of image is same..
 

Helsionium

Alpha and Omega
Member
Joined
Jul 18, 2008
Messages
422
Trophies
1
Age
34
Location
Innsbruck, Austria
Website
www.helsionium.eu
XP
685
Country
Austria
I change
blur2Str": 0.1,
"blur2Sub": 0.1,
"blur2ObjScale": 0.1,
"blur2CameraScale": 0.1,
"blur2BlurRange": 0.1,
"blur2PixelRange": 0.1,

there is also blur2HLV but I didn't see any difference changing it
do not change "blur2": true to false or some cutscenes will have issues
Thanks, the image looks much cleaner now. But it didn't fix the performance problems I still have in some cutscenes.

One particular cutscene I still have performance problems with is Taion's first Ouroboros transformation in chapter 3:
https://youtube.com/clip/UgkxbKzfqeg7cOW_IJYIqlG4aZb_dNbU4Yuh

This was recorded with motion blur still on, but it didn't really make a difference here. Interestingly, the choice of Taion's outfit strongly affects how severe the problems are. Noah's outfit for example makes the stuttering a lot worse.
 
Last edited by Helsionium,

deathblade200

Well-Known Member
Member
Joined
May 10, 2016
Messages
1,371
Trophies
0
XP
1,344
Country
United States
Thanks, the image looks much cleaner now. But it didn't fix the performance problems I still have in some cutscenes.

One particular cutscene I still have performance problems with is Taion's first Ouroboros transformation in chapter 3:
https://youtube.com/clip/UgkxbKzfqeg7cOW_IJYIqlG4aZb_dNbU4Yuh

This was recorded with motion blur still on, but it didn't really make a difference here. Interestingly, the choice of Taion's outfit strongly affects how severe the problems are. Noah's outfit for example makes the stuttering a lot worse.
thats odd that the outfit effects it. I myself had no issue with that scene. although if you are playing handheld with the 460 gpu limit then yeah you can expect frame drops they just won't be as bad without the blur. but using max clock everything should run without any issues the max I've ever needed for battles and cutscenes with very heavy effects is 1581/921/1862 but thats rare to need and its always 30FPS. I'm wondering if somehow the sysclk version effects it since other people have the issue while it works fine for me so this is the sysclk version I use https://github.com/jope82/sys-clk-uncapped-gpu-and-other-extras/releases/tag/1.0.2_b

this is everything else I've changed in my config

"AntiAliasing": false,
"red_sclX": 1.0,
"red_sclY": 1.0,
"red_hdsclX": 1.0,
"red_hdsclY": 1.0,
"red_Auto": false,
"red_AtMaxX": 1.0,
"red_AtMaxY": 1.0,
"red_AtMinX": 1.0,
"red_AtMinY": 1.0,
"blur": false,
"0xF333710C": 0.0,
"tmaa": false,
"furBlur": false,
 
Last edited by deathblade200,
  • Like
Reactions: cucholix

Helsionium

Alpha and Omega
Member
Joined
Jul 18, 2008
Messages
422
Trophies
1
Age
34
Location
Innsbruck, Austria
Website
www.helsionium.eu
XP
685
Country
Austria
@Helsionium Use spoilers please :mellow:
Sorry, I just edited my post. Didn't think anything that's already known from pre-release trailers and the Direct would cause offense.

thats odd that the outfit effects it. I myself had no issue with that scene. although if you are playing handheld with the 460 gpu limit then yeah you can expect frame drops they just won't be as bad without the blur. but using max clock everything should run without any issues the max I've ever needed for battles and cutscenes with very heavy effects is 1581/921/1862 but thats rare to need and its always 30FPS. I'm wondering if somehow the sysclk version effects it since other people have the issue while it works fine for me so this is the sysclk version I use https://github.com/jope82/sys-clk-uncapped-gpu-and-other-extras/releases/tag/1.0.2_b

this is everything else I've changed in my config

"AntiAliasing": false,
"red_sclX": 1.0,
"red_sclY": 1.0,
"red_hdsclX": 1.0,
"red_hdsclY": 1.0,
"red_Auto": false,
"red_AtMaxX": 1.0,
"red_AtMaxY": 1.0,
"red_AtMinX": 1.0,
"red_AtMinY": 1.0,
"blur": false,
"0xF333710C": 0.0,
"tmaa": false,
"furBlur": false,
Oh I get it, you also turned off anti-aliasing. That certainly helps improving performance even more. Still, I guess I won't do this because of image quality concerns. Anyway, that particular cutscene is probably one of the most demanding in the entire game with all those environmental effects.

Does disabling "furBlur" remove fur shading entirely or just the blur effect?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Maximumbeans @ Maximumbeans: butte