Skip to content

Config Guide

Riqqqque edited this page Aug 3, 2026 · 8 revisions

Config Guide

The config file is:

config/zombieapocalypseaddon-common.toml

Start the server once to generate the file. Stop the server before editing it.

Easiest Setup

You do not need to edit TOML for a normal setup. Run one of these in game:

/za preset casual
/za preset standard
/za preset hardcore
  • casual lowers pressure, delays daytime waves until day 10, disables baby zombies, and lets bright bases stop custom waves.
  • standard restores the recommended core balance.
  • hardcore increases wave pressure, event pressure, and scaling speed.

Presets change spawning, events, and basic scaling. They never enable block breaking, block placing, or towering, and they do not overwrite advanced attribute values.

Check the result with /za status.

What to Edit First

Normal servers should focus on these sections:

  1. [dayspawning]: wave timing, chance, size, cap, distance, daylight grace, and light protection.
  2. [variants]: Husk, Drowned, baby zombie, and Zombie Villager chances.
  3. [horde]: scheduled high-pressure events.
  4. [bloodmoon]: random high-pressure nights.
  5. [scaling]: basic difficulty growth over world days.

Usually leave these alone:

  • [compatibility]
  • [attributes]
  • [attributes.variants]
  • [attributes.contexts]

How Values Work

  • 20 ticks equals one second.
  • Chances use 0.0 through 1.0. For example, 0.25 means 25%.
  • A multiplier of 1.0 means no change, 1.25 means 25% stronger, and 0.8 means 20% weaker.
  • A start day of 0 means the feature can work immediately when enabled.
  • Change one performance-heavy setting at a time and test with the expected player count.

Compatibility Defaults

The [compatibility] section is already configured for the safest mixed-mod behavior. Keep every respect... option and preserveExistingZombieEquipment enabled unless you deliberately want systems to stack.

Most modded zombies work automatically. Only unusual infected mobs that do not extend Minecraft's Zombie class need an exact ID:

additionalZombieEntityTypes = "examplemod:infected,examplemod:walker"

Exclude a boss or friendly zombie from every addon system with:

excludedZombieEntityTypes = "examplemod:zombie_boss,examplemod:friendly_zombie"

Exclusions always win. See Mod Compatibility before changing this section.

Settings New Players Usually Want

Make Daytime Safer At The Start

Use:

daylightSpawnStartDay = 10

This means custom daytime spawning starts on day 10. Night spawning can still happen before then.

Make Torches Protect Bases

Use:

maxBlockLightForSpawning = 7

This makes custom spawns respect block light from torches, lanterns, glowstone, campfires, and similar blocks.

Important: sunlight is ignored on purpose. Daytime apocalypse spawning still works.

Disable Baby Zombies

Use:

babyZombieChance = 0.0

This disables new baby zombie-class spawns from this mod.

Zombie Block Breaking

Block breaking is disabled by default. Leave it off if you do not want zombies damaging player builds.

The important settings are under [blockbreaking]:

enableZombieBlockBreaking = false
zombieBlockBreakingStartDay = 10
zombieBlockBreakingInterval = 100
zombieBlockBreakingChance = 0.2
zombieBlockBreakingRange = 1
zombieBlockBreakingMaxHardness = 3.0
zombieBlockBreakingDropBlocks = false
zombieBlockBreakingRequireTarget = true
zombieBlockBreakingRequireObstacle = true
zombieBlockBreakingRespectMobGriefing = true
zombieBlockBreakingAllowBlockEntities = false
zombieBlockBreakingAllowToolRequiredBlocks = false
zombieBlockBreakingAllowLightBlocks = false

Default 100 ticks means each zombie checks at most once every 5 seconds, then has a 20% chance to try. Containers, machines, light sources, blocks requiring tools, unloaded areas, world-border blocks, and unbreakable blocks remain protected by default.

For the safest setup, keep range at 1, keep drops disabled, and keep all three Allow settings false. Protection mods can cancel the loader block-break event when zombieBlockBreakingRespectMobGriefing is true.

Zombie Block Placing

Block placing is separate from block breaking and is also disabled by default. It only makes one-block steps and fills one-block-deep gaps.

The settings are under [blockplacing]:

enableZombieBlockPlacing = false
zombieBlockPlacingStartDay = 15
zombieBlockPlacingInterval = 100
zombieBlockPlacingChance = 0.15
zombieBlockPlacingBlock = "minecraft:cobblestone"
zombieBlockPlacingMaxPerZombie = 8
zombieBlockPlacingMaxTargetDistance = 32
zombieBlockPlacingRequireTarget = true
zombieBlockPlacingRequireObstacle = true
zombieBlockPlacingRespectMobGriefing = true
zombieBlockPlacingAllowBridges = true
zombieBlockPlacingAllowSteps = true
zombieBlockPlacingReplaceFluids = false
zombieBlockPlacingReplaceReplaceableBlocks = false

