DiFFoZ-LethalPerformance icon

LethalPerformance

Optimizes the game by using Unity Jobs and Burst API

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.5.0] 2024-12-03

Added

  • Experimental option to utilize Steam Voice API instead of the Unity Microphone API. It's disabled by default, enabling it may help with less lag spike.
  • Patched FoliageDetailDistance to remove allocation of material.
  • Cached normals array in player normals calculation to remove allocation.

[0.4.3] 2024-11-29

Fixed

  • Dummy from MoreCompany doesn't render when in game.

[0.4.2] 2024-11-05

Fixed

  • Stack overflow when using Immersive Visor mod.

[0.4.1] 2024-10-03

Added

  • Dynamic method compilation of the volume component for searching options to remove reflection usage.
  • Enabled persistent history flag for ship cameras.
  • Audio spatialization warning disabler if LethalLevelLoader or LobbyControl is not installed.

Changed

  • Modified the mod to not wait until Loadstone and LCVR are loaded.
  • Lowered priority of patches to minimize breaking other mods.

[0.4.0] 2024-09-09

Added

  • Caching of AudioReverbPresets that will help to prevent lag spikes when entering/exiting ship.
  • Auto force disabling volumetric fog if the hardware system doesn't support it.

[0.3.5] 2024-09-01

Changed

  • Increased the reflection probe texture atlas from 1024x1024 to 2048x1024.

Removed

  • The option to compress suit textures, as it is now enabled by default.

Fixed

  • Config files for new mods are not saved if they contain only booleans [thanks @sweetbale].

[0.3.4] 2024-08-19

Fixed

  • Pressing join by LAN crashing the server [thanks @Zaggy1024].

[0.3.3] 2024-08-10

Changed

  • Do not modify UI camera settings if LCVR mod is loaded.

[0.3.2] 2024-08-07

Fixed

  • String value with backslash are parsed incorrectly.

[0.3.1] 2024-08-07

Fixed

  • Patcher assembly file included twice.

[0.3.0] 2024-08-07

Added

  • Optimization to reduce memory allocation of reloading/saving config file.
  • Async saving config file.

[0.2.1] 2024-07-31

Fixed

  • LCVR mod fails to load because of missing OpenXR burst code.

[0.2.0] 2024-07-30

Added

  • Keybind to open the Unity logs folder with Ctrl + Shift + L.
  • Patching of BepInEx configuration to reduce memory allocation.
  • CookieAtlasResolution and ReflectionProbeCacheResolution configuration options.
  • Patching camera initialization to remove debugging window registration.

Fixed

  • Caching was not working before Awake was called on the component.

[0.1.2] 2024-07-25

Changed

  • Temporarily increased reflection probe atlas resolution to 2048x2048 to fix log spam.

[0.1.1] 2024-07-24

Added

  • Config option Experimental.Mods::Compress custom suits textures, by default is disabled.

Changed

  • Make caching to run before of all mods.

Fixed

  • Terminal accessible objects code names are not rendered to the map camera.

[0.1.0] 2024-07-21

Added

  • Config option Unsafe.Rendering to disable some rendering code, by default is disabled.
  • Patching of stormy/rainy weathers to prevent logging: Sub-emitters may not use stop actions. The Stop action will not be executed.
  • Added disabler of FileSystemWatcher. It's very unoptimized on Windows Mono.
  • Added remover of some objects on scene loading.

Changed

  • The system of unsafe caching instances.

[0.0.11] 2024-07-18

Changed

  • Updated README.

Fixed

  • Fixed Mirage unable to parse .wav file correctly.

[0.0.10] 2024-07-16

Added

  • Implemented patches to reduce memory allocation:
    • AudioReverbTrigger no longer allocates every frame by avoiding the retrieval of a collider tag.
    • HangarShipDoor no longer allocates every frame by replacing string.Format with TMP_Text.SetText(string, float).
    • WaveFileWriter no longer allocates by rewriting Mono BinaryWriter.Write(float) to avoid array allocation with every write.
    • Resolved an issue where the local username billboard was toggling between enabled and disabled every frame, leading to unnecessary memory allocation.

Fixed

  • Resolved an exception thrown by another mod attempting to access the object instance while in the main menu.

[0.0.9] 2024-07-08

Added

  • Further optimized the process of finding a singleton object by not sorting by instance id.
  • Added HarmonyXTranspilerFix dependency for patching edge cases that caused methods to break.

Removed

  • Patch of ItemDropship that fixes NullReferenceException on custom moons. Recommended alternative CompanyCruiserFix.

[0.0.8] 2024-07-08

Added

  • Optimization of finding a singleton object. This should help reduce lag spikes.

[0.0.7] 2024-07-04

Fixed

  • Invalid patch of StartOfRound.SetPlayerSafeInShip.

[0.0.6] 2024-07-04

Added

  • Optimization of HDCamera.UpdateShaderVariablesGlobalCB.
  • Optimization of StartOfRound.SetPlayerSafeInShip.

Fixed

  • Harmony patching exception with Loadstone mod.

[0.0.5] 2024-06-29

Fixed

  • Temp bandaid fix for custom moons that item drop ship throwing NullReferenceException (important, it still doesn't fix spawning of vehicle on custom moons).

Known issues

  • Harmony patch exception with Loadstone mod. You can ignore it safely.

[0.0.4] 2024-06-24

Fixed

  • Burst API cannot find the burst method because of different assembly version.

[0.0.3] 2024-06-24

Added

  • Optimization of HDCamera.UpdateShaderVariablesXRCB.

[0.0.2] 2024-06-22

Fixed

  • Burst library cannot be found.

[0.0.1] 2024-06-21

Added

  • Initial commit.