跑团辅助工具
类型筛选: {{ 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:更丰富的状态图标与说明、悬浮提示
生物详情
动作
{{ a.name }}
{{ a.type }} 充能 {{ a.recharge }}
无动作
怪物详情/编辑器

{{ uiState.monsterDraft.name }}

CR {{uiState.monsterDraft.cr}}
AC {{uiState.monsterDraft.ac}} HP {{uiState.monsterDraft.hp.average}} 速度 {{uiState.monsterDraft.speed.walk}}ft {{ (uiState.monsterDraft.type||[]).map(translateType).join(', ') || '未分类' }}
六大属性
{{k.toUpperCase()}}
{{v}} ({{mod(v)>=0?'+':''}}{{mod(v)}})
伤害抗性
{{ uiState.monsterDraft.resistances.damage.join(', ') || '无' }}
伤害易伤
{{ uiState.monsterDraft.vulnerabilities.damage.join(', ') || '无' }}
伤害免疫
{{ uiState.monsterDraft.immunities.damage.join(', ') || '无' }}
状态免疫
{{ uiState.monsterDraft.immunities.conditions.join(', ') || '无' }}
Avatar {{ typeof uiState.monsterDraft.avatar === 'string' && uiState.monsterDraft.avatar ? uiState.monsterDraft.avatar : '🧟' }}
{{ translateType(typeKey) }}
六大属性
{{k.toUpperCase()}}
抗性/易伤/免疫(伤害/状态)
{{ dt }}
{{ dt }}
{{ dt }}
{{ ct }}
CR 一键调整
TODO:完善“智能CR调整算法”映射规则与范围值随机生成、根据伤害/轮反算伤害骰。目前为占位简化实现,便于后续替换。
私有动作
动作库
能力池
编辑动作
特殊能力/动作
PC 角色详情/编辑器
Avatar {{ typeof uiState.pcDraft.avatar === 'string' && uiState.pcDraft.avatar ? uiState.pcDraft.avatar : '🧝' }}

{{ uiState.pcDraft.name }}

AC {{uiState.pcDraft.ac}} HP {{uiState.pcDraft.hpCurrent}} / {{uiState.pcDraft.hpMax}}
六大属性
{{k.toUpperCase()}}
{{v}} ({{mod(v)>=0?'+':''}}{{mod(v)}})
伤害抗性
{{ (uiState.pcDraft.resistances.damage || []).join(', ') || '无' }}
伤害易伤
{{ (uiState.pcDraft.vulnerabilities.damage || []).join(', ') || '无' }}
伤害免疫
{{ (uiState.pcDraft.immunities.damage || []).join(', ') || '无' }}
状态免疫
{{ (uiState.pcDraft.immunities.conditions || []).join(', ') || '无' }}
特性
{{ uiState.pcDraft.features || '无' }}
Avatar {{ typeof uiState.pcDraft.avatar === 'string' && uiState.pcDraft.avatar ? uiState.pcDraft.avatar : '🧝' }}
六大属性
{{k.toUpperCase()}}
抗性/易伤/免疫(伤害/状态)
{{ dt }}
{{ dt }}
{{ dt }}
{{ 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 }}