promotional bannermobile promotional banner

Zifeng Skill Tree

Convert FE energy into skill points and unlock 32 skills — base attributes, amplifiers, ultimates, and combat auras — in a full skill tree for NeoForge 1.21.1.
Back to Files

zifeng_s_custom_skill_tree-1.21.1-NeoForge-1.4.2.jar

File namezifeng_s_custom_skill_tree-1.21.1-NeoForge-1.4.2.jar
Uploader
wuliaoaszqbwuliaoaszqb
Uploaded
Sep 21, 2026
Downloads
42
Size
583.8 KB
Mod Loaders
NeoForge
File ID
8940165
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:zcs-1643398:8940165"

Learn more about Curse Maven

What's new

==================================================
Zifeng Skill Tree — CurseForge 更新报告(双语精简版)
Zifeng Skill Tree — CurseForge Changelog (Bilingual)
Minecraft 1.20.1 Forge + 1.21.1 NeoForge · v1.4.2
==================================================

【版本 Version】v1.4.2

--------------------------------------------------
English Version:
--------------------------------------------------
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
v1.4.2  ·  1.20.1 Forge + 1.21.1 NeoForge
MAJOR UPDATE — 21 new skills (Goety + Arcane Protection), independent UI scaling, skill search
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎁  NEW SKILLS

1) Goety compatibility — 11 new skills (Magic column)
   Spell Potency (flat +10 per level) and Soul Discount (up to −80% soul cost),
   plus a mastery for each of the 9 Goety schools: Abyss, Frost, Geomancy,
   Necromancy, Nether, Storm, Void, Wild and Wind.
   Each school mastery raises that school's spell power and lowers its soul cost
   (power +10 / cost −10% per level, cost caps at −80%).
   Goety is a soft dependency — hidden and silent when absent.

2) Arcane Protection — 10 new skills spanning four columns
   A complete answer to damage that ignores armour (magic, wither, dragon breath).

   Magic column:
     · Arcane Bulwark — +0.6 magic defence per level; reduction = D / (D + 1200)
     · Arcane Mastery — adds +0.4 magic defence per level on top of the Bulwark
     · Spell Dampening — +0.5 defence per level against indirect damage only
       (arrows, spell projectiles; melee is unaffected), reduction = D / (D + 800)

   One-time passives:
     · Adaptive Body — +2% reduction per consecutive hit of the same damage type,
       up to +60%; switching damage type resets the stacks instantly
     · Spell Reflection — 30% chance to reflect magic damage at the caster;
       reflected damage can never kill (leaves at least 1 HP) and never reflects again
     · Spell Purge — clears one debuff when you take magic damage (5 s cooldown)
     · Mana Siphon — heal for 10% of the original magic damage taken
     · Spellbreak Blade — melee hits strip one buff and deal +15% per buff removed
       (max +60%); no effect on player targets

   Aura column:
     · Purification Field — every 3 s removes one debuff from you and nearby allies
       within 8 blocks (other players, tamed mobs, allies)

   Ultimate column:
     · Zifeng's Arcane Body — requires Arcane Bulwark 100 + Arcane Mastery 50;
       a further +35% magic reduction stacked multiplicatively, and a prerequisite
       of Master of All

   Why these percentages can never reach 100%: reduction uses the MOBA-style
   D / (D + K) curve, so effective HP grows linearly with defence — every level keeps
   its value, and multiple layers combine as 1−(1−a)(1−b) instead of being added.

3) Independent UI scaling for the skill tree
   A new Settings panel (bottom-right) controls the skill tree's own size, completely
   independent of the vanilla GUI Scale setting — so the interface no longer changes
   when you switch to a different monitor or tweak video settings.
   Offset −50 to +100 (50%–200%), with two modes: Adaptive (auto-fit to screen) and
   Manual (slider, step 1 / Shift 10 / Ctrl 100, or type a value directly).

4) Skill search
   A search box in the title row: type a skill name or ID to filter instantly, ↑/↓ to
   walk through your search history (JEI-style), ✕ to clear, and the matched row is
   highlighted so you can find it at a glance.