Default 100 ticks means each zombie checks at most once every 5 seconds. The 15% chance is checked only after the timing, target, distance, and obstacle rules pass.

The block ID must name a stable, solid, breakable block without a block entity. Good choices include minecraft:cobblestone, minecraft:dirt, and minecraft:oak_planks. Air, sand, gravel, fluids, unbreakable blocks, chests, machines, and non-solid blocks are rejected.

For the safest setup, keep the lifetime limit low, require a target and obstacle, protect fluids and replaceable blocks, and keep zombieBlockPlacingRespectMobGriefing true. The normal loader block-place event is always fired so claim and protection mods can cancel placement.

Zombie Towering

Towering is separate from block placing and block breaking. It is disabled by default and only changes zombie movement.

The settings are under [towering]:

enableZombieTowering = false
zombieToweringStartDay = 20
zombieToweringInterval = 20
zombieToweringChance = 0.45
zombieToweringMaxTargetDistance = 32
zombieToweringMinNearbyZombies = 2
zombieToweringCrowdRadius = 2.25
zombieToweringVerticalBoost = 0.48
zombieToweringForwardBoost = 0.18
zombieToweringMaxHeightAboveTarget = 8
zombieToweringRequireObstacle = true

Default 20 ticks means each zombie checks at most once per second, with checks staggered by entity ID. The chance roll runs before the nearby-entity lookup. A successful boost still requires a valid target, enough nearby zombie-class mobs, block clearance, and either a collision, barrier, raised target, or covered target.

For the safest setup, keep the feature disabled or use a late start day. If enabled, keep the crowd radius small, require at least two nearby zombies, leave the obstacle requirement on, and keep the height limit bounded.

Reduce Lag

Change these first:

daySpawnInterval = 180
zombiesPerSpawn = 1
maxDayZombiesPerPlayer = 30
spawnAttemptsPerZombie = 5
enableDebugLogging = false

Fix An Invalid Spawn Distance

minSpawnDistance must fit inside the square created by spawnRange. For example, range 30 reaches about 42 blocks at its farthest corners. Setting the minimum above 42 pauses custom spawning because no valid point exists.

Run this to see a clear warning and the maximum valid minimum:

/zdayspawn status

Either lower minSpawnDistance or raise spawnRange.

What The Big Systems Mean

Custom Spawning

The mod checks nearby survival players every interval. If the chance roll passes, it tries to place zombie-class mobs nearby.

Hordes

Hordes are timed events with stronger spawn pressure and bigger waves.

Blood Moons

Blood moons happen at night and raise spawn pressure heavily.

Difficulty Scaling

Scaling makes zombies stronger as the world day increases.

Advanced Attributes

The attribute system lets you tune health, attack, speed, armor, follow range, and knockback resistance. New users should leave this alone until the basic spawn settings feel good.

Other Useful Settings

Zombie Sun Burning

preventSunBurn controls whether zombie-class mobs are protected from burning in daylight.

  • true means zombies do not burn in sunlight.
  • false means zombies burn like vanilla.

Extra Drops

enableExtraDrops turns bonus zombie drops on or off.

Useful drop chances include:

  • boneChance
  • stringChance
  • gunpowderChance
  • enderPearlChance
  • phantomMembraneChance

Set a chance to 0.0 to disable that drop.

Event Notifications

enableEventNotifications controls horde and blood moon screen alerts.

enableDayCounterAnnouncements controls the morning day counter title.

Statistics

enableStatistics controls the kill totals shown by /zstats.

Milestone advancements keep their own progress so achievements can still work if /zstats totals are disabled.

Milestone advancements are awarded at:

  • 250 zombie kills
  • 1000 zombie kills
  • 3000 zombie kills

Performance Tips

The most expensive settings are:

  • low daySpawnInterval
  • high zombiesPerSpawn
  • high maxDayZombiesPerPlayer
  • high spawnAttemptsPerZombie
  • low zombieBlockBreakingInterval when block breaking is enabled
  • high zombieBlockBreakingRange when block breaking is enabled
  • low zombieToweringInterval when towering is enabled
  • high zombieToweringCrowdRadius when towering is enabled
  • debug logging left on

For weak servers, keep spawn checks slower and caps lower.