3 Commits

Author SHA1 Message Date
panw
b85fdb2ee2 refactor(gui): 调整角色控制器UI元素尺寸与资源引用
- 将角色控制器UI元素的尺寸从88x112调整为106x126
- 更新精灵帧引用,并设置关联的精灵图集
- 禁用某个UI节点,可能为优化性能或隐藏暂时不需要的界面
- 重命名部分英雄名称(如盾战士->盾战士1)
- 重新组织语言文件中的技能和卡牌文本顺序,提升可读性
2026-04-29 17:01:10 +08:00
panw
e78c7214c2 docs: 新增核心战斗数值与心流模型设计文档
在 heros.md 配置文档中新增“IAA 核心战斗数值与心流模型”章节,详细定义了30秒回合制下的TTK(Time To Kill)逆推公式、各职业基础属性,以及围绕4个Boss节点的指数级心流增长曲线。此设计旨在为游戏数值平衡和玩家体验提供明确的指导框架。
2026-04-29 16:22:19 +08:00
panw
b977dadcbc feat(config): 添加英雄攻击速度分级配置并更新英雄攻击间隔注释
- 新增 AtkSpeedLv 枚举和 AtkSpeedSet 配置对象,定义从“极速”到“很慢”的10个攻击速度等级及其对应冷却时间
- 更新 HeroInfo 接口注释,将原有的固定攻击间隔值替换为对应的速度等级描述,明确不同英雄类型的攻击节奏设计意图
- 修正“辅助英雄”区块的注释错别字(腐竹 -> 辅助)
2026-04-29 15:57:46 +08:00
4 changed files with 107 additions and 44 deletions

View File

