数据基准 游戏v1.51 · 文档v1.6
公式速查
GAME DESIGN DOC · 03 经济与数值

经济与数值:数值骨架

放置经济的根本难题是量级失控——唯一主资源 cash 要从个位数一路膨胀到 ~1e43,每处产出与消耗都得同步指数化。 本篇给出三大成本公式,并讲清"把指数集中到工位/等级两维、把城市压成温和分段线性"这个核心取舍。

设计目标机制数据与公式平衡与节奏设计意图
3
核心成本公式
~41×
满级城市倍率(分段线性)
13
货币类型
10%
离线产能 / 3h封顶
×50
主线里程碑相邻工位公比
~1e43
主资源 cash 量级上限

设计目标:不失控的"永续追逐"

唯一主资源 cash 要跨数十个数量级,一旦某一维涨太快就会让玩家"一夜暴富"——既看不懂数字,也失去追逐感。Eatventure 的解法可以一句话概括:

核心取舍把"指数爆炸"集中到两个维度(工位、等级),让第三个维度(城市)只做温和抬升。这样既保证主线永远"差一点就能解锁下一个",又让运营能独立调每一维而不引爆全局。

收入侧 vs 成本侧:五层结构

层级收入侧成本侧
工位 / 菜品出餐卖钱(base profit × 各倍率)食物利润 / 速度升级(离散)
餐厅全品利润倍数 ×2~×10雇工 / 加桌 / 拉客 / 提速(离散指数)
工位利润里程碑(主线城 ×3/5/10/20/50/100;主题城 4 档)里程碑解锁价(相邻工位 ×50 / 主题城 ×800)
城市cityMult 整条曲线上移(分段线性,满级 ~41×) / 跨城解锁
乘区(养成)装备 boost、神器/宠物乘子 → 见 04 养成系统

核心成本公式

经济规则由三个成本公式驱动,它们共同覆盖城市价格倍率、工位解锁价与工位连续升级价:

公式用途
城市价格倍率公式城市价格倍率
解锁价公式工位解锁价
升级价公式工位连续升级价

经济规则的上下文只有两个变量:餐厅在城内序号、城市序号——它们是全部成本公式的唯二上下文变量。

2.1 主线三公式

解锁价  unlockPrice = 5 × baseitemType × cityMult
升级价  upgradePrice = 3 × baseitemType × Blevel × cityMult
城市倍率  cityMult = (c≤21) ? 0.1c+1  :  c−18

2.2 常量取值

参数取值
解锁系数 / 升级系数5 / 3
base(工位底数)餐厅序号==1 时为 10,否则 50
B(level 公比)餐厅序号==0 时为 1.26,否则 1.20
cityMult分段线性,见 2.4(分段斜率 C=0.1)
升级成本指数曲线
图 2-1 | 升级成本随 itemType / level 双维指数膨胀(base^itemType × B^level)

2.3 价格计算伪代码

把三个公式串成实际取价逻辑:

def get_upgrade_price(restaurant_idx, item_type, level, city_idx):
    base = 10 if restaurant_idx == 1 else 50          # 第2店量级低
    B    = 1.26 if restaurant_idx == 0 else 1.20      # 首店公比更陡
    return 3 * (base ** item_type) * (B ** level) * city_mult(city_idx)

def get_unlock_price(restaurant_idx, item_type, n, city_idx):
    base = 10 if restaurant_idx == 1 else 50
    return 5 * (base ** n) * city_mult(city_idx)

def city_mult(city_idx):                              # 分段线性,非指数
    if city_idx <= 21:
        return 0.1 * city_idx + 1.0                   # 温和上移
    return city_idx - 18                              # 满级 ~41×

2.4 城市价格倍率:分段线性,非指数

城市价格倍率公式以城市序号为输入,按分段线性计算:

cityIdx ≤ 21:  cityMult = 0.1 × cityIdx + 1.0   # city0→1.0,city21→3.1,每城 +0.1
cityIdx > 21:  cityMult = cityIdx − 18     # city22→4.0,city59→41.0,每城 +1.0
cityMult 分段线性曲线
图 2-2 | cityMult 分段线性:满级 city59 仅 ~41×,城市倍率本身增长很温和

2.5 设计取舍:为什么这样切三维

① cityMult 为何压平成分段线性?

若换城靠 cityMult 指数爆量级,玩家每进一城就"白嫖"几个数量级,主线曲线会被城市这一维带飞、彻底失控。Eatventure 反过来:

  • 指数留给工位(base^itemType)和 level(B^level)两维——到第 10 个工位即 ~1e17,这两维负责"永续膨胀"。
  • cityMult 只做城际基线微调(1.0 → 41×),换城主要靠"重置爬坡 + 换皮新鲜感"驱动,而非倍率本身。

把失控风险隔离在最易调的一维之外——想改长线节奏只动 cityMult,不会引爆全局。

② base / B 为何按餐厅位置微调?

baseB 都不是常量,而是按餐厅在城内的序号微调,用极小代价做"店间节奏差异化":

餐厅位置baseB效果
首店(序号 0)501.26升级更快变贵,制造开局张力
第2店(序号 1)101.20量级整体压低,过渡平缓
其余店501.20标准曲线

工位利润里程碑

每个工位有一组利润里程碑,升星即解锁更高利润倍率。关键:主线城与主题城用两套完全不同的几何公比与档位

配置工位数相邻工位公比里程碑倍率档
主线城10×50×3/5/10/20/50/100(6 档,末档晚期升至 ×200/300/500)
主题城12×800×10/20/50/100(4 档)

3.1 三条精确规律

  1. 工位间几何递增:同一里程碑,相邻工位价格 = base_m × 公比^n
    • 主线城(×3 里程碑解锁价):工位 0..9 = 30000, 1.5e6, 7.5e7… 逐项 ×50 无误差。
    • 主题城(×10 里程碑解锁价):工位 0..11 = 2e14, 1.6e17, 1.28e20… 逐项 ×800 无误差。
  2. 里程碑内倍率跳变:主线城 ×3→×5→×10→×20→×50→×100;主题城 ×10→×20→×50→×100。
  3. 城市间整体抬升:换城由 cityMult 把整条曲线上移(见 §2.4)。
工位里程碑跳档对比
图 3-1 | 同坐标系下主题城(×800/工位)斜率明显陡于主线(×50/工位):12 个工位从 ~1e14 冲到 ~1e46

3.2 设计取舍:里程碑跳档做节奏

里程碑解决的是收入侧的节奏感——光靠连续升级(×1.2/级)收入太平滑,玩家感觉不到"质变"。里程碑用离散跳档制造爽点:

主线城:×50 / 6 档

跨度较缓,配合 60 城长线,让玩家在每家店里有 6 次"升星 → 利润翻几倍"的明确正反馈,节奏铺得开

主题城:×800 / 4 档

极大跨度压缩体验节奏——活动期内玩家要在有限时间爬完整条指数曲线,每个工位解锁都是一次量级跃迁,制造活动期的高密度爽感

3.3 指数跑道总览:收入 vs 成本

把收入侧(里程碑 ×50/工位)与成本侧(升级成本 ×50/工位 同量级)画在一起,就能看清整个"差值经济":

指数跑道总览
图 3-2 | 两条跑道都以 ~×50/工位 斜率向上爬,收入始终略高于成本一个身位——这正是放置经济"永远差一点、再点一下就够了"的钩子来源

收入与成本都指数增长,靠 差值 + 里程碑跳档 维持永续追逐感。

货币体系(13 种)

货币类型共 13 种(编号 2 为历史删除项)。13 货币不是平铺的,而是按"与主循环的耦合度"分层,每层定位明确:

货币编号定位获取
核心Cash(常规币/现金)0主经济,所有经营升级;F2P 无限膨胀(double,~1e43)出餐卖钱
硬通货Gems(钻石)1变现锚点:开箱/加速/礼包内购、每日/活动少量
养成PetFeed(宠物饲料)4喂养宠物升级掉落
副本钥匙MasterKey(万能钥匙)7开普通箱子(副本自循环产出)副本通关
ZeusKey(宙斯钥匙)8希腊副本开箱希腊副本
PirateKey(海盗钥匙)9海盗副本开箱海盗副本
变现专属PiggyReserve(存钱罐储备)6小猪存钱罐攒的宝石储备,专属变现系统经营累积,付费一次性取出
活动隔离MerchantOrb(商人宝珠)3商人活动兑换商品商人活动
RaceStar(竞赛之星)5Race 活动积分竞速活动
Hammer(锤子)10挖矿/建造类活动道具对应活动
Cork(软木塞)11Cork 活动货币对应活动
Scroll(卷轴)12活动货币对应活动
Shovel(铲子)13挖掘类活动道具对应活动

4.1 设计意图:软隔离的多级经济

4.2 数值计算属性

养成乘区不直接产币,而是通过属性类型的属性树放大主循环。数值计算把所有来源(装备/神器/宠物/药水)的同类属性加成汇总成最终乘子。与本篇相关的关键属性类型:

属性类型含义主要来源
17 WorkerWalkingSpeed员工行走速度SwiftSerum 药水
24 WorkerCookingSpeed员工烹饪速度SizzleSerum 药水
6 PerfectDishChance完美菜品概率PerfectPotion
29 DoubleOrderChance双倍订单概率(≈双倍利润)DoubleDraught
35 GoldenCustomerChance黄金顾客概率GoldenGulp
41 CorkEventRewardMultiplierCork 活动奖励倍率活动
正交设计养成全部走属性加成,与 Cash 主线公式正交——这是"养成不产币、只放大"取舍的实现机制。完整属性 → 乘区映射在 04 养成系统 展开。

离线收益

离线配置参数如下:

参数含义
最小离线时长300s(5 分钟)低于此不计离线收益
最大离线时长10800s(3 小时)离线收益封顶窗口
离线产能系数0.1离线只给 10% 在线产能
激励视频倍率2.0看激励视频后 ×2
离线推送冷却86400s(24 小时)离线推送冷却

5.1 产能计算(非单一公式)

不是单一公式,而是遍历当前所有 station,累加各自在线产能后乘离线系数:

def calculate_idle_cash(elapsed_seconds):
    if elapsed_seconds < 300:                      # 5 分钟门槛
        return 0
    window = min(elapsed_seconds, 10800)           # 3 小时封顶
    online_rate = sum(st.production_rate for st in unlocked_stations)
    cash = online_rate * window * 0.1              # 离线只给 10%
    if watched_rewarded_ad:
        cash *= 2.0                                # 广告翻倍
    return cash
离线收益曲线
图 5-1 | 离线收益:5 分钟门槛 → 3 小时封顶,产能压在 10%,广告 ×2

5.2 设计意图

压低放置收益,逼高频回流

3 小时封顶 + 10% 产能把放置收益压得很低,逼玩家高频回流主动经营——Eatventure 想要的是"挂机有进展、但在线才是主战场"。

广告 ×2 = 天然广告位

广告 ×2 把"回流领离线收益"做成天然广告位:每次回来都有一次"看广告翻倍"的诱导,是"广告即福利"取舍在离线场景的落点。

设计说明:参数边界

关键边界三类规则各有明确的适用边界,主线与副本/主题城使用不同的曲线参数,实现时需按上下文区分,不可混用。
规则主线设计边界说明
城市倍率 cityMult分段线性:cityIdx≤21 时 0.1×idx+1,>21 时 idx−18,满级 ~41×希腊等副本另有独立曲线,主线城市倍率刻意压平为分段线性
B 公比餐厅序号取值(首店 1.26,其余 1.20)条件落在餐厅序号上,不是工位序号
里程碑档位主线城 ×50 / 6 档×800 / 4 档仅用于主题/活动城,不是全局骨架

对自研的借鉴

1 · 极少常数生成完整价格矩阵

工位量级(base^itemType) × level 公比(B^level) × 城市倍率(分段线性) 三维相乘,极省配置、极易调参。

2 · 把失控风险隔离在最易调的一维

指数交给工位/level,城市倍率刻意压平——想改长线节奏只动 cityMult,不会引爆全局。

3 · 离散手配 + 公式混合

节奏敏感处(餐厅前期升级、里程碑跳档)手配离散值精确控节奏;规模化重复处(工位连续升级)用公式批量生成。

4 · 两套里程碑曲线服务两种节奏

长线主线城(×50/6 档)vs 活动期主题城(×800/4 档),同一机制换公比即切换体验密度。

5 · 货币软隔离做运营自由度

活动币用完即弃,让运营能频繁上活动而不冲垮主线平衡。

6 · 离线刻意压低 + 广告翻倍

10%/3h + 广告 ×2,是"主动经营 + 广告变现"的留存/变现耦合设计。