# Civilization Endpoint
Civilization Endpoint is a server-authoritative, data-driven knowledge network for Forge 1.20.1 progression packs. It turns “what the player is allowed to do” into editable data: branches, nodes, locks, experience sources, eras, and gates.
## What it does
- Lock items, blocks, tags, and dimensions behind unlockable branches.
- Build node costs, prerequisites, requirements, eras, specialization, and decay.
- Add emergence rules, structure discovery, dimension gates, mount gates, barter gates, and lifecycle rules.
- Gate use, place, break, and craft separately with item, tag, and wildcard locks.
- Keep all decisions server-side; the client only renders the synced graph.
## For modpack authors
- `BASIC` mode includes a complete example progression.
- `FRAMEWORK` mode starts empty and only uses author data.
- Edit the graph in-game and export a world datapack.
- Use `/ce validate` to check the graph and mechanics.
- Optional integrations: KubeJS, FTB Quests, Curios, GameStages, and ContentGuard.
- No Mixin, no ASM, and no hard dependency on optional mods.
## Built-in content
The example pack contains:
- 11 branches
- 120 nodes
- 3 eras
- 6 categories
- 36 branch groups
- 120 experience sources
- 2 leap nodes and 9 emergence rules
You can play it as-is or replace it entirely.
## In-game editor
The editor covers branches, nodes, locks, experience sources, mechanics, recipes, loot, icons, categories, eras, and FTB links. It saves to a world datapack and reloads it automatically. The editor is intended for singleplayer or local authoring; use the exported datapack on servers.
## Behavior recorder
Press F8 to record observable actions and write disabled `behaviors.json` candidates. Recording is an authoring helper only: candidates default to disabled and are never used as hard gates. Hard gates still come from content locks, dimension gates, or the API/KubeJS bridge.
## Compatibility
- Minecraft 1.20.1
- Forge 47.1+
- Java 17
- Client and server
- Optional soft dependencies: KubeJS, FTB Quests, Curios, GameStages, ContentGuard
## Installation
1. Install Minecraft 1.20.1 with Forge 47.1 or newer.
2. Put the jar into the `mods` folder on the client and server.
3. Start the game or server.
4. The built-in example data loads automatically; use `FRAMEWORK` mode for an empty pack.
## Known limitations
- The in-game editor and help text are currently Chinese-first. Built-in content and core UI have English translations, and further English coverage is in progress.
- Behavior signatures are heuristic and only grant experience, reveals, or counters; they cannot be used as hard gates.
- Custom mod GUIs, machines, and rituals that do not expose a vanilla event need ContentGuard, KubeJS, or a mod-specific hook.
- The editor is singleplayer-first; server authors should ship the exported datapack.
## AI disclosure
Some code, documentation, and draft assets in this project were produced with AI assistance and reviewed by the author. Gameplay screenshots are actual in-game captures unless individually labeled. The mod does not use AI to generate live in-game content.
## License
MIT. See the LICENSE file included in the jar.
---
## 中文说明
文明端点是一个服务端权威、数据驱动的知识网络模组,适合整合包制作进度门槛:按分支解锁物品、方块、标签和维度,并配置节点成本、前置、纪元、涌现、结构发现和维度门。
内置一套 11 分支 / 120 节点的示例内容,也可以切换到 `FRAMEWORK` 模式从空数据开始。编辑器支持在游戏内修改知识图谱并导出数据包;F8 行为录制只生成默认关闭的候选,不能当硬门禁。
当前编辑器与帮助文本以中文为主,英文内容和核心 UI 已有翻译,后续继续补全。自定义机器、GUI 或仪式如果不对应原版事件,需要 ContentGuard、KubeJS 或模组侧钩子。

