promotional bannermobile promotional banner

Villageria

Villagers who actually work. 8 professions defend, rebuild, light, farm, explore, heal and manage villages. Includes 4 new buildings, 4 Iron Golem types, a shared economy and a working police pistol.
Back to Files

Villageria

File namevillageroles-0.2.0.jar
Uploader
bartacibartaci
Uploaded
Aug 16, 2026
Downloads
3.5K
Size
1.3 MB
Mod Loaders
ForgeFabricNeoForge
File ID
8662841
Type
R
Release
Supported game versions
  • 26.2
  • 1.21.11
  • 1.21.8
  • 1.21.1

Curse Maven Snippet

Forge

implementation "curse.maven:villageria-1646907:8662841"

Fabric

modImplementation "curse.maven:villageria-1646907:8662841"

NeoForge

implementation "curse.maven:villageria-1646907:8662841"

Learn more about Curse Maven

What's new

Village Roles 0.3.0 — one jar for every loader and version

This release replaces the separate per-loader downloads. A single file now runs on Fabric, NeoForge and Forge, across Minecraft 1.21.1, 1.21.8, 1.21.11 and 26.2. Drop it in mods/ and it works out the rest.

Critical fix — villagers can finally claim their jobs

If your villagers never took the new professions, this is why. The mod's workstations were registered, correctly named and correctly tagged — and still invisible to villagers. Minecraft looks up a job site through a block-state table that is built separately from the registry, and the mod's points of interest were never added to it.

Nothing errored and nothing appeared in the logs. The mod loaded, the blocks placed, and no villager ever took the job.

This affected every previous version of the mod, on every loader. Placing a police desk now produces a police officer, as it always should have.

Other fixes

- The mod's data could be rejected on 1.21.x. pack.mcmeta declared compatibility with 26.2 only, which put the profession tags, structures and trades at risk of being ignored on older versions. Each build now declares the format its Minecraft version uses.
- Crash on NeoForge: Registry is already frozen. The nocturnal schedule attributes were registered the Fabric way — a direct registry write — which NeoForge refuses long after its registries close. They now go through the registry event, like everything else.
- Profession names showed as raw keys (entity.minecraft.villager.villageroles.police) instead of "Police". Before 26.x the game builds that key from the registry id, namespace included; both spellings ship now.
- Config was read too late. policeDeskCapacity is baked into the police desk as it registers, but the config was loaded afterwards, so a custom value was silently ignored and the default of 5 used instead.
- Byte-order marks removed from six block and item model files, which are not valid JSON and risk missing textures.

New

- A start-up self-check. Every launch, the mod verifies that the game recognises each of its eight job sites and reports 8/8 job sites recognised in the log — or names the ones that failed. The bug fixed above was silent and total; it cannot go unnoticed again.

Compatibility

┌───────────────────────┬────────┬────────┬─────────┬──────┐
│                       │ 1.21.1 │ 1.21.8 │ 1.21.11 │ 26.2 │
├───────────────────────┼────────┼────────┼─────────┼──────┤
│ Fabric (+ Fabric API) │ ✔      │ ✔      │ ✔       │ ✔    │
├───────────────────────┼────────┼────────┼─────────┼──────┤
│ NeoForge 21.1+        │ ✔      │ ✔      │ ✔       │ ✔    │
├───────────────────────┼────────┼────────┼─────────┼──────┤
│ Forge 52+             │ ✔      │ ✔      │ ✔       │ ✔    │
└───────────────────────┴────────┴────────┴─────────┴──────┘

Java 21 or newer (Minecraft 26.2 requires Java 25 itself). Existing worlds carry over: professions, job sites and build sites are read back unchanged.

Under the hood

The mod is built once per Minecraft API generation and once per mapping set, and all of those builds ship in the same jar under separate packages. On start-up a dispatcher asks the loader which version is running and hands over to the matching build; the mixin configurations of the others switch themselves off. Nothing about how the mod plays has changed.

This mod has no additional files