Chef Shared Loader - Updates

PC Chef Shared Loader 1.1.0

Updates for Helldivers 2
  • chfb
  • Mods made for the HD2 Lua Runtime run on a built-in stand-in for it, crash-guarded and cleaned up like every other mod; the HD2 Lua Runtime itself isn't needed.
  • Trusted mods: a short list in the loader gives a named mod a little more than the lockdown, only what it needs (its own Steam lobby key, its own save folder, or game patch files once you turn on its "Game patch files" row in F9).
  • Every game patch file a mod places is checked first: it can't replace the game's boot script, and any Lua in it must be comments only.
  • Tighter lockdown for every mod: no native code, network, lobbies or writes to what other players see, in stingray and the globals too.
  • Boot scripts that wrap the game's update no longer stall the loader; chef.mods() and chef_loader_health.txt say why a mod isn't running; chef.index() tells which mod's copy of a resource the game loads (HD2-Exclusive / HD2-Fallback).
  • Text in the game's own font: the F9 menu, the performance monitor, notices and mods' chef.text use FSSinclair Medium, the HUD's font. Kept between frames and only changed when it changes, so the monitor costs about a tenth of before. The pixel font stays as the fallback (F9: Game font).
  • Mods written for Bingus Shared Loader that hook in the old way (replacing update) now run, and a mod that needs ffi gets a log line saying why it can't work since 7.2.0 (with any loader).
  • For mod authors: a mod's own require serves its package.preload, a mod file may return true, and Lua resources in envelope 1 are read too.
  • License: other mod authors may copy and adapt parts of the loader's code to call its functions or work with it, with a credit line (see LICENSE).
A crash-safety, lockdown and performance update.
  • A mod whose own update, render or shutdown ends the game is now blamed and kept off at the next launch.
  • One mod's error can no longer stop the other mods; shutdown always saves settings and the clean marker.
  • A mod's bad number (NaN, infinity) or huge shape can no longer hide the loader's menu or freeze the game.
  • A same-size hotfix of a crashed mod now turns it back on, and what 1.0.0 learned about crashes carries over.
  • Each mod gets its own sealed Bingus and Mod Options Menu look-alikes, file handles and boot environments are locked, and saved tables have one file per mod and table (old files move over once).
  • Settings, the crash state and saved tables are written safely, so a full or locked disk no longer wipes them; saved strings with backslashes come back intact.
  • Fixes: HD2-Requires: lines without a version, a stray mission end mid-mission, slider snapping, a menu key that could be set to none, chef.title after chef.option, upper-case key names, and the performance monitor's per-mod counts.
  • Faster: the menu costs less than half as much, the performance monitor about a third, and drawing, unit scans and guarded calls are quicker.
The full list is in CHANGELOG.md on GitHub. Keep it at the highest priority in your mod manager.