Project Zomboid Intermédiaire 10 min de lecture

Respawn du loot sur un serveur Project Zomboid (Build 42)

HoursForLootRespawn, MaxItemsForLootRespawn, rareté du loot et nettoyage des objets au sol : régler le loot d'un serveur Project Zomboid qui dure.

Respawn du loot sur un serveur Project Zomboid (Build 42)

Respawn du loot sur un serveur Project Zomboid (Build 42)

Un serveur Project Zomboid communautaire finit toujours par buter sur le même problème : au bout de quelques semaines, les villes proches du point d’apparition sont vidées, et les nouveaux joueurs n’y trouvent plus rien. Par défaut, le loot ne réapparaît jamais. Build 42 donne pourtant tous les leviers pour régler ça : respawn des conteneurs, rareté par catégorie, pillage progressif du monde et nettoyage des objets au sol.

Sur un serveur Project Zomboid chez HebergTonServ, les deux fichiers concernés s’éditent depuis le gestionnaire de fichiers du panel, sans passer par un client SFTP.


Les deux fichiers concernés

FichierCe qu’il règle ici
servertest_SandboxVars.luaRespawn, rareté, pillage progressif, nettoyage des objets au sol
servertest.iniProtection des safehouses, limite d’objets par conteneur

Tous deux se trouvent dans Zomboid/Server/. Toutes les valeurs ci-dessous sont celles de Build 42.20.


Étape 1 — Activer le respawn du loot

HoursForLootRespawn = 0,
MaxItemsForLootRespawn = 5,
ConstructionPreventsLootRespawn = true,
SeenHoursPreventLootRespawn = 0,
CléDéfautRôle
HoursForLootRespawn0Au-delà de 0, tous les conteneurs des villes et des parcs de mobile-homes régénèrent leur loot toutes les X heures de jeu. 0 = jamais
MaxItemsForLootRespawn5Un conteneur qui contient au moins ce nombre d’objets ne se régénère pas
ConstructionPreventsLootRespawntruePas de respawn dans un bâtiment que des joueurs ont barricadé ou dans lequel ils ont construit
SeenHoursPreventLootRespawn0Au-delà de 0, pas de respawn dans une zone visitée au cours des X dernières heures de jeu

Trois règles de fonctionnement tirées de la documentation :

  1. Un conteneur doit avoir été pillé au moins une fois pour régénérer du loot. Un placard jamais ouvert garde son contenu d’origine.
  2. Le respawn concerne les villes et les parcs de mobile-homes, pas les zones rurales isolées.
  3. HoursForLootRespawn seul n’est pas influencé par la visibilité : c’est SeenHoursPreventLootRespawn qui ajoute cette condition.

Pourquoi MaxItemsForLootRespawn protège les bases

Un joueur qui stocke 40 objets dans une armoire de la maison qu’il occupe ne verra pas le jeu y rajouter du loot : la limite de 5 est dépassée. Ce réglage évite qu’un entrepôt de joueur se remplisse tout seul. Ne le montez pas trop haut : au-delà d’une dizaine, les stocks des joueurs commencent à se régénérer.

La protection des safehouses

SafehousePreventsLootRespawn=true

Dans servertest.ini, activé par défaut : aucun respawn dans un bâtiment revendiqué comme safehouse. Combiné à ConstructionPreventsLootRespawn, il garantit qu’une base de joueurs ne devient jamais une source de loot infini. Réglages des safehouses : Safehouses et factions.


Étape 2 — Choisir une fréquence de respawn

Les heures sont des heures de jeu. Avec DayLength = 4 (défaut : une journée de jeu = 1 h 30 réelle), 168 heures représentent une semaine de jeu, environ 10 h 30 de temps réel de serveur actif.

Profil de serveurHoursForLootRespawnSeenHoursPreventLootRespawn
Survie classique, monde qui s’épuise00
Communautaire, arrivées régulières720 (30 jours de jeu)48
Serveur RP longue durée336 (14 jours de jeu)24
Serveur PvP à rotation rapide168 (7 jours de jeu)12

SeenHoursPreventLootRespawn évite l’effet « farm » : sans lui, un joueur qui campe devant une supérette voit les rayons se remplir sous ses yeux à chaque cycle. Avec 48, le magasin doit être délaissé deux jours de jeu avant de se régénérer.

Attention à PauseEmpty : avec PauseEmpty=true (défaut de servertest.ini), le temps de jeu s’arrête quand personne n’est connecté. Le compteur de respawn s’arrête avec lui.


