Wave configuration · Minecraft 26.3 / NeoForge

Custom Themes

Build a theme, assign its mobs, save it on the server, and test a themed invasion.

Five additional shipped themes

Fresh current Minecraft 26.3 / NeoForge configurations and Entities → Regenerate supply BRUTES, UNDEAD, ZOMBIES, SKELETONS and PIGLIN in addition to the twelve built-in pool themes. These five use configured memberships and can be edited like your own custom themes. Existing saved membership lists and deleted-theme choices are preserved on ordinary refresh; an update is not a full reset.

ThemeSupplied roster examplesSupplied fallback
BRUTESHeavy variants: Zombie Brute, Drowned Brute, Charger Zombie, Hoglin and large Throwers.Global default: invmod:zombie
UNDEADBroad undead roster: Zombies, Skeletons, builders, Gift Zombie and Ender-Zombie.Global default: invmod:zombie
ZOMBIESZombie families, Drowned, Husks, zombie builders and miners, Throwers, Zoglin and configured undead mounts.Global default: invmod:zombie
SKELETONSSkeleton families and T2 variants, Frost Skeletons, Builders, Breachers, Wither and Skeleton Horse.Override: invmod:skeleton
PIGLINminecraft:piglin, minecraft:piglin_brute, Pigman Engineer, Hoglin and Piglin Thrower.Override: minecraft:piglin
ZOMBIES / UNDEAD
BRUTES / SKELETONS
PIGLIN

These are examples of preset assignments, not an exclusive list or guaranteed spawns. Active, registered, direct-wave-eligible members and affordable squads determine purchases. Environmental-only Guardian entries do not become direct purchases merely through membership. Fallback fillers, Engineer support, variant substitutions and extra bosses can add enemies outside the chosen family.

Other supplied fallback overrides

ThemeFallback ID
RANGEDinvmod:skeleton
SPIDERinvmod:spider
FLYINGinvmod:phantom
NETHERinvmod:zombified_piglin
SIEGEinvmod:jumping_zombie
FASTminecraft:zombie_horse

The global preset fallback is invmod:zombie. Themes without an override inherit it, provided it is still eligible. A saved per-theme choice takes precedence; unavailable or disabled choices use the fallback eligibility chain.

  1. Open Themes → Entities for the chosen theme, or search Entities with theme:ZOMBIES. Check the actual saved members and their Active mode.
  2. Adjust members, configured costs and fallback, then use Entities → Save. Follow server setup for multiplayer.
  3. With operator permission or cheats, place a Core and run /invasion start 5 ZOMBIES in a test arena. Use /invasion debug to inspect the phase. The forced theme lasts for that starting wave's phases; later waves resume normal random selection.

A nonempty eligible pool or squad lets these themes join normal random phase selection. Creating or retaining a name alone does not guarantee a wave. For the distinct high-wave boss-price theme, read RANDOMHELL selection.

Create a theme

A theme selects the pool of attackers for a wave phase. Custom themes let you organize enabled mobs and squads into your own combinations.

  1. Open Minecraft's Mods screen, select Invasion Mod, and open its NeoForge configuration screen. Choose Themes.
  2. Enter a name such as MY_RAID in New theme and press Create theme. Use 1–64 characters: letters A–Z, digits, underscores or hyphens. Names are normalized to uppercase; spaces and duplicate names are not accepted.
  3. Next to your theme, open Entities, then Add entity. Search by entity ID, for example invmod:zombie, and click each mob to add it. Use the arrow buttons for more pages.
  4. Return with Back, review the assignments, then follow Save and server setup. An empty theme can be stored, but needs suitable participants to enter normal random selection.

Assign and remove mobs

For bulk membership changes, see Globals → Randomize themes. The fallback selected for each theme ignores membership when filling a phase, so removing it from a theme alone does not exclude it from that phase.

See mob modes, costs and boss flags before assigning participants; Attack entries are targets, not configured wave members.

