= 创作分享 =
你问我答
Fabric1.19.4有没有可以修改装备数值的模组? ...
知逝之书

Fabric1.19.4有没有可以修改装备数值的模组?

知逝之书 于 2023-11-3 18:58 ( 6月前 ) [复制链接] [只看楼主] [打印]
573 6
15RF
本帖最后由 Si_Di_Hu_1 于 2023-11-4 08:15 编辑

最近在做一个整合包,模组里面的部分装备数值不符合我的预期,我想知道有没有什么模组能修改装备的数值,或者CrT能改吗?非常感谢

最佳答案

查看完整内容

Crt修改装备属性的方法可以参考这个帖子里我的全部回答,理论上适用版本是1.16-1.20,不懂就追问吧 https://bbs.mcmod.cn/forum.php?mod=viewthread&tid=12567&extra=&page=1
发表于 2023-11-3 18:58:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

回复 | 举报

该帖共收到 6 条回复!
Alanight
Crt修改装备属性的方法可以参考这个帖子里我的全部回答,理论上适用版本是1.16-1.20,不懂就追问吧
https://bbs.mcmod.cn/forum.php?m ... p;extra=&page=1
发表于 2023-11-3 18:58:05 | 只看该作者

回复 | 举报

Alanight
本帖最后由 QQ酱199171 于 2023-11-9 17:01 编辑

这是适用于新版本的示例代码,原理和之前那个帖子是一样的,需要教程的再和我说
  1. import crafttweaker.api.item.IItemStack;
  2. import crafttweaker.api.ingredient.IIngredient;
  3. import crafttweaker.api.entity.attribute.AttributeOperation;

  4. //将铁头盔的护甲值修改为15
  5. var armor_value = 15.0;
  6. <item:minecraft:iron_helmet>.anyDamage().addGlobalAttributeModifier(
  7.     <attribute:minecraft:generic.armor>,           // 修饰的属性为护甲值
  8.     "2ad3f246-fee1-4e67-b886-69fd380bb150",        // 原版槽位为头部,属性为护甲值的物品的属性修饰符的uuid,可用指令获取
  9.     "Armor modifier",                              // 添加的修饰符的名称
  10.     armor_value,                                   // 添加的修饰符的具体修饰值
  11.     AttributeOperation.ADDITION,                   // 确定修饰符运算模式为加法
  12.     [<constant:minecraft:equipmentslot:head>]      // 设定修饰符起作用的物品栏槽位只有头部
  13. );

  14. //将铁头盔的盔甲韧性修改为5
  15. var toughness = 5.0;
  16. <item:minecraft:iron_helmet>.anyDamage().addGlobalAttributeModifier(
  17.     <attribute:minecraft:generic.armor_toughness>, // 修饰的属性为盔甲韧性
  18.     "2ad3f246-fee1-4e67-b886-69fd380bb150",        // 原版槽位为头部,属性为盔甲韧性的物品的属性修饰符的uuid,巧合地与护甲值修饰符一致
  19.     "Armor toughness",                             // 添加的修饰符的名称
  20.     toughness,                                     // 添加的修饰符的具体修饰值
  21.     AttributeOperation.ADDITION,                   // 确定修饰符运算模式为加法
  22.     [<constant:minecraft:equipmentslot:head>]      // 设定修饰符起作用的物品栏槽位只有头部
  23. );

  24. //将铁剑在主手的伤害修改为20
  25. var damage = 19.0;
  26. <item:minecraft:iron_sword>.anyDamage().addGlobalAttributeModifier(
  27.     <attribute:minecraft:generic.attack_damage>,   // 修饰的属性为攻击伤害
  28.     IItemStack.BASE_ATTACK_DAMAGE_UUID,            // 原版槽位为主手,属性为攻击伤害的物品的属性修饰符的uuid,推荐直接调用CraftTweaker设置的常量
  29.     "Weapon modifier",                             // 添加的修饰符的名称
  30.     damage,                                        // 添加的修饰符的具体修饰值
  31.     AttributeOperation.ADDITION,                   // 确定修饰符运算模式为加法
  32.     [<constant:minecraft:equipmentslot:mainhand>]  // 设定修饰符起作用的物品栏槽位只有主手
  33. );

  34. //将铁剑在主手的攻速修改为3,玩家初始攻速为4,因此设置的数值为(3-4)=-1
  35. var attackspeed = -1.0;
  36. <item:minecraft:iron_sword>.anyDamage().addGlobalAttributeModifier(
  37.     <attribute:minecraft:generic.attack_speed>,    // 修饰的属性为攻速
  38.     IItemStack.BASE_ATTACK_SPEED_UUID,             // 原版槽位为主手,属性为攻速的物品的属性修饰符的uuid,推荐直接调用CraftTweaker设置的常量
  39.     "Weapon modifier",                             // 添加的修饰符的名称
  40.     attackspeed,                                   // 添加的修饰符的具体修饰值
  41.     AttributeOperation.ADDITION,                   // 确定修饰符运算模式为加法
  42.     [<constant:minecraft:equipmentslot:mainhand>]  // 设定修饰符起作用的物品栏槽位只有主手
  43. );

  44. //将铁剑耐久值修改为3200
  45. <item:minecraft:iron_sword>.maxDamage = 3200;

