Tales of Symphonia

Tales of Symphonia

1,088 ratings
Tales of Symphonia "Fix"
By Kaldaien
Same premise as Tales of Zestiria "Fix" -- performance, stability and image quality fixes.
4
2
12
2
   
Award
Favorite
Favorited
Unfavorite
Introduction
This project aimed to fix the technical problems in Tales of Symphonia that I believed Namco never would.

The project does the following:
  • Fixes Namco's bad framerate limiter
    • 30 FPS still, but no stutter
  • Supports an Optional 4K Texture Pack
    • As well as user-created mods
  • Fixed blurring that was added on 2/22/16
  • Fixed hitching on menu screens and long load times
  • Fixes world's worst cursor management system
  • Fixed Zelos' Harem Master achievement not unlocking
  • Added Multisample Anti-Aliasing
  • Allows fullscreen borderless window mode
  • Integrates Durante's character outline enhancement
    • Improves Durante's work by outlining weapons
  • Correctly matches rendering to the selected resolution (rather than 720p upscaled)
  • Adds a PSN Trophy sound (which can be replaced with any .wav file) on achievement unlock
Download the Fix
Download and run the latest TSFix installer:
https://sk-data.special-k.info/TSFix/SpecialK_TSFix.exe

For an updated guide for TSFix / Tales of Symphonia, see the Special K wiki:
https://wiki.special-k.info/SpecialK/Custom/TSFix

    Old stuff, plz ignore


Automatic Installer
(Preferred — Requires No Additional Software)

The project now uses an internet-based installer. The installer is used by all of my software, so you will have to select this mod from the product list. Tales of Symphonia "Fix" is third on the list.
      SKIM64 will locate your Tales of Symphonia installation, download and install the latest version automatically. It also verifies that the Microsoft Visual C++ 2015 Runtime is correctly installed.
        Software updates are automatic; you will be given the option to upgrade when one is released.


Traditional Installation
(Discouraged — Requires 7-zip Software)

Visual C++ 2015 Runtime
    Beginning with 0.9.4, MSVC++ 2015 Runtime (x86) is required to use the mod. This may not be installed on your computer. If you get an error about msvcp140.dll, vcore140.dll, etc. missing, grab the install package here[www.microsoft.com].

The latest version (0.10.5) is available from GitHub here (grab tsfix.7z only, not the source code):

Latest Version
0.10.5
Download from here[github.com]
    This version includes the pre-9/27 patch executable
This is the superior experience
Alternate Version
0.9.11
Download from here[github.com]
    This version is intended for use with Namco's official patched version of the game.
I see very little reason to use the official patch, it looks worse and performs worse. But I did the initial work to make TSFix compatible with it, so you have the option.

I ask that you never link directly to the GitHub download page when discussing this project; it creates troubleshooting problems for me. Instead, if you could link to the Steam forum post or this guide, that would be appreciated.
Installation
Download and run the latest TSFix installer:
https://sk-data.special-k.info/TSFix/SpecialK_TSFix.exe

For an updated guide for TSFix / Tales of Symphonia, see the Special K wiki:
https://wiki.special-k.info/SpecialK/Custom/TSFix

    Old stuff, plz ignore


Guided Install / Uninstall
(SKIM64.exe)
  • Run SKIM64.exe and select Tales of Symphonia "Fix" from the product list

Manual Install / Uninstall
(Not suggested)
    Install
    1. Extract tsfix.7z to your ToS install path
    2. Copy default_tsfix.ini to tsfix.ini and default_d3d9.ini to d3d9.ini

      • Leave the original INI files in-place; the auto-updater uses these to determine when a change has been made to default configuration and will overwrite your customized config if they are missing.
    Uninstall
    1. Delete d3d9.dll and tsfix.dll from your ToS install path
    2. Delete the config files for tsfix.ini and d3d9.ini as well as logs stored in logs/
Configuration
Render
    tsfix.ini
[TSFix.Render]
AllowBackground
    { true | false }
