Back to mods
Data Driven Villagers project artwork

CurseForge · Minecraft mod

Data Driven Villagers

Create new villager professions and change existing ones, including textures, workstations, day plans, behaviours and village buildings, from simple JSON files or directly in the in-game editor GUI, no coding required.

Choose a version Pick your version below, then grab the matching file.

Quick answer

Which Data Driven Villagers release should I use?

Updated 18 days ago
Latest stable file Data Driven Villagers 1.0.0 (Neoforge) 1.21.8
Game version 1.21.8
Loader NeoForge

Data Driven Villagers 1.0.0 (Neoforge) 1.21.8 targets 1.21.8 with NeoForge. The project page does not say whether this file belongs on the client, dedicated server, or both. No extra mods listed for this file.

Where it goes

Is Data Driven Villagers required on the client, server, or both?

The project page does not say whether this file belongs on the client, dedicated server, or both.

Client Source doesn’t say
Dedicated server Source doesn’t say
Loader for this release NeoForge
Required install it here Optional supported, not mandatory Not supported do not install here Source doesn’t say do not assume

The source does not explicitly classify this release as client-only or server-only.

What else does Data Driven Villagers 1.0.0 (Neoforge) 1.21.8 need?

Data Driven Villagers 1.0.0 (Neoforge) 1.21.8. Change the file and its required mods may change too.

No extra mods listed for this file

This file does not list any required mods. Do not add a library just because a different file uses it.

1 listed on this file 3 pulled in by those mods
VillagersTradingPlus Optional for Data Driven Villagers 1.0.0 (Neoforge) 1.21.8
optional
Matching file found Matched file: VillagerTradingPlus 1.0.0 (NeoForge) 1.21.8
Fabric API Needed by VillagersPlus (Fabric/Neoforge)
pulled in
No matching file

3 extra mods were pulled in by other dependencies. Indented rows show who needs each one. We only count dependency files that match this setup. A file for another loader does not fill the gap.

Before you install it

Add Data Driven Villagers without breaking your instance.

Built for Data Driven Villagers 1.0.0 (Neoforge) 1.21.8. Pick another file and the loader, install side or required mods may change.

  1. 01

    Stick to this file

    Use Data Driven Villagers 1.0.0 (Neoforge) 1.21.8. It targets 1.21.8 with NeoForge; another release may have different loader, side or dependency requirements.

  2. 02

    Bring the mods it needs

    This file does not list any required mods. Do not add a library just because a different file uses it.

  3. 03

    Put it on the correct side

    The project page does not say whether this file belongs on the client, dedicated server, or both.

  4. 04

    Pick the file you checked

    Use the “Get this file” button beside Data Driven Villagers 1.0.0 (Neoforge) 1.21.8. It opens that exact file at the source.

About this project

What does Data Driven Villagers add?

Create new villager professions and change existing ones, including textures, workstations, day plans, behaviours and village buildings, from simple JSON files or directly in the in-game editor GUI, no coding required.

No Java, no fork, no resource pack. One file per profession.

Versions: 1.20.1, 1.21.1, 1.21.8

Loader: Fabric, NeoForge (1.21.1, 1.21.8), Forge (1.20.1)

Support my work on

Buy me a coffee

Patreon


Requirements

  • On Fabric you need Fabric API. On Forge and NeoForge you do not.
  • For trades, install VillagersTradingPlus. Without it your professions work, but they have nothing to sell.

What you can do with it

  • New professions bound to a block of your choice, from vanilla or from other mods.
  • Your own look: a profession texture, a zombie-villager texture and the hat setting. You need no resource pack. On a server, the images go to every player automatically.
  • Change vanilla professions with overrides. For example, put the farmer on the night shift in four lines.
  • Day plans: "schedule": "night" or your own switch-over times for work, idle, meet and rest.
  • Behaviour:
    • farm work: harvest, replant and use bone meal like the farmer.
    • flees_from: extra mobs to run from.
    • attacks: guards that fight zombies and skeletons.
    • health: more health for the profession.
    • villages: keep a job in desert or snowy villages only.
  • Village buildings: your own .nbt house appears in generated villages. Or give only a workstation, and the mod builds a stall in each village style: oak, sandstone, acacia or spruce.
  • Custom villager types, tied to biomes, with their own clothing.
  • Hero of the Village gifts from your own loot table.
  • In-game editor: /ddv edit opens a GUI with every field. Save writes the file and reloads it.
  • Live reload: /ddv reload applies textures, hats, gifts, workstations, behaviour and day plans without a restart. New day plans reach villagers that already stand in the world.

