跳到正文

Data Driven Villagers

作者:LithiumPlus

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.

收藏

截图

介绍

中文介绍正在准备中,下面暂时显示原文。

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

常见问题

Data Driven Villagers 支持哪些 Minecraft 版本?

Data Driven Villagers 支持 Minecraft Java 版 1.20.1–1.21.8,共 3 个版本,可用的加载器:Fabric / Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。

Data Driven Villagers 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

LithiumPlus 的其他作品

查看全部 →