Allows the game to keep rendering while another window is in the foreground.
    This option blocks keyboard and mouse input to the window when in the background.
      I have intentionally kept the game processing gamepad input while another window is in the foreground (more on this "speed hack" technique below).
This may cause compatibility issues with other software, it works fine by itself but if you have other borderless window software active you should probably turn this off.

OutlineTechnique
    { 0 | 1 | 2 }
Controls the blend equation used to display character outlines.
    0
    Namco's
    Invisible?!
    1
    Durante's
    Darker
    2
    Kaldaien's
    Darkest
2 is enabled by default, and enhances weapon outlines (Durante's does not).
    Press Ctrl + Shift + . to cycle through these three modes.

PostProcessRatio
    [ 0.0 - 1.0 ]
Boosts the resolution of the game's post-processing surface.
    The game renders into a fixed 512x256 (pre-9/27) or 960x540 (post-9/27) surface by default.
This option scales the post-processing effects to a multiple of your resolution.
    0.5 is what GeDoSaTo has adopted; 1.0 is what I used for Tales of Zestiria to eliminate non-mipmap related shimmering artifacts.

MSAA_Samples
    { 0 | 2 | 4 | 8 }
Adds MSAA capabilities to the game
    The game's default/only setting is 0 (off), but depending on your GPU's capabilities you may be able to select 2x, 4x, or 8x.
      Press Ctrl + Shift + , to temporarily toggle this in-game.

MSAA_Quality
    Driver Specific
Enables special modes such as CSAA (NV) or EQAA (AMD)
    These are driver-specific, and you will have to lookup information elsewhere to figure out which values to use.
Many modern GPUs only offer 1 quality level: 0

[TSFix.Window]
Borderless
    { true | false }
Runs the game in borderless window mode
    This resolves absurdly long Alt+Tab delays and crashes.
    When combined with AllowBackground, this will prevent the game from hijacking your mouse when it tries to "hide the cursor."
It is highly recommended that you do not change this, if you do you must turn AllowBackground off

ForegroundFPS
    [ 1.0 - 240.0 ]
The framerate limit while the window is in the foreground.
    Values > 30.0 are possible if the Stutter Fix is enabled, but the game is not meant to be played at that speed.

BackgroundFPS
    [ 1.0 - 240.0 ]
The framerate limit while the window is in the background.
    Values < 30.0 may be used, but they will effectively slow down time.
This means using Alt + Tab with the "AllowBackground" option enabled can be used as a speed hack :)

Center
    { true | false }
Whether to keep the window centered in windowed mode

FixTaskbar
    { true | false }
Fixes taskbar visibility in borderless windowed mode
    Most systems will not require this, but on some systems with DPI scaling the taskbar will not go away without enabling this.
Configuration
Textures
[TSFix.Stutter]
Bypass
    { true | false }
Bypasses Namco's Framerate Limiter
    Preferred method of dealing with stuttering; may cause compatibility issues with VMProtect.

Tolerance
    [ 0.0 - 10.0 ]
Controls how strictly my framerate limiter adheres to its target.
    Numbers < 0.1 will produce poor results similar to Namco's limiter.
    Higher numbers will allow the framerate to run quite a bit faster than it is supposed when stuttering starts and will resume normal limiting behavior once everything settles down.
This is done in order to keep the limiter from making the problem any worse.
[TSFix.Textures]
Cache
    { true | false }
Dramatically speeds up menus by avoiding unnecessary texture reloads.

This may cause problems with some third-party software that tries to manage texture memory itself, but has been tested with GeDoSaTo and is known to work.

MaxAnisotropy
    { 0|2|4|8|16 }
Overrides anisotropic texture filtering
    On modern hardware, 4x AF is effectively free; thus this is set by default.
The game's default/only setting is 0 (trilinear), but you can use anything you want here
Optional Add-Ons
Introducing Special K Install Manager (DLC Edition)

The new internet-based install and auto-update system in Special K provides a streamlined way of installing all optional content for my mods. None of the complicated work of combining multi-part .7z files, just point and click!