复制代码
发表于 2023-11-9 16:59:51 | 只看该作者

回复 | 举报

Alanight
本帖最后由 QQ酱199171 于 2023-11-9 19:06 编辑

再补充一些参数:
一些uuid:
槽位为上半身,属性为护甲值、盔甲韧性或击退抗性的物品的属性修饰符:
9f3d476d-c118-4544-8365-64846904b48e
槽位为腿部,属性为护甲值、盔甲韧性或击退抗性的物品的属性修饰符:
d8499b04-0e66-4726-ab29-64469d734e0d
槽位为脚部,属性为护甲值、盔甲韧性或击退抗性的物品的属性修饰符:
845db27c-c624-495f-8c9f-6020a9a58b6b

原版的装备槽位:
<constant:minecraft:equipmentslot:chest>
<constant:minecraft:equipmentslot:feet>
<constant:minecraft:equipmentslot:head>
<constant:minecraft:equipmentslot:legs>
<constant:minecraft:equipmentslot:mainhand>
<constant:minecraft:equipmentslot:offhand>
按顺序依次是上半身、脚部、头部、腿部、主手、副手

原版的属性:
<attribute:minecraft:generic.max_health>
<attribute:minecraft:generic.attack_speed>
<attribute:minecraft:generic.armor>
<attribute:minecraft:generic.knockback_resistance>
<attribute:minecraft:generic.luck>
<attribute:minecraft:generic.movement_speed>
<attribute:minecraft:generic.flying_speed>
<attribute:minecraft:generic.armor_toughness>
<attribute:minecraft:generic.attack_damage>
<attribute:minecraft:generic.attack_knockback>
<attribute:minecraft:generic.follow_range>
<attribute:minecraft:horse.jump_strength>
<attribute:minecraft:zombie.spawn_reinforcements>
依次为最大生命值、攻击速度、盔甲值、击退抗性、幸运、移动速度、飞行速度、盔甲韧性、攻击伤害、
生物击退力度(与玩家无关)、生物追踪距离(与玩家无关)、马匹跳跃力度、僵尸支援力度


发表于 2023-11-9 19:03:23 | 只看该作者

回复 | 举报

Alanight
uuid和装备槽位的获取方式可参考我之前的那个回答。
其实属性和装备槽位是可以一键获取的,只需要输入一些指令,然后在crafttweaker的日志中查看:
获取当前游戏全部属性:/ct dump attributes
获取当前游戏全部装备槽位:/ct dump constant,然后从中筛选出带有equipmentslot字段的即可
或者直接使用/ct dump_brackets,会生成ct_dumps文件夹,在这里面可以找到 (推荐)
发表于 2023-11-9 19:16:49 | 只看该作者

回复 | 举报

知逝之书
本帖最后由 Si_Di_Hu_1 于 2023-11-8 19:13 编辑
QQ酱199171 发表于 2023-11-3 18:58
Crt修改装备属性的方法可以参考这个帖子里我的全部回答,理论上适用版本是1.16-1.20,不懂就追问吧
https:/ ...
大佬,看不懂啊,希望能给个1.19.4的示例,我会变通(厚着脸皮)
发表于 2023-11-8 12:47:28 | 只看该作者

回复 | 举报

Alanight
Si_Di_Hu_1 发表于 2023-11-8 12:47
大佬,看不懂啊,希望能给个1.19.4的示例,我会变通(厚着脸皮)

刚刚测试了一下,发现1.19的CraftTweaker做了一些改动,之前的方法不能完全适用,不过实际改动的地方很少。需要我重新写一遍教程吗?
示例文件的话,我等会写(新建文件夹ing...)

评分

参与人数 1RF +5 Vis +2 收起 理由
Si_Di_Hu_1 + 5 + 2 大佬太厉害了!(震惊)

查看全部评分

发表于 2023-11-9 14:54:47 | 只看该作者

回复 | 举报

百科目前不允许匿名发帖哦~ 请先 [ 登陆 ][ 注册 ] 吧~

本版积分规则

发新帖
  • 回复
  • 点评
  • 评分

[ MC百科(mcmod.cn) 除另有声明,所有开放公共编辑的内容均使用 BY-NC-SA 3.0 协议 ]

Minecraft百科CC协议
快速回复 返回顶部 返回列表