Перейти к содержимому
Mineforgian

Epiphany - Modular Skill Tree

A Data-driven Modular Skill Tree API mod

Загрузки
260
Подписчики
2
Обновлён
21 августа 2026 г.
Лицензия
MIT

Опубликован 13 июля 2026 г.

Epiphany - Modular Skill Tree

banner

夫尽小者大,积微者著。
Greatness is built from the smallest deeds; distinction from the smallest gains.

Xunzi · General Principles

Epiphany is a data-driven, modular skill tree mod for Minecraft, inspired by the Tradition mechanics of the classic sci-fi strategy game Stellaris. As an API mod designed for developers, it does not include any built-in skill tree content or attribute modifications. Instead, it provides a highly flexible character building framework for modpack and mod authors.

Requires LDLib as a dependency.

Quick Start

  • Press the K key to open the Build System GUI.
  • Check out the example datapack and the Wiki to dive deeper into Epiphany and quickly create your own skill trees.

Features

  • Modular Building: Say goodbye to massive, monolithic skill trees. Players freely mix and match modules to craft their own unique progression path.
  • Fully Data-Driven: All modules, insights, epiphanies, and paths are defined through datapacks. Create a vast RPG skill system without writing a single line of Java.
  • Rich Built-in Presets: The mod ships with an extensive set of conditions and rewards ready to use out of the box:
    1. 30+ Condition Types: Dynamically evaluate player attributes, current structure, statistics, and more to auto-unlock modules and epiphanies. Includes logical and relational operators for complex expressions.
    2. 14+ Reward Types: Vanilla attribute modifiers, command execution, item granting, status effects, and much more.
    3. 16 Aptitude Sources: Mining blocks, exploring biomes, slaying mobs... and what's more — aptitude gain is fully customizable!
  • Highly Configurable: Through the config file, authors can easily adjust the aptitude level-up formula, player slot limits, experience gain multipliers, and notification toggles, blending seamlessly into any modpack's progression balance.
  • Strong Compatibility & Mod Support: Integrates with FTB Quests, KubeJS, and other mainstream modpack development tools. Provides an open API, custom events, and supports KubeJS scripting for both event listening and API calls.
  • Polished GUI: Built on LDLib, Epiphany features a carefully crafted UI with smooth node connections, draggable insight trees, and dynamic layout adjustments for a refined player experience.

Mod Architecture

  • Module: An independent, self-contained skill tree unit. Developers can configure selection costs, module caps, and more.
  • Insight: The smallest unit within a module — incremental upgrade nodes. Their effects tend toward quantitative changes (minor stat adjustments, etc.). Insights within a module automatically form a tree structure based on depth; an insight can only be unlocked once all of its parent nodes are lit.
  • Epiphany: When a player fully unlocks every insight within a module, the module is completed and grants +1 Epiphany Slot. The player can then use this slot to freely activate an Epiphany. Epiphany effects tend toward qualitative changes (new mechanics, powerful passives). Developers can set the maximum epiphany slot count.
  • Path: An optional categorization label for epiphanies. Epiphanies without a specified path fall into the default group.
  • Aptitude: The player's experience reservoir, earned by performing behaviors defined in datapacks. The formula for required aptitude per level is configurable.
  • Insight Point: Each time the aptitude bar fills, it automatically converts into 1 Insight Point. Players spend Insight Points to select modules and unlock insights.

Advanced Development & Future Plans

Want to go beyond the built-in presets? Epiphany offers comprehensive extension channels:

  • Rich custom events and APIs
  • KubeJS scripting support for event listening and data management
  • Conditions, rewards, and aptitude sources are all registered through the registry system — developers are welcome to build advanced gameplay addons on top of Epiphany

The author is also planning a series of addon packs that integrate with more mainstream mods for expanded data and behavior compatibility. Stay tuned!

AI Content Disclosure

During the development of this mod, AI tools were extensively used to automate batch coding tasks, greatly improving development efficiency. However, the core logic, framework architecture, UI/UX design, and all product details were fully directed and executed by human authors, while AI served only as an assistive tool.

Ченджлог

1.2.4Релиз1.21.1 · 21 августа 2026 г.

New Features

  • Added two new condition types: item_crafted and item_broken.
  • Added AptitudeManager.addAptitudeWithMultiplier, which applies the player's aptitude gain multiplier (aptitude_gain_multiplier) when granting Aptitude.

Improvements

  • Improved condition auto-unlock logic and code structure.
