Skip to content

[Feature]: 前端让用户选角色体型,否则 #846 存的字段永远没人写 #847

Description

@johnnyzhang-eng

问题

#846 让体型有地方存、有人读,但没有任何界面让用户选它。在有人选之前,96 个存量角色仍然全部走 BIPED 默认,三道判据照旧不触发。

为什么不能自动识别

这个仓库明确否决过(CharacterCard.stance 的注释原文):

不自动识别:那要调模型,而认错是静默的 —— 错误的体型只在下一次付费生成的画面上显形。

quick-start 的 planner 已经在把用户自由文本分类成 actionType / locomotion,顺手加一个 stance 技术上很容易 —— 但那正是被否决的做法。认错体型的代价是一次已计费的生成,而且错在画面上、不在任何一道检查里。

所以要让人选。

要做什么

  • 建角色时(或角色属性处)让用户三选一:双足 / 四足 / 无肢。
  • 写进 character_data.stance。接口已经收了 —— POST /characters 收的就是完整 CharacterDatafeat(character): 体型存在角色上,让三道按体型分流的判据不再是死代码 #846 加完字段就能写,不需要新端点。
  • 措辞要让人选得对。「四足」「无肢」是内部词;用户看到的该是「像人一样两条腿站着」「四条腿着地」「没有手脚,靠身体扭动」这类。选错的代价是一次付费生成。
  • 存量 96 个角色:不用回填(None = 没人选过,下游按双足处理,与今天的行为一致);但要能改。

三选一之外的取值

CharacterStance 现在只有 BIPED / QUADRUPED / SERPENTINEai_engine.prompt.adapter 里每个非双足成员都要有自己那套部位说法的替换建议表 —— 加第四种(比如飞行、多足)不是加一个枚举值就完事的,要先把那张表补上,否则拒绝理由只能告诉用户「不行」、给不出改法。本 issue 不加新成员。

验收

  • 新建一个无肢角色 → character_data.stance == "serpentine"
  • 给它写一句带「手臂」的动作描述 → 当场被拒,且提示说得出改法
  • 不选 → 行为与今天完全一致

相关

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    MiniSpec小改动的精简规格enhancementNew feature or request

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions