1. 项目概述:可编程元叙事引擎的革新意义
在虚构世界构建领域,创作者们长期面临一个核心矛盾:如何平衡叙事自由度与设定一致性。传统写作工具如Word或Scrivener擅长线性叙事,但对高密度设定的科幻/奇幻世界显得力不从心。这正是chenmo V2试图解决的痛点——它不是一个简单的写作辅助工具,而是一个完整的虚构世界运算引擎。
作为Python生态中的DSL(领域特定语言),chenmo允许创作者用代码思维构建叙事逻辑。比如用World.civilization.tech_level += 10这样的语句直接修改文明科技值,系统会自动计算这个变化对军事、经济等子系统的连锁影响。这种"可编程叙事"的特性,让《基地》式的宏大叙事或《冰与火之歌》式的多线推进有了技术实现路径。
提示:DSL不同于通用编程语言,它专为特定领域优化。chenmo的语法设计让非程序员也能快速上手,其核心是提供高表达力的叙事原语
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心架构解析
2.1 世界模型的三层抽象
chenmo的架构采用"原子-规则-表现"三层模型:
python复制# 原子层(基础实体定义)
class Planet(WorldEntity):
atmosphere = Property(type=GasComposition)
colonies = Relation(target=Colony, cardinality='1+')
# 规则层(动态逻辑)
@Rule(trigger=TechLevelChange)
def update_military_tech(ctx):
ctx.source.military_power *= 1.2 ** ctx.delta
# 表现层(叙事输出)
@Narrative(format='markdown')
def colony_report(world):
return f"## {world.year}年度殖民地报告\n..."
2.2 时间轴引擎
与传统写作工具不同,chenmo内置离散事件仿真器。这个时间轴引擎可以:
- 并行处理多个叙事线的时间推进
- 自动解决事件冲突(通过优先级系统)
- 生成带时间戳的叙事日志
实测在模拟200年跨度的文明演进时,相比传统方法效