@@ -978,8 +978,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 88,
"height": 112
"width": 106,
"height": 126
},
"_anchorPoint": {
"__type__": "cc.Vec2",
@@ -1015,7 +1015,7 @@
"a": 255
},
"_spriteFrame": {
"__uuid__": "6165ffc9-a838-4a33-b569-bdbaaab0e6b4@e6454",
"__uuid__": "cb93c900-b440-4571-91d1-7da1636e3d73@c6c69",
"__expectedType__": "cc.SpriteFrame"
},
"_type": 0,
@@ -1030,7 +1030,10 @@
"_fillRange": 0,
"_isTrimmedMode": true,
"_useGrayscale": false,
"_atlas": null,
"_atlas": {
"__uuid__": "cb93c900-b440-4571-91d1-7da1636e3d73",
"__expectedType__": "cc.SpriteAtlas"
},
"_id": ""
},
{
@@ -19118,7 +19121,7 @@
"__id__": 1162
}
],
"_active": true,
"_active": false,
"_components": [
{
"__id__": 1179

View File

@@ -30,10 +30,10 @@
"htype_mid": "中程",
"htype_long": "远程",
"hero_name_5001": "盾战士",
"hero_name_5002": "圣骑士",
"hero_name_5001": "盾战士1",
"hero_name_5002": "圣骑士1",
"hero_name_5003": "风行剑士",
"hero_name_5004": "刺客",
"hero_name_5004": "刺客1",
"hero_name_5005": "自然骑士",
"hero_name_5101": "奥术法师",
"hero_name_5102": "火焰法师",
@@ -78,34 +78,6 @@
"mon_name_6104": "亡灵法师(boss)",
"mon_name_6105": "兽人首领(BOSS)",
"skill_name_6401": "单体攻击",
"skill_name_6402": "单体生命",
"skill_name_6403": "单体全能",
"skill_name_6404": "群体攻击",
"skill_name_6405": "群体生命",
"skill_name_6406": "群体全能",
"skill_name_6304": "神圣治疗",
"skill_name_6305": "群体护盾",
"skill_info_6401": "随机{0}个友方+{1}攻击",
"skill_info_6402": "随机{0}个友方+{1}最大生命值",
"skill_info_6403": "随机{0}个友方+{1}攻击,+{2}最大生命值",
"skill_info_6404": "随机{0}个友方+{1}攻击",
"skill_info_6405": "随机{0}个友方+{1}最大生命值",
"skill_info_6406": "随机{0}个友方+{1}攻击,+{2}最大生命值",
"scard_name_7001": "战术晋升",
"scard_name_7002": "进阶战术",
"scard_name_7101": "近战征召",
"scard_name_7102": "远程征召",
"scard_name_7103": "精英筛选",
"scard_info_7001": "升级场上随机1个1级英雄到2级",
"scard_info_7002": "升级场上随机1个2级英雄到3级",
"scard_info_7101": "刷新卡池,都是近战英雄",
"scard_info_7102": "刷新卡池,都是远程英雄",
"scard_info_7103": "刷新卡池都是3级卡池等级英雄",
"skill_name_6001": "攻击",
"skill_name_6002": "火球",
"skill_name_6003": "飓风",
@@ -144,6 +116,34 @@
"skill_info_6305": "随机{0}个友方获得{1}次伤害免疫",
"skill_info_6501": "立即复活,获得{0}%生命",
"skill_name_6401": "单体攻击",
"skill_name_6402": "单体生命",
"skill_name_6403": "单体全能",
"skill_name_6404": "群体攻击",
"skill_name_6405": "群体生命",
"skill_name_6406": "群体全能",
"skill_name_6304": "神圣治疗",
"skill_name_6305": "群体护盾",
"skill_info_6401": "随机{0}个友方+{1}攻击",
"skill_info_6402": "随机{0}个友方+{1}最大生命值",
"skill_info_6403": "随机{0}个友方+{1}攻击,+{2}最大生命值",
"skill_info_6404": "随机{0}个友方+{1}攻击",
"skill_info_6405": "随机{0}个友方+{1}最大生命值",
"skill_info_6406": "随机{0}个友方+{1}攻击,+{2}最大生命值",
"scard_name_7001": "战术晋升",
"scard_name_7002": "进阶战术",
"scard_name_7101": "近战征召",
"scard_name_7102": "远程征召",
"scard_name_7103": "精英筛选",
"scard_info_7001": "升级场上随机1个1级英雄到2级",
"scard_info_7002": "升级场上随机1个2级英雄到3级",
"scard_info_7101": "刷新卡池,都是近战英雄",
"scard_info_7102": "刷新卡池,都是远程英雄",
"scard_info_7103": "刷新卡池都是3级卡池等级英雄",
"fskill_name_7001": "召唤精通",
"fskill_name_7002": "亡灵统御",
"fskill_name_7003": "先发制人",

View File

@@ -32,6 +32,30 @@ export const HTypeName ={
2:"远程",
}
/**
* 英雄攻击速度分级配置 (数值为攻击间隔cd越小越快)
*/
export enum AtkSpeedLv {
VeryFast1 = 1, VeryFast2 = 2,
Fast1 = 3, Fast2 = 4,
Normal1 = 5, Normal2 = 6,
Slow1 = 7, Slow2 = 8,
VerySlow1 = 9, VerySlow2 = 10,
}
export const AtkSpeedSet = {
[AtkSpeedLv.VeryFast1]: { name: "极速+", cd: 0.15 },
[AtkSpeedLv.VeryFast2]: { name: "极速", cd: 0.30 },
[AtkSpeedLv.Fast1]: { name: "快速+", cd: 0.50 },
[AtkSpeedLv.Fast2]: { name: "快速", cd: 0.70 },
[AtkSpeedLv.Normal1]: { name: "普通+", cd: 0.90 },
[AtkSpeedLv.Normal2]: { name: "普通", cd: 1.10 },
[AtkSpeedLv.Slow1]: { name: "慢+", cd: 1.50 },
[AtkSpeedLv.Slow2]: { name: "慢", cd: 1.80 },
[AtkSpeedLv.VerySlow1]: { name: "很慢+", cd: 2.30 },
[AtkSpeedLv.VerySlow2]: { name: "很慢", cd: 2.80 },
};
export const HeroPos={
0:{pos:v3(-320,BoxSet.GAME_LINE,0)},
1:{pos:v3(0,BoxSet.GAME_LINE,0)},
@@ -111,12 +135,12 @@ export interface HSkillInfo {
* skills[0]是普通攻击技能
* skills[1]是等级1时的技能,skills[2]是等级2时的技能,skills[3]是等级3时的技能,最多3级
*
* 属性基准(cards_lv:1,lv:1) SPEED:800,AP:30 | HP:300 | skills[0].cd=1
* 坦克(cards_lv:1,lv:1) SPEED:800,AP:25 | HP:450 | skills[0].cd=0.75
* 近战dps(cards_lv:1,lv:1) SPEED:800,AP:50 | HP:250 | skills[0].cd=1.1
* 远程dps(cards_lv:1,lv:1) SPEED:800,AP:60 | HP:150 | skills[0].cd=1.3
*远程法dps(cards_lv:1,lv:1) SPEED:800,AP:60 | HP:150 | skills[0].cd=1.4
* 远程辅助(cards_lv:1,lv:1) SPEED:800,AP:20 | HP:150 | skills[0].cd=1
* 属性基准(cards_lv:1,lv:1) SPEED:800, AP:30 | HP:300 | skills[0].cd = 1.0 (普通)
* 坦克(cards_lv:1,lv:1) SPEED:800, AP:25 | HP:450 | skills[0].cd = 2.3 或 2.8 (很慢+/很慢) - 突出沉重感与承伤定位
* 近战dps(cards_lv:1,lv:1) SPEED:800, AP:50 | HP:250 | skills[0].cd = 0.3 或 0.5 (极速/快速+) - 强化割草连击爽感
* 远程dps(cards_lv:1,lv:1) SPEED:800, AP:60 | HP:150 | skills[0].cd = 0.7 或 0.9 (快速/普通+) - 稳定持续的物理输出节奏
*远程法dps(cards_lv:1,lv:1) SPEED:800, AP:60 | HP:150 | skills[0].cd = 1.5 或 1.8 (慢+/慢) - 强调施法前摇与单发爆发
* 远程辅助(cards_lv:1,lv:1) SPEED:800, AP:20 | HP:150 | skills[0].cd = 1.1 (普通) - 贴近基准,动作不急不躁,侧重技能
*/
export const HeroInfo: Record<number, heroInfo> = {
@@ -153,7 +177,7 @@ export const HeroInfo: Record<number, heroInfo> = {
5203:{uuid:5203,name:t("hero_name_5203"),path:"ha3", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Long,hp:45,ap:180,speed:800,
skills:{6011:{uuid:6005,lv:1,cd:0.9,ccd:0}},info:t("hero_info_5203")},
// ========== 腐竹英雄 ==========
// ========== 辅助英雄 ==========
5301:{uuid:5301,name:t("hero_name_5301"),path:"hh1", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Long,hp:15,ap:20,speed:800,atking:[{s_uuid:6302,t_num:2}],
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},info:t("hero_info_5301") },
5302:{uuid:5302,name:t("hero_name_5302"),path:"hz1", fac:FacSet.HERO,cards_lv:2,lv:1,type:HType.Long,hp:30,ap:40,speed:800,atking:[{s_uuid:6304,t_num:2}],

View File

@@ -45,3 +45,39 @@
死亡流
召唤流
---
# IAA 核心战斗数值与心流模型
## 1. 30秒回合制 TTK (Time To Kill) 与基础属性逆推
核心原则:**不凭空设定单次攻击力(AP),由预期秒伤(DPS)和攻速(CD)逆推AP = DPS × CD**。
回合总时长 30s基础参考值Lv:1
* **标准小怪**`HP: 150 | AP: 30 | CD: 1.0s` (DPS 30预期被单体DPS 3秒内击杀)
* **近战DPS**`HP: 200 | AP: 15 | CD: 0.3s` (DPS 50极速高频割草)
* **远程DPS**`HP: 120 | AP: 42 | CD: 0.7s` (DPS 60稳定持续物理输出)
* **法师**`HP: 100 | AP: 126 | CD: 1.8s` (DPS 70极慢攻速单发核弹)
* **坦克**`HP: 500 | AP: 35 | CD: 2.3s` (DPS 15核心承伤存活 15s+)
* **辅助**`HP: 120 | AP: 11 | CD: 1.1s` (DPS 10不依赖平A侧重技能与Buff)
## 2. 4 Boss 节点心流增长曲线 (Exponential Growth)
数值成长摒弃线性加法,采用**“指数级膨胀(玩家) + 阶梯式跃迁(怪物)”**,在挑战与割草间制造心流。
* **阶段一(初入茅庐 -> Boss 1**:建立割草快感
* 玩家 DPS`50 -> 250` (5倍膨胀)
* 怪物 HP`150 -> 600` (4倍膨胀)
* **Boss 1**`HP: 5,000 | AP: 100` (靠基础英雄数量即可无脑碾压)
* **阶段二(遇到阻力 -> Boss 2**:制造首次卡点,倒逼策略或广告
* 玩家 DPS`250 -> 1,500` (6倍膨胀)
* 怪物 HP`600 -> 5,000` (8倍膨胀开始吃力)
* **Boss 2**`HP: 45,000 | AP: 400` (必须上坦克承伤,法师输出)
* **阶段三(数值狂飙 -> Boss 3**:释放压抑,解锁强力流派,数值崩坏级爽感
* 玩家 DPS`1,500 -> 20,000` (13倍膨胀满屏跳字)
* 怪物 HP`5,000 -> 40,000` (8倍膨胀)
* **Boss 3**`HP: 500,000 | AP: 1,500` (强力AOE考验阵容回复)
* **阶段四(终极考验 -> Boss 4**:榨干数值潜力,检验 Build
* 玩家 DPS`20,000 -> 100,000+` (终极阵容成型)
* 怪物 HP`40,000 -> 250,000` (满地精英怪)
* **Boss 4**`HP: 3,000,000+ | AP: 5,000` (秒杀级伤害,极限抗压)
**成长公式指导:** 属性 = 基础属性 × (成长系数 ^ (等级 - 1)) × 各种品质乘区