Known Issues
GeDoSaTo is known to cause quite a few issues, some of which are related to its original suggested use as a framerate limiter when combined with Windows XP SP3 compatibility mode. It is strongly suggested that you do not use that, and instead use TSFix's stutter fix.

If you wish to use GeDoSaTo with my software:

    First, edit d3d9.ini and set ForceD3D9Ex=false
    Next, edit GeDoSaTo's Profile (see below)
  1. Turn its framerate limiter off
  2. Disable its borderless window feature
  3. Override the Tales of Symphonia plug-in
  4. Set it to load D3D early
  5. Disable its early Steam overlay feature
  6. Disable its aspect ratio correction feature

    Use the following settings for the Tales of Symphonia Profile:

    # Lines starting with "#" are ignored by GeDoSaTo and used to provide documentation # This is a profile file for Symphonia # Put your desired rendering resolution below maintainAspectRatio false fpsLimit 0 forceBorderlessFullscreen false forceFullscreenMode false pluginOverride GenericPlugin loadSteamOverlayEarly false loadD3DEarly true interceptOnlySystemDlls true

This is why you DO NOT want to use GeDoSaTo's built-in Symphonia Plug-in
Its scissor math is wrong and the UI, minimap an various other game systems are broken, with or without TSFix installed when using GeDoSaTo's plugin.

With GeDoSaTo's Plugin OFF (Correct in TSFix)


With GeDoSaTo's Plugin ON (Incorrect)



    See this post for a more detailed discussion of GeDoSaTo compatibility
Troubleshooting
Crashing?
Please report any other issues that you have in the Special K Discord server.[discord.gg]

When reporting a problem, logs/tsfix.log, logs/preloads.log, logs/steam_api.log, logs/textures.log, logs/d3d9.log and logs/crash.log may help us diagnose the problem.


Complete Manual Uninstall (applies ONLY to versions older than 0.6.3)

If tsfix_enabler.exe does not successfully uninstall, you can manually remove the mod from your system by deleting the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\TOS.exe

Finally, delete d3d9.dll from %TEMP%
Source Code and Donations
I believe strongly in open source software and I never charge a penny for any of my work. However, these projects do take a considerable amount of my time and I like to think that has some value.

Donations are completely optional, and they permit me to buy books, tools and dedicate more of my time to these projects. See the GitHub repository[github.com] for more information.
997 Comments
Lexicon Mar 9 @ 4:18am 
@jamydanny It worked
jamydanny Mar 4 @ 10:24am 
@Eldritch Moon @Lexicon

Disable "Enable Steam Input" in Controllers.
Lexicon Mar 2 @ 4:11am 
Anyone know how to fix the FVMs being buggy?
Moya-chan Jan 17 @ 12:30am 
@Eldritch Moon same here...
Eldritch Moon Jan 9 @ 10:31am 
OK fine, I'm going to give this one more try, but why are my FMV's all screwed up now? They are glitchy as heck.
G577hazeooze Jan 5 @ 10:46am 
For anyone trying to do this on a Steam Deck, and are running into an issue where when you launch the game it doesn't print anything to the command line window that opens and doesn't launch the game:
I managed to get it to launch by changing the version of Proton used to run the game under Properties -> Compatibility
Mine is working with ULWGL - Proton 8.0-5-3
kilicool64 Nov 15, 2024 @ 8:19am 
@Milouze Not required, but recommended. The last update just implemented some of this mod's features in an inferior way.
Milouze Nov 15, 2024 @ 1:41am 
Is this still required or did the last game update cover most of it ?
sesshoth Oct 10, 2024 @ 9:07am 
I got it working, I found out that SKIM had a program running in the background, I took it off and now it stopped having issues
sesshoth Oct 9, 2024 @ 1:28pm 
Now every time I try to play the game with my xbox controller the cursor acts as if I am holding up or down and quickly moving through all the options, this is the only game that's doing this, I don't know if it's because of this or something with the game.