Get ZombieBuddy from zed-0xff/ZombieBuddy on GitHub or the author’s Workshop item 3619862853. It needs a one-time Java-loader setup outside the mod list. Windows uses ZombieBuddy.jar plus zbNative.dll; native macOS/Linux use the JAR. Confirm the loaded version before diagnosing dependent mods. The released v2.3.4 includes the 42.21 loading fix.
Find the correct GitHub download
The author repository is zed-0xff/ZombieBuddy. Open its Releases page through the repository and distinguish the Windows installer asset from the framework release. “Zombie Buddy GitHub” is a spaced search phrase for this same project, not another required dependency.
Avoid a similarly named repository or a repack linked in a comment. If GitHub initially hides the asset list, reload the official release page and expand Assets. Do not treat a source-code archive as a ready-to-run Windows installer.
Source: ZombieBuddy · GitHub README · Framework author documentation
Check the game build and loaded framework version
The author Workshop currently lists B41 and B42.12–B42.21. A dependent mod can have a narrower requirement: a loader supporting B41 does not make a Build 42 camera mod run on B41. For another game patch, check the latest author notes before assuming the same recipe applies.
Make a note of the exact game patch, loader version shown during startup, installer release and dependent-mod versions. Use that record when comparing instructions. An installer’s version number is not the ZombieBuddy version running in the game.
Source: ZombieBuddy · author Workshop instructions · Framework author instructions
Understand the 42.21 fix before adding a patch
The official v2.3.4 release, dated 3 October 2026, backports fix #56. Begin with the author’s current release when resolving an old 42.21 setup. A tutorial recorded before that release may still recommend a temporary community JAR.
Check what the game actually loaded after an update. A newly downloaded file elsewhere on disk is not proof that the active game directory uses it. Preserve the previous configuration while replacing an older or temporary setup with a consistent author release.
Source: ZombieBuddy v2.3.4 · release · Framework author release
Prepare the game and paths
- Close Project Zomboid and back up any save you will use. Confirm that the game can reach its menu without this loader before changing the installation.
- Use Steam’s installed-files browse action to locate the actual game folder. A library on another drive will not match an example beginning with C:\Program Files (x86).
- Copy your current Steam launch options to a note. If editing a launcher JSON or BAT file, preserve an unchanged copy and record the exact file you changed.
- Let the Workshop dependency finish downloading, or use the author’s release package. Keep a record of which source supplied the files; avoid parallel local and Workshop copies whose versions you cannot distinguish.
Windows: use the author installer
If the downloaded installer does not offer the documented choices, check its own release notes and use the matching manual route below. Do not assume that an installer reaching its last screen means it patched the launcher you later selected.
- Subscribe to the author’s ZombieBuddy Workshop item, then download ZombieBuddyInstaller.exe from the author’s GitHub Releases.
- Run the installer and choose installation/update. The documentation offers Normal Launch, Alternate Launch or Both; select the launch method you actually use.
- Inspect the detected folders and change preview. If asked to close Steam for a launch-options change, do so and continue.
- After completion, enable ZombieBuddy in the game mod manager and fully restart. Check the loading indicator before adding a dependent mod.
Source: ZombieBuddy v2.3.4 · installation guide · Versioned author documentation
Windows: manual file placement
Copy ZombieBuddy.jar and zbNative.dll from the downloaded mod’s libs directory into the game installation directory. The Workshop example below is relative to the Steam library containing that download, not necessarily your system drive.
Folder reference · not a command
SOURCE: <Steam library>\steamapps\workshop\content\108600\3619862853\mods\ZombieBuddy\libs\
FILES: ZombieBuddy.jar and zbNative.dll
DESTINATION: the ProjectZomboid game folder opened through SteamReplace the library placeholder with your real library. Do not copy these files into the saves folder or create a second game installation to match an example path.
Source: ZombieBuddy · author Workshop instructions · Framework author instructions
Windows: configure Normal Launch
For the manual Steam Normal Launch route, use the following agent argument, including the final two hyphens. zbNative loads the JAR; adding a second javaagent argument is unnecessary. Preserve unrelated options and compare any existing ZombieBuddy entry before adding another.
Steam launch options · Windows Normal Launch
-agentlib:zbNative --Use with the Windows loader files in the actual game directory. This example is a Steam launch-options value, not a terminal command.
Source: ZombieBuddy v2.3.4 · installation guide · Versioned author documentation
Windows Alternate Launch uses a different injection point
The author instructions explain that Steam arguments reach ProjectZomboid64.bat as game arguments. The Normal Launch line alone therefore does not set up Alternate Launch. Use the installer’s Alternate Launch/Both option, or add -agentlib:zbNative to that BAT file’s SET _JAVA_OPTIONS= line.
For a manual edit, first inspect the existing line and preserve its other JVM options. Do not replace the entire launcher with a snippet from a comment. If you cannot identify the correct line, return to the documented installer instead of guessing.
Source: ZombieBuddy v2.3.4 · installation guide · Versioned author documentation
Native macOS and Linux: copy the JAR and set the agent
A Steam Deck running the Windows game through Proton is a different launch configuration from the native Linux example. Identify which game executable is in use before selecting a platform recipe; this page does not claim a tested Proton or Steam Deck setup.
| Platform | Documented destination example |
|---|---|
| macOS | ~/Library/Application Support/Steam/steamapps/common/ProjectZomboid/Project Zomboid.app/Contents/Java/ |
| Linux | ~/.steam/steam/steamapps/common/ProjectZomboid/projectzomboid/ |
Steam launch options · native macOS/Linux
-javaagent:ZombieBuddy.jar --Keep the trailing --. Enable the dependency in the game mod manager and fully restart after setup.
Source: ZombieBuddy · author Workshop instructions · Framework author instructions
Verify the loader before testing a dependent mod
During loading, the author documents a ZombieBuddy icon and version message at the upper left. Note the number that actually appears.
- First confirm that the game reaches its menu with the configured loader. If it cannot, undo the loader changes and compare with the baseline before investigating a camera or gameplay addon.
- Next enable only the intended dependent mod and its stated requirements in a separate test setup. Restart fully.
- Read any approval prompt, then test one visible feature of that mod. A loader indicator alone does not establish that another mod started successfully.
- Record both results separately: framework reached the menu, and dependent mod performed its intended action. Keep any failure message verbatim.
Source: ZombieBuddy v2.3.4 · installation guide · Versioned author documentation
Approve a file deliberately and fix an accidental denial
The author documents approval of new or changed Java JARs and stored per-file decisions. For an accidental denial, close the game, back up mod_approvals.json, and revise only the intended mod/hash entry under mods before restarting. The default file is %USERPROFILE%\.zombie_buddy\mod_approvals.json on Windows, or ~/.zombie_buddy/mod_approvals.json on native macOS/Linux.
Compare the displayed file with the mod you requested. Avoid clearing all decisions merely because one addon was blocked; that loses information about unrelated choices.
Source: ZombieBuddy · author Workshop instructions · Framework author instructions
Understand policy and signature messages
The documented prompt policy asks about unfamiliar or changed JARs; deny-new can skip unapproved files without showing a dialog. Inspect an existing policy argument if a new dependency seems to disappear. Keep deliberate restrictions in place while identifying the reason for the block.
Do not use allow-all as a troubleshooting shortcut. If the message names a signature or author key, diagnose that specific issue rather than treating it as a generic permission dialog.
Source: ZombieBuddy v2.3.4 · agent parameters · Versioned author reference
Does a valid signature mean the mod is safe?
No. The author describes signing as an identity and integrity check, not a security review. Java mods can execute code with your account’s system access; choose the source and approve the specific mod accordingly.
For mismatched signature files, obtain a consistent JAR and its accompanying signature from the author. Replacing only one file, using a repack or mixing releases can invalidate the relationship. If verification still fails, retain the error and ask the author about that version instead of bypassing the check.
Source: ZombieBuddy v2.3.4 · mod signing · Versioned author documentation
Troubleshoot not installed, no mods loaded or startup failure
The upstream 42.21 report explains a changed Java method signature that stopped the loader matching its hook. It is one documented failure mode, not a diagnosis for every startup crash.
| Symptom | Check next |
|---|---|
| Workshop says subscribed, loader absent | Check copied files and launcher injection. Subscription and agent setup are separate. |
| Works in Normal Launch but not Alternate | Check which launcher was patched; Steam launch options alone do not configure the BAT route. |
| Loader version appears, Java mods absent on 42.21 | Compare with v2.3.4 and fix #56; also check enablement and approval messages. |
| Native-library or JAR file error | Compare file names, actual game directory and platform-specific syntax. |
| Failure began after update or file verification | Compare the active loader, launch options and edited launcher files with your saved configuration. |
| Only one dependent mod fails | Test it with its minimum requirements, then consult that mod’s author instructions. |
Source: ZombieBuddy #56 · Build 42.21 loading fix · Upstream fix discussion
Collect a useful diagnostic log
If the ordinary launch gives too little information, the author supports verbosity=1. For Windows Normal Launch, replace the existing agent argument with the example below for one diagnostic run, preserve the output and return to your previous setting afterward. Alternate Launch still needs its own JVM injection point.
Report the first error, exact patch and loader version, installation source, launch mode and smallest failing mod list. Remove private account paths or server details before sharing logs.
Diagnostic Steam launch options · Windows Normal Launch
-agentlib:zbNative=verbosity=1 --Replace the existing ZombieBuddy argument for this diagnostic run; do not add a duplicate loader.
Source: ZombieBuddy v2.3.4 · agent parameters · Versioned author reference
Native macOS/Linux diagnostic argument
Diagnostic Steam launch options · native macOS/Linux
-javaagent:ZombieBuddy.jar=verbosity=1 --Use this instead of the Windows example. Preserve the diagnostic output, then restore your previous verbosity setting.
Source: ZombieBuddy v2.3.4 · agent parameters · Versioned author reference
Uninstall without leaving a broken launcher
Preserve unrelated launch options and configuration. Uninstalling the loader does not prove that effects from every previously installed dependent mod have been reversed in a save.
- Close the game. Disable dependent Java mods in the test setup. If your installer offers Uninstall ZombieBuddy, use it and inspect its change preview.
- For manual removal, undo the ZombieBuddy agent argument in Steam. If you also patched ProjectZomboid64.json or ProjectZomboid64.bat, restore those specific edits from your recorded configuration before removing the files they load.
- Remove ZombieBuddy.jar and any ZombieBuddy.jar.new from the game directory. On Windows also remove zbNative.dll. Unsubscribe/remove the mod package if you no longer need it.
- Keep the .zombie_buddy config folder unless you intentionally want to discard approval decisions and caches. Removing that optional folder is not required just to stop the agent.
- Launch through each method you changed and confirm that the ordinary game reaches its menu without a loader-file error. Check a separate baseline world before reopening the save you care about.
Source: ZombieBuddy · uninstall guide · Current author removal instructions
Do you need a separate Java or Gradle installation?
Do not replace the game’s bundled runtime merely to reconcile a README line. The reviewed development README mentions Java 25, while the v2.3.4 README mentions Java 17; the end-user installation instructions focus on the game installation and agent files. Gradle is listed for building Java mods.
For a runtime error, identify the actual game patch, launcher and release first, then follow the author’s matching instructions. Compiling the framework from the development branch is outside this end-user setup guide.
Source: ZombieBuddy v2.3.4 · README · Versioned author documentation
Choose the next branch
Sources & verification
File placement and launch syntax are taken from the author documentation. Backup, staged testing and recovery checks are editorial recommendations. Follow the documentation for the release and launch method you actually use; development documentation can change independently of released binaries.
- ZombieBuddy · GitHub READMERead 8 October 2026. zed-0xff/ZombieBuddy is the author repository for the Java-agent framework. Development README says Build 42+ and Java 25; the v2.3.4 README instead mentions Java 17. Neither is treated as a universal instruction to replace the game runtime.
- ZombieBuddy · author Workshop instructionsRead 8 October 2026. Workshop 3619862853, mod ID ZombieBuddy. Author lists B41 and B42.12–B42.21; documents separate installation, platform paths, launch modes and approval controls. This compatibility claim is narrower than a promise about every dependent mod.
- ZombieBuddy v2.3.4 · releaseRead 8 October 2026. Release dated 3 October 2026, commit 9a08a54; notes a backport of fix #56. This identifies a released fix, not a tested Viewpoint/game/operating-system matrix.
- ZombieBuddy v2.3.4 · installation guideRead 8 October 2026 at release tag v2.3.4. Covers installer/manual setup, files, platform launch arguments, mandatory trailing separator and the loading indicator. Compare the installer UI with the release actually downloaded.
- ZombieBuddy v2.3.4 · agent parametersRead 8 October 2026. Reference for platform syntax, approval policy and verbosity. This guide uses only normal launch examples and diagnostic verbosity=1; no approval bypass is prescribed.
- ZombieBuddy v2.3.4 · mod signingRead 8 October 2026. Signatures check identity and file integrity, not safety or code review. Discusses matching JAR/signature files and trusted-author behavior.
- ZombieBuddy #56 · Build 42.21 loading fixRead 8 October 2026. Explains the Build 42.21 loadMods ArrayList-to-List mismatch. Contributor reported matching/weaving checks, explicitly not an in-game 42.21 boot; author closed it with a fix on 3 October.
- ZombieBuddy · uninstall guideRead 8 October 2026. Documents installer removal, agent arguments, copied loader files and optional config cleanup. The editorial steps also account for launcher JSON/BAT edits documented in the installation guide.
- ZombieBuddy v2.3.4 · READMERead 8 October 2026. Release-tag README lists Build 42+, Java 17 and Gradle for mod development. The Java line differs from the development README reviewed on the same day; the end-user guide does not prescribe replacing the game runtime.