Woo! Multiple new patches and a big revamp/patch to the games lighting system!
New stuff:
Startup Warning Dialog Fix - Fixes a dialog that either fails to be created or fails to appear and causes the game to look like it's black screened, made by "Just Harry".
^ This and the CPU Optimization and Expanded Crash Log patches are now enabled by default (thank you Swiffyjk for this and some banger readme changes!!)
Disable Store Featured Items Download - Blocks the game from downloading the featured store items listing, preventing thumbnail downloads into the FeaturedItems folder.
Uncompressed Compositor Textures - Forces material compositor textures to use uncompressed A8R8G8B8 instead of DXT1/DXT5. Similar to the Sim Textures patch but for other things, DXVK is recommended to avoid memory issues.
Lighting Quality Patch - Improves interior lighting: higher lightmap resolution, softer shadows, blur and a janky multisampler that might be worse than the default but I spent too long on not to ship it. Highly recommend playing with the various lighting settings in the settings tab alongside this as you can DIY your own lighting mods and lighting is fun and neat and cool. I would recommend turning drop shadows off at least as I find they look really gross.
The last three are experimental patches, they'll graduate into proper patches eventually.
Updates/Changes:
Update to smooth patch precise with help from LazyDuchess!!!, a few things tweaked and a new option to only tick at most once per frame.
Intersection optimization patch removed (RIP), this wasn't a wise patch to begin with and ended up breaking a few things (was faster because it just threw out half of its calls)
That's all! S3MM soon etc. etc. I will probably expand on the lighting patch as I had "fun" working on it, I'd also like to mess w/ the diffuse and specular probes/system for crispy reflections etc.
As always, download can be found here readme can be found here
Apologies for this taking forever and me disappearing off the face of the Earth, sorry if you've tried to DM me w/ issues, etc etc blablabla. I would like to say I'll be more active now but who knows, life is kind of sucky atm
New patches:
Mirror Reflection Settings - Tunes how far away mirror reflections stay visible. Push reflections out further (or rein them in if you've got a wall full of mirrors and want your frames back, mirrors are each their own little camera). Patch idea from Boring Bones
Animation Blend Tuning - Clamps animation blend (transition) durations to a min/max, so transitions that snap can be smoothed out and slow blends can be made snappier. Also includes a forceBlendOut option that lets through blend-out times the engine would otherwise discard. Big thanks to @thepancake1 for the patch!
Split-Level Lighting Fix - Makes lighting not stop at a single level - lot-bound lights now pass the engine's 'world light' filter in outdoor rooms and terrain lightmaps. May cause a bit of light bleed near walls/floors. All credits to Arro-Now!
Brady Bunch BEGONE - The engine fills unlit/dim rooms at night with a fake blue ambient (the "Brady Bunch Blue" apparently). This allows you to change them or to (ideally) zero the values so unlit rooms render without the gross blue glow. Patch idea from Arro ,thanks!
All four are experimental for now, they'll graduate one day...
Updates/Changes:
CPU Thread Optimization - Fixes Alder Lake+ CPU issues correctly now (hopefully).
Lighting Quality - Improved blur math precision to prevent color banding, plus an additional fix for rooms gradually darkening over repeated passes. Blur is now energy-preserving so it stops drifting the average brightness down.
Startup Warning Dialog Fix - New Hide Dialogue setting that prevents the dialog from being created at all, rather than making it visible.
As always, download can be found here readme can be found here
Hi! You might have a partial message from me. I'm the anon having a devil of a time getting S3SS to work on my Linux TS3 install. I have dropped S3SS and the wininet file into the bin, but the overlay doesn't pop up when I'm in game and hit the insert button. I can tell that my ASI loader isn't functioning, whether I use the dxwrapper and change the config or wininet. I've tried the Smooth Patcher version of wininet, and changing the patcher to put up a message when it loads too and that has never happened. I'm guessing (but not completely sure) that using the intelfix.dll for fixing the Alder Lake issue conflicts with S3SS? With it, I can't get S3SS to work, but without it, I can't get the game to run. I read in your notes that I should be able to use S3SS without also needing the fix, but maybe I'm misunderstanding. Again, that could be a completely different issue, but that's my best guess as of now. Do you have any tips/suggestions?
I'm not really sure on the linux front, there is an open issue on github that people have chimed in on that might be helpful for you.
For the Alder Lake issue, my fix was semi-busted, I now have a patch committed that fixes this fully and is enabled by default, I've popped this up as a prerelease now (forgor before), so you can give it a go here:
Fixes Alder Lake+ CPU issues
(I'll remove this link once it's pushed to a release... hopefully). Though there shouldn't be any conflicts between S3SS and any other ASI mods loading.
New detailed memory statistics in the QoL section (above)
Memory monitor made more accurate
Version number now shown in the menu header
Patch UI now correctly displays user-friendly text and has improved overflow styling
Fixed S3SS folder placement for usernames containing ƒün ĉħαřäĉťℯřś, should now place the S3SS folder at the correct location
Some changes to the borderless QoL mode, this may be better or may be worse, apologies if it's the latter for you 😶
Patches:
New "Smooth Patch Precise" rewrite. The tick-rate limiter has been fully replaced with a hybrid sleep/busy-wait implementation. Default tick-rate raised to 480. Preset values changed to 480/960 (multiples of 60) for potentially smoother frame-pacing. Now includes a frame-rate limiter. Can be safely toggled on/off at any time now also
New Oversized Thread Stack Fix. Reduces memory wasted by the game's file-watcher threads. The game creates several dozen of these with oversized 1 MB stacks when they need less than 64 KB. Saves ~80-170 MB depending on your setup
Expanded crash logging patch. Adds detailed access violation info (memory state, protection flags, read/write/DEP), S3SS version, and a full virtual memory statistics breakdown to TS3s crash logs. Please enable this when reporting crashes (may become a default later)
Experimental GC_try_to_collect removal from Simulate. Should improve Simulate calls/s quite dramatically. May increase memory usage
The vast majority of this patch was written by "Just Harry" huge huge huge huge thank you to him and all the people who have tested this.
Settings are now found in \Documents\Electronic Arts\The Sims 3\S3SS and are in TOML format
New update to the Uncompressed Sim Texture patch enabling it to just target Sim LOD 0 if you want from just-harry
New detection for outdated game versions from just-harry
Added countdown for the rebounce delay of a patch pending re-installation again from just-harry
Made ImGui use higher rez fonts and added a font size slider
Added Alder Lake CPU support/patch
Changed Timer Optimization patch to no longer adjust critical sections, now just sets timer resolution to 1ms. While this is technically a "downgrade", it makes more sense. I may introduce the critical section patch as its own thing, but I think it's a fairly minute improvement, and S3MM will have far more impactful patches (Pre alpha release in the next few weeks hopefully!)
Hopefully this will be some of the last work I do on S3SS... H-haha... There's still a lot of really bad code (Settings system/dllmain) but I think that can just sit and rot forever.
As always, latest release here github.com/sims3fiend/Sims3SettingsSetter/releases/latest
New Uncompressed Sim Textures patch from "Just Harry" that forces CAS quality textures onto sims. Comes with an obvious increase in memory usage, highly recommended to use DXVK
ImGui window now tells you to save if you have unsaved changes
Before:
After:
As always, download link here: https://github.com/sims3fiend/Sims3SettingsSetter/releases/latest
The readme has also been updated slightly by swiffyjk on github :D
Hey sorry if this information is already out there somewhere, but with Smooth Patch Precise do we still need to worry about incompatibilities with Nraas Master Controller like was the case with the OG version by LazyDutchess? With that one I believe there was a workaround file you could place in your mods folder which disabled it from running in CAS
Anecdotally I’ve been using Smooth Patch Precise + MC with no issues, but I was just wondering about the proper protocol. Thanks so much for making SSS, it’s incredible!
You can use both! They touch different areas of the game so there's no conflict. You can use the original smooth patch's .package file and precise/dupe at the same time, and I'd actually recommend it as it does help quite a lot.
Sooooo, I've been working on my new "mod" S3MM, and I've now, for some reason, made a full mod loader with a harmony-like hooking system plus hot reloading, and a few other things. This is probably all very overkill but I've been having a lot of fun figuring things out (though of course some of it has been incredibly frustrating too!)
Mod Loader/Platform!
Mod loading from dll! No more stinky .package file stuff for script mods! Currently you can just plop the .cs file into a mods folder, no need for build setup or project files (tho you still need the dlls), it runs csc.exe to compile mods when the game runs, then loads it in. Ideally completed projects would be a .dll tho for obvious reasons
Hot reload! You can reload mods while playing if you've edited things, or load new ones in, this is a fairly janky implementation as it compiles a new assembly then loads that in in addition to the previous one (thank you mono very cool), but it works!
Harmony-like hooks
Prefix, postfix and replacer hooks, as well as "watchers" to observe/fire when/what a hook runs/returns
Multiple mods can hook the same method (with optional priority). Each one runs, calls the next, all the way down to the original, modifying the return value, passing data to the next hook or stopping the chain entirely if they want to
The shape/structure for this is kind of hideous at the moment, I need to RE and think through attributes and a proper overall shape, but the core logic is done now and works, and that should hopefully be easy to add in r-right?
There's also some helper functions, like logging, I'll be adding more to hopefully make writing mods a bit easier and to integrate more with the ImGui side of thinks
Inspector UI
(UnityExplorer but bad) Lets you browse all loaded classes, call any methods in them, edit their values (e.g. tunables), browse their objects (also a separate heap browser for objects now) and has a janky profiler I'll probably remove for calls and allocs. This needs a fair amount of work as it's kind of been forgotten about while I worked on the mod system and 90% of it could be done way simpler and cleaner...
Future stuff
I have a lot of ideas on where to take this in the future, the sky is really the limit with this tbh, though obviously I need to do some massive cleanups before this is even remotely ready for release...
Obviously, optimization mods, there's a fair amount of areas to improve, especially for Sims3Common (aka the native exe stuff) things as they handle the bulk of the heavy lifting
Ingame IDE/code editing? Ingame scripting?
More convenient bindings and helpers for things and stuff
Make better use of ImGui for mods, maybe for notifications or idk, gameplay elements?
C++ layer (similar to monopatcher) for mods, could maybe native-ify some things?
Make actual mods with it (RPC? multiplayer? something stupid I'm sure), despite doing a lot of work on this, I don't really know half of what the C# side has/does, so I think having some actual mods using this could be helpful and perhaps provide a reason for people to use the... whatever this is
I'm not really sure when or if I'll release this but hopefully by posting this I'll motivate myself to work on it more lmao
thanks 4 reading xoxo, if you have ideas for what I should add/do with this, lmk!
Mimalloc settings saving issue (this took waaaay too long to figure out)
Rare/weird issue where for some users the .ini would be saved in random places like SYSWOW????
I'm going to work on porting the ini system to TOML and maybe placing the files in the Documents\Electronic Arts\The Sims 3 folder, once I figure out a non-bad way of doing that.
Huge credits to Just Harry for the majority of this update! None of this would have happened with them!
Changes:
All patches should now work on all platforms. EA no longer has to suffer! Going forwards I will try and make all of my patches multi-version and stop being lazy 😅
Smooth Patch Dupe removed
Smooth Patch Precise added
Experimental GC Finalizer Throttle patch added (couldn't think of a nicer name)
As always, full readme with patch descriptions Here and the latest release Here
Fixed several persistent ini saving and loading issues
Temporarily disabled preset system as it was bugged and corrupting peoples ini's
Patches now automatically re-apply themselves (debounced 2 seconds) if a sub-setting was changed (woops)
Sub-settings also now correctly save
Known issues:
Win11/10 users with Core Isolation and/or Hypervisor-protected Code Integrity (what a name) will have issues with the IAT hooks not hooking, this fails gracefully and wont cause any issues asides from those patches not enabling.
I may do a settings system rewrite? Or maybe put it off for another year or 12.
The mono tunable editor (not MonoModder, that's a separate thing) is mostly done code wise and will hopefully be coming out soon-ish.
As always, latest release here: https://github.com/sims3fiend/Sims3SettingsSetter/releases/latest
Currently working on mono stuff for TS3! I know I said I'd like to make some normal mods but... I couldn't help myself.
So anyway, I've mapped a fairly... significant amount of the sims 3's mono implementation (destroying my sanity in the process), and have made a neat little tool I'm going to call Sims3MonoModder.
It currently lets you browse classes, invoke (static only for now) methods, read/write fields, modify singletons and probably some other stuff. For most people reading this that probably means nothing, and for me it also means nothing. Essentially you can do things like change tunables and other more ingrained values on the fly or cause specific game events to happen, and all sorts of fun things.
I'm planning to eventually morph this over time into a scripting/modding platform/tool instead of just a debugging or fun to play around with thing, however I'm not really sure like... What the best end result would be. I'm thinking maybe some sort of easy to use LUA... thing? Like just drop the files in a directory, hit load ingame, done. It would be fairly easy to do and would enable things like hot loading/reloading, but wouldn't be able to replace existing functions on the fly (would need to restart to do replacements, until I figure out a way around that.. I do think it might be possible in a very janky way), just act as a layer on top of things.
There's still a lot of work to be done to get just this side of things working fully/correctly, but idk. Is anyone interested in anything like this?
Also, a trimmed down version just for tunables will definitely be coming to S3SS probably in the next major update, whenever that is. I don't want to add the full thing into it as S3SS is already way past just a "setting setter" with the whole patch system, and has way too much tech debt going on for me to want to add significantly to it.
Let me know if you've got any features you'd want or ideas you have for something like this, the sky is the limit really, I just have limited experience in the "normal" sims 3 modding realm so I could really use the perspective of people who have actually played the game or made mods.
Hellooooooo
New update! Big Update!
Changelog would be quite big, so here's a brief list of new stuff. I've also fixed a few bugs and other issues that I've probably forgotten about. The latest version, as always, can be downloaded here: https://github.com/sims3fiend/Sims3SettingsSetter/releases/latest
New patches:
RefPack decompression optimization (Steam): This is the biggest one and probably the most impactful overall. This is a complete rewrite of the games .package file decompressor. Should result in faster loading screens, less stutter, etc. This was a huge effort, I may do a proper full technical writeup on just this later.
Mimalloc alloc replacement (All): Replaces sims 3 crusty memory allocator functions with mimalloc for better memory management and performance.
Timer + Thread optimization patch remake (Steam, some parts will be made usable by EA/other versions tho maybe idk): this is essentially an entirely new thing from the previous version, reduces time resolution to 1, and optimizes critical sections w/ tiered spin counts to make the game hopefully smoother/faster/cpu gooderer
CreateFileW Random Acccess (All). hints the random access flag for CreateFileW calls, should improve I/O performance
GC_stop_world() (steam) very minor patch, I might remove this idk probably should be in experimental
Experimental patches:
Adaptive thread waiting (All): Trades CPU usage for lower frame time variance, hopefully creating a smoother game. This one also took ages and unlike refpack is probably a lot less impactful for most users
WorldCache file size uncap (Steam): Removes the 512mb limit on Documents\Electronic Arts\The Sims 3\WorldCaches files which should resolve some of the thrashing issues (game writes to cache, cache full, game kicks object out, game writes to cache, cache now full again, etc.)
Resolution spoofer (All): Allows spoofing up to 6k resolution for downsampling, makes the game look crispy and nice, really huge difference. You will need a UI scale mod otherwise it'll be tiny. I am looking at a way of doing this that wouldn't require that.
I've also added a borderless fullscreen toggle in QoL. You may need to use this instead of other borderless mods as IIRC I did some special handling.
Huge thanks to all the testers over in LazyDutchess' discord channel who helped me both come up with some of these patches and test them ♥
This will probably be the last update I make to S3SS in terms of patches, I think I've kind of done all I care to do. I am going to move over the mono side of things and to making actual mods and maybe some optimizations for that side as well. I'll also try making all tunables accessible in the S3SS UI via Mono Patcher hopefully reasonably soon. And also maybe a code cleanup but.... nahhhhh
I'm also not really concerned with E12 anymore, using dxvk with something like d3d9.textureMemory = 600 (don't set it too low or you'll lag, needs to be just high enough that it's hit during heavy load/use, not every frame) basically stops it from ever happening unless you're doing something really wrong. If e12 is a concern for you and you're not using dxvk, I would recommend you try it out.
As always, feel free to contact me if you run into any issues, preferably Discord as I'm pretty bad at responding on Tumblr
Hellooooooo
New update! Big Update!
Changelog would be quite big, so here's a brief list of new stuff. I've also fixed a few bugs and other issues that I've probably forgotten about. The latest version, as always, can be downloaded here: https://github.com/sims3fiend/Sims3SettingsSetter/releases/latest
New patches:
RefPack decompression optimization (Steam): This is the biggest one and probably the most impactful overall. This is a complete rewrite of the games .package file decompressor. Should result in faster loading screens, less stutter, etc. This was a huge effort, I may do a proper full technical writeup on just this later.
Mimalloc alloc replacement (All): Replaces sims 3 crusty memory allocator functions with mimalloc for better memory management and performance.
Timer + Thread optimization patch remake (Steam, some parts will be made usable by EA/other versions tho maybe idk): this is essentially an entirely new thing from the previous version, reduces time resolution to 1, and optimizes critical sections w/ tiered spin counts to make the game hopefully smoother/faster/cpu gooderer
CreateFileW Random Acccess (All). hints the random access flag for CreateFileW calls, should improve I/O performance
GC_stop_world() (steam) very minor patch, I might remove this idk probably should be in experimental
Experimental patches:
Adaptive thread waiting (All): Trades CPU usage for lower frame time variance, hopefully creating a smoother game. This one also took ages and unlike refpack is probably a lot less impactful for most users
WorldCache file size uncap (Steam): Removes the 512mb limit on Documents\Electronic Arts\The Sims 3\WorldCaches files which should resolve some of the thrashing issues (game writes to cache, cache full, game kicks object out, game writes to cache, cache now full again, etc.)
Resolution spoofer (All): Allows spoofing up to 6k resolution for downsampling, makes the game look crispy and nice, really huge difference. You will need a UI scale mod otherwise it'll be tiny. I am looking at a way of doing this that wouldn't require that.
I've also added a borderless fullscreen toggle in QoL. You may need to use this instead of other borderless mods as IIRC I did some special handling.
Huge thanks to all the testers over in LazyDutchess' discord channel who helped me both come up with some of these patches and test them ♥
This will probably be the last update I make to S3SS in terms of patches, I think I've kind of done all I care to do. I am going to move over the mono side of things and to making actual mods and maybe some optimizations for that side as well. I'll also try making all tunables accessible in the S3SS UI via Mono Patcher hopefully reasonably soon. And also maybe a code cleanup but.... nahhhhh
I'm also not really concerned with E12 anymore, using dxvk with something like d3d9.textureMemory = 600 (don't set it too low or you'll lag, needs to be just high enough that it's hit during heavy load/use, not every frame) basically stops it from ever happening unless you're doing something really wrong. If e12 is a concern for you and you're not using dxvk, I would recommend you try it out.
As always, feel free to contact me if you run into any issues, preferably Discord as I'm pretty bad at responding on Tumblr
I'm back for a spooktacular halloween update to Sims3SettingsSetter!
Announcing version 1.0! Woo, finally! Sorry to everyone that has been waiting :(
The latest version can be found here:
Github Code <- Also contains the readme now! Check it out!
GitHub Release
SimsFileShare
ModTheSims - Soon maybe idk
As always, you will need a ASI loader to use this mod.
I'm also no longer providing a performance baseline preset, I may in the future but instead I think I'll do a more focused post on overall things you can do to get the game running good. DO NOT USE THE OLD BASELINE PRESET
More info on the changes below xoxo
Some of the new features/changes are:
Huge code cleanup and refactoring
Settable UI toggle keybind
Fixed d3d9 hook for better working-ness
Toggleable warning when hitting the memory limit
Improved code safety to hopefully not crash if something breaks
Manual enabling of debug Live settings changer thing (lmk if it doesn't trigger after this update though!)
New settings, logging and preset system
New patches system for developers (check the readme in the patches directory) which should massively speed up the speed I can release small patches and tweaks, it streamlines a lot of the repetitive work and auto-registers it to the imgui ui. If you're a developer or want to get into RE-ing, check it out!
Patches now detect which exe version you're using and stop you from using them on unsupported versions, they also fail better and will warn you if something goes wrong
New patches:
CPU thread distributor - forces the game at gunpoint to assign threads to better cores depending on CPU type, might not be needed on EA, wont crash either way tho
CreateFileW patch (Thanks to FoulPlay on discord!) - Makes the main .package reading functions use the random access flag which should improve I/O performance when loading stuff, particularly on SSDs (credits to Foul Play on discord!)
Lot loading optimization patch - Sets 2 debug settings that should drastically improve performance/reduce stuttering for people playing with >1 max active lot
Map View Lot fixer thing - Stops lots from unloading when entering the map, basically removing the lag from entering/exiting the map if you've already been in that area, highly recommend using it alongside the lot loading patch
Threading and timing optimization patch - Big patch that adjusts several timing and threading related things, increases timer resolution to 1ms, adjusts critical section spin counts and patches out wasteful CPU spinning, should reduce CPU usage and increase speed pretty decently
Smooth patch dupe - Does what smooth patch does but more targeted, instead of touching the SleepEx wrapper (48 references) it changes the function responsible for the frame limit and lets you specify that instead, much cleaner. Pattern matches so should work on EA also.
I might release some of these as individual files, however I think going forwards the majority of my patches will be tied to S3SS, it's just becoming too big of a headache and the patch system is too nice to not develop with.
I'm also working on a post w/ some common misconceptions about certain settings and what they do, if you have any specific ones you want me to dive in to please send me a message 😁
I'm also also working on a post about surefire performance improvements and the glory of DXVK, that should hopefully be out soon-ish (work permitting…)
Future updates/Ideas
EA pattern matching for new patches… Sorry EA people it's just really annoying to write patches for EA versions due to the gross DRM issues
I think I will try and figure out a way of throttling the actual object loads themselves, this is the main cause of stutter in the game (too much stuff all at once). I've had a look but couldn't find an easy approach, but I'll keep trying
More settings/making Config/Options category settings editable live instead of requiring a restart. This would be a fair amount of work since I haven't been able to find a central place they all go ;/
I'd like to work on some targeted d3d9 stuff, though this is mostly a moot point now since the memory issues with the game are basically solved with dxvk now so 🤷
Shadow shader…. I haven't forgotten this. If I could fix up or adjust the transition between the two maps it would make the shadows look so juicy and crisp, but alas…
Settings setter but for mono tunables. Some sort of mitm live view of mono stuff would be sososososososososo good.
I'd also like to just look at regular mods, I haven't really looked at the mono side of things or .package mods at all, just the exe, there's probably some really neat things that can be done with it
Anyway that's all! More to come! As always feel free to message me on Discord or Tumblr about whatever.
I'm back for a spooktacular halloween update to Sims3SettingsSetter!
Announcing version 1.0! Woo, finally! Sorry to everyone that has been waiting :(
The latest version can be found here:
Github Code <- Also contains the readme now! Check it out!
GitHub Release
SimsFileShare
ModTheSims - Soon maybe idk
As always, you will need a ASI loader to use this mod.
I'm also no longer providing a performance baseline preset, I may in the future but instead I think I'll do a more focused post on overall things you can do to get the game running good. DO NOT USE THE OLD BASELINE PRESET
More info on the changes below xoxo
Some of the new features/changes are:
Huge code cleanup and refactoring
Settable UI toggle keybind
Fixed d3d9 hook for better working-ness
Toggleable warning when hitting the memory limit
Improved code safety to hopefully not crash if something breaks
Manual enabling of debug Live settings changer thing (lmk if it doesn't trigger after this update though!)
New settings, logging and preset system
New patches system for developers (check the readme in the patches directory) which should massively speed up the speed I can release small patches and tweaks, it streamlines a lot of the repetitive work and auto-registers it to the imgui ui. If you're a developer or want to get into RE-ing, check it out!
Patches now detect which exe version you're using and stop you from using them on unsupported versions, they also fail better and will warn you if something goes wrong
New patches:
CPU thread distributor - forces the game at gunpoint to assign threads to better cores depending on CPU type, might not be needed on EA, wont crash either way tho
CreateFileW patch (Thanks to FoulPlay on discord!) - Makes the main .package reading functions use the random access flag which should improve I/O performance when loading stuff, particularly on SSDs (credits to Foul Play on discord!)
Lot loading optimization patch - Sets 2 debug settings that should drastically improve performance/reduce stuttering for people playing with >1 max active lot
Map View Lot fixer thing - Stops lots from unloading when entering the map, basically removing the lag from entering/exiting the map if you've already been in that area, highly recommend using it alongside the lot loading patch
Threading and timing optimization patch - Big patch that adjusts several timing and threading related things, increases timer resolution to 1ms, adjusts critical section spin counts and patches out wasteful CPU spinning, should reduce CPU usage and increase speed pretty decently
Smooth patch dupe - Does what smooth patch does but more targeted, instead of touching the SleepEx wrapper (48 references) it changes the function responsible for the frame limit and lets you specify that instead, much cleaner. Pattern matches so should work on EA also.
I might release some of these as individual files, however I think going forwards the majority of my patches will be tied to S3SS, it's just becoming too big of a headache and the patch system is too nice to not develop with.
I'm also working on a post w/ some common misconceptions about certain settings and what they do, if you have any specific ones you want me to dive in to please send me a message 😁
I'm also also working on a post about surefire performance improvements and the glory of DXVK, that should hopefully be out soon-ish (work permitting…)
Future updates/Ideas
EA pattern matching for new patches… Sorry EA people it's just really annoying to write patches for EA versions due to the gross DRM issues
I think I will try and figure out a way of throttling the actual object loads themselves, this is the main cause of stutter in the game (too much stuff all at once). I've had a look but couldn't find an easy approach, but I'll keep trying
More settings/making Config/Options category settings editable live instead of requiring a restart. This would be a fair amount of work since I haven't been able to find a central place they all go ;/
I'd like to work on some targeted d3d9 stuff, though this is mostly a moot point now since the memory issues with the game are basically solved with dxvk now so 🤷
Shadow shader…. I haven't forgotten this. If I could fix up or adjust the transition between the two maps it would make the shadows look so juicy and crisp, but alas…
Settings setter but for mono tunables. Some sort of mitm live view of mono stuff would be sososososososososo good.
I'd also like to just look at regular mods, I haven't really looked at the mono side of things or .package mods at all, just the exe, there's probably some really neat things that can be done with it
Anyway that's all! More to come! As always feel free to message me on Discord or Tumblr about whatever.
Map view lot streaming blocker should now function a lot better and safer, no longer NOPing anything, and I've added some safety things to the overall patch system
Split lot visibility camera and settings patches, just to give EA users something
Fixed hovering over experimental options not showing their details (I hate imgui)
Switched to release instead of debug, 3mb saved!!!!!!
Added:
D3D9 hooking system, nothing uses this yet but maybe in the future. Honestly no idea why I did this. If you want to do d3d9 mods I got your back!
Soon:
Some sort of resolution patch, I was hoping to get this out but ran into some issues, essentially downsampling for AA by letting people change the games resolution to way higher. Could somehow use the pseudoresolution setting (friendly reminder to check that yours is set to 0,0) but that upscales instead of down so :/
Smooth patch 1-1 dupe (oops forgot to do this sorry)
Some mono stuff I found, idk if it'll do anything tho