NotTodayMob

Quick rating

NotTodayMob

No reviews yet

“What do we say to the Mob of Death? Not today.” Block unwanted mobs or adjust spawn frequency using simple, server-side config rules.

QoL & Tweaks
Mod Loaders
Forge
NeoForge
Minecraft
26.2

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Unsupported
Server Required

About

Project Details

Type
Mod
License
All Rights Reserved
Latest Version
nottodaymob-neoforge-26.2-1.0.6.jar
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

Source Issues Wiki Discord

About

Description

NotTodayMob

Designed with simplicity and performance in mind, NotTodayMob provides configurable control over mob spawning without modifying world generation definitions or biome data. Individual mobs — or entire namespaces — can be blocked entirely, or have their natural spawn frequency increased or reduced using straightforward configuration.

NotTodayMob is intended for modpack creators and server administrators who want predictable, lightweight control over mob behaviour without complex datapacks or scripting.

All changes are applied at runtime and work automatically with modded mobs, modded biomes, and custom dimensions.

When unwanted mobs try to spawn, the answer is simple: not today.

Latest Update - Version 1.0.6

NotTodayMob now includes expanded control over natural and custom mob spawning.

The naturalSpawnWeightMultipliers setting allows pack creators and server administrators to reduce, increase, or disable natural spawning for matching entities.

A new customSpawnChanceMultipliers setting also allows spawn attempts using the EVENT or TRIGGERED spawn types to be reduced or disabled independently, providing support for mods that use custom event-based spawning.

Features

  • Block specific mob spawning
  • Adjust natural spawn frequency using configurable weight multipliers
  • Optionally replace/remove matching spawners during chunk loading
  • Automatically removes spawn eggs and spawners from player inventories/in world
  • Additional fine-grained control for baby variants with support for vanilla and modded mobs that expose baby/adult state through standard Minecraft entity behaviour
  • Supports exact IDs and wildcard matching including dimension-specific rule scoping
  • Periodic performance statistics logging
  • Works automatically with modded mobs and biomes
  • No biome or world generation changes required
  • Lightweight and safe for large modpacks
  • Server and multiplayer friendly
Note

On Forge 1.20.1 and NeoForge 1.21.1, matching spawners are first replaced with an inert spawner before being safely removed on a later chunk load.

This staged removal avoids chunk-loading warnings caused by removing block entities too early during world generation.

Typical Use Cases

  • Reduce the number of specific mobs in survival gameplay
  • Increase the presence of certain creatures in themed worlds
  • Disable problematic or unwanted modded mobs
  • Balance mob populations in large modpacks
  • Fine-tune difficulty without editing datapacks

Configuration Guide

NotTodayMob is configured using a small set of server-side settings designed to be predictable and easy to understand. Changes can be made at any time and will apply automatically after restart or reload.

Core Behaviour

blockEntitiesEnabled

Controls whether matching entities are prevented from spawning.

Default: true

If disabled, all entity blocking rules are ignored.

blockBabyVariants

Controls whether baby variants of blocked entities are also blocked.

Default: true

If disabled, baby variants will still spawn even when the adult equivalents are blocked.

World-Generated Spawner Handling

worldgenSpawnerRemoval

Controls whether matching world-generated spawners are removed or replaced during chunk loading.

Default: true

If enabled, matching spawners will be:

  • Replaced using worldgenSpawnerReplacements, or
  • Removed if no valid replacement is defined

If disabled, world-generated spawners remain unchanged.

worldgenSpawnerReplacements
worldgenSpawnerReplacements = [
    "minecraft:zombie"
]
Behaviour
  • Applies only to world-generated spawners (e.g. dungeons, structures)
  • Only accepts exact entity IDs
  • Replacement occurs automatically when a chunk is generated or loaded
  • Multiple entries can be provided as fallbacks
  • If no valid replacement is defined, the spawner is removed instead
  • Existing worlds will be updated as chunks are loaded
Example
blockedEntities = [
    "minecraft:skeleton",
    "minecraft:*spider"
]

worldgenSpawnerReplacements = [
    "minecraft:zombie"
]

