Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Tags
Creators
Details

Prevent villagers from entering your home, even with regular doors. You can define an area around your base, and villagers will no longer walk into it or claim beds and workstations inside it. Any villagers who do enter this space will be guided out. This system ensures no villagers are harmed, stuck, or unable to move.
Trading, breeding and everything else keeps working normally, just not on your doorstep.

The gold particles mark the zone edge for this clip; an in-game outline is planned.
Quick start
- Install Fabric API and Eviction Notice. In singleplayer, add both to your game; on a server, the server is enough.
- Stand in the middle of your house.
- Run
/eviction set home 24
That's it: a 49×49 no-villager zone around you, from the bottom of the world to the top. With no villagers inside your house.
Good to know
- Existing claims inside a new zone are released. A villager you haven't traded with yet loses its profession, exactly like it would by breaking its workstation. Villagers you've already traded with keep their job.
- Zones are squares centred on where you stand, with an optional height range.
- Iron golems can still walk in and zombie villagers are kept out by default. Both can be changed in the config.
This mod was born out of annoyance in my Hardcore Forever World. Somehow the entire village decided to pathfind into the first floor and even the attic of my home and couldn't be convinced to leave.

Eviction Notice enforces your zones with three cooperating layers:
- They path around it. Villager pathfinding treats zone blocks as impassable, so they walk around your home instead of piling up against the wall or at your door like they do with inverted doors.
- They can't claim it. Beds and workstations inside a zone are hidden from villager searches, no more strangers moving into your bedroom or stealing your brewing stand. Claims made before you drew the zone are released automatically, so they don't try coming back either.
- They get evicted. A safety-net sweep gently relocates any villager that still ends up inside (spawned there, shoved in by a mob, whatever) to just outside the nearest edge of your defined zone.
Define as many zones as you like, each with its own name, size, and height range. Zones are saved with your world, persist across restarts and are tied to you as a player.

The base command is /eviction. Required parameters are shown as <>, optional ones as []. The commands have auto completion, but won't auto complete your zone names.
| Command | What it does |
|---|---|
/eviction set <name> <radius> [yMin] [yMax] |
Create a zone centred on you, <radius> blocks on each side (1–256). Add yMin/yMax to limit it to a height range (great for a basement or a floating build). Reusing one of your names is refused, so remove the old zone first. |
/eviction remove <name> |
Delete one of your zones. |
/eviction list |
List your zones. |
/eviction here |
Check whether you're standing in one. |
Note: Zone names are a single word (home, base_2) and aren't case-sensitive.
Example: /eviction set home 24 makes a 49×49 zone around you with no height limit. It's 49 rather than 48 because the block you're standing on counts too, keep that in mind when creating a zone.
Multiplayer and permissions
- Every player can use
/evictionno operator rights or extra permissions needed. - Each player manages their own zones. There's no limit on how many and each can have a radius of up to 256 blocks.
- Zones keep out all villagers, not just ones near the owner and nothing stops a zone being placed over someone else's build. Creating or removing a zone is announced to operators.
- There are no admin commands as of yet. To remove another player's zone, stop the server and edit
eviction_notice/zones.jsonin the world folder.
Right now Eviction Notice is best suited to singleplayer, LAN and servers with players you trust. Server controls are planned.

The mods configuration file is slim, and might get more options in the future. The file is located in config/eviction_notice.json.
| Option | Default | Description |
|---|---|---|
evictionIntervalTicks |
20 |
How often the eviction sweep runs (20 ticks = 1 second). |
affectZombieVillagers |
true |
Whether zombie villagers are also kept out of your zones. |
exemptIronGolems |
true |
Whether iron golems are allowed to enter your zones freely. Set to false to keep them out too. |

- Server-side only. All logic runs on the server, so it works the same in singleplayer, LAN and on dedicated servers. Players joining a server don't need to install anything.
- Safe to add to an existing world. Zones only affect villagers where you draw them.
- Safe to remove. Villagers simply come and go as before. The mod leaves
eviction_notice/zones.jsonin your world folder, so your zones are back if you reinstall the mod at a later date. - Plays nicely with other mods. It only hooks into villager pathing and the point-of-interest search and never removes or replaces entities. Mods that also change those two things are the only ones likely to conflict. I run it alongside 65+ other mods without issues.
- Modpacks: Feel free to include it in modpacks. And let me know, so I can check it out!

This mod hooks into the villager pathfinding so nodes inside a zone are marked unreachable, it filters the villagers point-of-interest search so bed/job-site blocks (all workstation blocks) inside a zone are never returned which makes them non-existent to the villager, and runs a sweep that relocates any villagers to the closest safe position just outside your zone. Zone lookups use a chunk-based spatial index, so there's no meaningful per-tick cost, even with many zones.


