DwarfCraft

DwarfCraft - 矮人工艺技能成长插件

玩家进度插件,通过训练NPC提升技能(非经验值)
Bukkit / Spigot 作者 Jessy1237 支持版本 1.7 - 1.14
服务器使用量
未统计
服务玩家数
未统计
下载量
9,869
插件详细介绍

DwarfCraft 是一款 RPG 插件,允许玩家通过提升角色技能来增强能力。玩家可以向训练师支付物品来提升技能,从而获得诸如增加武器伤害、减少工具损耗、提高方块或生物掉落等收益。其训练系统为生存多人服务器提供了一个有趣且持久的 RPG 基础,同时可自定义的种族设定也为服务器故事背景增添了深度。

核心特性

  • 种族系统:玩家可选择扮演任何已配置的种族。默认提供人类、侏儒、矮人和精灵。切换种族将重置所有技能。种族名称完全可配置。若玩家未选择种族,将默认使用配置文件中的设置,或强制其选择后才能开始升级。
  • 交互式训练界面:玩家使用物品 GUI(见第二张截图)进行技能训练和向训练师缴纳物品。
  • 青色按钮:缴纳所有可用的所需物品给训练师。
  • 黄绿色按钮:训练技能。
  • 仙人掌绿色按钮:训练技能,并将剩余物品缴纳给训练师。
  • 单独点击某个物品:仅缴纳该类型物品给训练师。
  • 深度自定义:所有设置、技能、效果和种族均可完全自定义。等级上限理论上可设为 1000,但建议保持在 30 级,除非你熟悉如何相应调整 CSV 文件。
  • 种族专精:种族允许玩家专精于特定技能,使其能突破原版等级上限进行训练。
  • 人类:锻造、烹饪、耕种
  • 精灵:战斗、狩猎
  • 矮人:采矿、挖掘
  • 侏儒:酿造、手工
  • 技能系统:包含 40 多项技能,从 0 级(弱于正常)提升至 30 级(极其熟练)。每项技能包含多种效果,大多数效果在技能 5 级时达到标准水平。技能通过向训练师支付训练成本来提升,成本随等级增加,以鼓励专精。
  • 灵活的训练师:训练师可以是几乎任何实体类型(EntityType)。例如,钓鱼训练师可以是一只鱿鱼。
  • 游戏内信息查询:技能和效果的详细信息可通过游戏内命令轻松查看。

要求与依赖

  • 必需插件
  • Vault
  • Citizens
  • 一个 Vault 支持的权限插件(如 PermissionsEx、GroupManager)
  • 服务端
  • Spigot

命令与权限

所有命令均为基础命令 /DwarfCraft 的子命令,格式为 /DwarfCraft <子命令>

基础命令

  • SkillSheet - 显示你的技能表。
  • Info - 显示 DwarfCraft 的通用信息页面。
  • Rules - 显示 DwarfCraft 配置中设置的服务器规则。
  • SkillInfo - 显示指定玩家特定技能的进度/信息。
  • Race - 显示 DwarfCraft 种族 GUI,用于查看玩家种族信息或进行更改。
  • EffectInfo - 显示指定玩家特定技能的效果。
  • Tutorial - 给予玩家 DwarfCraft 口袋指南。

管理员命令

  • Debug - 更改调试级别,数值越小,调试信息越多。
  • Reload - 重载 DwarfCraft。
  • Race - 允许管理员手动更改玩家的种族。
  • Tutorial - 允许管理员给予玩家 DwarfCraft 口袋指南。
  • List - 列出服务器上所有训练师。
  • SetSkill - 设置指定玩家的指定技能等级。
  • Create - 在你所在位置创建一个 DwarfCraft 训练师。

权限节点

  • dwarfcraft.norm.dwarfcraft - 基础命令权限节点,所有子命令都需要此权限才能工作。
  • dwarfcraft.norm.commandname - 仅用于指定的基础命令。
  • dwarfcraft.norm.race.racename - 用于种族,如果玩家没有此权限,则无法切换至该种族(种族名称需小写)。
  • dwarfcraft.op.commandname - 仅用于指定的管理员命令。

技能分类

工具使用技能

影响工具损耗速度。高级技能可使你从锹、斧、镐中获得多达三倍的使用次数。

  • [1] Pickaxe Use - 镐
  • [2] Shovel Use - 锹
  • [3] Axe Durability - 斧
  • [6] Fisher Man - 鱼竿耐久度和鱼获数量