5) Complete attribute readout on every skill row
   Every skill now shows its numeric contribution inline, including 33 skills that
   previously showed nothing (percentages such as +25%✦) and 56 functional labels for
   skills whose effect is not a plain number. Items are dropped whole rather than
   clipped, so a value is never half-drawn.

⚖️  BALANCE

6) Level compression — thousands of levels become hundreds
   Skills that used to cap at 1000 levels now cap at 100; those that capped at 500 now
   cap at 50. The per-level effect is multiplied by the same factor, so the total power
   at max level is exactly the same — you simply reach it in fewer, more meaningful
   steps (and the level text stays readable).

7) Skill reorganisation
   · Iron Body was removed; its job is now split between Bedrock Body and Golden Truth
   · Golden Truth moved from the Amplify column to the Ultimate column, so it now sits
     directly above Invulnerable Body in the prerequisite chain
   · Column counts are now: Magic 29, Base 15, Amplify 15, Ultimate 21, Special 24,
     Aura 11, Global 3, Machine 13, Gift 11 → 142 skills + 1 stick-tool placeholder

8) Skills that used to stop scaling now keep scaling
   · Purification Field — its interval was a constant; it now shrinks by 3% per level
   · Healing Aura — amplifier hit the vanilla cap at level 7 and every level above was
     wasted; the surplus is now paid out as extra healing per cycle

🔴  FIXES

9) 1.20.1 — the two jump-height skills did nothing
   1.20.1's getJumpPower() is hardcoded to 0.42 and never reads the jump-strength
   attribute, so writing to that attribute had no effect at all. Added a mixin that
   makes 1.20.1 read the attribute (1.21.1 already does), and corrected the base value.

10) Goety soul discount showed a wrong level cap
    Magic-column skills apply a ×10 level multiplier, so the display cap (80/100) did
    not match the real cap. Corrected to 8 and 80 respectively, together with 13
    Goety/Iron skill descriptions.

11) Attribute readouts could overflow their column
    Wide values now drop whole items instead of being clipped mid-glyph.

🎨  INTERFACE

12) Space is now given up instead of overlapping
    When a row runs out of room, it sacrifices things in a fixed order — column gaps
    first, then the attribute readout, then finally the level bar — and the level bar
    is hard-clamped so it can never reach into the Q/E/R key cells. Previously the
    level bar pushed straight into the hotkey area on narrow windows.

13) Crisp text rendering
    The skill tree's non-integer scale used to blur the bitmap font. Text is now drawn
    at the original integer GUI scale, so glyphs stay sharp at any window size — and
    drop shadows were removed throughout the interface, which is what removed the faint
    double-image on light backgrounds such as the search box.

14) Skill rows keep a fixed length and stay left-aligned
    Extra horizontal room now becomes empty space on the right instead of stretching the
    row, so the columns stay put and you can read attributes while adjusting skills
    without your eyes jumping around.

⚙️  SYSTEM

15) Config migration
    Forge/NeoForge keep old values for keys that already exist in your config file, so
    changed defaults silently did nothing on existing modpacks. A new internal
    configVersion now force-syncs the keys whose defaults we changed (idempotent, runs
    once, and you can still edit them freely afterwards).

16) Flight is preserved across logout
    If you were flying with the skill when you logged out, you resume flying once when
    you come back (no more falling to your death on login).

17) Zone batching
    A selection is now split into zoneBatchSide × zoneBatchSide columns (default 256,
    Y is never split), so memory and per-tick load stay flat no matter how large the
    zone is.

📌  COMPATIBILITY
   · Existing saves are fully compatible — no data migration needed.
   · Both platforms are identical in features and version: 142 skills + 1 stick-tool
     placeholder / 10 columns.
   · Goety, Ars Nouveau, Iron's Spells 'n Spellbooks and AE2 are all soft dependencies —
     hidden and silent when absent. No hard dependency, works standalone.