Here, skeleton or spider spawners found during chunk loading will become zombie spawners

Spawner and Spawn Egg Controls

suppressBlockedEntitySpawners

Controls whether matching spawners are blocked from use.

Default: true

If disabled:

  • Spawners remain usable
  • Entity spawning behaviour still follows blocking rules
suppressBlockedEntitySpawnEggs

Controls whether matching spawn eggs are blocked from use.

Default: true

If disabled:

  • Spawn eggs can still be used
  • Entity spawning behaviour still follows blocking rules

Inventory and Item Cleanup

cleanupDroppedItems

Controls whether spawn eggs and spawners for blocked entities are removed immediately when dropped into the world.

Default: true

Disable this if you want blocked items to exist but still prevent spawning.

inventoryCleanupIntervalTicks

Controls how often (in ticks) player inventories are checked for blocked spawn eggs and spawners.

Default: 10

Ticks Actual Time
10 Half a second
20 One second

Higher values reduce overhead but delay cleanup.

enableStatsLogging

Controls whether periodic NotTodayMob summary statistics are written to the server log.

Default: false

statsLoggingIntervalTicks

Controls how often (in ticks) summary statistics are logged.

Default: 12000

Ticks Actual Time
12000 Ten minutes
24000 Twenty minutes
statsLoggingVerbose

Controls whether additional detail is included in each statistics report.

Default: false

When enabled, reports may include:

  • Top blocked entities
  • Rule match breakdowns
statsLoggingToSeparateFile

Controls whether statistics are also written to a dedicated log file.

Default: false

When enabled, statistics will also be written to logs/nottodaymob.log

Blocking Entities

blockedEntities

Defines which entities are prevented from spawning.

Supports:

  • Exact IDs
  • Namespace wildcards
  • Prefix and suffix wildcards
  • Optional dimension scoping
Examples
blockedEntities = [
    "minecraft:skeleton",
    "minecraft:*spider",
    "alexsmobs:*",
    "minecraft:zombie|dimensions=minecraft:overworld"
]
blockedBabyEntities

Defines which baby variants are prevented from spawning without blocking their adult counterparts.

Supports:

  • Exact IDs - Namespace wildcards
  • Prefix and suffix wildcards
  • Optional dimension scoping
Examples
blockedBabyEntities = [
    "minecraft:zombie", 
    "minecraft:*piglin", 
    "alexsmobs:*", 
    "minecraft:hoglin|dimensions=minecraft:the_nether"
]

Scope Rules to Specific Dimensions

Rules can optionally be limited to one or more dimensions using inline dimensions= filtering.

blockedEntities = [
    "minecraft:skeleton|dimensions=minecraft:overworld",
    "minecraft:blaze|dimensions=minecraft:the_nether",
    "alexsmobs:*|dimensions=twilightforest:twilight_forest"
]
Behaviour
  • Limits the rule to the specified dimension(s)
  • Multiple dimensions can be provided using commas
  • If no dimensions= filter is present, the rule applies to all dimensions
  • Works with both vanilla and modded dimensions
  • Supports exact IDs and wildcard matching
Example
blockedEntities = [
    "minecraft:zombie|dimensions=minecraft:overworld"
]

Here, zombies are blocked only in the Overworld, while remaining unaffected in other dimensions.

Adjusting Natural/Custom Spawn Frequency

naturalSpawnWeightMultipliers

Adjusts natural spawn frequency for matching entities.

naturalSpawnWeightMultipliers = [
    "minecraft:zombie=0.5",
    "minecraft:creeper=2.5",
    "minecraft:bat=0.0"
]

Format: entity_or_pattern = multiplier

Multiplier Behaviour
Multiplier Effect
0.0 Disables natural spawning
0.5 Half as common
1.0 Vanilla behaviour
2.5 Roughly 250% spawn frequency
10.0 Maximum supported multiplier

Weight adjustments apply only to natural spawning. Spawner, command, and other spawn sources are unaffected.

customSpawnChanceMultipliers

Adjusts spawn success chance for matching entities created through EVENT or TRIGGERED spawn types.