Étape 3 — Doser la rareté par catégorie

Build 42 remplace les anciennes échelles de 1 à 7 par des multiplicateurs de 0 à 4 par catégorie :

CléCatégorieDéfaut
FoodLootNewNourriture périssable0.8
CannedFoodLootNewConserves, nourriture sèche, boissons0.6
WeaponLootNewArmes hors outils0.6
RangedWeaponLootNewArmes à feu et accessoires1.2
AmmoLootNewMunitions, boîtes, chargeurs0.6
MedicalLootNewMédicaments, bandages0.6
SkillBookLootLivres de compétence0.6
RecipeResourceLootObjets qui enseignent des recettes0.6
MechanicsLootNewPièces de véhicules et outils associés0.6
ToolLootNewOutils0.6
MaterialLootNewMatériaux de craft et de construction0.6
FarmingLootNewGraines, truelles, pelles0.6
KeyLootNewClés et serrures0.4
OtherLootNewTout le reste, y compris la cueillette en ville0.8

Les autres catégories (LiteratureLootNew, SurvivalGearsLootNew, ClothingLootNew, ContainerLootNew, MediaLootNew, MementoLootNew, CookwareLootNew) sont à 0.6.

Retirer complètement un objet

LootItemRemovalList = "Base.Pistol, Base.Shotgun",
RemoveStoryLoot = false,
RemoveZombieLoot = false,

LootItemRemovalList empêche des types d’objets d’apparaître comme loot ordinaire. Pour les retirer aussi des mises en scène du monde (RemoveStoryLoot) et des zombies qui les portent (RemoveZombieLoot), passez ces deux options à true. Utile pour un serveur sans armes à feu, par exemple.

Deux réglages à ne pas toucher

CléDéfautPourquoi la laisser
RollsMultiplier1.0Nombre de tirages sur les tables de loot. La documentation recommande explicitement de ne pas la modifier : impact sur les performances
InsaneLootFactor … AbundantLootFactor0.05 … 3.0Définissent ce que valent les niveaux de rareté eux-mêmes. Réglez les catégories, pas l’échelle

ZombiePopLootEffect (0 à 20, défaut 0) augmente le loot en fonction du nombre de zombies à proximité : une bonne façon de récompenser les zones dangereuses.


Étape 4 — Le pillage progressif du monde

Même sans joueurs, Build 42 simule des survivants qui ont pillé avant vous.

CléPlageDéfautRôle
MaximumLooted0 → 20025Chance qu’un bâtiment soit déjà pillé à la découverte
DaysUntilMaximumLooted0 → 365090Jours pour atteindre cette chance maximale
RuralLooted0 → 20.5Facteur appliqué aux bâtiments ruraux
MaximumDiminishedLoot0 → 10020Part du loot qui n’apparaît plus une fois le délai atteint
DaysUntilMaximumDiminishedLoot0 → 36503650Délai pour atteindre cette réduction
MaximumLootedBuildingRooms0 → 20050Au-delà de ce nombre de pièces, un bâtiment n’est jamais pré-pillé

Sur un serveur qui dure, ces valeurs se combinent avec le passage des joueurs : au 90ᵉ jour, un bâtiment sur quatre est déjà vide avant même qu’un joueur y entre. Pour un serveur qui veut rester généreux sur la durée, abaissez MaximumLooted à 10.


Étape 5 — Nettoyer les objets au sol

Les objets abandonnés au sol s’accumulent, alourdissent les sauvegardes et le chargement des zones.

WorldItemRemovalList = "Base.Hat, Base.Glasses, Base.Maggots, Base.Slug, Base.Slug2, Base.Snail, Base.Worm, Base.Dung_Mouse, Base.Dung_Rat",
HoursForWorldItemRemoval = 24.0,
ItemRemovalListBlacklistToggle = false,
DaysForRottenFoodRemoval = -1,
CléDéfautRôle
WorldItemRemovalListchapeaux, lunettes, asticots, limaces, vers, excrémentsTypes d’objets supprimés du sol
HoursForWorldItemRemoval24.0Heures au sol avant suppression. 0 = jamais
ItemRemovalListBlacklistTogglefalseSi true, ce sont les objets absents de la liste qui sont supprimés
DaysForRottenFoodRemoval-1Jours avant suppression de la nourriture pourrie. -1 = jamais

La suppression a lieu au prochain chargement de la zone concernée, pas en temps réel.