Requirements: Forge 47.3.0+ (1.20.1, Java 17) / NeoForge 21.1.248+ (1.21.1, Java 21). No required dependencies.
Need an energy-generating mod to use the Skill Point Converter (1 skill point = 100,000,000 FE).

--------------------------------------------------
中文版:
--------------------------------------------------
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
v1.4.2  ·  1.20.1 Forge + 1.21.1 NeoForge
大型内容版 · 21 个新技能(Goety 诡术 + 奥术防护)+ 界面独立缩放与搜索
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎁  新增技能

① Goety(诡术)兼容 —— 11 个新技能(魔法增幅列)
   诡术精研(法术强度,每级 +10)与魂能节流(灵魂消耗最高 −80%),
   外加 9 个流派精通:深渊回响、霜华之息、地脉共鸣、亡者低语、炼狱焚风、
   雷霆风暴、虚空湮灭、荒野之怒、风灵轻语。
   每个流派精通同时提升该流派法术强度并降低其灵魂消耗
   (每级强度 +10 / 消耗 −10%,消耗 8 级封顶 −80%)。
   Goety 为软依赖:未安装时功能隐藏且无任何报错。

② 奥术防护 —— 10 个新技能,横跨四列
   针对「护甲无效」伤害(魔法/凋零/龙息)的完整方案。

   魔法增幅列:
     · 奥术壁垒 —— 每级 +0.6 魔法防御值,减伤 = 防御值 ÷(防御值 + 1200)
     · 奥术真解 —— 在壁垒之上每级再追加 +0.4 魔法防御值
     · 法术抑制 —— 每级 +0.5 防御值,仅对间接伤害生效
       (箭矢、法术弹射物等,近战不受影响),减伤 = 防御值 ÷(防御值 + 800)

   一次性奇技:
     · 适应之躯 —— 连续受到同类型伤害时每层 +2% 减伤,最多 +60%;
       一旦换成别的伤害类型,层数立即重置
     · 法术反射 —— 受到魔法伤害时 30% 概率反射给施法者;反射伤害不会致死
       (最多打到剩 1 点血),且不会再次触发反射
     · 驱法破咒 —— 受到魔法伤害时清除自身一个负面效果,冷却 5 秒
     · 法力虹吸 —— 受到魔法伤害时按原始伤害的 10% 回复生命
     · 破法之刃 —— 近战命中驱散目标一个增益并按增益数量增伤
       (每个 +15%,上限 +60%),对玩家目标不生效

   杀戮光环列:
     · 净化领域 —— 每 3 秒清除自己与 8 格内友方各一个负面效果
       (友方 = 其他玩家/已驯服生物/盟友)

   终极节点列:
     · 子枫的奥术神体 —— 前置奥术壁垒 100 级 + 奥术真解 50 级;
       在壁垒基础上额外 +35% 魔法减伤(乘算叠加),同时是【全能精通】的前置

   为什么这些减伤永远到不了 100%:采用 MOBA 通用的「防御值 ÷(防御值 + K)」
   曲线,有效生命随防御值线性增长 —— 每一级都有价值;多层之间用
   1−(1−a)(1−b) 独立乘算,而不是直接相加。

③ 技能树界面独立缩放
   右下角新增「设置」面板,可单独调整技能树界面尺寸,完全独立于原版 GUI 尺寸
   —— 换显示器或改视频设置都不会再影响它。
   偏移 −50 ~ +100(50%~200%),两种模式:自适应(按屏幕自动适配)与
   手动(滑块拖动,步进 1 / Shift 10 / Ctrl 100,也可直接输入数值)。

④ 技能搜索
   标题行新增搜索框:输入技能名或 ID 即时筛选,↑↓ 翻历史关键词(JEI 式操作),
   ✕ 一键清空;命中的那一行会高亮,一眼就能找到。

⑤ 全技能属性显示补全
   每个技能行都直接显示它的数值贡献:33 个此前为空的技能补上了数值
   (百分比形式如 +25%✦),另有 56 个非纯数值技能补上了功能标签。
   超宽时整项隐藏而不是截断,不会出现画一半的数值。