customSpawnChanceMultipliers = [
    "simpleenemymod:ruunit=0.1",
    "simpleenemymod:usunit=0.1",
    "examplemod:boss=0.0"
]

Format: entity_or_pattern = multiplier

Multiplier Behaviour
Multiplier Effect
0.0 Disables matching custom spawns
0.1 Allows roughly 10% of attempts
0.5 Allows roughly half of attempts
1.0 Original spawning behaviour

Chance adjustments apply only to EVENT and TRIGGERED spawns. Natural, spawner, spawn egg, command, and other spawn sources are unaffected.

Compatibility

NotTodayMob works automatically with:

  • Modded mobs and biomes
  • Custom dimensions
  • Datapack-driven spawning

No special integration is required.

Reporting Issues

If you encounter a compatibility issue with another mod, please report it via the project issue tracker so it can be investigated.

Designed with simplicity and performance in mind, NotTodayMob provides configurable control over mob spawning without modifying world generation definitions or biome data. Individual mobs — or entire namespaces — can be blocked entirely, or have their natural spawn frequency increased or reduced using straightforward configuration.

NotTodayMob is intended for modpack creators and server administrators who want predictable, lightweight control over mob behaviour without complex datapacks or scripting.

All changes are applied at runtime and work automatically with modded mobs, modded biomes, and custom dimensions.

When unwanted mobs try to spawn, the answer is simple: not today.

Latest Update - Version 1.0.4

NotTodayMob now includes optional support for controlling baby variants.

The new blockBabyVariants setting allows pack creators and server administrators to decide whether baby versions of blocked entities should also be prevented from spawning.

Features

  • Block specific mob spawning
  • Adjust natural spawn frequency using configurable weight multipliers
  • Optionally replace/remove matching spawners during chunk loading
  • Automatically removes spawn eggs and spawners from player inventories/in world
  • Additional fine-grained control for baby variants with support for vanilla and modded mobs that expose baby/adult state through standard Minecraft entity behaviour
  • Supports exact IDs and wildcard matching including dimension-specific rule scoping
  • Periodic performance statistics logging
  • Works automatically with modded mobs and biomes
  • No biome or world generation changes required
  • Lightweight and safe for large modpacks
  • Server and multiplayer friendly
Note

On Forge 1.20.1 and NeoForge 1.21.1, matching spawners are first replaced with an inert spawner before being safely removed on a later chunk load.

This staged removal avoids chunk-loading warnings caused by removing block entities too early during world generation.

Typical Use Cases

  • Reduce the number of specific mobs in survival gameplay
  • Increase the presence of certain creatures in themed worlds
  • Disable problematic or unwanted modded mobs
  • Balance mob populations in large modpacks
  • Fine-tune difficulty without editing datapacks

Configuration Guide

NotTodayMob is configured using a small set of server-side settings designed to be predictable and easy to understand. Changes can be made at any time and will apply automatically after restart or reload.

Core Behaviour

blockEntitiesEnabled

Controls whether matching entities are prevented from spawning.

Default: true

If disabled, all entity blocking rules are ignored.

blockBabyVariants

Controls whether baby variants of blocked entities are also blocked.

Default: true

If disabled, baby variants will still spawn even when the adult equivalents are blocked.

World-Generated Spawner Handling

worldgenSpawnerRemoval

Controls whether matching world-generated spawners are removed or replaced during chunk loading.

Default: true

If enabled, matching spawners will be:

  • Replaced using worldgenSpawnerReplacements, or
  • Removed if no valid replacement is defined

If disabled, world-generated spawners remain unchanged.

worldgenSpawnerReplacements
worldgenSpawnerReplacements = [
    "minecraft:zombie"
]
Behaviour
  • Applies only to world-generated spawners (e.g. dungeons, structures)
  • Only accepts exact entity IDs
  • Replacement occurs automatically when a chunk is generated or loaded
  • Multiple entries can be provided as fallbacks
  • If no valid replacement is defined, the spawner is removed instead
  • Existing worlds will be updated as chunks are loaded
