You are viewing a potentially older version of this package. View all versions.
Mentalize-REPOPerformanceKit-0.1.1 icon

REPOPerformanceKit

Engine-level FPS optimizations for R.E.P.O. with zero visual quality loss. Log spam filter, GC tuning, adaptive physics, texture streaming, cull distance boost. Every feature config-toggleable.

Date uploaded 3 months ago
Version 0.1.1
Download link Mentalize-REPOPerformanceKit-0.1.1.zip
Downloads 72
Dependency string Mentalize-REPOPerformanceKit-0.1.1

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100

README

REPOPerformanceKit

Engine-level FPS and performance optimizations for R.E.P.O. with zero visual quality loss.

Rather than patching game code (which breaks on game updates), this mod tunes Unity's own knobs. Every feature is safe-by-default and individually toggleable in the config. Pairs well with mattymatty-AsyncLoggers and DaXcess-FixPluginTypesSerialization.

Features

Feature What it does
LogSuppressor Disables Unity's stack-trace capture for Debug.Log/Warning (one of the single biggest sources of GC pressure in Unity games) and filters repetitive BepInEx log spam via a gateway ILogListener with substring filtering and consecutive-duplicate dedupe.
FrameRateTuner Clamps Time.maximumDeltaTime to prevent "physics death spirals" where one hitch triggers cascading stutters. Optional target-framerate / VSync override.
GCTuner Enables Unity incremental GC. Runs GC.Collect() on scene loads (hidden by the loading screen) to clear orphaned scene memory.
TextureStreaming Enables Unity mipmap streaming with a configurable VRAM budget. Loads only the mip levels visible at the current camera distance — keeps VRAM bounded regardless of how many content mods you have.
AdaptivePhysics Temporarily lowers physics tick rate from 50 Hz to 30 Hz when FPS drops below a threshold, restores it when FPS recovers. Hysteresis band prevents flapping.
CullDistanceBoost Per-layer camera cull distances for the main camera. Detail layers stop rendering at a multiplier of the far clip plane. Leaves built-in Unity layers (Default, UI, Water, etc.) untouched.
FPSCounter Optional on-screen FPS / frametime / physics tick overlay for measuring the mod's impact.

Install (Thunderstore Mod Manager)

  1. Click "Install with Mod Manager" on this page.
  2. Launch REPO through your mod manager as usual.
  3. First launch creates BepInEx/config/com.mentalize.repoperformance.cfg.

Install (manual)

Extract REPOPerformance.dll into <game-or-profile>/BepInEx/plugins/REPOPerformanceKit/.

Configuration

All options live in BepInEx/config/com.mentalize.repoperformance.cfg. Key knobs:

  • [Logging] DisableUnityStackTracesbiggest single win. Leave on.
  • [TextureStreaming] MemoryBudgetMB — default 1024. Set to 512 on ≤4 GB VRAM, 2048 on ≥8 GB.
  • [Culling] Multiplier — start at 1.0 (no-op). Drop to 0.85 for more savings, still invisible.
  • [Diagnostics] ShowFpsOverlay — flip on to measure the other features.

If you have nickklmao-REPOConfig installed, the config will appear as a tab in the in-game settings menu.

Compatibility

Client-side only. Every player can install or not install independently. Nothing syncs over the network, and the mod is not required for lobby compatibility.

Does not patch any REPO game code — purely engine-level Unity tweaks. Safe with all content mods. No known conflicts.

Recommended companions:

  • mattymatty-AsyncLoggers — makes BepInEx log writes non-blocking (we reduce volume, they make what's left async).
  • DaXcess-FixPluginTypesSerialization — speeds up plugin type serialization at startup.
  • nickklmao-REPOConfig — in-game config UI; picks up our config automatically.

Changelog

0.1.1

  • Initial public release.