采集技能

影响从石头、矿石、泥土、沙、砾石、原木等方块中收集材料的速率。高级技能会掉落多个所需方块,并增加瞬间挖掘的机会。

  • [11] Excavator - 圆石瞬间挖掘
  • [12] Quarry Worker - 圆石数量
  • [13] Ore Miner - 金、煤、铁数量
  • [14] Exotic Miner - 绿宝石、青金石、钻石、红石数量
  • [17] Nether Miner - 石英、荧石、下界岩数量
  • [21] Sand Digger - 沙数量及瞬间挖掘
  • [22] Gravel Digger - 砾石和燧石数量及瞬间挖掘
  • [23] Dirt Digger - 泥土数量及泥土/草方块瞬间挖掘
  • [31] Lumberjack - 原木数量及瞬间挖掘

农业技能

处理种植小麦或收集其他植物材料的效率。农夫技能也影响锄的耐久度。

  • [4] Seed Gatherer - 锄耐久度及锄草时种子数量
  • [5] Melon Farmer - 西瓜片数量(来自西瓜块)
  • [6] Fisher Man - 鱼竿耐久度和鱼获数量
  • [41] Wheat Farmer - 收割成熟作物时小麦和种子数量
  • [42] Exotic Farmer - 甘蔗、仙人掌、可可豆数量
  • [43] Vegetable Farmer - 马铃薯和胡萝卜数量
  • [74] Florist - 花和南瓜数量
  • [91] Alchemist - 有时可制作额外药水,并影响下界疣数量
  • [80] Shearer - 剪切哞菇时的蘑菇数量及剪切绵羊时的羊毛数量

制作/熔炼技能

影响在工作台使用标准配方时制作的物品数量。许多制作技能有额外效果。熔炼技能影响熔炼时从熔炉掉落的额外物品数量。

  • [7] Stone Shaper - 石制工具
  • [8] Smelter - 熔炼金/铁矿石时,可能掉落额外锭和石头
  • [9] Iron Forger - 铁制工具
  • [10] Diamond Forger - 钻石工具
  • [15] Wood Carver - 木制工具
  • [16] Gold Forger - 金制工具
  • [32] Wood Splitter - 木板和木棍
  • [51] Mason - 圆石台阶、石台阶和平滑石台阶
  • [53] Wood Crafter - 梯子、栅栏、门、木台阶
  • [61] Book Maker - 书
  • [62] Brick Maker - 砖块
  • [63] Demolitionist - TNT 及爆炸伤害
  • [65] Rail Worker - 铁轨
  • [66] Baker Man - 面包、南瓜派、曲奇、蛋糕、烤马铃薯
  • [67] Fletcher - 箭
  • [68] Grillardin - 熔炼生肉时,可能掉落额外熟肉
  • [86] Exotic Armour - 金和钻石盔甲
  • [88] Sign Maker - 告示牌
  • [89] Torch Maker - 火把
  • [91] Alchemist - 有时可制作额外药水,并影响下界疣数量

伤害减免技能

除了爆破手减少爆炸伤害外,还有影响火焰、跌落、窒息和熔岩伤害的技能。也有影响盔甲耐久度和制作数量的技能。

  • [63] Demolitionist - 爆炸伤害
  • [64] Fire Starter - 火焰伤害,打火石耐久度
  • [72] Climbing - 跌落伤害,短距离跌落豁免
  • [83] Scout - 皮革盔甲耐久度、制作数量、弹射物伤害减免
  • [84] Soldier - 铁盔甲耐久度、制作数量

战斗技能

剑士、斧手和弓手技能影响你使用这些武器造成的伤害。剑士技能也有耐久度效果。

  • [85] Archer - 箭伤害及敌人羽毛/箭掉落
  • [87] Swordsman - 剑伤害及耐久度
  • [101] Axe Swinger - 斧伤害

狩猎技能

允许玩家用剑或弓杀死敌人时收集更多资源。注意,此插件完全移除了以任何其他方式杀死生物的掉落,以防止“自动化刷怪”。

  • [76] Nether Hunter - 烈焰人、岩浆怪、僵尸猪灵、恶魂
  • [81] Animal Hunter - 猪、牛、羊、鸡
  • [82] Monster Hunter - 苦力怕、骷髅、蜘蛛
  • [85] Archer - 僵尸