1.2.3Релиз1.21.1 · 20 августа 2026 г.

New Features

  • Added three new Aptitude sources:
    • epiphany:pickup_item - triggered when a player picks up a ground item.
    • epiphany:craft_item - triggered when a player completes a crafting operation.
    • epiphany:smelt_item - triggered when a player takes a smelted item from a furnace.
  • Added statistic-category support to the epiphany:statistic condition type.

Bug Fixes

  • Fixed an issue where epiphany:statistic could incorrectly resolve ResourceLocation values.
1.2.2Релиз1.21.1 · 18 августа 2026 г.

Improvement

  • Refactored the attribute reward type.

As a rule of thumb, the fewer the words, the bigger the matter — attribute reward types are among the most critical reward categories, and test cases may inevitably fail to cover every scenario. Please be sure to back up before updating, and feel free to report any issues you encounter.

1.2.1Релиз1.21.1 · 14 августа 2026 г.

New Features

  • Added sorting logic for Epiphany and Module in the GUI; they will now be ordered according to the chronological order of selection.
  • Added the attribute aptitude_gain_multiplier to replace the fixed calculation method previously defined in Config.

Improvements

  • Optimized performance of data attachments.

Note

This update deprecates the original aptitude_gain_multiplier setting in the configuration file. The value is now managed via the attribute system, with a default of 1.0D that cannot be modified manually. If you need to change the default value, please use the vanilla method for modifying attributes.

1.2.0Релиз1.21.1 · 12 августа 2026 г.

New Features

  • Added EpiphanyDataUtils class, providing resetAll and resetSelections methods for use by commands and KubeJS scripts.
  • Added convenience methods to AptitudeManager: addInsightPoints, fillAptitude, getRequiredForNextPoint.
  • Extended KubeJS Epiphany bindings with additional methods for resetting data and modifying aptitude and insight points.
  • Added 6 batch query APIs for datapack registries: allModuleIds, allModules, allEpiphanyIds, allEpiphanies, allInsightIds, allInsights.

Improvements

  • Simplified and refactored EpiphanyCommand, extracting inline reset logic into a public utility class, reusable by both commands and KubeJS scripts.
  • Refactored /epiphany aptitude fill and /epiphany insight add commands to uniformly use the new AptitudeManager API.

This update focuses on API and command-layer refactoring and optimization. All existing behaviors remain unchanged, and there are theoretically no compatibility issues. If you encounter any bugs, please revert to the previous version and report them via Github issue.

1.1.2Релиз1.21.1 · 2 августа 2026 г.

Improvements

  • Optimized the initial positioning of large insight trees.
  • Optimized the rendering method for insight tree depth.
  • Optimized the detection mechanism for large insighttrees.

Bug Fixes

  • Fixed an issue where large insight trees were not centered in dynamic module cards.
  • Fixed an issue where the root node of a insight tree could be incorrect.
  • Fixed an issue with inconsistent inset margins for drag boundaries.

This update is a UI improvement and has no compatibility issues.

1.1.1Релиз1.21.1 · 1 августа 2026 г.

Improvements

  1. Refactored EffectReward, added an effect source-tracing mechanism
  2. Tightened numeric validation on the Effect Reward codec: amplifier now only accepts natural numbers (≥ 0), and duration only accepts -1 or positive integers
  3. Optimized the data storage structure for permanent rewards
  4. Improved the reward update mechanism on datapack reload
  5. Performance optimizations

Bug Fixes

  1. Fixed some Insight Tree nodes not being centered properly
  2. Fixed temporary Effect rewards being incorrectly re-applied as persistent
  3. Fixed permanent Effects not being cleared correctly by /epiphany reset
  4. Fixed forceSelect / forceComplete not granting rewards correctly

This update is theoretically non-breaking — existing saves and datapacks can continue to be used. If you encounter any issues, please roll back to the previous version and report them via a GitHub issue.

1.1.0Релиз1.21.1 · 29 июля 2026 г.

New Features

  • Reward List: The reward field now supports multiple rewards, allowing a single Insight / Epiphany to trigger several effects at once
  • Item Icon (item_icon): Added an item_icon field that lets developers easily set Insight and Epiphany icons via item IDs

Improvements

  • Improved the drag interaction for Large Insight Tree
  • Refactored and cleaned up the codebase for better maintainability

This update is theoretically backward compatible with existing datapacks, but backing up before upgrading is still recommended.

Комментарии

Загружаем…