Régler Sandbox.lua Project Zomboid : zombies, loot, sprint, jour-nuit, electricity/water shutoff
Le fichier servertest_SandboxVars.lua contient tous les paramètres de gameplay de votre serveur Project Zomboid : population de zombies, vitesse, loot, durée des saisons, shutoff électricité et eau, sprint, et bien plus. Ce guide détaille les paramètres clés vérifiés contre la documentation PZwiki, les guides ZAP-Hosting et 4Netplayers.
Pour un serveur Project Zomboid chez HebergTonServ,
SandboxVars.luas’édite directement depuis le File Manager du panel.
⚠️ Important : la plupart des changements de Sandbox n’affectent que les nouvelles cellules (chunks non encore générés). Les zones déjà explorées gardent les réglages d’origine.
Localisation du fichier
| OS | Chemin |
|---|---|
| Windows | C:\Users\<User>\Zomboid\Server\servertest_SandboxVars.lua |
| Linux | ~/Zomboid/Server/servertest_SandboxVars.lua |
Le fichier est généré au premier démarrage du serveur. Si vous avez nommé votre serveur MonServeur (-servername MonServeur), le fichier devient MonServeur_SandboxVars.lua.
Structure du fichier
SandboxVars.lua est un fichier Lua classique :
SandboxVars = {
Zombies = 3,
Distribution = 1,
DayLength = 3,
-- ...
ZombieConfig = {
PopulationMultiplier = 1.0,
PopulationStartMultiplier = 1.0,
-- ...
},
}Respectez la syntaxe Lua : virgule à la fin de chaque ligne, accolades fermées, pas de point-virgule. Une faute de frappe = serveur ne charge pas.
⚙️ Paramètres principaux — meta gameplay
| Paramètre | Valeurs | Défaut | Description |
|---|---|---|---|
Zombies | 1-4 | 3 | Densité globale (1=Insane, 2=High, 3=Normal, 4=Low) |
Distribution | 1-2 | 1 | 1=Urban Focused, 2=Uniform |
DayLength | 1-9 | 3 | Durée du jour (1=15min, 2=30min, 3=1h, 4=2h, 5=3h…) |
StartYear | 1-50 | 1 | Année de départ |
StartMonth | 1-12 | 7 | Mois de départ (juillet par défaut) |
StartDay | 1-31 | 9 | Jour de départ |
StartTime | 1-5 | 2 | Heure (1=7AM, 2=9AM, 3=Noon, 4=5PM, 5=9PM) |
WaterShut | 1-7 | 2 | Coupure eau (1=Instantly, 2=0-30 jours, 3=0-2 mois…) |
ElecShut | 1-7 | 2 | Coupure électricité (idem) |
WaterShutModifier | 0-365 | 14 | Jour exact de coupure si valeur custom |
ElecShutModifier | 0-365 | 14 | Idem pour électricité |
LootRespawn | 1-4 | 1 | 1=None, 2=Every Day, 3=Every Week, 4=Every Month |
Lockedhouses | 1-7 | 6 | Maisons verrouillées |
FoodLoot | 1-7 | 4 | Rareté nourriture (1=None, 4=Normal, 7=Abundant) |
WeaponLoot | 1-7 | 4 | Rareté armes |
OtherLoot | 1-7 | 4 | Rareté autres items |
DayLength=3(1h IRL = 24h en jeu) est l’équilibre standard.DayLength=1(15 min) accélère l’apocalypse — utile pour serveurs courts.
WaterShutetElecShut: ces deux variables définissent quand les services tombent. Pour ne jamais couper l’eau/électricité, mettez7(Never).
🧟 ZombieConfig — population détaillée
Section critique pour ajuster la difficulté.
ZombieConfig = {
PopulationMultiplier = 1.0,
PopulationStartMultiplier = 1.0,
PopulationPeakMultiplier = 1.5,
PopulationPeakDay = 28,
RespawnHours = 72.0,
RespawnUnseenHours = 16.0,
RespawnMultiplier = 0.1,
RedistributeHours = 12.0,
FollowSoundDistance = 100,
RallyGroupSize = 20,
RallyTravelDistance = 20,
RallyGroupSeparation = 15,
RallyGroupRadius = 3,
}| Paramètre | Plage | Défaut | Description |
|---|---|---|---|
PopulationMultiplier | 0-4 | 1.0 | Multiplicateur global (sur la difficulté Zombies) |
PopulationStartMultiplier | 0-4 | 1.0 | Multiplicateur au démarrage |
PopulationPeakMultiplier | 0-4 | 1.5 | Multiplicateur au jour de pic |
PopulationPeakDay | 1-365 | 28 | Jour où la population atteint son pic |
RespawnHours | 0-8760 | 72 | Heures avant qu’une cellule respawn ses zombies |
RespawnUnseenHours | 0-8760 | 16 | Heures de “non-vu” requises pour respawn |
RespawnMultiplier | 0-1 | 0.1 | Fraction de la pop morte qui respawn |
RedistributeHours | 0-8760 | 12 | Heures avant redistribution des zombies sur la carte |
Presets ZombieConfig populaires
Apocalypse vanilla (défaut PZ) :
PopulationMultiplier = 1.0
PopulationStartMultiplier = 1.0
PopulationPeakMultiplier = 1.5
PopulationPeakDay = 28Slow Burn (apocalypse progressive) :
PopulationStartMultiplier = 0.3
PopulationPeakMultiplier = 2.5
PopulationPeakDay = 90Hordes everywhere (chaos immédiat) :
PopulationStartMultiplier = 2.0
PopulationPeakMultiplier = 3.0
PopulationPeakDay = 7Chill (PVE détendu) :
PopulationMultiplier = 0.5
PopulationStartMultiplier = 0.5
PopulationPeakMultiplier = 0.75
PopulationPeakDay = 60🏃 Vitesse, force, ouïe et vue des zombies
Sous-section accessible via le panel de difficulté custom :
| Paramètre | Défaut | Description |
|---|---|---|
ZombieSpeed | 2 | 1=Sprinters, 2=Fast Shamblers, 3=Shamblers |
ZombieStrength | 2 | 1=Superhuman, 2=Normal, 3=Weak |
ZombieToughness | 2 | 1=Tough, 2=Normal, 3=Fragile |
ZombieTransmission | 1 | 1=Blood+Saliva, 2=Saliva Only, 3=Everyone Infected, 4=No Transmission |
ZombieMortality | 5 | 1=Instant, 2=0-30 secondes, 3=0-1 min, … 5=2-3 jours, 6=1-2 semaines, 7=Never |
Reanimate | 3 | 1=Instant, 2=0-1 min, 3=0-12h |
ZombieMemory | 2 | 1=Long, 2=Normal, 3=Short, 4=None |
ZombieSight | 2 | 1=Eagle, 2=Normal, 3=Poor |
ZombieHearing | 2 | 1=Pinpoint, 2=Normal, 3=Poor |
ZombieCognition | 3 | 1=Smart, 2=Navigate+Use Doors, 3=Basic |
Combo iconique “28 Days Later” :
ZombieSpeed=1(Sprinters) +ZombieToughness=3(Fragile) +ZombieCognition=3(Basic).
👤 Joueur — survie et XP
| Paramètre | Plage | Défaut | Description |
|---|---|---|---|
XpMultiplier | 0-32 | 1.0 | Multiplicateur global XP |
OrganizedStories | 1-3 | 2 | Histoires (1=Random, 2=Mixed, 3=Reduced) |
Nutrition | true/false | true | Système de nutrition activé |
FoodRotSpeed | 1-3 | 2 | Pourrissement (1=Slow, 2=Normal, 3=Fast) |
FridgeFactor | 1-3 | 2 | Effet du frigo (1=Low, 2=Normal, 3=High) |
LootRespawn | 1-4 | 1 | Respawn loot (1=None, 2=Daily, 3=Weekly, 4=Monthly) |
SeenHoursPreventLootRespawn | 0-8760 | 0 | Heures de non-visite avant respawn loot |
TimeSinceApo | 1-12 | 1 | Mois depuis l’apocalypse (impacte loot rareté) |
PlaneCrashFreq | 0-30 | 0 | Fréquence des crashs d’avion (jours) |
MaxFogIntensity | 0-1 | 1 | Intensité max du brouillard |
🚗 Véhicules
| Paramètre | Plage | Défaut | Description |
|---|---|---|---|
CarSpawnRate | 1-5 | 3 | Quantité de véhicules dans le monde |
ChanceHasGas | 1-6 | 3 | Probabilité d’avoir de l’essence |
InitialGas | 1-6 | 3 | Quantité d’essence initiale |
FuelStationGas | 1-6 | 4 | Essence aux stations |
LowGasFuelStations | 1-3 | 2 | Stations avec peu de carburant |
CarGeneralCondition | 1-5 | 3 | État général des voitures |
CarDamageOnImpact | 1-5 | 3 | Dégâts impact |
DamageToPlayerFromHitByACar | 1-4 | 2 | Dégâts piéton percuté |
TrafficJam | true/false | true | Embouteillages générés |
🔌 Couper l’électricité et l’eau
Cas pratique très demandé : ne jamais couper services pour serveur RP long.
WaterShut = 7, -- Never
ElecShut = 7, -- NeverOu les couper immédiatement au start :
WaterShut = 1, -- Instantly
ElecShut = 1, -- InstantlyOu date custom (jour 60) :
WaterShut = 7,
WaterShutModifier = 60,
ElecShut = 7,
ElecShutModifier = 60,🎮 Map et spawn
SandboxVars.lua ne contient pas la map ni les spawn regions — c’est dans servertest.ini (Map=) et servertest_spawnregions.lua.
Pour les régions custom, voir : Multi-map sur serveur Project Zomboid (à venir).
Workflow modification
- Arrêtez le serveur (
/quitpuis attendre) - Backup
servertest_SandboxVars.lua→.bak - Éditez avec un éditeur respectant Lua (VSCode + extension Lua, ou nano)
- Sauvegardez
- Démarrez le serveur
- Vérifiez
server-console.txt— toute erreur Lua y apparaît au load
Test de votre fichier
Pour valider la syntaxe Lua sans démarrer le serveur, utilisez luac :
luac -p servertest_SandboxVars.luaPas de sortie = OK. Erreur = ligne et message.
FAQ
Mes changements de population zombie n’apparaissent pas
Les modifs Population* n’affectent que les cellules non encore générées. Si vous avez exploré toute la map de Muldraugh, les changements ne s’appliqueront qu’aux nouvelles zones (Riverside non visité par exemple).
Comment forcer le respawn dans une cellule déjà visitée ?
RespawnHours + RespawnMultiplier régissent ça. Pour un respawn agressif :
RespawnHours = 24.0
RespawnUnseenHours = 6.0
RespawnMultiplier = 0.5Mais les nouveaux zombies sont quand même soumis aux paramètres d’origine de la cellule.
Différence Zombies = 1 vs PopulationMultiplier = 4 ?
Zombies est un preset rapide (1-4) qui multiplie tout. PopulationMultiplier est un scalar fin qui s’applique par-dessus. Combiner les deux = chaos.
Mes mods ajoutent leurs propres SandboxVars
Oui — les mods Build 42 peuvent ajouter leurs propres sections (ex: BetterSorting, ORGM). Elles s’ajoutent à la fin de SandboxVars = { ... }. Ne supprimez pas ces blocs sans vérifier la doc du mod.
Comment récupérer les valeurs Sandbox d’une partie solo ?
Lancez la partie solo, fermez-la. Le fichier Zomboid/Saves/<MapName>/sandbox.lua contient les valeurs utilisées. Copiez-le sur le serveur et renommez-le en servertest_SandboxVars.lua.
Le serveur crash après modif Sandbox
99% des cas = erreur de syntaxe Lua (virgule oubliée, accolade non fermée). Restaurez le .bak et corrigez. Utilisez luac -p pour valider.
Conclusion
SandboxVars.lua contrôle toute l’expérience gameplay de votre serveur Project Zomboid : du chaos zombie sprinters à la balade PVE chill, du loot rare au stuff abondant. Combinez avec servertest.ini pour la couche réseau et un mot de passe RCON solide pour un serveur stable.
Pour un hébergeur Project Zomboid avec File Manager intégré et 16 Go de RAM dimensionnée pour 32 joueurs Build 42, HebergTonServ est la référence française dès 25,90€/mois.



