Skip to content

Releases: KodeMannn/PZ-ModGuard

PZ-ModGuard v2.8.8 - PZO Engine Optimizer Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 29 Oct 21:37

What's Changed in v2.8.8

  • Known Native Framework Classification for PZO Engine Optimizer (prop11/PZO-Launcher):
    • Whitelisted native JVM hook agents -agentlib:pzo_native64 (Windows) and -agentlib:libpzo_native64 (Linux) in ProjectZomboid64.json / launcher configuration.
    • Recognized pzo_native64.dll and libpzo_native64.so as a Known Native Framework (PZO Engine Optimizer Build 42 AVX2 Native Hook Agent).
    • Added dedicated game root scope recognition (pzo) for pzo_native64.dll, libpzo_native64.so, and PZOptimEngine.jar.
  • Scoped Whitelist for PZOptimEngine.jar:
    • com/pzoptimizer/UpdateDialog.class -> powershell.exe & ProcessBuilder.start: Launches brief user32 Windows API helpers (ShowWindow / SetForegroundWindow) so update dialog notifications render in front of the game window.
    • com/pzoptimizer/UpdateChecker.class & UpdateDialog.class -> java/net/URL.openConnection: Queries GitHub Releases API (api.github.com/repos/prop11/PZO-Launcher/releases/latest) to check for engine updates.
    • com/pzoptimizer/JavaModLoader.class -> java/net/URLClassLoader.<init>: Dynamically loads bytecode patches into Build 42 memory.
    • com/pzoptimizer/PZOEngineBridge.class & PZOEntrypoint.class -> java/lang/Runtime.exec: Internal engine process management hooks.
  • Forensic Security Audit:
    • Native binary disassembly and decompilation verified AVX2 math acceleration (batchCalculateDistancesAVX2, batchCalculateFovAVX2, batchCullRadialAVX2), CPU affinity (SetThreadAffinityMask), and multimedia scheduling priority (AvSetMmThreadCharacteristicsW).
    • Bytecode audit verified zero malware payloads (0 token stealers, 0 malicious webhooks, 0 remote command droppers).
    • Continuous protection remains active: Tier 1 hostile malware heuristics are still enforced on all classes and modifications.
  • Cross-Platform Parity:
    • Full parity maintained across Windows (PZ-ModGuard.bat), Linux / SteamOS (pz_modguard.py), and the bash launcher (pz-modguard.sh).

PZ-ModGuard v2.8.7 - Viewpoint 3D Working TVs & Radios Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 29 Oct 18:02

What's Changed in v2.8.7

  • Scoped Whitelist for Viewpoint: 3D Working TVs & Radios (ws:3821610732):
    • Whitelisted com/viewpoint/tv/TVEngineLauncher.class -> java/lang/ProcessBuilder.start: Launches the native video decoding engine ( v_engine.bin with bundled FFmpeg) and cleans up orphaned engine instances if the game previously crashed (pkill -9 -f).
    • Whitelisted com/viewpoint/tv/TVManager.class -> java/lang/ProcessBuilder.start: Queries yt-dlp (--flat-playlist) to resolve video playlists when tuned in-game.
    • Whitelisted com/viewpoint/tv/TVManager.class -> java/net/URL.openConnection: Queries official oEmbed video title APIs (youtube.com/oembed and
      oembed.com/embed) to display media titles in the TV channel menu.
  • Forensic Security Audit:
    • Bytecode audit confirmed zero malicious payloads (0 token stealers, 0 webhooks, 0 droppers, 0 remote command shells).
    • The mod strictly enforces internal SHA-256 hash checks (engine-hashes.properties) on all bundled native engine binaries prior to execution.
    • Whitelist rules are strictly scoped to verified Workshop ID 3821610732.
  • Cross-Platform Parity:
    • Full parity maintained across Windows (PZ-ModGuard.bat), Linux / SteamOS (pz_modguard.py), and the bash launcher (pz-modguard.sh).

PZ-ModGuard v2.8.6 - DeadWorks Vehicle Framework & GridRV Co-op Launcher Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 29 Oct 17:45

What's Changed in v2.8.6

  • Scoped Whitelist for DeadWorks Vehicle Framework (ws:3825724093):
    • Whitelisted deadworks/vehicles/Launcher.class -> java/lang/ProcessBuilder.start: Hooks zombie.network.CoopMaster to restart the local GameServer child process with -javaagent:ZombieBuddy.jar so co-op multiplayer host servers load vehicle interior physics, collision, and player sync hooks.
  • Scoped Whitelist for Nomad Grid RV (ws:3820158673):
    • Whitelisted gridrv/HostLauncher.class -> java/lang/ProcessBuilder.start: Hooks zombie.network.CoopMaster to restart the local GameServer child process with -javaagent:ZombieBuddy.jar so co-op multiplayer host servers load the GridRVHost.jar server authority backend.
  • Forensic Security Audit:
    • Full bytecode decompilation confirmed zero malicious payloads (0 token stealers, 0 webhooks, 0 droppers, 0 remote exfiltration).
    • Scoped strictly to their verified Steam Workshop IDs (3825724093 and 3820158673).
  • Cross-Platform Parity:
    • Updated across Windows (PZ-ModGuard.bat), Linux / SteamOS (pz_modguard.py), and the launcher script (pz-modguard.sh).