ItemRemovalListBlacklistToggle = true est dangereux sur un serveur communautaire : tout objet posé au sol et absent de la liste disparaît au bout de HoursForWorldItemRemoval heures, y compris le matériel qu’un joueur a volontairement laissé devant sa base.


Étape 6 — Limiter les objets par conteneur

ItemNumbersLimitPerContainer=0
TrashDeleteAll=false
CléPlageDéfautRôle
ItemNumbersLimitPerContainer0 → 90000Nombre maximal d’objets dans un conteneur. 0 = illimité
TrashDeleteAllbooléenfalseAutorise le bouton « tout supprimer » des poubelles

La limite compte chaque objet individuellement : avec une limite de 50, une caisse ne contient que 50 clous. Réservez-la aux serveurs qui veulent empêcher les réserves démesurées, et annoncez-la avant de l’activer.


Trois configurations prêtes à copier

Serveur communautaire généreux

HoursForLootRespawn = 720,
MaxItemsForLootRespawn = 5,
ConstructionPreventsLootRespawn = true,
SeenHoursPreventLootRespawn = 48,
MaximumLooted = 10,

Survie hardcore, monde qui s’épuise

HoursForLootRespawn = 0,
FoodLootNew = 0.4,
CannedFoodLootNew = 0.3,
AmmoLootNew = 0.3,
MaximumLooted = 50,
DaysUntilMaximumLooted = 60,

Serveur sans armes à feu

RangedWeaponLootNew = 0.0,
AmmoLootNew = 0.0,
RemoveStoryLoot = true,
RemoveZombieLoot = true,

Appliquer les modifications

  1. Arrêtez le serveur (save puis quit dans la console)
  2. Sauvegardez les deux fichiers
  3. Modifiez les valeurs
  4. Redémarrez

Le loot déjà généré ne change pas. Baisser AmmoLootNew ne vide pas les conteneurs que le jeu a déjà remplis. Les nouveaux réglages s’appliquent au loot généré ensuite, et aux conteneurs qui se régénèrent.


FAQ

Le loot réapparaît-il par défaut sur un serveur Project Zomboid ?

Non. HoursForLootRespawn = 0 par défaut : aucun conteneur ne se régénère. Il faut lui donner une valeur en heures de jeu, par exemple 720 pour un respawn tous les 30 jours de jeu.

Pourquoi le loot ne réapparaît-il pas dans certains bâtiments ?

Quatre causes possibles : le conteneur n’a jamais été pillé, il contient au moins MaxItemsForLootRespawn objets, le bâtiment a été barricadé ou construit par un joueur (ConstructionPreventsLootRespawn), ou c’est une safehouse (SafehousePreventsLootRespawn). Le respawn ne concerne par ailleurs que les villes et les parcs de mobile-homes.

Où est passé le réglage LootRespawn ?

Il n’existe plus en Build 42. Le respawn se règle en heures avec HoursForLootRespawn, et la rareté avec les clés *LootNew (multiplicateurs de 0 à 4).

Comment rendre les armes à feu plus rares ?

Baissez RangedWeaponLootNew (défaut 1.2) et AmmoLootNew (défaut 0.6). À 0.0, elles n’apparaissent plus comme loot ordinaire ; ajoutez RemoveStoryLoot = true et RemoveZombieLoot = true pour les retirer aussi des mises en scène et des zombies.

Les objets laissés au sol disparaissent-ils ?

Seulement ceux de WorldItemRemovalList (chapeaux, lunettes, vers, excréments…), après 24 heures de jeu par défaut et au prochain chargement de la zone. Le reste du matériel posé au sol est conservé.

Le respawn du loot fait-il laguer le serveur ?

Pas de façon notable en lui-même. Ce qui pèse, c’est l’accumulation d’objets dans le monde : gardez un nettoyage des objets au sol actif, et ne touchez pas à RollsMultiplier.


Conclusion

Le loot d’un serveur Project Zomboid s’épuise par défaut, et c’est souvent ce qui tue un serveur communautaire au bout d’un mois. HoursForLootRespawn rallume la machine, MaxItemsForLootRespawn et les deux protections de construction et de safehouse l’empêchent de remplir les bases des joueurs, et SeenHoursPreventLootRespawn bloque le farm. Le reste — rareté par catégorie, pillage progressif, nettoyage du sol — sert à doser la difficulté dans la durée.

Pour un hébergeur Project Zomboid avec gestionnaire de fichiers, sauvegardes automatiques et 16 Go de RAM sur Ryzen 9 5950X, HebergTonServ démarre à 25,90 €/mois.

Pour aller plus loin