VillagerTradeLimiter (VTL) 是一款用于平衡服务器经济的轻量级插件。它可以通过限制交易次数、折扣幅度和价格上涨等方式来调整村民交易,同时允许你保留所需的原版特性。所有配置均可自定义,支持按世界、职业或物品进行精细控制。
核心功能
- 设置玩家通过治愈僵尸村民和交易可获得的最大折扣百分比。
- 设置村庄英雄效果的最大等级,或完全禁用该效果。
- 设置最大需求值,以限制玩家频繁进行同一交易导致的价格上涨。
- 设置最大使用次数,以限制玩家在村民补货前可购买的数量。
- 为每位玩家添加交易冷却时间。
- 更改村民的补货间隔时间。
- 完全禁用村民交易,支持按世界、按职业或按物品禁用。
- 对受影响的物品及其调整幅度拥有完全控制权。
命令与权限
命令列表
/vtl– 显示帮助信息。/vtl reload– 重载 config.yml 配置文件。/vtl invsee– 查看你所注视的村民的物品栏。/vtl see <player>– 查看另一名玩家的交易价格。
权限节点
villagertradelimiter.*– 使用/vtl和/vtl reload命令。villagertradelimiter.use– 使用/vtl命令。villagertradelimiter.reload– 使用/vtl reload命令。villagertradelimiter.invsee– 使用/vtl invsee命令。villagertradelimiter.see– 使用/vtl see <player>命令。
兼容性
本插件兼容 Bukkit、Spigot 和 Paper 服务端。
已知兼容的插件包括
- Citizens NPCs
- Shopkeepers
- ODailyQuests
关于 bStats
VillagerTradeLimiter 使用 bStats 收集插件使用情况的数据,这有助于我跟踪服务器和插件版本。你可以在 config.yml 中通过将 bStats: true 改为 bStats: false 来关闭此功能。
[点击此处查看 VillagerTradeLimiter 的统计信息!](HERE)
配置详解 (config.yml)
以下是配置文件的主要部分和说明。
全局设置
bStats: true
建议保持为 true,以帮助开发者了解使用情况。
DisableWorlds:
在此列表中添加世界名称,这些世界中的村民交易将保持原版不变。设为 [] 可禁用此功能。
IgnoreCitizens: true与IgnoreShopkeepers: true
若为 true,则忽略 Citizens NPC 和/或 Shopkeepers NPC。
IgnoreHeldItems:
当玩家手持此列表中的物品时,插件将忽略交互。例如 name_tag(命名牌)、ghast_spawn_egg(恶魂刷怪蛋)。设为 [] 可禁用此功能。
DisableTrading:
在此列表中添加世界名称,这些世界中的所有村民交易将被完全禁用。设为 [] 可禁用此功能。
DisableProfessions: []
在此列表中添加职业名称,以阻止村民获得这些职业。
DisableItems: []
在此列表中添加物品名称,以阻止村民提供这些物品作为交易。此变更是永久的,物品无法重新加入交易列表。
经济平衡参数
MaxHeroLevel: -1- 设置“村庄英雄”效果的最大等级,用于限制其带来的价格减免。
- 设为
-1可禁用此功能,保持原版行为。 - 设为
0到5之间的数字以设定最大等级。
MaxDiscount: 0.3- 设置通过交易/治愈僵尸村民可获得的最大折扣百分比。
- 设为
-1.0可禁用此功能,保持原版行为。 - 设为
0.0到1.0之间的数字以限制最大折扣(例如:30% = 0.3)。 - 设为大于
1.0的数字可增加最大折扣(例如:250% = 2.5)。
MaxDemand: -1- 设置所有物品的最大需求值,以限制因需求导致的价格上涨。
- 设为
-1可禁用此功能,保持原版行为。 - 设为
0或更高的数字以设定所有物品的最大需求。 - 警告:若原有需求高于 MaxDemand,则超出部分无法恢复。
MaxUses: -1- 设置村民缺货前,玩家可进行任何交易的最大次数。
- 设为
-1可禁用此功能,保持原版行为。 - 设为
0或更高的数字以更改所有物品的最大使用次数。
冷却与补货
Cooldown: 0- 设置每位玩家、每项交易在现实世界时间中的冷却时间。
- 设为
0可禁用此功能,保持原版行为。 - 使用
<数字><单位>格式,例如7d或30s。有效单位包括:
- `s` – 秒- `m` – 分钟- `h` – 小时- `d` – 天- `w` – 周Restock: 0- 设置每个村民、每项交易的补货冷却时间(现实世界时间)。
- 格式和选项与
Cooldown相同。
按物品覆盖设置
在 Overrides: 部分,你可以为特定物品覆盖全局设置。格式如下:
- 附魔书必须使用格式:
enchantment_name_level(例如:mending_1)。 - 其他所有物品使用格式:
item_name(例如:stone_bricks)。
对于每个添加的物品,你可以禁用交易(设置 Disabled: true),或覆盖 MaxDiscount、MaxDemand、MaxUses、Cooldown 等值。
示例配置片段
Overrides:
mending_1:
MaxDiscount: 0.1
MaxDemand: 36
name_tag:
MaxDiscount: -1.0
MaxDemand: 60
MaxUses: 2
Cooldown: 7d