PZ-ModGuard v2.8.5 - PZ_Optimization Benchmark Suite Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 29 Oct 12:44

What's Changed in v2.8.5

  • Scoped Whitelist for PZ_Optimization Benchmarking Suite (ws:3805285544):
    • Whitelisted pzopt/BenchSystem.class -> java/lang/ProcessBuilder.start: Queries CPU hardware model name via Windows registry (
      eg query) or /proc/cpuinfo (Linux) to display hardware specifications in performance benchmark runs.
    • Whitelisted pzopt/BenchResults.class -> java/lang/ProcessBuilder.start: Opens the generated HTML benchmark report in the default system web browser.
  • Forensic Security Audit:
    • Full bytecode inspection confirmed zero Tier 1 threats (0 stealers, 0 webhooks, 0 droppers, 0 credential exfiltration).
    • Scoped strictly to Workshop ID 3805285544.
  • Cross-Platform Parity:
    • Updated across Windows (PZ-ModGuard.bat), Linux / SteamOS (pz_modguard.py), and the bash launcher (pz-modguard.sh).

PZ-ModGuard v2.8.4 - Viewpoint Shenandoah GC Probe & Upscaler Downloads Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 11 Oct 16:46

What's Changed in v2.8.4

PZ-ModGuard v2.8.4 whitelists the new Shenandoah GC probing and vendor upscaler asset downloading features in Viewpoint (3809306528).

🛡️ Viewpoint Performance & Upscaling Whitelist

  • Shenandoah GC Optimization Probe (Collector.class): Whitelisted ProcessBuilder.start used exclusively to invoke java.exe -version on the game's JDK to check for Shenandoah GC support (offering smoother frame rates and fewer micro-stutters in Build 42).
  • Vendor Upscaler Asset Downloader (NativeDownload.class): Whitelisted URL.openConnection used to download official signed vendor upscaler DLLs (AMD FSR, Intel XeSS, NVIDIA DLSS/Streamline) directly from verified manufacturer GitHub repositories with SHA-256 cryptographic verification when upscaling is enabled in game options.
  • Continuous Bytecode Auditing: All Viewpoint classes and other mod JARs continue to undergo strict heuristic inspection for malicious code, trojans, and webhooks.

📦 Assets Included

  • PZ-ModGuard.bat (Windows launcher & scanner)
  • pz_modguard.py (Linux / SteamOS / Cross-platform core scanner)
  • pz-modguard.sh (Linux launcher)

Full Changelog: v2.8.3...v2.8.4

PZ-ModGuard v2.8.3 - Game Root Manifest Scope Inheritance & Embedded Script Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 07 Oct 10:25

What's Changed in v2.8.3

PZ-ModGuard v2.8.3 resolves a timing and scoping issue where scripts deployed into the Game Root by authorized mods (such as Uninstall-PZ-Optimization.cmd) triggered false-alarm critical alerts, and whitelists embedded uninstaller scripts inside pzopt.jar.

🔧 Fix Game Root Manifest Timing & Scope Inheritance

  • Execution Reordering: Fixed scan ordering so install manifests (pzopt-installed.txt) are loaded before auditing Game Root native files.
  • Manifest Scope Inheritance: Extended Get-FileScope / get_file_scope to cross-reference manifestFiles / manifestHashes and expanded Workshop hash indexing to all scanned script extensions (.cmd, .bat, .ps1). Files placed in Game Root by authorized mods inherit their mod scope properly.
  • Embedded Scripts in pzopt.jar: Whitelisted embedded copies of uninstaller/installer scripts inside pzopt.jar, eliminating false-positive archive warnings.

📦 Assets Included

  • PZ-ModGuard.bat (Windows launcher & scanner)
  • pz_modguard.py (Linux / SteamOS / Cross-platform core scanner)
  • pz-modguard.sh (Linux launcher)

Full Changelog: v2.8.2...v2.8.3

PZ-ModGuard v2.8.2 - PZ_Optimization Uninstaller Scripts Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 07 Oct 10:07

What's Changed in v2.8.2

PZ-ModGuard v2.8.2 whitelists the newly packaged uninstaller helper scripts for PZ_Optimization (3805285544), preventing false-positive critical native binary alerts when updating or installing the mod.

🛡️ Whitelist Uninstaller Scripts in PZ_Optimization

  • Registered Scripts: Classified Uninstall-PZ-Optimization.cmd, Uninstall-PZ-Optimization.bat, and uninstall.sh under Workshop ID ws:3805285544 as harmless install/uninstallation artifacts ([i] Notice: Non-executing dev/install script).
  • Eliminated False Alarms: Prevents [CRITICAL] Unauthorized Native Binary warnings from triggering on the benign uninstaller shortcuts provided by mod author xD3I.
  • Continuous Security Integrity: All mod .jar files and compiled bytecode continue to undergo full heuristic inspection for malicious code and trojans.