Example
blockedEntities = [
    "minecraft:skeleton",
    "minecraft:*spider"
]

worldgenSpawnerReplacements = [
    "minecraft:zombie"
]

Here, skeleton or spider spawners found during chunk loading will become zombie spawners

Spawner and Spawn Egg Controls

suppressBlockedEntitySpawners

Controls whether matching spawners are blocked from use.

Default: true

If disabled:

  • Spawners remain usable
  • Entity spawning behaviour still follows blocking rules
suppressBlockedEntitySpawnEggs

Controls whether matching spawn eggs are blocked from use.

Default: true

If disabled:

  • Spawn eggs can still be used
  • Entity spawning behaviour still follows blocking rules

Inventory and Item Cleanup

cleanupDroppedItems

Controls whether spawn eggs and spawners for blocked entities are removed immediately when dropped into the world.

Default: true

Disable this if you want blocked items to exist but still prevent spawning.

inventoryCleanupIntervalTicks

Controls how often (in ticks) player inventories are checked for blocked spawn eggs and spawners.

Default: 10

Ticks Actual Time
10 Half a second
20 One second

Higher values reduce overhead but delay cleanup.

enableStatsLogging

Controls whether periodic NotTodayMob summary statistics are written to the server log.

Default: false

statsLoggingIntervalTicks

Controls how often (in ticks) summary statistics are logged.

Default: 12000

Ticks Actual Time
12000 Ten minutes
24000 Twenty minutes
statsLoggingVerbose

Controls whether additional detail is included in each statistics report.

Default: false

When enabled, reports may include:

  • Top blocked entities
  • Rule match breakdowns
statsLoggingToSeparateFile

Controls whether statistics are also written to a dedicated log file.

Default: false

When enabled, statistics will also be written to logs/nottodaymob.log

Blocking Entities

blockedEntities

Defines which entities are prevented from spawning.

Supports:

  • Exact IDs
  • Namespace wildcards
  • Prefix and suffix wildcards
  • Optional dimension scoping
Examples
blockedEntities = [
    "minecraft:skeleton",
	"minecraft:*spider",
	"alexsmobs:*",
	"minecraft:zombie|dimensions=minecraft:overworld"
]

Scope Rules to Specific Dimensions

Rules can optionally be limited to one or more dimensions using inline dimensions= filtering.

blockedEntities = [
    "minecraft:skeleton|dimensions=minecraft:overworld",
    "minecraft:blaze|dimensions=minecraft:the_nether",
    "alexsmobs:*|dimensions=twilightforest:twilight_forest"
]
Behaviour
  • Limits the rule to the specified dimension(s)
  • Multiple dimensions can be provided using commas
  • If no dimensions= filter is present, the rule applies to all dimensions
  • Works with both vanilla and modded dimensions
  • Supports exact IDs and wildcard matching
Example
blockedEntities = [
    "minecraft:zombie|dimensions=minecraft:overworld"
]

Here, zombies are blocked only in the Overworld, while remaining unaffected in other dimensions.

Adjusting Natural Spawn Frequency

naturalSpawnWeightMultipliers

Adjusts natural spawn frequency for matching entities.

naturalSpawnWeightMultipliers = [
    "minecraft:zombie=0.5",
    "minecraft:creeper=2.5",
    "minecraft:bat=0.0"
]

Format: entity_or_pattern = multiplier

Multiplier Behaviour
Multiplier Effect
0.0 Disables natural spawning
0.5 Half as common
1.0 Vanilla behaviour
2.5 Roughly 250% spawn frequency
10.0 Maximum supported multiplier

Weight adjustments apply only to natural spawning. Spawner, command, and other spawn sources are unaffected.

Compatibility

NotTodayMob works automatically with:

  • Modded mobs and biomes
  • Custom dimensions
  • Datapack-driven spawning

No special integration is required.

Reporting Issues

If you encounter a compatibility issue with another mod, please report it via the project issue tracker so it can be investigated.

Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~16,000
Total Downloads
CurseForge
~16,000
Modrinth
<1,000
Last Updated
CurseForge
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works