Find any texture in The Sims 2 that is too big, or is 'awful' (suboptimal texture format)
Features:
Find textures in any folder you choose
Filter by width, height, memory size, texture format, or number of mipmap levels
Preview and show details of textures the tool found
Remember 'known good' textures, which are optionally excluded from being shown in the list
Look up the path of the package, and the group and instance of the resource
Copy texture/resource details (right click)
Open the package in the default package editor (double click)
Dark mode/light mode and UI scale adjustable
Native on both Windows and Linux
Why?
The Sims 2 has had a long-standing problem known as 'pink flashing' or 'pink soup' when using too much custom content. The Sims 2 is a 32-bit program, which means that it normally has a maximum memory limit of 2GiB (2048MiB) and by using a so-called '4GB patch' you can raise this limit to -you guessed it- 4GiB, this limit might seem pretty large, but due to how the game works you might hit this limit sooner than expected!
Let's say you have 1024x2048 textures (which is the default for Sims 4 textures, and thus also often for 4to2 cc) in RGBA format, these textures will EACH take up 8MiB of texture memory! This means you could possibly only have only a MAXIMUM of 512 textures loaded in memory before you run out of memory completely. In practice, this limit will probably be lower due to other factors.
This tool will help you find textures that take up too much texture memory, and thus (hopefully) help alleviate some amount of pink flashing.
Tutorial
First, download the program from the link above and follow the instructions to open the program.
Now let's get the program looking the way you want: click on the sun/moon button on the top left of the program to switch light/dark mode and click the "UI Scale" number next to it and enter a new number to change the size of the interface.
Set the folder we want to search: at the top bar, search for the 'Downloads:' bar, then at the end click the button with the folder icon and select your folder. Once you've selected a folder the program will instantly start scanning, if you want to restart this scan then at any time you can click the text in the Downloads bar and press enter.
Currently this list will show all textures in the scan folder, which is probably not very interesting. To find some more interesting textures we can add some filters to the texture list. On the top bar, click on the 'Filter' button: this will open the filter list and it will be empty if you haven't added any filters previously.
These filters filter the texture list one by one, each filter removing more textures from the displayed list of textures. To add a filter, click the plus button, and to remove it click on the trashcan button at the start of the line.
To edit a filter, click on the first box to choose the filter type, click on the second box to choose the type of comparison, and select the number in the last box to set the number to compare with.
The comparison type can be < (smaller than), <= (smaller or equal), > (greater than), >= (greater or equal), == (equal), or != (not equal).
The Format filter is different: make a format filter, then click on the 'choose' button and choose the texture formats that you want to show in the texture list.
Let's edit some textures!
In the texture list, find a texture that you think is too big, and either double click on it to open it in the default package editor or right click on it to show a menu to copy the details of the package.
Finally, once you have the package opened in your favorite package manager, edit the texture to be smaller and/or a better texture format, save and ta-da! your game will now use less texture memory.
So I swap from drawing on my phone to drawing on my laptop. I got a really sick asf Wacom for free and I loveeee using it it’s touchscreen and it’s changed my art sm. But I’ve been using Sketches Pro since like.. elementary school.
So Sketches pro was like .99 cents and I’ve had it since forever ago, and now it’s more expensive BUT it does carry over and it’s a one time purchase to get assess to more brushes n such. I did have a friend that used it and made really amazing masterpieces with one layer tho.
So here’s phone drawings I’ve done and the tools I use:
Paint and pencil and then the fill tool which is self explanatory
And then I use Photoshop (I do not pay for that one thank GOD!!) but that one is my ride or die I have custom brushes that I LOVE!!!
So here’s that work:
N my brush size is typically from 3-9. And I have brush pressure so any old calligraphy tool might work but I’m picky and it has to be a specific shape and roughness.
Let me know if you have any other questions! My tools are boring tbh. Sketches is free but restricting. And photoshop is…. Yeah. But Mspaint is super fun to work with and I know fire alpaca is actually decent too.
YaPe is a modern package editor for DBPF (.package) files
Features:
Edit any package - FAST
List and edit resources in a package
Filter resources by type
Easy editors for several resource types
Supports opening ANY DBPF-coded .package, .dat, or .sc4 file
Easily reduce texture size, add/remove/recreate mipmaps, change texture format
Import textures by dragging, export DDS
Native on Windows and Linux
Why make yet another package editor?
Simply said, because SimPe can be kind of cumbersome especially on Linux, and package editors other than SimPe (s3pe, s4pe, iLive's Reader etc.) do not support Sims 2 resources.
To illustrate, I timed someone shrinking a texture (convert RawARGB32 -> DXT1, shrink 2x) in both SimPe and YaPe:
SimPe + GIMP: 1m 30s
YaPe: 10s
Originally this started as just a way to easily test if my DBPF library was doing the correct thing, but over time it has grown to become a half-decent editor suitable for more general use.
Tutorial / usage tips
Here I will explain how to shrink and convert textures in YaPe because that's what I imagine most people will use this program for right now, but of course you can use it for other things as well.
Let's get started by getting the program to look the way you want to: use the options in the top left to change the scale of the interface and switch between dark and light mode.
Now drag a package file into the program (don't worry about closing the sims except when you save the package), a list of resources in the package will be visible. You can find out what the abbreviations mean by hovering your mouse over them; in general I try to add tooltips like this to buttons or options that are unclear.
Don't be afraid to mess around and make changes! The changes you make are never saved unless you press the save button, so if you simply drag your package file into YaPe again without saving you will get your original package back (there is currently no undo function, but it is a planned feature).
All these resources are great, but we're only interested in the textures for this tutorial so let's set a filter. Right click on a texture (TXTR) and select "Filter on type".
Great! Now you can only see the textures we're interested in. You can disable this filter by unticking the "filter" option at the top.
Now click on the "TXTR" to open the texture, it will open a new tab in the lower half of the window by default. If your window is not very big (like mine is for this tutorial) you might have trouble seeing the texture and all the options. You can drag the tab around and put it somewhere else in the program, I'm going to put it on the right and make it a little bigger so we can see what's going on.
Okay, now we can see all the options, and well... there's a bunch of them. We'll go over some of the options that you'll likely want to use but feel free to experiment of course.
First, let's have a look at the texture viewer at the bottom: you can zoom in on the texture by holding control and scrolling, and you can change which mipmap is displayed by clicking the radio buttons above the texture.
But wait, this texture does not have enough mipmaps to show up in game! (post by @pforestsims) Let's fix that right this instant by clicking the "Add missing mipmaps" button in the middle.
Okay, now the mipmaps will show up in game, which is good... except that this mipmap is really blurry. (post by me) Luckily we can fix this really easily, just click the "Recalculate all mipmaps" button.
Much better!... except that we've created a new hidden problem: the leaves will disappear when zooming out in game (blog by lisyarus) but even this problem can be fixed. We can actually preview what the texture will look like when zoomed out by switching the format to DXT1 since DXT1 has binary transparency, just like alpha tested textures like leaves and grass.
Right, so the leaves have a bunch of holes that don't look right when zooming out, let's change that. Above the "Add missing mipmaps" button there is the "Preserve transparency" slider: try changing it to something like 120-170 and click "Recalculate all mipmaps", you can see that the transparency changes, if it's still too thin/transparent set the value higher and recalculate again and so on.
Have a look at all the mipmaps (zoom levels) and once you're satisfied with the transparency change the format back to DXT5.
This texture will now look great in game! But it is also quite large, so we can reduce the size 2x smaller without sacrificing very much in terms of looks (sorry to all the cc authors who love their large textures). Click the "Remove largest texture" button, which will make it so that the first mipmap becomes the largest texture effectively reducing the size by 2x. Like mentioned it does use the first mipmap so make sure to fix any blurry mipmaps first.
You can repeat the same process for the other textures in the package, and then we're done. Save the package by clicking the save button in the top bar, and have a look in game at your beautiful textures.
Another option is to drag images/textures you've made somewhere else into the program (with special support for dds files), for a full lists of supported image formats you can look here. (image-rs documentation) The image/texture will currently go into the firsts open texture resource tab because of UI framework limitations.
Here's a look at some of the other editor currently implemented:
excuse me, do you use Photoshop to do your art, which is, by the way, completely amazing?
I used to!!
A couple of my old ones are in photoshop ans SAI but i switched over to Clip Studio Paint bc its so nice and customizable!!
honestly tho, i still use photoshop and SAI every now and then bc there are certain aspects for each program that are just so good I can’t replace them TTvTT