📦 Assets Included

  • PZ-ModGuard.bat (Windows launcher & scanner)
  • pz_modguard.py (Linux / SteamOS / Cross-platform core scanner)
  • pz-modguard.sh (Linux launcher)

Full Changelog: v2.8.1...v2.8.2

PZ-ModGuard v2.8.1 - Legal Disclaimers & Viewpoint True Weathers Whitelist

Choose a tag to compare

@KodeMannn KodeMannn released this 06 Oct 10:02

What's Changed in v2.8.1

PZ-ModGuard v2.8.1 adds comprehensive legal disclaimers, limitation of liability protections, and whitelists harmless developer build scripts bundled in Project Viewpoint: True Weathers & Lighting.

⚖️ Comprehensive Legal Disclaimers & Limitation of Liability

  • Interactive Startup Banners: Displays a concise security disclaimer in console banners on Windows (PZ-ModGuard.bat) and Linux (pz_modguard.py).
  • Exported Scan Reports: Embedded disclaimers and non-affiliation/assumption of risk notices directly into pz_mod_scan_report.txt.
  • README & Legal Protections: Added high-visibility notices and a dedicated legal section detailing No Guarantee of Absolute Security, Assumption of Risk, Limitation of Liability, and Non-Affiliation with The Indie Stone or Valve Corporation.

🛡️ Viewpoint True Weathers Whitelist

  • Harmless Dev Script Classification: Registered build.ps1 (and build.sh) from Matthew's official mod Project Viewpoint: True Weathers & Lighting (ws:3813908957) as harmless non-executing developer artifacts ([i] Notice: Non-executing dev/install script).
  • Eliminated False Alarm: Prevents [CRITICAL] Unauthorized Native Binary alarms while continuing to rigorously scan all mod .jar files and bytecode for malicious payloads.

📦 Assets Included

  • PZ-ModGuard.bat (Windows launcher & scanner)
  • pz_modguard.py (Linux / SteamOS / Cross-platform core scanner)
  • pz-modguard.sh (Linux launcher)

Full Changelog: v2.8.0...v2.8.1

PZ-ModGuard v2.8.0 - User-Defined SHA-256 Exceptions & Integrity Pinning

Choose a tag to compare

@KodeMannn KodeMannn released this 03 Oct 22:27

What's Changed in v2.8.0

Based on community feedback from Alexa Altez, PZ-ModGuard v2.8.0 introduces a cryptographic User Exceptions System with SHA-256 hash pinning. This allows players to safely suppress known benign warnings (such as Project Remnants connecting to an external LLM server) while maintaining cryptographic protection against tampering and unauthorized updates.

🔐 Cryptographic SHA-256 Exception Pinning

  • Container & Class-Level Pinning: Pin either an entire container (.jar, .dll) or an individual .class\ bytecode entry by its exact SHA-256 cryptographic hash.
  • Automatic Expiration on Update/Tamper: If a mod receives an update on Steam Workshop, or if any byte in the target file or class is changed or tampered with, the exception automatically expires, alerts the player with an expiration notice, and re-triggers the warning.
  • Tier 1 Security Guard: Wildcard pattern (*) exceptions are strictly forbidden for Tier 1 Critical threats (Discord webhooks, token stealers, reverse shells) to prevent accidental trojan bypasses.

🖥️ Seamless User Experience

  • Interactive 1-Click Post-Scan Prompt: After any interactive scan that finds warnings, ModGuard prompts:
    \Would you like to save any detected warning(s) as a trusted SHA-256 exception? [Y/N]
    Allowing you to trust the finding with a single keystroke.
  • **Dedicated Management Menu [8] User Exceptions**:
    • List all active exceptions with target names, class entries, API patterns, and SHA-256 hashes.
    • Add exceptions manually by typing a path or dragging and dropping a file.
    • Remove individual exceptions or clear all.
    • Inspect the raw JSON configuration.

🌐 Cross-Platform Parity & Storage

  • Windows: Persisted in %LOCALAPPDATA%\PZ-ModGuard\pzmg_exceptions.json\ (survives updates and works seamlessly with Steam Auto-Scan).
  • Linux & SteamOS: Persisted in ~/.local/share/pz-modguard/pzmg_exceptions.json.
  • Portable: Supports portable drop-in ./pzmg_exceptions.json.
  • 100% Feature Parity: Supported identically in both Windows (\PZ-ModGuard.bat) and Linux/SteamOS (\pz_modguard.py).

Full Changelog: v2.7.0...v2.8.0

PZ-ModGuard v2.7.0 - Bytecode Parser, Workshop-Scoped Trust & Steam Auto-Scan

Choose a tag to compare

@KodeMannn KodeMannn released this 03 Oct 18:27

What's Changed in v2.7.0

This release incorporates major architectural upgrades, security hardening, and Steam launch automation contributed by @C4LLZ in #1.

🔬 High-Precision JVM Bytecode Parser

  • Constant Pool Parser: Parses .class\ files in memory (\