Downloads:

CASDesignerToolkit-win32-i386.zip 10.7 MB
Windows binaries
3 months ago
Download
85 58
CASDesignerToolkit-linux-amd64.zip 11.7 MB
Linux binaries (on the Steam Deck, launch with start.sh)
3 months ago
Download
13 10
CASDesignerToolkit-win32-i386-Self-Extractor.exe 9.4 MB
Self-extracting Windows executable
2 months, 2 weeks ago
Download
14 11
CASDesignerToolkit-linux-amd64-Self-Extractor.sfx 10.1 MB
Self-extracting Linux executable
2 weeks, 3 days ago

CAS Designer Toolkit

Event: Christmas & New Year

Project: CAS Designer Toolkit


Uploaded Jan. 1, 2026, midnight

Updated March 26, 2026, 2:41 p.m.

Socials: Reddit ModTheSims

27 1546 591

Merry Christmas, everyone!

Due to numerous issues related to existing tools for editing CAS parts, I decided to make my own.

Currently, it supports the following features:

  • Editing part flags (e.g., age, gender, species, categories, etc.)
  • Adding, editing, and deleting presets
  • Importing/exporting GEOMs, OBJs, and WSOs
  • Displaying morphs
  • Changing the shaders and material properties of mesh groups
  • Adding mesh groups to LODs
  • Converting 3-pattern presets to 4-pattern ones
  • Displaying a full Sim in the viewport

Support for the following is planned:

  • Assigning morphs and bones (both of which in the meantime can be done in Meshing Toolkit)
  • Creating patterns (this can be done in the meantime with Delphy's Pattern Packager)
  • Creating/editing CAS parts for The Sims Medieval

It's lightweight and runs on both Windows and Linux (macOS support planned). For Windows, .NET Framework 4.0, Visual C++ 2013 Redistributable (x86), and GTK# 2.12 are required (check the download's instructions).

Do note that this tool has not been 100% tested due to scarcity of testers (the tool is very niche); please be patient and explain whatever issue there is to me.

Source code available here

Acknowledgements

Below is a list of people who helped with this project either directly or indirectly (as well as their contributions):

  • Peter L. Jones – Provided the S3PI library which serves as the basis of this tool and many other Sims 3 tools
  • CmarNYC – Her code for TS3SimRipper helped with applying patterns to textures and displaying morphs in the 3D renderer; the code for her Meshing Toolkit for importing/exporting OBJs and WSOs was also borrowed
  • MonoChaos – Provided the icon for the tool and helped test the tool for issues
  • zoeoe – Helped with issues related to the S3PI library and provided some code for object meshes
  • VirtualHugs – Helped with explaining things related to CASPs; I'm not a mesher, so her advice was incredibly helpful

Testers:

Changelog

  • Hotfix #1 (2025/12/25) – Fixed several issues related to morphs
  • Hotfix #2 (2025/12/26) – Removed unneeded dependencies
  • Hotfix #3 (2025/12/26) – Fixed an issue in a dependency for reading resources to determine their types
  • Hotfix #4 (2025/12/26) – Fixed resources not being detected as XMLs when being imported (though one should not import XMLs anyway as of this update)
  • Hotfix #5 (2025/12/26) – Fixed a crash upon changing texture resource keys in material properties for meshes
  • Hotfix #6 (2025/12/27) – Fixed a crash upon loading certain meshes due to invalid vertex IDs
  • Hotfix #7 (2025/12/27) – Added some logging for crashes
  • Hotfix #8 (2025/12/27) – Fixed locale differences causing crashes
  • Hotfix #9 (2025/12/27) – Changed the archives to RAR format because the default Windows ZIP extractor is faulty
  • Hotfix #10 (2025/12/28) – Fixed a crash that would happen when keys in the preset XMLs were not in the right case
  • Hotfix #11 (2025/12/28) – Fixed an issue where thumbnails would not show for default values of some presets due to the values being paths instead of keys
  • Hotfix #12 (2025/12/28) – Added more rigorous logging
  • Hotfix #13 (2025/12/29) – Fixed the preset panel extending beyond 50% of the width of the window; as an unfortunate consequence, the new preset button is now to the left of the preset tab bar
  • Hotfix #14 (2025/12/29) – Fixed crashes for certain LOD meshes due to incomplete vertex ID data for morphs
  • Feature Update #1 (2025/12/30) – Added the ability to convert 3-pattern presets to 4-pattern ones.
  • Hotfix #15 (2025/12/30) – Fixed a crash when loading certain patterns and another crash when importing OBJ and WSO meshes with incomplete vertex ID data
  • Hotfix #16 (2025/12/31) – Restructured the code base
  • Hotfix #17 (2026/01/02)
    • Removed the broken sorter for patterns in the tab list
    • Made panels resizable
    • Packages can now be opened with this program using "Open With" or by dragging the package onto the executable
  • Hotfix #18 (2026/01/03) – Added descriptions to the executable and DLLs so that they would not appear blank in the "Open With" list
  • Hotfix #19 (2026/01/04)
    • Fixed a bug where adding a mesh group to an LOD would insert it at the wrong index
    • Moved more logic to libraries
  • Hotfix #20 (2026/01/04) – Fixed "start.sh" on Linux trying to launch a nonexistent executable
  • Hotfix #21 (2026/01/06)
    • Fixed scaling of non-square textures in the image viewer
    • Partitioned the code base even more
  • Hotfix #22 (2026/01/07)
    • Fixed scaling on Linux for lower resolutions
    • Unified Linux downloads (figured out how to bundle it better)
  • Hotfix #23 (2026/01/07) – Fixed "start.sh" for Linux to allow for arguments
  • Hotfix #24 (2026/01/09) – Uncapped decimal values for presets and patterns
  • Hotfix #25 (2026/01/13) – Fixed an issue where Pattern D would not be displayed if it was loaded after the logo
  • Hotfix #26 (2026/01/17) – Fixed the icon not showing for the executable on Windows
  • Hotfix #27 (2026/01/17) – Fixed a crash upon adding a preset
  • Hotfix #28 (2026/01/17) – Added previews for images in the image resource dropdowns
  • Hotfix #29 (2026/01/18) – Fixed a crash on launch for Windows XP
  • Hotfix #30 (2026/01/18) – Improved the performance for the image renderer on Unix-like systems
  • Hotfix #31 (2026/01/18) – Fixed blending for RGB masks
  • Hotfix #32 (2026/01/18) – Made it so that the application would unblock the DLLs if extracted by the default Windows archive extractor
  • Hotfix #33 (2026/01/18) – Fixed duplicate shader names
  • Hotfix #34 (2026/01/19) – Updated licenses and copyright notices
  • Hotfix #35 (2026/01/19) – Fixed some potential bugs related to locale
  • Hotfix #36 (2026/01/20) – Fixed some more potential bugs related to locale
  • Hotfix #37 (2026/01/20) – Fixed a random crash caused by bitmaps being accessed by different threads simultaneously
  • Feature Update #2 (2026/01/21)
    • Added the ability to reorder presets
    • Fixed the preview image not clearing when a package was closed
  • Feature Update #3 (2026/02/07)
    • Added partial support for rendering a full Sim
    • Fixed multiple issues regarding mesh group imports
    • Changed morphs to be applied on the GPU side rather than the CPU side, thereby making it less laggy
    • Improved the dialog for setting the game folder paths
    • Fixed a crash when trying to load makeup
  • Hotfix #38 (2026/02/09)
    • Added transparency for the SimAlphaBlended shader
    • Made changes to memory management to dispose of unused bitmaps
  • Hotfix #39 (2026/02/10)
    • Added skin color, which is randomized
    • Fixed a crash upon loading certion BGEOs with negative integers for section 3 indices
  • Hotfix #40 (2026/02/11) – Added displaying various face overlay textures for the Sim in the viewport
  • Hotfix #41 (2026/02/11) – Fixed an issue where face and scalp textures wouldn't load upon switching LODs
  • Hotfix #42 (2026/02/11) – Fixed a rarer occurrence of face and scalp textures being black upon switching LODs
  • Hotfix #43 (2026/02/12) – Fixed control maps for hair not being applied
  • Hotfix #44 (2026/02/12) – Fixed the lack of disposal of face and scalp textures for hair when they are no longer being used
  • Hotfix #45 (2026/02/22)
    • Removed the "Next Pack" entry in the Game Folders dialog
    • Redirected the console error output to a file
    • Made miscellaneous fixes to memory-related issues
  • Hotfix #46 (2026/02/22)
    • Added a right-click context menu for the resource table
    • Changed the "Import" action to "Import DDS"
    • Added transparency to more shaders
  • Hotfix #47 (2026/02/23) – Fixed a crash upon saving a package
  • Hotfix #48 (2026/02/24) – Made minor adjustments to the UI
  • Hotfix #49 (2026/02/25) – Fixed an issue where when changing out patterns, they would show up in the wrong slots (or not at all) until the user refreshed the selected CASP
  • Hotfix #50 (2026/02/26) – Fixed a race condition where the program would try to access the combined face and scalp textures after they were disposed of
  • Hotfix #51 (2026/02/26) – Fixed another race condition where when switching between LODs too quickly, meshes of different LODs would show up simultaneously
  • Hotfix #52 (2026/02/26) – The previous fix was faulty. It reduced the chance of meshes of different LODs showing up at the same time, but it did not eliminate it. This fix is the proper one (hopefully)
  • Hotfix #53 (2026/02/27)
    • Fixed a crash when importing or duplicating a mesh group
    • Added font scaling for Linux desktop environments to automatically adjust for when the fonts are too big
  • Hotfix #54 (2026/02/27)
    • Fixed the Linux build not launching with the main executable (not start.sh) on non-immutable distributions
    • Fixed the Linux build locking up upon loading a package if run with a low enough resolution
  • Hotfix #55 (2026/02/27) – Fixed a crash upon adding a field with an already taken name and a different data type from the other field of the same name to a GEOM resource's shader properties
  • Feature Update #4 (2026/03/06)
    • Added music for whenever a CASP resource would be selected
    • Fixed the simple shaders not showing skin color
  • Hotfix #56 (2026/03/06) – Made miscellaneous performance improvements
  • Hotfix #57 (2026/03/06) – Fixed a potential crash upon closing a package
  • Hotfix #58 (2026/03/07)
    • Added the ability to create a shortcut to the application from the settings menu bar dropdown
    • Fixed a crash upon opening a package with the application from the OS context menu or command shell
  • Hotfix #59 (2026/03/07) – Added the creation of file associations upon creating shortcuts
  • Hotfix #60 (2026/03/07) – Changed the file type name for the file association to one that made more sense
  • Hotfix #61 (2026/03/07) – Fixed the file type being set to the assembly name in the Registry (due to poor prior understanding of file associations in the Registry)
  • Hotfix #62 (2026/03/09)
    • Changed the mime type on Unix-like operating systems for DBPF packages
    • Reworked the structure of the code base for platform-based code
    • Changed archives from RARs to ZIPs
  • Hotfix #63 (2026/03/10) – Fixed music not being added after the caches were generated on the first run or after setting the paths
  • Hotfix #64 (2026/03/10) – Fixed a crash upon generating caches at startup
  • Hotfix #65 (2026/03/11)
    • Fixed a crash upon closing a package while the preview Sim was being randomized
    • Made it so that music associated with a resource would play even if the resource was deselected until the package was closed or until a resource of a different type with music associated was selected
  • Feature Update #5 (2026/03/12)
    • Added rendering of pattern tiling
    • Added exporting of resources
    • Added validation for preset and pattern fields for rendering
    • Changed step increments of decimal value input fields from 0.0001 to 1
    • Fixed music not being played after being enabled while a CASP resource was selected when music was not playing before for the whole session
  • Hotfix #66 (2026/03/19)
    • Fixed the data sizes of MTNF shaders being incorrect, leading to issues in the both S3PE and the game upon saving the respective GEOMs
    • Added the Plumbot shader to the list of pickable shaders for GEOMs
  • Feature Update #6 (2026/03/22) – Added a self-updater so that users no longer have to manually download updates (can be disabled by creating a blank file called "noupdate" in the program's directory)
  • Hotfix #67 (2026/03/22) – Fixed the updater running without an internet connection and causing a crash
  • Hotfix #68 (2026/03/23)
    • Slightly reworked the updater
    • Fixed incorrect line endings for error logs on Windows
  • Hotfix #68 (2026/03/23) – Changed the HTTP client to synchronous to avoid blocking issues
  • Hotfix #69 (2026/03/23)
    • Made it so that TLS 1.2 would be used (the updater didn't work on systems where it was TLS 1.0 or 1.1 by default)
    • Reverted the HTTP client to asynchronous (was not the cause of the updater not working and that solution required more dependencies)
  • Hotfix #70 (2026/03/25)
    • Added a dialog for updates to apply or skip them
    • Added separators to different dropdown menus
    • Added settings for checking for updates
  • Hotfix #71 (2026/03/25) – Fixed GEOMs imported from WSOs being mangled in the game
  • Hotfix #72 (2026/03/26)
    • Fixed an issue where after saving a package, deleting a resource would do nothing, leaving the user to have to try to delete it for a second time after the table refreshed
    • Changed the beginning indices for preset thumbnails from 0 to 1 to line up with TSRW-made CASPs

Other Uploads By Destrospean:

Naming Mods
Expanded Genealogy
Destrospean by Destrospean

Adds various relation names to the game and also allows the user to restrict romantic interactions between distant relatives