The Add entity list shows configured mobs with active: true that are not already assigned. Enable a missing mob in the main Entities list first. An inactive mob or an active: "attack" target is not an enabled wave participant. Assigning a theme does not change its active mode, cost, or abilities.

In a theme's Entities list, × removes only that membership. A mob can belong to several themes. You can also use the mob's Themes editor in the main Entities list. Squad theme membership is edited separately in Squads → Themes.

In the main Entities search field, enter theme:MY_RAID to show assigned mobs; theme:SIEGE works for an existing theme. This filter shows assignments, including mobs that have since been disabled. It is not a guarantee that every listed mob can spawn.

Custom pools and built-in pools differ. Custom themes draw on eligible active configured mobs and available squads. Built-in themes also have predefined native mob pools; editing their entity assignments does not replace those pools with an exclusive custom roster. Use a new theme when defining your own selection.

Skeleton specialists include Skeleton Breacher (including SIEGE), Skeleton Builder and Wither Skeleton Builder (also NETHER). Theme changes also affect gravestone summons: normal stones select active UNDEAD entries, red stones select NETHER entries, and both exclude configured costs above 100 Rift Flux.

More roster examples: Mole joins UNDERGROUND and SIEGE; Gift Zombie joins FAST and UNDEAD; Charger Zombie joins BRUTES; Flying Creeper joins SIEGE. Homer inherits Fat Zombie themes and is not a separate assignable registry mob.

Big Pumpkin defaults to MIXED/RANDOM/RANDOMHELL and has a separate Boss flag. Pumpkin Ghost is Active with no assigned themes; its death-triggered appearance does not depend on theme membership. Bug Clawer follows ordinary Spider pools except the default SPIDER and ARMORED pools. Review native-pool limits before using a theme edit as an exclusion.

Choose a fallback for each theme

A phase uses its own theme's fallback to spend leftover budget and fill the minimum purchase count. The fallback need not belong to that theme. Selecting a fallback does not add it to the ordinary roster or make an empty theme eligible for random phase selection.

  1. Open Mods → Invasion Mod → Config → Themes and find the intended theme. Use page arrows if needed.
  2. Click the fallback: button between the theme name and Entities. Its label shows the current mob, or none if no eligible choice exists.
  3. Search the picker by mob name or ID and select a registered, eligible Active mob. Inactive and Attack-mode entries cannot be selected. Enable a missing candidate under Entities first.
  4. Return with Back, then use Entities → Save on the main configuration screen. Check the saved confirmation and reopen Themes to verify. Follow server setup for a dedicated server; the client editor does not upload changes.

For example, choose invmod:skeleton for SKELETONS and invmod:zombie for ZOMBIES while keeping other themes' fallbacks unchanged. Both entries must be enabled. Changing the configured normal price does not change filler pricing: leftover-budget fillers cost 1 each and minimum-count fillers cost 0. See wave budgets.

Global selection and distinct random assignments

Entities → Globals → Fallback mob replaces the global fallback and every available theme's fallback with the selected active mob, including custom themes. It overwrites individual selections. Set the global choice first, then make theme-specific exceptions.

Randomize fallback mob assigns a different eligible active mob to each available theme in one edit. The button is disabled unless there are at least as many eligible active mobs as themes. For 17 themes, at least 17 candidates are needed; having 17 configured but inactive mobs is insufficient. Randomization changes stored choices now, not on every wave, and leaves the global fallback unchanged. Return to Themes to review the assignments, then use Entities → Save.

JSON format and unavailable fallbacks

In config/invasion_mod_mobs.json, merge these top-level properties into the existing object. Preserve other entries and commas; this fragment alone is not a complete mob configuration:

"_fallback_mob": "invmod:zombie",
"_theme_fallbacks": {
  "SKELETONS": "invmod:skeleton",
  "ZOMBIES": "invmod:zombie"
}

An eligible theme-specific entry overrides _fallback_mob. A missing, disabled, invalid or unavailable theme choice falls back to the eligible global choice; if that is unusable, the server selects another eligible active mob. If none exists, no fallback fillers are added. The editor normally prefers an active invmod:zombie when the global entry is invalid. It does not re-enable disabled mobs. See eligibility and global controls.

