FAQ
What game build do I need?
The script works on most FiveM servers. We recommend build b3570+ for the easiest setup, but we include a free compatibility pack for older builds.
3570+
Everything works out of the box - no compatibility pack needed.
3258, 3407
All features work, including zombie combat animations. Just start 5s_zombies_compat.
2944, 3095
The script works with the compatibility pack. Zombie combat animations are not available on these builds because they need game files added in build 3258. Zombies will still fight, but they will use default GTA V melee animations like any other ped instead of custom zombie animations.
Below 2944
Not tested. The script may work, but we can't fully guarantee it.
See the Install page for setup steps.
What is the compatibility pack (5s_zombies_compat)?
A free resource included with your purchase. It adds zombie models, animations and props for servers on builds older than b3570. Just add ensure 5s_zombies_compat to your server.cfg and you're done.
What's inside:
Zombie ped models -
G_M_M_Zombie_01,G_M_M_Zombie_02,G_M_M_Zombie_04,G_M_M_Zombie_05,G_F_M_UndeadMage,IG_Gustavo_02,IG_Skeleton_01,IG_Zombie_DJ_01(with textures and_ppristine variants)Animations - zombie combat (core, taunts, variations), movement (core, strafe), spawn sequences (runner, shambler), summoner ritual (female, male)
Ped metadata -
peds.metawith all zombie ped definitionsClip sets -
clip_sets.xmlfor zombie movementProps and objects - zombie staff and 50+ props used by special zombie types
Expressions - facial expressions for zombie peds
Scenarios - behavior trees and scenario definitions
Audio - sound banks and audio config
If you are on build 3570+, you don't need this resource.
Which target systems are supported?
ox_target and qb-target. Set it in the config:
Config.targetResource = "ox_target" -- or "qb-target"How do I add custom zombie types?
Add a new entry in
Config.typeswith a unique name. Only include fields you want to change - omitted fields useConfig.typeDefaults.To make it spawn naturally, add its name to the
spawnChancestable in any zone archetype (Config.zoneArchetypes).You can also add it to danger zone
pedsToSpawnfor guaranteed spawns in specific areas.
Config.types["myCustomZombie"] = {
model = { "your_ped_model" },
health = 300,
armor = 100,
speed = 1.5,
lootTable = "default",
reactToPlayerDistance = 20.0,
}
-- Add it to zone archetypes where you want it to spawn naturally:
Config.zoneArchetypes.urban.spawnChances["myCustomZombie"] = 10
Config.zoneArchetypes.downtown.spawnChances["myCustomZombie"] = 5
See the Config page for all available type fields and the Zombie Types page for built-in types.
How do I configure loot drops?
Loot tables are in Config.lootTables. There are two kinds of tables:
Zone-based tables (
default,military,industrial,downtown,rural) - assigned to zone archetypes viaConfig.zoneArchetypes. Zombies withlootTable = "default"use whichever table their zone archetype specifies.Type-specific tables (
tank,juggernaut,skeleton) - assigned directly to a zombie type. These always drop the same loot regardless of where the zombie died.
Each table has a chance (% chance the zombie drops anything), maxItems (cap on items per drop), and an items list where each item has its own drop chance weight and quantity range.
Config.lootTables["rare"] = {
maxItems = 3,
chance = 40,
items = {
{ item = "medkit", min = 1, max = 1, chance = 30 },
{ item = "ammo-rifle", min = 5, max = 15, chance = 40 },
{ item = "hqm", min = 1, max = 2, chance = 30 },
}
}Then set lootTable = "rare" on the zombie type you want, or assign it to a zone archetype with lootTable = "rare".
Item names must match your inventory system exactly.
Can I spawn zombies from other scripts?
Yes. Use the spawnZombies export:
exports['5s_zombies']:spawnZombies('default', vector3(100.0, 200.0, 30.0), 5)See the Exports page for all exports.
How do safe zones and danger zones work?
Safe zones - zombies don't spawn inside them. Set them up in
Config.zones.safeZones. You can also show blips on the map.Danger zones - areas with special zombie types and their own respawn timers. Set them up in
Config.zones.dangerZones.
You can check if a player is in a zone from other scripts using the isInGreenZone() and isInDangerZone() exports.
How does zombie spawning and networking work?
Zombies are client-side entities with server-side coordination.
The server decides when to spawn zombies, how many, and what type based on the zone, nearby players, and other conditions. It also handles loot drops on death, despawning distant zombies, cleaning up bodies, and safe zone enforcement.
The client creates the zombie ped and runs its AI (chasing, attacking, wandering).
Zombies are fully networked - every player in the area sees the same zombies in the same positions. They are not "ghost" entities only visible to one player.
What is the difference between "instant" and "interact" loot mode?
Set with Config.lootMode:
"instant"- loot goes straight into the player's inventory when a zombie dies."interact"- the player has to interact with the zombie body to pick up loot (uses your target system).
How do I adjust zombie population and density?
Three settings in Config.threadSettings control how many zombies spawn per map sector:
baseZombieCount- zombies spawned when one player is in a sector. This is the solo experience.zombiesPerAdditionalPlayer- how aggressively the count scales when more players group up.maxZombiesCountInSquare- absolute ceiling. The count never exceeds this no matter how many players are present. Most important setting for performance.
Zone archetype multipliers (e.g. military = 1.4, rural = 0.8) and the night time multiplier stack on top of these values.
zombiesPerAdditionalPlayer examples (with baseZombieCount = 8):
Urban zone (multiplier 1.0):
1
8
8
8
2
11
13
16
4
14
17
22
8
16
22
30
Military zone (multiplier 1.4):
1
12
12
12
2
16
19
23
4
19
24
31
8
23
30
40
Last updated