Update v404823 Test


Features and Changes

  1. Add Protanopia and Deuteranopia color blindness modes.
  2. Added Feedback button below patch notes as shortcut to feedback options.
  3. Mod and Crash Screen Improvements:
  4. Mods Screen button says "Browse" instead of "Subscription" for local mods. Hitting the button always opened a folder to the local directory, now the text matches that.
  5. Hook up new art for crash report screen.
  6. Enable/Disable all mods button on ModsScreen.
  7. Errors encountered while mods are installed will now bring up an error dialog.
  8. Fix localization on the error screen.
  9. Error screen now has a "MORE INFO" button that reveals the callstack, and a copy to clipboard button.
  10. Mods referenced in the stack trace will be disabled by default (unless they are dev mods).
  11. Disable mods that are non-dev mods when they fail to load, even if other mods are dev mods. This was causing infinite loops for mod creators when a mod was crashing that had nothing to do with what they were developing.
  12. Mods can be disabled or enabled directly on the error screen.
  13. Under the hood, Timer Sensor now counts Logic Ticks rather than Time.time, which will make them more accurate and better at staying in sync with each other.
  14. Counter Sensor improvements:
  15. Add "Advanced Mode" toggle to Counter sidescreen. Advanced Mode performs a % on the count, rather than a direct comparison, allowing for actual binary counting.
  16. Advanced Mode: sends a Green Signal only for one logic tick, rather than continuously.
  17. Standard Mode: After its initial 0, Counter Sensor sidescreen displays its count as "10" rather than 0.
  18. Counter sidescreen visual polish.
  19. Improved counter’s reset behavior to be more reliable.
  20. Added some new hammer strike sounds.
  21. Sweepbot Station contents are always marked for clearing - similar to user marked sweeps on floor ore. This allows their storage priority to be set right on the Sweepbot Station.

Fixes

  1. Fixed building toggle errands not being saved.
  2. Counter Sensor defaults to the "off" anim state when first built.
  3. Counter Sensor no longer sends Green Signal for its initial "zero" state, making daisy-chaining possible without requiring to reset.
  4. Copy Settings works correctly for Liquid Reservoirs and Gas Reservoirs.
  5. Canister emptier no longer shares auto-bottle strings with bottle emptier.
  6. When paused, multiple Signal Switches/Circuit Switches can be toggled at a time, and general improvements to the functionality of the player controlled toggle sidescreen.
  7. Automation Ribbon Bridges now correctly de-tint if they are offscreen when the Automation Overlay is closed.
  8. Light audio mix and performance fixes around creatures.
  9. Fixed issue allowing for 2 Sweepys to be produced for the same base station.
  10. MOTD strings can now be translated by Language Mods.
  11. Sweepy fixes:
  12. Refined metal for sweepy production will no longer be cleared from the Sweepy base station as if it were swept clutter. This should fix some infinite delivery loops with the sweepy station.
  13. Improved Sweepy status item when trapped.
  14. Fixed empty status item for Sweepy. Added status items for common states. Added placeholder string to base station description to describe emptying behavior.
  15. Fixed the dying animation sometimes being interrupted by the idle animation.
  16. Fixed bug allowing Sweepy to magically change the temperature of things swept.
  17. Fix some instances of dupes still carrying on conversations after death.
  18. A couple fixes for trying to retrieve the schedule of a dead dupe.
  19. Fix crash when a critter dies right before they get wrangled.
  20. Fix crash when a building or plant is destroyed while its room is being updated.
  21. Fix achievement crash for very old saves.
  22. Fix retry-loop when a translation mod becomes enabled somehow.
  23. Prevent softlock when a modal dialog is rendering behind the crash report screen.
  24. Separate limits for sliders and text input fields in sandbox tools. Should allow very negative heat gun values and prohibit <1 brush size values.
  25. Sandbox settings revert to default settings if the saved data is not applicable (update IDs loaded in base game). Mass, temperature, and brush radius values are better clamped.

Optimizations

  1. Removed validations in our arrays which were were taking up over 5% of the frame.
  2. Minor optimize to ConduitFlow.

Modding

  1. Added hooks to LogException in KMonoBehehaviour’s try-catches for mod support.
  2. Removed IEffectDescriptor; in every case except one it just deferred to the game object anyways, so no reason to inject the BuildingDef. This makes all effect descriptors use the same interface, simplifying things.
  3. Support archived versions for mods.
  4. This will allow modders in the future to publish versions of their mod simultaneously for the testing and release builds. It won’t be usable for this testing period because the change hasn’t made it to release yet, but next patch this can be used to update mods on the Testing branch without breaking them for Release players!
  5. The "current" most up-to-date version of the mod continues to live in the root folder of the mod as always.
  6. Archived/previous versions of the mod can be moved into an ’archived_versions’ folder, and their last good version specified in a top-level file called ’archived_versions.yaml’. Its structure looks like this.

archivedVersions

  1. relativePath: archived_versions/0
  2. lastWorkingBuild: 10000
  3. relativePath: archived_versions/1
  4. lastWorkingBuild: 10001