⚖️  平衡调整

⑥ 等级压缩 —— 上千级收敛为上百级
   原上限 1000 级的技能改为 100 级,原 500 级的改为 50 级;每级效果按同一倍率放大,
   因此满级总效果完全一致 —— 只是用更少、更有意义的级数达成(等级文字也不再挤)。

⑦ 技能重组
   · 移除「铁壁金身」—— 职责拆给磐石之躯 + 金身真解
   · 金身真解从增幅列移入终极节点列,现在正好排在「不坏金身」上方形成完整前置链
   · 各列数量现为:魔法 29 / 基础 15 / 增幅 15 / 终极 21 / 特殊被动 24 /
     光环 11 / 寰宇法则 3 / 机械共鸣 13 / 馈赠 11 → 142 技能 + 1 木棍工具占位

⑧ 原本「到某级就不再成长」的技能已修复
   · 净化领域 —— 间隔原本是定值,现在每级缩短 3%
   · 治愈光环 —— 效果等级在第 7 级撞上原版上限、之后每级都白花;多出的部分
     现在改为每周期额外治疗量

🔴  重要修复

⑨ 1.20.1 —— 跳跃高度两个技能完全不生效
   1.20.1 的跳跃力计算写死为 0.42,根本不读跳跃强度属性,所以往那个属性上写值
   毫无作用。已新增 mixin 让 1.20.1 读取该属性(1.21.1 本来就会读),并修正基础值。

⑩ 魂能节流显示的等级上限不对
   魔法列技能会套用 ×10 等级倍率,导致显示上限(80/100)与实际不符。
   已修正为 8 与 80,并同步修正 13 条 Goety/铁魔法技能描述。

⑪ 属性数值可能溢出所在列
   过宽的数值改为整项舍弃,而不是在字形中间截断。

🎨  界面

⑫ 空间不足时改为「牺牲」而不是重叠
   一行空间不够时按固定顺序舍弃:先压列间距 → 再舍属性显示区 → 最后才动等级进度条;
   且进度条被硬性限制,绝不会伸进 Q/E/R 快捷键格。此前进度条会直接压进快捷键区。

⑬ 文字清晰化
   技能树的非整数缩放原本会把位图字体糊掉。现在文字按原版整数 GUI Scale 绘制,
   任何窗口尺寸下字形都保持锐利;同时全界面去掉了文字投影 ——
   正是它造成了搜索框等浅色背景上那层淡淡的「第二层字」。

⑭ 技能贴片固定长度、左对齐
   多余的横向空间变成右侧留白,而不是把贴片拉长 —— 各列位置不再漂移,
   可以一边看属性一边调整技能,视线不用来回追。

⚙️  系统

⑮ 配置迁移机制
   Forge/NeoForge 对配置文件里已存在的键会保留旧值,导致我们改了默认值后
   在老整合包里「看起来完全没生效」。新增内部配置版本号,会强制同步我们改过默认值的键
   (幂等,只跑一次,之后仍可自由修改)。

⑯ 飞行状态跨登录保持
   带着技能飞行时下线,重进存档后会恢复一次飞行,不再一上线就往地上掉。

⑰ 选区分批
   选区现在会被切成 zoneBatchSide × zoneBatchSide 根柱(默认 256,Y 方向不分批),
   内存与单 tick 负载不随选区面积增长。

📌  兼容性
   · 旧存档完全兼容 —— 无需任何数据迁移。
   · 双平台功能与版本号完全一致:142 技能 + 1 木棍工具占位 / 10 列。
   · Goety、新生魔艺、铁魔法、AE2 均为软依赖 —— 未安装时功能隐藏且无报错,
     无任何硬依赖,可独立使用。

环境要求:Forge 47.3.0+(1.20.1,Java 17)/ NeoForge 21.1.248+(1.21.1,Java 21)。无必需依赖。
使用星能转换机需要配合一个可以发电的模组(1 技能点 = 1 亿 FE)。

This mod has no additional files