Skip to content

API 参考

mewcodex edited this page Sep 6, 2026 · 5 revisions

API 参考

English | 简体中文

ChaosCardGenerator 命名空间

  • ComponentProfileRequest:用 ProfileId、平衡 Character 和 UnlockComponentRoles 标识一套生成配置。
  • ComponentGenerationProfile:包含卡牌壳、组件、名称目录、出率策略工厂、数值策略和原版/自定义关键词权限策略。
  • ComponentPackageApi.Register:先完整预检,再原子注册 profile、具名本地化、关键词定义与升级、唯一性和自定义估值。
  • ImmutableComponentCatalog:从审核过的 IroncladCardRecipe 建立所有结构索引;历史类型名不限制角色。
  • ComponentApi.ComposeCatalog:合并完整源卡池且保留用于究极混沌加权的原始出现次数。
  • IComponentOccurrencePolicy:分别控制家族先验、接受率反馈、家族内变体,并只观察最终成品。
  • IComponentValuePolicy:控制数值是否缩放、采样、限制、奖励和触发频率折算。
  • IComponentValuation:以百分之一点普通单体伤害为单位评价最终结构化效果。
  • ComponentSemanticFlags:声明正面、负面、限制、敌人伤害、能力构成、可缩放收益和本卡移动等跨组件语义。
  • ComponentLocalizationRegistration:按 SemanticId 注册中英文具名模板;[[damage]][[energy:energy]][[token]] 等占位符直接绑定 RuntimeSpec 数值/文本槽。
  • ComponentKeywordApi:注册稳定 ASCII 自定义关键词 ID 和可选的确定性合法性规则,不扩展游戏封闭枚举。

CardTinkeringApi v3

  • SerializeCard / DeserializeCard:完整往返卡牌、RuntimeSpec、具名本地化元数据和升级数值槽位。
  • Evaluate:返回适合界面展示的组件与整卡价值摘要。
  • EvaluateBudget:返回生成器实际使用的正面价值、线性负面补偿、倍率补偿、净价值和普通上界。
  • EvaluateComponent:脱离原卡和原触发器上下文,对单个组件定价。
  • Validate:检查 X 资源、目标、触发器从属、能力牌限制、本卡移动、减费和整卡组合规则。
  • Rebuild:只接受通过校验的组件列表,并重新生成双语描述和组件升级。

默认重载按数值平衡模式估值;只有明确需要激进模式时才传入 balancedValues: false。价值单位均为普通 单体伤害一点的百分之一。

负面价值可以在 ComponentValuationRegistration 中选择一种方式:

  • NegativeLinearValuePerUnit > 0:每单位线性补偿;
  • NegativeMultiplier > 1:整卡倍率补偿。

两者不能同时设置。

ComponentMultiplicity 有三类:Repeatable、同卡至多一次的 SinglePerCard、同卡池至多一次的 UniquePerPool。卡池 unique 只在卡牌成功通过全部校验后占用。

AutoAnthony 命名空间

  • ComponentRuntimeApi:注册一个或一组运行时路由,提供 HasRouteRegisteredRoutes 用于启动审计。
  • ComponentPresentationApi.RegisterPackage:原子注册自定义 opcode/variant 的额外 HoverTip。
  • ComponentKeywordRuntimeApi.RegisterPackage:把自定义关键词 ID 投影为原版 CardKeyword、语义 tag、提示和升级回调。
  • ExternalComponentCharacterApi:注册外部角色,安装、读取或清除本局定义。API v3 的 RegisterRuntime 可选注册固定卡槽类型、本局活动状态和角色随机卡池,使持续能力和跨卡池事件无需补丁核心私有方法。
  • IExternalAncientRelicAdapter:让古老牙齿和尘封魔典支持外部角色,无需本模组写死角色 ID。
  • ExternalChaosCardModel:固定随机卡槽位的基类;外部模组只需覆盖 ProfileId、Slot 和 Pool。
  • ComponentRunSettingsApi:读取本地设置,或从联机载体统一解析房主的完整生成设置。
  • ComponentGenerationProgressApi:复用标准卡池生成/载入进度层。
  • ComponentTriggerApi:通过正式路径触发角色专属事件,保留递归保护、X 值快照、依赖解析和选牌收尾。
  • ComponentSurpriseApi:查询随机卡、已见状态和惊喜模式隐藏状态。
  • CardNameGenerator.RegisterExternalParts:原子注册人工审核过的中英文卡名词片,无需反射私有字典。

AutoAnthonySettingsApi v1

只读提供:

  • Enabled:模组总开关当前状态。
  • AnytimeCardEditing:玩家是否允许配套编辑器在战斗外编辑卡牌。

该接口不能修改设置,也不公开仅在下一局生效的生成选项。

冻结与错误

组件 profile、估值和 multiplicity 在第一次 Resolve 时冻结;执行路由在第一次执行时冻结;展示路由在第一次 渲染提示时冻结;外部角色注册在第一次安装或读取定义时冻结。

非 ASCII ID、重复路由、缺少 RuntimeSpec/具名本地化、未知关键词、重复 semantic ID、错误 trigger owner、 空目录或与平衡原型不符都会在初始化阶段直接抛错。包注册会在修改注册表前完成预检,不会留下半注册状态。

游戏关键词枚举本身不可扩展。API v3 以 ASCII ID 保存自定义关键词身份,再通过运行时 adapter 投影;关键词 不是隐藏效果容器,其玩法仍必须有结构化 operation、运行时和估值路由。外部模组仍负责保存/房主同步完整定义、 具体卡牌类与卡图、自定义衍生物/充能球/状态解析和全新的卡牌生命周期钩子。

Clone this wiki locally