Skip to content

CMSF v0.2.3 - the skin menu stutter should hopefullyyyy be fixed

Choose a tag to compare

@dataterminals dataterminals released this 27 Jul 15:14
· 5 commits to master since this release

If the hub or the skin menu had a once-a-second hitch with CMSF installed, this is the one.

CMSFUnlock hides the placeholder tiles for CMSF slots that no skin has claimed. To decide which
those are, it looked up each tile's icon and compared it against the path that slot's texture would
live at — and it redid that for every tile on all four ready-room panels, every second. On a full
32-slot setup that is 128 tiles a second, on the thread that draws frames.

A slot's answer cannot change while the game is running: the texture either shipped in a mounted pak
or it did not. So v0.2.3 works each one out once and remembers it. Steady state is now a table
lookup instead of 128 asset-path comparisons.

Two earlier attempts went after a different suspect — the scan that locates the menu in the first
place. Those changes were real and are still in, but they were not what anyone was feeling.

No behaviour change. The selector still lists every skin, and unclaimed slots still hide.

New console commands, mostly for anyone who wants to check the difference themselves:

  • cmsfnoprune — stop hiding unclaimed slot tiles
  • cmsfprune — resume hiding them

Downloads

CMSF-v0.2.3.zip — what a player installs. Drop the Windows\ folder onto the game root.
Requires UE4SS.

CMSF-author-v0.2.3.zip — what a skin author runs. cmsf-author.exe plus retoc and a buildable
example skin. Authors supply their own usmap and AES key; CMSF ships neither.

Licensing

CMSF exists under the MIT License, Copyright © 2026 dataterminals

The author tool bundle redistributes the following, all under the MIT License. Their notices ship in
licenses\ inside that download:

  • retoc — Copyright © 2025 Truman Kilen and Archengius
  • UAssetAPI — Copyright © 2020–2026 atenfyr
  • Newtonsoft.Json — Copyright © 2007 James Newton-King
  • ZstdSharp — Copyright © 2021 Oleg Stepanischev

UAssetAPI, Newtonsoft.Json and ZstdSharp are compiled into cmsf-author.exe rather than shipped as
separate DLLs, which is why you will not find them beside the executable.


Full technical account of the stutter investigation, including what is measured and what is still
assumed: docs/09-stutter.md