I have updated my edit of GraphicsRules.sgr to version 2.0, and the following things are changed:
Removed leftover post-processing code.
TextureMemory now falls back more gracefully, based on RAM. High-end GPUs receive a maximum of 1GB texture memory—allocating more is pointless, since the game can't use it. (Source - PuzzleAddict has been a memorable member of the TS3 community and helped a lot of players, and I trust him more than I trust myself. If someone can prove otherwise, I am willing to change this setting). Older systems (pre-2010) used 32MB or less, but all modern iGPUs (Intel UHD, AMD Vega/RDNA) default to 128MB minimum.
The login pop-up before entering a save is now properly disabled.
Celebrities are now unticked by default. This won't affect existing saves or new saves that already contain celebrities, it only prevents random celebrity status from being assigned to Sims who didn't have it. Worlds with built-in celebrities (Bridgeport, Barnacle Bay, Hidden Springs, etc.) are unaffected. - Iqbal Alvi, no more 5 star celebrity for you!
Added new settings in Options.ini: PauseOnLoad and BetterDynamicAvoidance. See ConfigurableOptions.txt for configuration details.
Attempted fix for the animation smoothing bug caused the bug where the game ran at high FPS while paused, but dropped frames during gameplay. EA forced this setting to always be enabled, even when unticked in game - as a workaround instead of fixing the underlying issue. In a previous versions, I made off actually off and on actually on without knowing about the bug, so this release reverts to EA's default behaviour. If anyone has an idea for a useful feature that could repurpose the in-game animation smoothing toggle, let me know.
Restored Max Active Lots to its original values - you can now select up to 8 active lots again. (I recommend playing with lower values, max at 4, or use S3SS with Optimized Lot Streaming Setting).
The download link can be found on the original mod page.
Hey again! I’ve been trying out your GraphicsRules edit and I’m really curious about the behavior you had in mind for it. I noticed something pretty odd on my end: the game didn’t recognize my card (RX 6650 XT) at all or its dedicated VRAM, so the game defaulted to texture memory scaling based on RAM
It did load smoothly, but the fallback thing makes me wonder if I’m missing something or if this is just TS3 being TS3 with modern hardware 😅
Also, I was reading posts from another simmer who’s been experimenting with your edit, she mentioned smoother movement and zooming but a noticeably shorter draw distance, and that pulling back too far makes objects fully disappear. She tweaked the draw distance in options.ini afterward, so I’m guessing some setups need extra manual tuning?
So I wanted to ask:
– Is this VRAM detection issue expected on certain cards, or is it something that might change in a future version?
– Do you think there could be a “v2” with options for users whose systems have more resources, like allowing more than 4 active lots again, or presets with longer draw distance out of the box?
– And for people whose GPUs don’t get detected automatically, is there something specific we should tweak to avoid the RAM fallback or improve VRAM recognition?
I’m super interested in how all this works under the hood, especially now that so many of us play on hardware that TS3 was never designed for! Thanks again for sharing such a technical improvement, it’s wild that this file still has so much hidden potential!
Hey, sorry for the late response. I didn't notice it at first.
I made an update after you wrote to me which should fix the issue you had with GPU recognition.
Basically, if you had a custom GraphicsCards.sgr that added your GPU to that file, it would cause my file to not trigger the response to automatically set the GPU as recognized.
How I had it set initially: if your GPU was in GraphicsCards.sgr, a variable called isCardFound in the rules file would fail the check I added (which was: if GPU not in GraphicsCards.sgr AND not matched in GraphicsRules.sgr, return values). I've changed it to OR instead of AND, so if either condition triggers, it returns the values as matched, found, supported, and sets cardlevelUber (5).
I didn't encounter any issues with Draw Distance changes. I'd need more info about that.
I'm returning max active lots to 8 after someone messaged me, since it's better to give options for those who want it. But I wouldn't recommend it above 4 at all. It causes too much lag at higher levels.
I think we could technically push it beyond 8, but why? I play with the setting at 2-3, and even at Sunset Valley park while panning the view, I had completely loaded bookstore/cinema, pool, school, and maybe art gallery. It seemed pointless to render those lots fully loaded when my sims aren't even on them. Just causes more strain on the already broken game.
I'm changing it so it defaults to 1, but users can set it higher if they want, up to 8.
My method checks GPU VRAM first, then falls back to my defaults if detection fails (which it usually does). This avoids forcing high values on lower-end systems. You're not missing anything; it will function the same.
I recommend reading the reply from puzzleaddict on the Nraas website for more info on that.
I released a small update to my edited version of GraphicsRules.sgr today and you can download it from the original Tumblr post
---
It didn't recognise GPUs properly in some cases and the logic condition wasn't accounting for users who had already added their GPUs to GraphicsCards.sgr
Hey! wanted to drop by and say how amazing your custom edit of the config file sounds, finally some justice for AMD users! It’s really cool to see someone putting so much effort into making sure our GPUs are recognized properly and that the game can actually use their full potential without all the old artificial limits. It honestly feels like you’re giving us back the control we deserved all along.
Just for the claryfication, we still have to write our graphics card model and the VRAM capacity in the config as following the same tuto as always , for the game to recognize it bla bla and that's it?, or is there anything else we should keep in mind to make it work flawlessly? Thanks a ton for your work 🤞🏼
Thank you for your kind words, I appreciate it. 💖
I created this as a way for average simmers, without much knowledge, to be as easy as possible to install, just move a file to the location and be done. My edit doesn't require you to edit anything! Only if you want post processing back or better shadow quality, edit Options.ini (which is in Documents/The Sims 3 folder). Later, I plan to add more functions to it so simmers don't have to hunt down graphicsrules.sgr location and comb through 1285 lines of code to add HQmod, an example.
Or imagine ticking or unticking a box in the game settings to enable or disable HQmod. It'll be a game-changer for anyone who likes to take screenshots with HQMod, but finds it too laggy when it's always on.
Throughout the years, I saw many edits to this file, but I was never satisfied because it was never to my liking: like GPU-Addon, no-glow version, or high quality shadows, Phantom99 version; had to choose either one or another.
Another reason I am making this because in a Discord server, different blogs and social medias, there were many simmers who had problems making their game recognise GPU and GPU memory, game not opening etc.
One day, I got hold of the file from MacOS version 1.70, which had "improvements" in comparison to the version Steam/Discs/EA app had, then I also checked TS4 version of the file and made this ultimate one.
This replaces every other mod that edits this file and can't be used with them.
Gonna stop rambling and actually give you changelog of what I did:
MacOS base changes:
Updates CPU checks (INTEL ONLY) and adds a new CPU check.
Adds a check for Radeon cards with "555X" in the name (used in 2018 MacBook Pro 15" models).
Added a check for Intel Iris and removed RenderShadow mode 4 (probably outdated?).
Adds a new GPU check above GPU Uber. GPU memory check added for Uber Level cards.
If the GPU is not matched and found, it will default as found, matched, and supported.
Added RAM uber level.
Updates detection for High General Reflections.
Updates to AntiAliasing or Edge Smoothing, with new check logic.
Updates the detection check for the Tree Quality option on the Very High setting.
Updates the map view clip plane distance and replaces it with lower quality.
Disables Post-Processing completely. (in community known as no-glow mod)
Additional improvements:
Post-Processing can be enabled in Options.ini (recommended if you use, or plan to use, LazyDuchess shader tweaks, or if you use lighting mods that fix the in-game bloom effect).
postprocessing = 0 for disabled and postprocessing = 1 for enabled
Changed so that the maximum number of active slots is 4 on Windows, since the game is not 64-bit on Windows, and the default setting of 8 was left on the MacOS platform (the logic check on that was 'broken').
Telemetry, Store ads, interactive loading screens, tutorials, intro tutorials, and online notifications (aka constant notification pop-up), and pop-up asking to enable edge scrolling and to log in to an account are disabled by default, which can be enabled again in Options if you want it back.
Witches, horses, fairies, werewolves, vampires are turned off by default to help with performance, but can be checked again in Settings at any time.
I tweaked the map view clip plane, because the changes from macOS made it worse; I kept the better version on Medium and High.
Changed the OS overhead penalty from -400 MHz (dual-core HT only) to -200 MHz (all CPUs) on Windows Vista and later. Removed the outdated Pentium 4 HT bias.
Fixed the Animation Smoothing option (it never worked originally, as it was always forced to be true).
Texture memory fallback now scales with RAM level (256/512/768/896/1024 MB) instead of the fixed 32MB.
Made changes to draw distance so that they scale correctly at low, medium and high, hopefully improving performance. Each setting now properly adjusts exponent, zoom and culling values (low culls more aggressively and high renders more).
AMD GPUs now have better graphics (EA gave AMD users worse graphics), and fixing this also resolves issues that shader tweaks did to AMD users.
Disabled full-screen mode by default. Users with hiDPI monitors experienced a problem when they first ran the game, which caused it to be minimised and not open, this fixes it.
Shadow quality can now be adjusted in options.ini file (up to 8192).
Future plans: integrate PseudoResolution logic like TS4 does (it's available, but not used in GraphicsRules), think back on new texture memory fallback logic, add option for users to enable HQMod in Options.ini instead of manually editing GraphicsRules.sgr, give optional tuning that tweaks aging and seasons, making them in correlation to sim-pregnancy, which is basically 4 sim days – 1 year). – Yes, aging and season settings are also mentioned in this file, additional optional tweaks that one doesn't have to edit in Settings every time they update GPU drivers and Settings reset to default.
Download: SFS
To make this work correctly you have to delete Options.ini from your Documents/The Sims 3 folder. Make sure to back up your aging/seasons settings either by taking in-game settings screenshots of those or by copying values from Options.ini.
Works with all game versions, possibly The Sims Medieval too.
Your feedback is appreciated. Any changes that I should make? Any problems you encountered? Let me know in comments.
Does anyone know an easy solution to this problem by the lot's edge?
This is a fixed version of Ellacharmed's China World, which has broken Dragon Springs and Hot Springs lots.
I manually pasted all other fixes, besides changes made to those two lots. Which fixed lots, but now I have these weird visual bugs by them.
In World Adventures, there are three types of column sculptures: broken, half-broken, and normal. However, I didn't like the fact that the normal column couldn't be used as an actual column. It was also the perfect height, so I just recategorized it as a column and now it works. You will then have the option to place tiles or a roof above it.
This re-categorizer requires The Sims 3: World Adventures!
For a long time I played with mspoodle's mod that unlocks these stencils, but I didn't like that they were copies of the objects, making my buy catalog more cluttered. That's why I made my own version of the mod.
Basically, each candy container had its own candy inside. I just enabled all three containers to share textures from each other.
I also changed all three candy bins to be available in Buy Mode under
by Function: Decoration > Misc.
by Room: Dining Room > Misc. Decor
and enabled them for medium and large slot placement
This mod requires Katy Perry Sweet Treats. If you don't have it, I recommend trying out mspoodle's version instead.
Average Polycount of EA Items in TS3: A Reference Sheet
I initially started this list as a personal “cheat sheet” that I could reference to ensure the custom content I'm downloading is appropriate for gameplay when it comes to polycount (and because I intend(ed) to learn how to make my own cc). I decided to share in case others find it useful.
I’m not a Maxis Match purist or anything like that, but purging high-poly CAS items from my cc folder eliminated in-game stuttering for me entirely. For some reason, this is rarely mentioned in discussions about gameplay optimization. Polycount does matter.
There’s a lot of absolutely gorgeous but incredibly high-poly cc out there that is simply not gameplay friendly for the average player. As we see an influx of first-time or rusty players migrating over from TS4, I think it’s important people are aware of this (both players and creators alike).
This might be a nonissue for those whose focus is on CAS and pretty screenshots, or maybe for those who have beastly gaming pcs/graphics cards etc.
But for players whose focus is on actual gameplay, high-poly cc can be detrimental.
With that said, below the cut you can find a list of average polycounts for some EA clothing/objects to use as a reference.
My method
I recorded the polycount of 10 items from each category below so that I could get a decent representation from each one to calculate the average. Since there is a wide range in some of the categories, I’ve opted to also include the minimum, median, and maximum for a clearer picture.
This list is not exhaustive; I feel like after a while, you kind of get the point. Also, this has been sitting on my computer for ages, and I don’t know if/when I will continue collecting data for it, so I figured I would just share what I have for now.
CAS
Tops:
Average polycount: 3538.4
Minimum polycount: 2868
Median polycount: 3443
Maximum polycount: 4872
Outfits:
Average polycount: 4281.8
Minimum polycount: 3865
Median polycount: 4205.5
Maximum polycount: 4932
Bottoms:
Average polycount: 1094.2
Minimum polycount: 770
Median polycount: 1016
Maximum polycount: 1768
Hair:
Average polycount: 4343.2
Minimum polycount: 2298
Median polycount: 4691
Maximum polycount: 6840
Shoes:
Average polycount: 621.6
Minimum polycount: 456
Median polycount: 594
Maximum polycount: 968
Accessories
Average polycount: 520.8
Minimum polycount: 118
Median polycount: 433
Maximum polycount: 1098
Objects
Dining Chairs
Average polycount: 806.3
Minimum polycount: 362
Median polycount: 799
Maximum polycount: 1054
Sofas and Loveseats
Average polycount: 1699.4
Minimum polycount: 958
Median polycount: 1414
Maximum polycount: 2920
Livingroom Chairs
Average polycount: 791.0
Minimum polycount: 290
Median polycount: 920
Maximum polycount: 1006
Beds
Average polycount: 3529.4
Minimum polycount: 1974
Median polycount: 3316
Maximum polycount: 5668
Plants
Average polycount: 746.3
Minimum polycount: 104
Median polycount: 801
Maximum polycount: 1998
Sculptures
Average polycount: 1659.3
Min polycount: 440
Median polycount: 1417.5
Max polycount: 5263
Misc
Average polycount: 914.4
Min polycount: 380
Median polycount: 988
Max polycount: 1926
Curtains
Average polycount: 762.4
Min polycount: 262
Median polycount: 802
Max polycount: 1438
Wall Art
Average polycount: 524.1
Min polycount: 62
Median polycount: 171
Max polycount: 2403
Dining Tables
Average polycount: 754.8
Min polycount: 468
Median polycount: 685
Max: 1262
(To be continued, maybe? If anyone wants to help me add more categories, feel free to get in touch, happy to credit you for any data you send over).
Further reading from people who are way smarter than me:
Polygon counts and Sims CC by @simlicious, plus their tutorial on how to check polycounts using TSRW. Edited to add: check out their newest essay about polycount vs vertices!
Let’s Talk Polygons by @mispoodle1, plus their tutorial on how to use S3pe to check polycounts.
A warning about high polycount custom content - for downloaders and creators by @tommeraas-cc (this post is for TS4 but still relevant for TS3 as well).
Maybe no one cares about cc polycounts anymore, but I sure do. 😅
Happy simming! I'm on a bit of a break from TS3 right now but I always come back. 🖤
EA provided us with different kinds of mailboxes, but they locked them behind debug mode. Also, initially I faced issues with Basegame and Expansion Pack mailboxes having missing names and descriptions, and the name/description I created for them weren’t recognized in the game.
Thanks to @sweetdevil-sims who shared with me a detailed tutorial, I was able to fix these issues. Store mailboxes, on the other hand, already had proper names and descriptions, so they only needed unlocking.
Unlocked Mailboxes from both in-game content and the Store
Fixed Names and Descriptions for Basegame and Expansion Pack mailboxes
Repaired RIG file for the World Adventures mailbox
Available under Storage > Storage Misc & Outside > Lawn Decor
You can check out the appearance of each mailbox on the Sims Wiki
I absolutely love Gosik's New Vintage Kitchen Set, but I was bothered by a bug where counters wouldn't recolor if snapped to an end piece, so I decided to fix it. Here’s what I updated:
Fixed the counter recolor bug when snapped to end pieces.
Adjusted the prices so they aren't as cheap as the base game’s cheapest objects.
Added descriptions and proper names to each object.
Made the upper cabinets shiftable on walls.
Removed thumb files and reduced the package file sizes.
Download: SFS
This wouldn't have been possible without s3pe, s3oc, TextureTweaker3, and @id-element0's tutorial on fixing the counter recolor issue.
All credits go to Gosik for making this amazing kitchen available to us!
I’ve created this mod as an add-on to my ‘No Free Kids Toys’ on MTS. Now, when you buy a Pet Crate, it will come as empty, so you will need to buy pet toys separately.
Also, I have recategorized the toys that usually come in a pet crate to the buy mode in the pets section.
I've updated the Recategorizer part of the mod so that recategorized pet toys now cost Simoleons instead of being free. Each toy is priced at 20 Simoleons, in line with the pricing of a similar toy from the Store. Please redownload the updated mod from the main post. :)
A while ago I posted this tutorial for fixing the counter texture glitch. But it was not perfect and couldn't fix each and every cc counter out there.
I've finally found a fix for that too. Problem was corrupt TXTC resources that needed to be replaced. Now you can download every cc counter that comes in sims3pack and extract them into package and never have the annoying counter texture glitch ever again. Bad news is you have to do it all yourself. But don't worry! it's not that difficult and I've come with pictures.
What you'll need: s3pe, s3oc and texture tweaker 3 - and optionally Sims3Pack Multi Installer or s3ce. The download link for TT3 is in the 3rd post and there's a tutorial here. If you don't have them already, go download them. You can NOT use TSRW for this tutorial since TSRW itself is the problem. :)
First extract the package from the sims3pack using either Multi Installer/Extractor or s3ce. After you have your package file, open it up in s3pe. In my example, I'm using Gosik's New Vintage Kitchen Counter 1. Select the first OBJD resource in the resource list.
Also make sure you have Preview selected at the bottom of the program window in s3pe.
On the right side, you will see the preview of the resource in text. Scroll down until you see the InstanceName.
It's usually counterBaseModern but not always. This is the instance name of the object that this counter is cloned from. In modular objects like counters there are multiple objects. Four counters they are base, top and corner. Keep that in mind for now.
Take a note of or copy the instance name and open s3oc. First, Go to Settings -> Game Folders and make sure game folders are detected. If not, add them manually. You can also define your creator name under the Settings menu. Now, go to Tools -> Search.
Paste the instance name in the search bar; select Resource Name and hit Search.
You will have two results: counterBaseModern and CounterModernSuite. I suggest that you clone the suite because it's the modular object that contains all the parts of a counter: base, top and corner. If not, you have to clone every part individually which are counterBaseModern, counterTopModern and counterCornerModern.
Cloning the Suite makes the process a lot quicker so I'll continue from there. Click on the CounterModernSuite and hit Clone or Fix at the right side.
That will open the cloning interface. Make sure you UNCHECK the Renumber/rename internally. We do NOT want to renumber. Then hit Start.
It will ask where you want to save your new package and if you already have a creator name defined earlier it will add it to the package name. If not, it may or may not ask for your creator name. Honestly, I can't remember and I don't think it matters. Anyway, chose a folder - preferably a work folder you created earlier - and keep the name it suggests. It will inform you when it's done.
We cloned our package. Now we need to export the necessary TXTC resources from it. We need the Diffusemap TXTC resource for each part. Start another instance of s3pe and open the package file you've just created which should be something like this: creatorname_CounterModernSuite_someAlphaNumericals.
You'll notice that there are 6 TXTC resources in the resource list. Check the resource names and the Group IDs. You need the DiffuseMap for base, top and corner parts. Click on the resource, then right click and Export.
You can export them all at once or create a folder for each if you don't want to get confused. Notice that they all have different Group IDs and names. As we move to the next part keep that in mind.
After exporting, you can close this package. We'll go back to the package we want to fix, in this case, Gosik's New Vintage Kitchen Counter 1. Open the package again or switch to it if it's open in s3pe.
Select the first TXTC resource which is most likely is the DiffuseMap for the base part. Unfortunately, most cc doesn't have a _KEY resource so they don't have resource names. Group ID's come in handy here. For this counter suite Group IDs for parts are like this:
base -> 0x00045638; top -> 0x002794E0; corner -> 0x00D661FD3
But there are 2 TXTC resources for each Group ID. One of them is SpecMap which is not corrupted. The corrupted one will have a preview like this:
This is simply s3pe telling you it's having an 'Error reading the resource'. My interpretation: The resource is corrupted. So combine this with the right Group ID and right click on the resource and choose Replace. Do not use Import! You need to Replace the resource without changing its instance number. Choose the right resource you exported earlier. Again check the name and Group ID. it should be something like: S3_033A1435_00045638_A85033BB5A059932_counterBaseModernObjectRgbMask_Face_DiffuseMap%%+TXTC
This is for the base object. For top and corner parts, repeat the replacing step with the right resources.
After you replace all the corrupted resources, s3pe will no longer give an error reading those resources when you click on them. And neither will TT3. You will now save your package and close s3pe. A reminder: If the TXTC resources are not corrupted in CC package, skip all and continue as below.
After that you will open your package in TT3 and follow the tutorial here. But a brief rundown would be: select each 'Normal Object' one by one and switch to CASt presets tab after each selection. In this tab, all you have to do is uncheck and then recheck the box next to PatternA and hit Commit. Do it for every preset. Repeat it for every object in the package. Save. Close. Done. :)
For island counters, process is the same but with 4 parts. Base, EndW, EndE and Corner. Also this works for other modular objects like cabinets and sectional sofas.
One last clarification: If the object is cloned from another counter suite, the Group IDs that we used will be different. Also some CC will have Group IDs different from the main object it's cloned from. If that happens, you may need to have a leap of faith.
Usually the order from top to bottom is base, top, corner (counters) and base, endW, endE, corner (islands), starting with the first TXTC resource. So in theory, if you select the corrupt resources from top to bottom, you can replace with that order without the Group IDs.
That's it. I don't think anyone will bother with this. But If you have questions, ask away.
After watching @minosimu's stream where he mentioned that Sims reset when they are in a low mood, I was curious if I could fix it.
The reason that Sims reset in a low mood is because they have stress exit enabled, which should be disabled.
Besides that, I also went a step further and made the following changes:
Added the Inappropriate flag to the object, so now Sims should not use the object if they are not friends enough (not disabled for User-Directed!).
Sims should no longer be able to prepare on the object if the Station is outside AND in snow.
Added proper PlumBot checks to the Station, so PlumBots should now be required to have Limitless Learning or Steel Chef.
Note: If a PlumBot has the Limitless Learning trait but not the Steel Chef trait chip, they would have to learn cooking skills to make harder recipes, just like normal Sims.
Replaced the "Just Like Mom Used to Make" moodlet with "Scent of Goodness" and changed the description of the moodlet from "I love the smell of fresh-baked bread in the morning." to "The aroma of home-baked treats brings back memories." Now, the moodlet fits better.
I’ve created this mod as an add-on to my ‘No Free Kids Toys’ on MTS. Now, when you buy a Pet Crate, it will come as empty, so you will need to buy pet toys separately.
Also, I have recategorized the toys that usually come in a pet crate to the buy mode in the pets section.