
Give every Minecraft villager vanila-like individual talent, real professional growth, specialized trades.
Villager Potential
Villager Potential turns villagers from interchangeable trading machines into individuals with their own strengths and careers. A villager is born with a different aptitude for every profession, inherits traits from its parents, improves by spending real time at work, develops a specialization, and remembers the trades it has learned.
The mod stays close to vanilla Minecraft. It adds no custom blocks, items, entities, or replacement trading menu. Instead, it extends the existing villager systems and keeps vanilla and modded trade pools authoritative.
Main features
Individual professional aptitudes
Every villager receives a permanent progression-speed multiplier for each profession. One villager may be an excellent farmer but a poor librarian, while another may have completely different strengths. Rare talents can produce exceptional specialists.

Genetics and inheritance
Children inherit a blend of their parents' aptitudes with configurable random variation and mutation. Professional experience, learned trades, and market demand are not inherited: every new villager still has to build its own career.
Progress through real work
Villagers gain professional skill while they are loaded, employed, awake during working hours, and able to use the correct workstation. Trading increases their activity multiplier and makes training faster, but purchases do not directly grant skill or vanilla trade levels.

Skill controls the familiar Novice-to-Master progression. Existing villagers never lose levels they already earned. If a villager loses access to its workstation, progression stops and trading is blocked until a valid workstation is available again.
Specializations
When a villager begins a profession, it receives a persistent specialization. Specializations bias the existing trade pool toward appropriate categories without inventing offers that vanilla or another mod did not provide. Definitions are data-driven and can be extended with data packs.
Persistent, evolving trade knowledge
By default, learned offers remain part of that villager's professional knowledge. Breaking a workstation, changing professions, or reloading configuration no longer silently rerolls everything the villager knows.
Alternative configurable trade-memory modes are available:
- Persistent — learned trades stay learned, while new levels add offers.
- Vanilla — vanilla rerolling with trade history still recorded.
- Weighted Memory — recently seen offers become less likely and recover over time.
- Exhaust — used candidates are temporarily unavailable.
- Cyclic — candidates appear once per cycle before repeating.
Each profession keeps its own skill, specialization, activity, learned offers, trade history, and market demand. Returning to an old profession restores that career.
Demand-based prices and sleep restocking
Successful purchases raise demand for the exact offer that was used. Most requed trades can require up to 12.5% more of that item. This is done to balance trade and to increase prices on demanding goods. You can change this in config!
Villagers restock only after they have actually slept and awakened. Completed sleep resets accumulated demand and restores demand-adjusted prices. At night, the villager does not work and does not gain experience.

Supported versions
- Minecraft 1.20.1 — Forge 47.4.10 through 47.x
- Minecraft 1.21.1 — NeoForge 21.1.233 through 21.1.x
Use the JAR that matches both your Minecraft version and mod loader. The Forge build uses Java 17; the NeoForge build follows Minecraft 1.21.1 and uses Java 21. Supported on server!
Configuration
All gameplay settings are stored per world in:
<world>/serverconfig/villager_potential-server.toml
on 1.20.1 version and in:
config/villager_potential-server.toml
on 1.21.1 version!
This includes aptitude generation, rare talents, inheritance, skill progression, activity, specialization strength, trade-memory behavior, demand pricing, stock influence, and diagnostics.
Administrative and diagnostic commands are available under:
/villagerpotential
Compatibility
- Uses existing vanilla and modded professions and trade listings conservatively.
- Unknown trades remain available instead of being removed.
- Includes a versioned API and lifecycle/trade hooks for other mods.
- Does not claim Bukkit or Paper compatibility.
License
Villager Potential is licensed under Apache License 2.0.