I developed this tool originally in Python while attempting to optimize texture dictionaries, it was then ported to Rust offering much greater speed in the processing of textures and also added support for YFTs, YDDs, and YDRs that include embedded textures and downsized YTDs for clothing with less quality loss. Now in the latest update (7.0) it is written entirely in C# which has provided a boost in reliability and ease of maintenance, v7.0 also now includes a UI in the base version.
I think most of us server developers know that many of the vehicle developers making high-quality vehicles, or any developer making high quality models of any kind for that matter, use textures that are far too big with far too little optimization. This tool will attempt to optimize those textures with minimal loss of quality. This program used to be free and the originally released free version will always remain so.
Install .NET 7.0: Download .NET 7.0 (Linux, macOS, and Windows)
It’s labeled as .NET Desktop Runtime on that page
Changelogs
v7.1 build 19
- Fixed an issue with textures that use the A8 format
- Fixed an issue where removing an item from the excluded textures list did not keep it removed on tool restart
- Fixed an issue where the “Open Output When Complete” option did nothing
- Improved processing speed by up to 57% when processing large batches of files
v7.1 build 18
- Fixed a hang caused by attempting to process YDD files
- Began work on allowing localization of the tool
v7.1 build 17
- Fixes a bug that would cause the tool to crash at startup when run on Windows installs using a language that uses , instead of . in non-whole numbers
v7.1 build 16
- Fixes a major bug that slipped through the cracks in build 15
- Fixes a minor UI issue
v7.1 build 15
- UI Overhaul, new look and UI framework
- More protections added to the UI to prevent users from changing setting while the tool is running
v7.0 build 50
- Complete rewrite to C#
- Added UI to base version
- With this change features from the upgraded UI package have been ported to the main package such as custom input and output locations, and a visual way to set options for processing rather than through command line flags
- Added an in-memory optimization feature so textures are never extracted to disk
- Added the ability to add specific texture names to a list that shouldn’t be touched
- Improved reliability, speed, and space saving moderately
- Spreadsheet output has been removed for now, but may be added back if enough request come in
- Renamed from DDSRemap to Texture Trimmer
v6.0 build 44
- Complete rewrite to Rust
- Reworked version numbering system
- Bugfixes from beta builds of v6.0
- Returning support for YFT, YDD, and YDR files
- Support for “clothing mode” this will disable almost all scaling of textures for clothing files to maintain quality
- Faster performance than the 5.X series that relied more heavily on Python which is a slower language, now we use Rust
- Stability improvements
- Improved spreadsheet output that will help you review your savings
v5.1
- Bugfixes
- An XLXS (spreadsheet) is now generated at the end of the run to provide a detailed savings report.
v5.0
- Bugfixes
- -rt flag for only fixing script_rt textures, suggested by @iSentrie
- A full UI rewrite to improve the user experience of the tool
- Renamed ytds folder to input
v4.2
- Hotfix for a bug introduced in v4.1
v4.1
- Added error handling for unsupported YTD compression types, most notably files that have gone through Escrow appear to have an issue with this tool. If you have an escrowed vehicle please ask the creator to run it through DDSRemap before escrowing it. More info is below.
- Added error handling for empty YTD files, I don’t know why these exist but I ran into a few so I’ve added this support.
v4.0
- Now supports nested file structures, so you could in theory just dump your entire server in to have it compress all of the YTDs (this is not recommended). The intended use case for this is when you have vehicles that have multiple folders for each vehicle in the stream folder.
- The script_rt textures will now be handled correctly automatically and any that are fed into the program that aren’t formatted correctly will be altered to the correct format
v3.0
- Now supports directly importing and exporting ytds
- Disabled downscaling liveries by default, can still do so by launching the program from the command line with -il
- Switched to a paid model as this took a long time to develop, only asking for $9.99 (You can pay more if you wish)
- You no longer need to download compressonator or Python as it comes bundled.
v1.5
- Single color textures will now be scaled down to 4x4
- Fixed an error in the original that made certain textures get left out of optimization due to a logical error
- Made output cleaner
Vehicle Developers
If you have been asked to run your vehicle release through this tool but don’t own it yourself and don’t want to buy it message me and we can discuss a partnership.
Getting Started After purchasing and downloading the tool from Tebex extract it to your computer. After extraction place your original YTD files into the input folder. Then double click on the executable in the folder or the run.bat file. This will begin processing your YTD files. After it completes your new optimized YTD files can be found in the out folder.
Known Bugs None have been reported, if you find one please post it here or message me directly.
Purchase https://north-western-development.tebex.io/package/5215722
Documentation and Future Changelogs https://docs.northwesterndevelopment.com
v1.5 Free
Requirements:
- Python 3.8 or newer
- Pip
- Pillow (pip install Pillow)
- CompressonatorCLI
Additional Setup:
- Make sure Python and Compressonator are in your path variable, you can use Google to find out how
Usage:
- Use OpenIV to export all textures from a specific .ytd into the originals folder as DDS files
- Run python alpha.py
- When it completes, go back to OpenIV (make sure edit mode is on) and click import and select everything in the out folder (some imports may fail, this is fine)
- Click save and profit off the reduced sizes
- Run cleanup.bat and start over
Notes:
- If a texture doesn’t look good enough to you you can replace it with the original in the originals folder
- I will not provide support in how to use or setup the tool, I will help troubleshoot errors though
- The last step of the process is highly concurrent (multi-threaded) every image is being processed almost simultaneously and may lag your PC slightly while running
Downloads: DDSRemap.zip (1.8 KB)