finallion / VillagersPlus

A villager extension mod, adding new villagers, trades and workstations.
GNU General Public License v3.0
6 stars 8 forks source link

VillagersPlus - a villager extension

Introduction

This mod adds new villager types, trades and unique and useful workstations.

Currently added profession:

Currently added workstations:

Configuration

VillagersPlus allows to configure:

Datapack Support

Introduction

VillagerPlus provides full support of customizing trades for:

It not only allows to overwrite, modify or delete trades. VillagerPlus also provides more customization of trades. You can change the currency from emeralds to whatever item you like, for example.

Further VillagersPlus is able to handle multiple datapacks modifying the same villager by merging its trades.

Available datapacks

Replacing the default trades for VillagerPlus villagers

Create a datapack with this directory structure:

data/villagersplus/default_villager_trades

Copy the JSON-file from the VP-villager whose trades you'd like to modify into your datapack.
The default trade files are located in inside the jar-file under:

data/villagersplus/default_villager_trades

Modify the trades in the JSON as you please. Your datapack JSON will overwrite the default JSON from the VP.

Replacing the default trades for Minecraft villagers

Notice: The vanilla trades aren't in JSON-form yet. So modifying those, is a bit more work.

Create a datapack with this directory structure:

data/villagersplus/default_villager_trades

Create a JSON with the name of villager-profession whose trades you'd like to modify.
For example:

butcher.json

Below is the basic structure:

{
    "profession": "minecraft:butcher",
    "trades": {
        "novice": [

        ],
        "apprentice": [

        ],
        "journeyman": [

        ],
        "expert": [

        ],
        "master": [

        ]
    }
}

Add trades as you like.

Adding trades to villagers

Create a datapack with this directory structure:

data/villagersplus/villager_trades

Create a JSON with the name of villager-profession to whose trades you'd like to add trades.
For example:

horticulturist.json

Below is an example for adding a sell-trade. One diamond block is sold for 12 emeralds.

{
    "profession": "villagersplus:horticulturist",
    "trades": {
        "novice": [
            {
            "type": "villagersplus:sell_item",
                "sell": {
                "item": "diamond_block",
                "count": 1
            },
            "priceIn": {
                "item": "emerald",
                "count": 12
            },
            "max_uses": 12,
            "villager_experience": 4
            }
        ]
    }
}

The following trade-types are available for now:

An example for each of those is located in:

data/villagersplus/available_trade_examples

Trades

Horticulturist - Level 1:

Horticulturist - Level 2:

Horticulturist - Level 3:

Horticulturist - Level 4:

Horticulturist - Level 5:



Occultist - Level 1:

Occultist - Level 2:

Occultist - Level 3:

Occultist - Level 4:

Occultist - Level 5:



Oceanographer - Level 1:

Oceanographer - Level 2:

Oceanographer - Level 3:

Oceanographer - Level 4:

Oceanographer - Level 5:



Alchemist - Level 1:

Alchemist - Level 2:

Alchemist - Level 3:

Alchemist - Level 4:

Alchemist - Level 5: