跑团辅助工具
类型筛选: {{ translateType(t) }}
Avatar {{ typeof m.avatar === 'string' && m.avatar ? m.avatar : '🧟' }}
{{m.name}}
CR {{m.cr}}
AC {{m.ac}} HP {{m.hp?.average ?? m.hp ?? '—'}} {{(m.type||[]).map(translateType).join(', ') || '未分类'}} 自定义
Avatar {{ typeof pc.avatar === 'string' && pc.avatar ? pc.avatar : '🧝' }}
{{pc.name}}
AC {{pc.ac}}
HP {{pc.hpCurrent}}/{{pc.hpMax}} 敏 {{mod(pc.abilities.dex)}} 力 {{mod(pc.abilities.str)}} 体 {{mod(pc.abilities.con)}}
{{p.name}}
先攻 {{p.initiativeRoll ?? '—'}} + {{p.initiativeModifier ?? '—'}}
{{p.hpCurrent}}/{{p.hpMax}}
{{s.icon || '⏳'}} {{formatStatusLabel(s)}} ({{s.rounds}})
Avatar {{ typeof p.avatar === 'string' && p.avatar ? p.avatar : '🎯' }}
剩余虚假生命: {{p.tempHp}}
Avatar {{ typeof p.avatar === 'string' && p.avatar ? p.avatar : '🎯' }}
{{ p.name }}
{{ p.initiative ?? '—' }}
回合:{{battle.round}}
请选择或添加行动者
战场总览 · 目标选择器
{{g.groupName}}
Avatar {{ typeof p.avatar === 'string' && p.avatar ? p.avatar : '🎯' }}
{{p.name}}
{{getConditionTargetBadges(p).suffix.text}}
{{p.hpCurrent}}/{{p.hpMax}}
虚假生命:{{p.tempHp}}
AC {{p.ac}}
先攻 {{p.initiative ?? '—'}}
TODO:战场整体标记/手动分组与重命名管理交互增强(目前按怪物/PC自动成组,可在单位详情重命名分组)
数据导入/导出(JSON,全量)
所有数据均存储于浏览器 IndexedDB,支持离线使用
快捷键一览
- 双击 D:打开快速投骰
- 双击 A:执行当前动作(等同点击执行按钮)
- 双击 ←:切换到上一个回合单位
- 双击 →:切换到下一个回合单位
- 双击 空格:在生物查看/编辑、动作编辑、能力编辑时,保存并关闭
- 双击 Q:关闭最上层可关闭界面(若最上层无关闭入口则无效)
项目说明/占位
- TODO:完整的《怪物图鉴》样式排版(按官方风格)
- TODO:CR 一键调整算法细节完善与“伤害/轮”反算伤害骰
- TODO:更丰富的状态图标与说明、悬浮提示
生物详情
Avatar {{ typeof actorViewerEntity.avatar === 'string' && actorViewerEntity.avatar ? actorViewerEntity.avatar : (ui.actorViewer.actor.type === 'pc' ? '🧝' : '👾') }}

{{ actorViewerStatblock.header.name }}

*{{ actorViewerStatblock.subtitle }}*
护甲等级: {{ actorViewerEntity.ac }}
生命值: {{ actorViewerStatblock.kpis.hpText }} / ({{ ui.actorViewer.draft.hpRoll }})
速度: {{ actorViewerStatblock.kpis.speedText }}
挑战等级: {{ actorViewerEntity.cr ?? '—' }}
{{ a.label }}
伤害抗性: {{ actorViewerStatblock.damageLines.resist }}
伤害易伤: {{ actorViewerStatblock.damageLines.vuln }}
伤害免疫: {{ actorViewerStatblock.damageLines.immune }}
状态免疫: {{ actorViewerStatblock.damageLines.condImmune }}
动作
{{ a.name }}
{{ a.type }} 特殊能力 反应 附赠动作 传奇动作 充能 {{ a.recharge }}
无动作
怪物详情/编辑器
Avatar {{ typeof uiState.monsterDraft.avatar === 'string' && uiState.monsterDraft.avatar ? uiState.monsterDraft.avatar : '👾' }}

{{ monsterDraftStatblock.header.name }}

*{{ monsterDraftStatblock.subtitle }}*
护甲等级: {{ uiState.monsterDraft.ac }}
生命值: {{ monsterDraftStatblock.kpis.hpText }}
速度: {{ monsterDraftStatblock.kpis.speedText }}
挑战等级: {{ uiState.monsterDraft.cr ?? '—' }}
{{ a.label }}
{{ a.text }}
伤害抗性: {{ monsterDraftStatblock.damageLines.resist }}
伤害易伤: {{ monsterDraftStatblock.damageLines.vuln }}
伤害免疫: {{ monsterDraftStatblock.damageLines.immune }}
状态免疫: {{ monsterDraftStatblock.damageLines.condImmune }}
Avatar {{ typeof uiState.monsterDraft.avatar === 'string' && uiState.monsterDraft.avatar ? uiState.monsterDraft.avatar : '🧟' }}
{{ translateType(typeKey) }}
六大属性
{{k.toUpperCase()}}
抗性/易伤/免疫(伤害/状态)
{{ dt }}
{{ dt }}
{{ dt }}
{{ formatConditionKey(ct) }}
CR 一键调整
TODO:完善“智能CR调整算法”映射规则与范围值随机生成、根据伤害/轮反算伤害骰。目前为占位简化实现,便于后续替换。
私有动作
动作库
能力池
编辑动作
特殊能力/动作
PC 角色详情/编辑器
Avatar {{ typeof uiState.pcDraft.avatar === 'string' && uiState.pcDraft.avatar ? uiState.pcDraft.avatar : '🧝' }}

{{ pcDraftStatblock.header.name }}

*{{ pcDraftStatblock.subtitle }}*
护甲等级: {{ uiState.pcDraft.ac }}
生命值: {{ pcDraftStatblock.kpis.hpText }}
{{ a.label }}
{{ a.text }}
伤害抗性: {{ pcDraftStatblock.damageLines.resist }}
伤害易伤: {{ pcDraftStatblock.damageLines.vuln }}
伤害免疫: {{ pcDraftStatblock.damageLines.immune }}
状态免疫: {{ pcDraftStatblock.damageLines.condImmune }}
Avatar {{ typeof uiState.pcDraft.avatar === 'string' && uiState.pcDraft.avatar ? uiState.pcDraft.avatar : '🧝' }}
六大属性
{{k.toUpperCase()}}
抗性/易伤/免疫(伤害/状态)
{{ dt }}
{{ dt }}
{{ dt }}
{{ formatConditionKey(ct) }}
特性
私有动作
动作库
能力池
编辑动作
动作
{{ ui.critNotification.attacker }} ⚔️ {{ ui.critNotification.target }} 命中检定: {{ ui.critNotification.toHitRoll }} = {{ ui.critNotification.toHitResult }} vs AC {{ ui.critNotification.targetAC }}
{{ ui.critNotification.type === 'success' ? '大成功' : '大失败' }}
{{ ui.normalHitNotification.attacker }} ⚔️ {{ ui.normalHitNotification.target }} 命中检定: {{ ui.normalHitNotification.toHitRoll }} = {{ ui.normalHitNotification.toHitResult }} vs AC {{ ui.normalHitNotification.targetAC }}
{{ ui.normalHitNotification.totalFinalDamage }}
最终总伤害
{{ ui.missNotification.attacker }} ⚔️ {{ ui.missNotification.target }} 命中检定: {{ ui.missNotification.toHitRoll }} = {{ ui.missNotification.toHitResult }} vs AC {{ ui.missNotification.targetAC }}
未命中
{{ toast.message }}