探索技能

这些技能有益于与探索、旅行和冒险相关的活动。效果多样,但应能带来更成功的荒野之旅和更有价值的材料。

  • [71] Sailor - 船行速度及船损毁结果(水手 >15 级可回收船)
  • [73] Survivalist - 从生猪排、生鱼、蘑菇煲中获得的生命值
  • [75] Dungeon Delver - 怪物刷怪笼可能掉落铁、金、钻石、青金石块

其他技能

  • [99] Noble - 矮人要塞贵族是无用的。DwarfCraft 贵族能更好地挖掘黑曜石,但训练需要数百个鸡蛋。任何收集数百个鸡蛋并整天挖掘黑曜石的玩家都像矮人要塞贵族。

PlaceholderAPI 支持

基础占位符

  • %dwarfcraft_maxskilllevel% - 显示玩家可将技能提升到的最高等级。
  • %dwarfcraft_racelevellimit% - 显示当玩家种族不专精于某项技能时,可提升到的最高等级。

玩家占位符

  • %dwarfcraft_playerrace% - 显示玩家的种族。
  • %dwarfcraft_playerlevel% - 显示玩家的等级。

开发者 API

DwarfCraft 的 API 正在逐步完善。如果你通过 Spigot 创建了该插件的对象,应该可以访问所有内容。你也可以查看源代码以获取帮助,你的 IDE 应能提示大多数方法的作用。Javadocs 正在编写中。

事件

目前有六个事件

  • DwarfLevelUpEvent - 当玩家提升 DwarfSkill 等级时触发。
  • DwarfDepositEvent - 当玩家向训练师缴纳物品以提升 DwarfSkill 时触发。
  • DwarfEffectEvent - 当效果触发时触发(例如,当 DwarfCraft 更改生物掉落、合成配方、方块掉落等时)。
  • DwarfRaceChangeEvent - 当尝试更改玩家种族时触发(在种族更改保存到数据库之前)。
  • DwarfLoadSkillsEvent - 在从 CSV 文件读取所有技能后触发。
  • DwarfLoadRacesEvent - 在读取 races.config 文件后触发。

使用示例

public class Companion extends JavaPlugin implements Listener {
    private DwarfCraft dwarfcraft;

    @Override
    public void onEnable() {
        PluginManager pm = getServer().getPluginManager();
        if (getServer().getPluginManager().getPlugin("DwarfCraft") == null || getServer().getPluginManager().getPlugin("DwarfCraft").isEnabled() == false) {
            System.out.println("[Companion] Couldn't find DwarfCraft!");
            System.out.println("[Companion] Companion now disabling...");
            getServer().getPluginManager().disablePlugin(this);
            return;
        }
        dwarfcraft = (DwarfCraft) pm.getPlugin("DwarfCraft");
        System.out.println("[Companion] Hooked into DwarfCraft!");
        pm.registerEvents(this, this);
        System.out.println("[Companion]" + getDescription().getName() + " version " + getDescription().getVersion() + " is enabled!");
    }

    public void onPlayerInteract(PlayerInteractEvent event) {
        DCPlayer player = dwarfcraft.getDataManager().find(event.getPlayer());
        if (event.getAction() == Action.LEFT_CLICK_BLOCK) {
            if (player.getRace().equalsIgnoreCase("Dwarf")) {
                //DO SOMETHING HERE
            }
        }
    }
}

技能创建指南

此部分旨在帮助你基于已有的技能“骨架”创建新技能。首先,技能和效果之间存在关联。技能是训练师教授给玩家的内容,而效果是技能的作用。如果你的技能 ID 为 6,那么你的效果 ID 范围可以是 60 - 69,即技能 6 的效果 0 到效果 9。

Skill.csv 字段说明

  • ID:技能 ID
  • Name:技能名称
  • Item1:升级技能所需的第一个物品 ID
  • Item1Base:升级所需的基础数量
  • Item1Max:升级技能所需的最大数量
  • Item2:升级技能所需的第二个物品 ID
  • Item2Base:升级技能所需的基础数量
  • Item2Max:升级技能所需的最大数量
  • Item3:升级技能所需的第三个物品 ID
  • Item3Base:升级技能所需的基础数量
  • Item3Max:升级技能所需的最大数量
  • Held:掌握该技能的训练师手持物品的 ID

Effects.csv 字段说明

  • ID:技能 ID 和效果编号(例如,如果你的技能 ID 是 60,那么你的第一个效果 ID 将是 600)
  • BaseValue:效果的基础值(例如,高草丛被破坏时掉落 0.6 个种子)
  • LevelIncrease:根据你的等级添加到效果基础值的增量。可以是负值(例如,在工具耐久度中,你不想让工具更快损坏,因此增量为负值)
  • LevelIncreaseNovice:不太确定其作用,通常是 LevelIncrease 的较小值或 0
  • Min:效果值可以达到的最小值
  • Max:效果值可以达到的最大值
  • Floor:如果为 true,则对效果值取整(即总是向下取整为整数)
  • Exception:如果为 true,则在低技能等级和高技能等级之间,效果值仅使用 ExceptionValue
  • ExceptionLow:应用 ExceptionValue 的区间下限
  • ExceptionHigh:应用 ExceptionValue 的区间上限
  • ExceptionValue:当玩家技能等级在 ExceptionLow 和 ExceptionHigh 区间内时,将替换效果值的值
  • NormalLevel:效果的原始等级(例如,破坏石头时掉落 1 个圆石)
  • Type:效果的类型(见下方效果类型列表)
  • OriginID:效果的方块 ID 或物品 ID。如果类型是 MOBDROP 或 SHEAR,则可以通过 Spigot 的 EntityType.class 中的名称指定生物。如果未指定生物,则应用于掉落 outputID 的所有生物。
  • OutputID:方块被破坏或物品被激活后,效果的输出物品 ID
  • RequireTool:如果为 true,表示你的技能/效果需要工具来激活(例如,采矿需要镐)
  • Tools:如果 RequireTool 为 true,则可以激活效果的工具列表(例如:270 274 257 285 278,仅用空格分隔物品 ID)

效果类型列表

  • BLOCKDROP - 破坏方块时掉落物品堆
  • MOBDROP - 杀死生物时掉落物品堆
  • SWORDDURABILITY - 剑耐久度
  • PVPDAMAGE - 玩家对玩家伤害
  • PVEDAMAGE - 玩家对实体伤害
  • EXPLOSIONDAMAGE - 爆炸伤害
  • FIREDAMAGE - 火焰伤害
  • FALLDAMAGE - 跌落伤害
  • FALLTHRESHOLD - 未知
  • PLOWDURARBILTY - 锄耐久度
  • TOOLDURABILITY - 通用工具耐久度
  • EAT - 玩家进食时决定获得多少饱食度
  • CRAFT - 制作时决定每个配方制作的数量
  • PLOW - 锄草时掉落物品堆
  • DIGTIME - 与挖掘时间相关
  • BOWATTACK - 玩家用弓攻击时造成的伤害
  • VEHICLEDROP - 船或矿车被破坏时是否掉落
  • VEHICLEMOVE - 载具移动速度或能否移动
  • SPECIAL - 特殊且未知
  • FISH - 玩家用鱼竿钓鱼时,除了鱼之外还可能掉落物品堆
  • RODDURABILITY - 玩家成功钓到鱼时损失的耐久度
  • SMELT - 熔炼后从熔炉掉落的物品数量
  • SHEAR - 剪切动物时掉落的物品数量

技能提交

要提交技能以供添加到 DwarfCraft,只需按照以下简单模板和指定说明操作。你可以提交请求(因为基础技能代码未实现),也可以提交包含你技能的已编辑 .csv 文件。

模板:

  • Skill Name:
  • Skill Description (Brief):
  • Skill.csv link (if not a request):
  • Effects.csv link (if not a request):

遵循此模板,我将考虑你的技能,并有望将其添加到官方技能数据库中。如果你有多个要添加或请求的技能,无需发多个帖子,只需列出多个 Skill Name 和 Skill Description 即可。

注意事项

  • 问题反馈:请将所有问题发布在
测试支持版本
1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14
版本分布
基本信息
插件名称 DwarfCraft
作者 Jessy1237
平台 Bukkit / Spigot
支持版本 1.7 - 1.14
点赞数 12
最近版本
暂无数据 -

友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作

历史访问人数:2,666,720  |  历史访问人次:3,232,259

今日访问人数:11,991  |  今日访问人次:13,237

昨日访问人数:30,655  |  昨日访问人次:36,381

Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.

Powered by GermMC 京ICP备17023959号-6