How to Install Mods on a Palworld Server (UE4SS)
To install mods on a Palworld dedicated server with UE4SS, put the current Palworld UE4SS build in the server’s Win64 folder, drop each mod into ue4ss/Mods, then check that UE4SS.log appears after a restart. This is where the files go, why old builds crash, and how to tell the mods actually loaded.
UE4SS is not officially supported on Linux. If your rented server has no Win64 folder, stop there and switch to Windows first.
Use the Palworld fork or a manual 3.0.1 or newer build with MemberVariableLayout.ini. Old builds and the 14 February 2024 release cause avoidable crashes.
Lua mods belong in ue4ss/Mods. A leftover Win64/Mods folder is a common reason for silent failure.
A visible folder tree only proves that uploads finished. A fresh UE4SS.log proves the loader actually ran when the server started.
What UE4SS does on a Palworld dedicated server
UE4SS is the Unreal Engine 4/5 Scripting System. For Palworld, it acts as the modding API that lets more advanced mods run, especially Lua or script-based mods that list UE4SS as a required dependency. If a mod page says it needs UE4SS, the server process must be able to load UE4SS before that mod can do anything.
This matters because the dedicated server is its own program. A player subscribing to a Workshop mod on their PC does not install that dependency on the server. In Steam, the player side is simpler: Library → Palworld → Workshop to subscribe, then in game Options → Mod Management and turn Enable Mod on. That only covers the client side. If the mod also needs to run on the server, the dedicated server still needs the UE4SS files in its own Win64 install.
The reason people get stuck here is that Palworld can look as if a mod is “installed” in more than one place at once. A player can have a subscribed client mod, but the server can still be missing the loader entirely. In that case the client has content, the server has no idea what to do with it, and the result is usually silence rather than a helpful error.
Check that your server can run UE4SS at all
Before touching files, confirm that the server is a Windows install with a real Win64 folder. UE4SS is not officially supported on Linux. A Linux dedicated server needs Wine or Proton to run the server under Windows for UE4SS to work, and even then some mods are marked as incompatible with Proton or Wine. If your host’s file list shows only Linux folders and no Win64, the server is on the wrong platform for a straightforward UE4SS install.
That one folder check tells you a lot. UE4SS works by placing a loader DLL beside the Palworld shipping executable, so if there is no Windows executable folder, there is nowhere for that loader to hook into startup. No amount of re-uploading mods fixes that.
- Windows: good starting point, because the server has the expected
Win64layout. - Linux with no
Win64: not a working UE4SS target unless the host can switch the server to Windows or run it under Wine/Proton. - Consoles: not supported for this method. As the Palworld modding docs put it: “This is meant for the PC version. You can’t do modding on consoles!”
Also check how you will upload files. Use FTP if your host offers it. A browser file manager can corrupt uploads into 0KB files, which is especially nasty here because the file name looks right while the file itself is empty. UE4SS then fails in confusing ways: the folder exists, the DLL name exists, but there is no code in the file for the server to load.
Some providers also block or interfere with mod loaders. If the provider does not support mods properly, you can end up chasing folder problems that are really platform or panel limits.
Download the right UE4SS build for Palworld
The safest choice is the Palworld-specific fork named like UE4SS-Palworld-xxxxxxxxx.zip. The important check is simple: the zip should contain a ue4ss folder and a dwmapi.dll file. That fork already includes the memory layout file Palworld needs.
If you are using the manual route, the supported alternative is an official build named like UE4SS_v3.0.1-xxx-xxxxxxxx.zip, then a separate MemberVariableLayout download. After installation, MemberVariableLayout.ini must sit inside the ue4ss folder. Do not use the build released on 14 February 2024, and do not use anything before 3.0.1.
The reason old or generic builds break is not cosmetic. Palworld patch 0.4.15 changed engine memory layout around UEnum. A default or outdated UE4SS build can then read the wrong offsets when a mod touches those engine objects. That is why some servers seem fine until one specific mod starts using a menu option, data table, or other enum-driven feature, and then the server crashes. MemberVariableLayout.ini tells UE4SS where Palworld’s engine data actually lives after that patch.
- Use the Palworld fork if possible.
- If you use the manual zip, add
MemberVariableLayout.iniinsideue4ss. - Do not use
UE4SS Signatures. IfUE4SS_Signaturesexists inWin64orWinGDK, delete it. - Avoid Vortex and the CurseForge Client for Palworld. They currently install UE4SS and its mods incorrectly.
Install the loader in the server’s Win64 folder
On a rented server, search the file manager or your FTP client for Win64. Host layouts differ, so do not assume the top-level folders will look exactly like a local Steam install. On a self-hosted server, look in the PalServer folder from SteamCMD or the Palworld Dedicated Server tool in Steam. The layout matches the client install idea: you are still targeting the server’s Pal/Binaries/Win64 folder, just inside the server install instead of the game client install. If you are still setting up the base server, our guide to hosting a Palworld 1.0 dedicated server covers that part first.
Upload dwmapi.dll and the entire ue4ss folder into that Win64 folder. If you used the manual official zip, also make sure MemberVariableLayout.ini is inside the ue4ss folder after upload. Some hosts offer an automatic UE4SS installer, but an outdated auto-installer is more trouble than help. If your panel lets you turn it off, do that and use the current Palworld fork yourself.
The placement matters because dwmapi.dll is the loader entry point. It sits next to the shipping executable so the Palworld server process sees it at startup, then that loader pulls in UE4SS.dll from the ue4ss folder. Put it one folder too high or too low and nothing happens. That is why a missing log file later usually means the injector never ran at all, not that a mod failed.
dwmapi.dll here, beside the Palworld shipping executable. This is the loader entry point.UE4SS.dll and the UE4SS-settings file live inside Win64/ue4ss. Add MemberVariableLayout.ini if you used the manual zip.enabled.txt and Scripts/main.lua. Leave the default BPModLoaderMod and BPML_GenericFunctions folders alone.| Item | Correct location | What goes wrong if it is elsewhere |
|---|---|---|
dwmapi.dll |
Inside the server’s Win64 folder, beside the Palworld shipping executable |
UE4SS never hooks into startup, so no UE4SS.log appears |
ue4ss folder |
Inside the same Win64 folder |
The loader cannot find its own files and the server starts without UE4SS |
UE4SS.dll |
Inside Win64/ue4ss |
The loader starts but has nothing to load next |
UE4SS-Settings |
Inside Win64/ue4ss |
UE4SS is incomplete and should be reinstalled cleanly |
MemberVariableLayout.ini |
Inside Win64/ue4ss if you used the manual official zip |
Mods that touch changed engine layouts can crash after Palworld patch 0.4.15 |
| Mod folders | Inside Win64/ue4ss/Mods |
UE4SS does not scan the wrong folder, so mods silently do nothing |
Win64/
├─ dwmapi.dll
└─ ue4ss/
├─ UE4SS.dll
├─ UE4SS-settings
├─ MemberVariableLayout.ini
└─ Mods/
├─ BPModLoaderMod/
├─ BPML_GenericFunctions/
└─ ExampleMod/
├─ enabled.txt
└─ Scripts/
└─ main.lua
Change the UE4SS settings that matter on a live server
Inside the ue4ss folder, open the UE4SS-settings file and make the small changes that suit a live dedicated server. These are not cosmetic toggles. They cut out developer-only behaviour that can hurt performance on a server that is meant to sit quietly in the background and process mod logic.
bUseUObjectArrayCache = false GuiConsoleEnabled = 0 GuiConsoleVisible = 0
If bUseUObjectArrayCache is set to true, change it to false. The Palworld modding docs note that true causes lag and stutters and is only useful for developers using LiveView. For an admin, the trade-off is easy: keep it off unless you are actively developing or debugging with that tool.
Set GuiConsoleEnabled and GuiConsoleVisible to 0 if you are only running mods. The GUI console is for mod developers and severely impacts performance. There is no player-facing benefit to leaving it on in a dedicated server environment, so disabling it removes pointless overhead.
Once the loader side is stable, keep your game rules and rates separate from your mod loader settings. For the Palworld side of server tuning, use our Palworld server settings guide rather than trying to force gameplay changes through UE4SS.
Install Lua mods in ue4ss/Mods, not anywhere else
A working Lua mod normally arrives as its own folder under Mods. Inside that folder, you should expect at least enabled.txt and a Scripts folder containing main.lua as the entry point. Put the whole unzipped mod folder inside ue4ss/Mods. Do not dump its loose files directly into Win64, and do not create a separate Mods folder next to Win64.
This is the folder mistake that wastes the most time because it often fails silently. UE4SS looks in its expected mod directory. If you put a mod in Win64/Mods instead, the server can still boot normally because nothing is technically broken; the loader simply never sees that folder. To you it looks installed. To UE4SS it does not exist.
- Leave the default
BPModLoaderModandBPML_GenericFunctionsfolders in place. They are part of UE4SS’s normal operation. - Do not replace or wipe
mods.txtormods.json. Those files are required by UE4SS. - If a mod author or host panel tells you to add a line such as
RemoteFastTravel: 1tomods.txt, add the line without deleting the default entries already there. - If you find a leftover
Win64/ModsorWinGDK/Modsfolder from an older setup, move any actual mod folders from it intoue4ss/Mods. If asked to replace something, chooseNO. Then delete the leftover oldModsfolder.
Always read the mod’s own instructions and check that it matches the current Palworld version. A mod that worked in single-player last patch can still fail on a dedicated server after an update, even when the folder layout is correct.
Know which side needs the mod: server, client, or both
Palworld mods generally fall into three groups:
- Server-side: installed by the server owner and affects everyone who joins.
- Server and client: installed in both places because both the server and each player’s game must understand the same modded content or behaviour.
- Client-side: each player installs them locally; they do not belong on the server.
A dedicated server admin gets into trouble when they assume “Workshop subscribed” means “server ready”. It does not. If the mod is marked for both sides, players also need the matching client install and must turn Options → Mod Management → Enable Mod on so the game actually loads it. In Steam Workshop, they should use Subscribe or Subscribe to All if the item lists required dependencies such as UE4SS.
| Mod type | On the server | On each player’s PC |
|---|---|---|
| Server-side only | Yes | No |
| Server and client | Yes | Yes |
| Client-side only | No | Yes |
Back up the world save before adding or removing mods. That is not just a safety habit. Mods can change what the save expects to exist, so removing one later can leave broken references or missing behaviour. Install one mod at a time, restart, and test before adding the next. When several mods go in together, you lose the clean cause-and-effect that makes troubleshooting quick.
You can also use .pak mods alongside UE4SS mods, but keep their instructions separate. A single-player mod is not automatically safe on a dedicated server, because server authority, persistence, and client expectations are different.
Confirm that UE4SS and the mod actually loaded
After launching or restarting the dedicated server, go into the ue4ss folder and look for UE4SS.log. On systems that hide file extensions, it may appear as a file named UE4SS. If that file is missing, UE4SS is not correctly installed. That is the first hard check because the log is created only after the loader starts.
Then confirm the basic file chain is intact: dwmapi.dll inside Win64, UE4SS.dll inside the ue4ss folder, and the UE4SS-Settings file inside that same folder. If any of those are missing, redo the installation cleanly instead of tinkering around the edges.
A present log proves that the injector ran. It does not prove every mod works. For that, confirm each mod folder is under ue4ss/Mods and contains what the author documented, then do a practical server check: join the server, use storage, open Palboxes, place and remove building pieces, assign Pals, and do a clean restart. Those actions touch common server-side systems and saved state, so they expose half-working mods better than simply seeing the server online.
If UE4SS.log exists but one specific mod does nothing, the next suspects are an outdated mod, the wrong folder structure, or a missing client-side install for a mod that needs both sides.
Troubleshooting: no load, silent mods, or crashes
Most UE4SS problems reduce to a short chain: the loader never started, the loader started but cannot read its files, or the loader started and a mod is outdated or in the wrong place. Work from the loader outward. Do not start by swapping random mod files until you have confirmed that the UE4SS base install is sound.
| Symptom | Likely cause | First fix |
|---|---|---|
No UE4SS.log after restart |
dwmapi.dll or the ue4ss folder is missing, uploaded to the wrong folder, or corrupted as 0KB |
Re-upload with FTP into the server’s real Win64 folder and confirm the files are not 0KB |
| Server crashes soon after installing UE4SS | Old UE4SS build, missing MemberVariableLayout.ini, or leftover xinput1_3.dll from an older install |
Delete xinput1_3.dll if present, use the current Palworld fork or 3.0.1 or newer, and confirm MemberVariableLayout.ini is in ue4ss |
| UE4SS loads but the mod does nothing | Mod placed in Win64/Mods instead of ue4ss/Mods, missing enabled.txt, or the mod is outdated |
Move the mod folder into ue4ss/Mods, verify its structure, then retest |
| Files are present but tiny or empty | Web file-manager upload corruption | Delete the bad uploads and re-upload with FTP, then check that nothing shows as 0KB |
No Win64 folder anywhere |
The server is running on Linux | Switch the server to Windows or move to a Windows-capable host |
| Everything worked before a Palworld update | The mod, or less often UE4SS itself, is now outdated | Update the Palworld fork if a newer build exists, then update or temporarily remove the mod |
What each common fix is actually doing
- Re-uploading with FTP: replaces name-only or corrupt files with real binaries the server can read from disk.
- Deleting
xinput1_3.dll: removes a leftover hook from an older UE4SS install that can clash with the current loading method. - Adding
MemberVariableLayout.ini: gives UE4SS the Palworld-specific engine layout it needs after patch0.4.15, especially when mods touchUEnum. - Moving mods into
ue4ss/Mods: puts the mod where the current UE4SS build actually scans for Lua mod folders. - Removing mods one by one: isolates the exact mod that crashes or fails after the loader itself has been confirmed working.
If you have added several mods and the server now crashes, remove the added mods one by one until it stops. If the problem is wider than UE4SS itself, our Palworld crash and connection-error troubleshooting guide covers the broader server checks separately.
Choose a host that makes UE4SS straightforward
If you are still deciding where to rent, judge the host on admin access rather than marketing around “mod support”. For UE4SS, the useful signs are simple: a Windows Palworld server option, direct file access to the real server folders, FTP support, and no forced automatic UE4SS installer that pins you to an old build.
A host that only exposes a restricted web uploader, hides the file structure, or keeps reinstalling an outdated UE4SS package turns every Palworld update into extra work. A host that lets you reach Win64 cleanly makes this job routine: upload the current fork, drop mods in ue4ss/Mods, restart, and verify the log. If you are comparing providers, our Palworld server hosting comparison is the right place to check for the admin basics that matter here.
UE4SS is straightforward on a Windows Palworld server when you can reach Win64, upload by FTP, and disable any stale auto-installer. If your current panel blocks that, moving to a host with cleaner access is often faster than forcing a Linux or panel-limited setup.
Palworld server FAQ
How do I install UE4SS on a Palworld dedicated server?
Find the server’s Win64 folder, then upload the ue4ss folder and dwmapi.dll from the current Palworld UE4SS build into it. If you used the manual official zip instead of the Palworld fork, also place MemberVariableLayout.ini inside ue4ss. Restart the server and check for UE4SS.log.
Why are my Palworld server mods not loading?
The usual causes are the wrong platform, the wrong folder, or the wrong UE4SS build. A Linux server with no Win64 folder will not load UE4SS normally, and mods in Win64/Mods instead of ue4ss/Mods are simply ignored. If UE4SS.log exists, focus next on the mod structure, enabled.txt, and whether the mod is outdated for the current Palworld patch.
Do players also need to install Palworld mods?
Some do, some do not. Server-side mods only need the server install, but mods marked for both server and client must be installed in both places. On the player side, they may also need to subscribe in Workshop and turn Options → Mod Management → Enable Mod on so the client actually loads the mod.
Can I run Palworld server mods on Linux?
UE4SS is not officially supported on Linux. A Linux server would need Wine or Proton to run the server under Windows for UE4SS to work, and even then some mods are marked as incompatible with Proton or Wine. If your host cannot give you a Windows Palworld server with a real Win64 folder, UE4SS is the wrong fit for that setup.
How do I know UE4SS actually started on my Palworld server?
Look inside the ue4ss folder for UE4SS.log after starting the server. If the log is missing, the loader did not start, so check dwmapi.dll in Win64, UE4SS.dll in ue4ss, and the UE4SS-Settings file in ue4ss. Then do a practical server test with the mod’s actual feature, not just a folder check.
More Palworld server help
Set up the server itself, tune its settings, or compare hosts that give you real file access for UE4SS.
Folder names, UE4SS settings and the Win64 layout reflect Palworld and the Palworld UE4SS fork as of November 2026. Host panels label file managers differently, so follow the host’s current folder names where they differ; the same checks still apply: Windows, a real Win64 folder, the current UE4SS build, mods in ue4ss/Mods, and a fresh UE4SS.log.