Test with a new invasion, for example /invasion start 5 SKELETONS with operator permission. Existing wave plans are not rebuilt when the configuration is saved. Check the phase's theme with /invasion debug. A configured normal price does not cap how many fallback fillers appear.

Save and server setup

See Configuration: Save and server setup for the complete workflow. Save one main area before editing the other: saving reloads both files and discards unsaved changes in the other area.

Use Back to leave the theme dialogs, select Entities, and press Save on the main configuration screen. Back alone does not write the file. Check the saved confirmation; a reported error means the save did not complete.

Themes and squads share config/invasion_mod_mobs.json. Save under Entities writes this JSON and refreshes the mob configuration. Save under Main Config instead writes config/invasion_config.cfg; it does not save your theme edits. Regenerate resets settings and is not a reload button.

For a local world, edit the configuration in that Minecraft instance. On a dedicated server, apply the JSON changes to the server's config directory; the client editor does not upload them. Back up the server file, stop the server before replacing or editing it, and restart it afterward. Preserve unrelated settings and optional-mod entries. Test with a newly started invasion: saving does not rewrite a wave plan already in progress.

Use and test a theme

Custom themes with a nonempty eligible mob pool or an available squad join random phase selection. Creating one does not make it the only theme. The catalog also contains SWARM, ARMORED, RANGED, UNDERGROUND, SPIDER, FLYING, NETHER, SIEGE, FAST, MIXED, RANDOM and RANDOMHELL. The shipped mob defaults additionally contribute BRUTES and UNDEAD through their assignments.

  1. Create MY_RAID, add an active invmod:zombie, and save it on the instance running the world.
  2. Place a Nexus Core in a test arena and stand nearby. With operator permission (normally level 2) or singleplayer cheats, enter /invasion start 5 MY_RAID.
  3. The chosen theme applies to every phase of that starting wave only. Later waves return to their normal theme selection. Use /invasion debug to inspect the active phase's theme and loaded invaders.

The syntax is /invasion start <wave> <theme>, with a wave number of at least 1. The theme must exist in the running server's catalog. A Core with an active invasion cannot be started again; see stop, pause and continue. A forced theme still permits fallback fillers, extra Engineer support and applicable boss additions; it does not guarantee an exclusive roster.

If the name is unknown, check spelling, Save, and the server's JSON. If your mobs do not appear, check active mode, installed dependencies, valid wave-spawn types, and costs. A catalog entry alone is not a usable roster; a squad is also a random purchase rather than a guaranteed spawn.

Catalog and deletion

In config/invasion_mod_mobs.json, the top-level "_themes": ["MY_RAID"] catalog preserves custom themes even before mobs are assigned. Each entity has its own "themes": ["MIXED", "MY_RAID"] array. Existing entity and squad assignments also contribute names to the catalog. When editing manually, merge these fields into the existing JSON rather than replacing the whole file.

In the main Themes screen, × deletes a theme from the catalog and removes its assignments from all entities and squads, including default squads. Save under Entities to persist that removal. The JSON records deleted names in _removed_themes, so simply removing a name from _themes is not equivalent to using the delete button.

You can create the same name again to restore its availability, but must reassign its members. For a coordinated group within the theme, continue to Custom Squads.

See built-in themes and cost rules, adaptive selection and budgets and free additions when designing a roster.

Expand theme rosters with registered Vanilla or other-mod mobs; see Mutant Monsters for native mutant pools and their separate boss rule.

See the default assignments and combat behavior of Ender Zombie, Jumping Zombie Brute, Stone Minion, Stone Spirit and Devil Mask when extending a roster.

Current default assignments for newer invaders are listed with their costs and spawn restrictions on Freeze, Mini Squid, Lava Creeper, Flying Eye and One Eye. Mini Squid requires underwater wave spawn points even in MIXED; theme membership does not override its spawn location.