Quick start

  1. Start the game once. The mod writes an example into config/datadrivenvillagers/professions/.
  2. Edit example_baker.json (or open /ddv edit), then restart.
  3. Get a structure block with /give @s minecraft:structure_block and place it next to an unemployed villager. The villager becomes a baker. The example uses a structure block so it takes no block away from a normal world.
{
  "workstation": "minecraft:structure_block",
  "display_name": "Baker",
  "texture": "example_baker.png",
  "hat": "none",
  "work_sound": "minecraft:entity.villager.work_farmer",
  "gatherable_items": ["minecraft:wheat", "minecraft:bread"],
  "secondary_job_sites": ["minecraft:cake"]
}

The file name is the id: baker.json becomes datadrivenvillagers:baker. Put baker.png next to the json and the texture loads at runtime.

Why a config folder and not a datapack? Professions and job sites are registries that Minecraft freezes before any datapack loads. Everything that can be a datapack still is one: trades, gifts, tags and translations.

On a server, every player needs the mod and the same profession files, because the game refuses a client that does not know a registered profession. /ddv export <name> packs one profession into a zip that you can give to your players.


Commands

Command Does
/ddv edit [<name>] Opens the editor GUI on a profession, or on a new one.
/ddv why <name> Checks the complete chain for one profession and shows where it breaks.
/ddv why villager The same for the villager in front of you: job, station, bed, plan, why it does not work or sleep.
/ddv blocks [text] Shows which blocks are still free to be a workstation.
/ddv reload Reads the config folder again without a restart.
/ddv scaffold <name> Writes the trade file, gift loot table, language file and a village stall, ready to edit.
/ddv export <name> Packs a profession with its files into one zip that you can share.
/ddv doctor Writes every report into doctor.txt, to paste into a bug report.
/ddv list / /ddv errors All loaded professions / every rejected file and why.
/ddv help Shows this table in the chat.

list, errors, why, blocks and help need permission level 2. edit, reload, scaffold, export and doctor write files and need level 3. In a singleplayer or LAN world, only the host can use them.


Trades

Trades come from VillagersTradingPlus. Put a trade file into a datapack at data/<namespace>/default_villager_trades/baker.json with "profession": "datadrivenvillagers:baker". Or press Create default trades in /ddv edit, and the mod writes a starting file into the world's datapacks for you. The full trade format is on the VillagersTradingPlus page.


Good to know

  • Minecraft allows one job site per block. The thirteen vanilla workstation blocks, such as the composter and the lectern, are taken. /ddv blocks shows what is still free.
  • On Fabric, blocks from mods that register after DataDrivenVillagers are skipped with a warning. Vanilla blocks are always available.
  • Blocks that world generation places in bulk (stone, dirt, sand, logs, leaves, ores and a few more) are refused as workstations, because every natural one would become a job site. Set "allow_natural_block": true to use one anyway. Air, fluids and blocks without collision are never allowed.
  • If a file has an error, the mod does not load it and does not crash. /ddv errors and /ddv why tell you what is wrong.

More mods by LithiumPlus

Project description from CurseForge.

Pick your setup

Data Driven Villagers by Minecraft version and loader

Choose the version and loader you play, then open the matching release.

7 available setups

Check the dependencies, then try the file in a copied instance before changing a world you care about.

Recent files

Data Driven Villagers versions and loaders

6 of 6 releases match

Looking for an older file? The official CurseForge project page is in Resources.