feat(map,economy): 重做游戏经济与卡牌平衡系统

本次提交重构了英雄出售、抽卡、波次金币的数值体系:
1. 调整英雄出售价格按等级计算,1/2/3级分别为3/10/25金币
2. 修改抽卡刷新费用为2,初始金币调整为10
3. 重做波次金币公式,基础收益改为10,每波增长4
4. 调整卡池卡牌消耗与特殊卡牌的定价
5. 优化卡牌抽取消耗的计算逻辑,使用指数增长替代线性计算
This commit is contained in:
walkpan
2026-05-23 19:03:48 +08:00
parent f49831bf9e
commit 92836c14b6
5 changed files with 43 additions and 39 deletions

View File

@@ -87,10 +87,10 @@ export class MissionComp extends CCComp {
private maxMonsterCount: number = 50;
/** 怪物数量恢复阈值(降至此值以下恢复刷怪) */
private resumeMonsterCount: number = 30;
/** 新一波金币奖励基础值(现已固定,不再随波次增长) */
private prepareBaseCoinReward: number = 25;
/** 每一波金币增长值(固定收益设为0 */
private prepareCoinWaveGrow: number = 0;
/** 新一波金币奖励基础值 */
private prepareBaseCoinReward: number = 10;
/** 每一波金币增长值(公式: base + (wave-1) * growth */
private prepareCoinWaveGrow: number = 4;
/** 金币奖励上限(固定收益,此值不再生效) */
private prepareCoinRewardCap: number = 100;
/** 卡池升级波次配置:达到对应波次时,推送卡池升级事件 */
@@ -788,12 +788,13 @@ export class MissionComp extends CCComp {
private grantPrepareCoinByWave(wave: number) {
if (wave <= 1) return;
if (wave <= this.lastPrepareCoinWave) return;
// 使用统一经济管理入口发放每波金币
const reward = MissionEconomy.executeWaveGold(this.prepareBaseCoinReward);
// 波次金币公式: baseReward + (wave-1) * waveGrow
const waveReward = this.prepareBaseCoinReward + (wave - 1) * this.prepareCoinWaveGrow;
const reward = MissionEconomy.executeWaveGold(waveReward);
this.lastPrepareCoinWave = wave;
mLogger.log(this.debugMode, "MissionComp", "grantPrepareCoinByWave", { wave, reward, coin: smc.vmdata.mission_data.coin });
mLogger.log(this.debugMode, "MissionComp", "grantPrepareCoinByWave", { wave, waveReward, reward, coin: smc.vmdata.mission_data.coin });
}
// ======================== 怪物数量管理 ========================