网易首页 > 网易号 > 正文 申请入驻

游戏战斗设计:数值框架搭建及战斗平衡计算实践

0
分享至

作者:王鑫然

首发知乎https://zhuanlan.zhihu.com/p/494785807

一、前言

这篇文章虽然把数值单拿出来讲,但在这里要强调的是,数值不是万能的,它是一个可以方便调整体验的工具,以及显示项目哪些地方需要调整的显示器。数值对游戏整体体验的调整,需要多方面的配合才能达到预期。而且先有需求,才会有数值。如果把数值排在需求之前,就是本末倒置,只会拉低项目的上限。

数值不是单独存在的东西,它必须有法可依。在《英雄联盟》多次调整后,初始金币设定为500,多兰之戒价格设定为400,多兰之剑设定为450。之所以初始金币设定为500,是为了让玩家在前期购买完出门装之后,初始金币可以被充分利用,减少出门装和出门道具选择困难,有些玩家出门不带药,期望省下药钱快点买下一件装备。为此还调整了血瓶的价格,以及一大堆装备道具数值调整。而多兰之戒之所以比多兰之剑少50金币,是因为并不是所有中路法师释放技能都是耗蓝的,多两个血瓶在前期对于中路不耗蓝的法师更有帮助。

猩红收割者是不耗蓝的中路法师

数值的设定需要机制的配合。角色明明有30%的暴击率,可是脸黑情况下砍了100刀愣是一次没暴击。为解决此问题,一些游戏设置了特殊机制。比如战斗开始后先把1到10进行随机排布,作为第1刀到第10刀里判断哪一刀暴击的标准,然后选取数值≤3的进行暴击,但这样做要把10刀都砍完才会进行下一波排序。有的游戏又用了另一些方法——将第一刀暴击率设为11.89%,若是没有暴击则将下一刀的暴击率提高至原来的2倍,变为23.78%,直至暴击发生,如果暴击则下一刀暴击率重回11.89%,以此总体保持30%的暴击率。

奇迹不一定会出现

并不是所有的数值设定都能见成效。比如《艾尔登法环》中死亡掉落全部金币,原本的设计初衷是一种战斗失败惩罚,结果因为战斗容错低,经常还没等玩家把上次死亡掉落的金币捡起来,就又死了一次,然后金币全消。于是老玩家就学会了刷金币技能。进副本前也会把金币耗光,进副本之后是地上道具捡一圈儿,遇到小怪是能躲就躲,直冲BOSS房间,让死亡掉落金币这种惩罚变得没什么作用。

玩家在《艾尔登法环》中死亡,魂会全部掉落

数值设定可以应用在游戏研发中的各个方面。假设一个商业游戏预期一年导入100万流量,预期付费率5%;预期大R比例5%,付费比例80%;中R比例15%,付费比例15%;小R比例80%,付费比例5%;预期年流水1000万,则单个大R的付费金额=(1000万年流水×大R付费比例)÷(100万流量×付费率5%×大R比例5%)=3200,这就是单个大R用户,预期一年内要在游戏里的消费的数学期望值,相应的中R=200,小R=12.5。这些数字决定了游戏要设定的付费深度,以及各个充值活动的定价,比如很多游戏面相小R用户的10元首充(部分游戏是首充活动1元,点进充值界面后提示最低充值10元),面向中R的148,168,198。

各种档位充值

虽然游戏行业有专门的数值策划,但这并不意味着其他策划可以不了解数值。数值也是设计的一部分,了解数值设计可以让策划对设计的思考更加精确,并且提高全盘思考和设计能力。游戏行业里经常能出一些缝合怪式的游戏,原因之一就是策划在设计时各做各的,每个模块单独看做的都挺好,只是合在一起之后,就变得十分割裂。

学习数值需要良好的逻辑思维能力,数学知识部分,对于精确性不高的游戏,初高中知识可以解决大部分问题,对于moba这种精确性要求极高的游戏,就需要具备大学数学的能力和思维,重点在思维。数学公式及公式特性什么的,用到什么查什么就可以。工具方面,Excel可以解决大部分问题,常用的Excel函数要记住,方便使用,其他函数,用到什么查什么。

Excel是数值策划必备工具

对于想要做数值策划的同学,VBA尽量学会用,它能模拟战斗过程并输出过程数据,方便调节技能数值。而且平时玩游戏用按键精灵用的熟练的,VBA学起来也不难。数值策划本身是一个极其枯燥的工作。经常要根据实际需求的变化大规模调整数值,天天看表格容易长出复眼,看东西能看出好几个分身。

对于战斗策划,大型游戏战斗策划本身的工作量远大于数值策划,所以一般是不负责数值的,甚至战斗策划在做设计时,应该屏蔽自己的数学思维,从好玩的角度开始进行设计。但是战斗策划应该知道本项目的数值策划能做什么,假如战斗策划设计100个技能,数值策划只能处理其中20个技能的平衡,那么不算技术研发能力,这个项目最终就只能做出20个技能,如果项目开始没有数值策划,做一半插个数值策划进来,就会经常遇到这种情况。如果因为技术原因又去掉10个,那么最终只能做出10个技能。其实有大公司是战斗策划也负责做数值的,但按照1+1>3的原则:

对于小公司,数值都没有,这公司真的不用呆了

全文大约有16000多字,涉及大量公式及运算,尤其是战斗平衡计算部分,要看懂本文,需要具备一定数学基础。

二、基础概念和机制

2.1 回合

指对战双方中的一方进行一次攻击结算的最小时间单位,可以是回合制游戏中的1回合,也可以是即时战斗中的1秒。

战斗总回合数是指双方互砍,同时死亡所需的总回合数,也可指一方把另一方打死所需的回合数。通常用来衡量职业是否平衡的标准,假设AB两个职业互掐,A把B打倒要20回合,B把A打倒只需要10回合,说明在对战过程中,B肯定能把A打赢,这种情况下,AB两职业就是不平衡的。

2.2 数学期望

用来描述一组波动数据的真实情况。期望值=“各个数据出现的概率×数据本身”再加和。

数学期望

比如一个游戏一天有100人上线,其中10人全天上线时长20分钟,40人全天上线时长50分钟,40人全天上线时长80分钟,10人全天上线时长100分钟。则100人这组数据,一人一天在线时长的真实值为:

  • 10%*20+40%*50+40%*80+10%*100=64分钟

如果预期的在线时长数据与64分钟相差不多,且在线时长分布图像集中,说明玩家的在线时长符合预期。如果64分钟与预期在线时长不符,或者在线时长图像离散,说明在线时长不符合预期,要调整游戏设定。

2.3 体验设定数据

指与游戏体验直接相关的数值设定,如一场战斗打多久,打死一只怪物要多少刀。体验设定数据在数值计算中是自变量,由这些自变量得出因变量,部分自变量会再根据因变量数值与预期的差距来调整。

思考哪些数据是体验设定数据是游戏数值计算开始前最重要的一环。以moba游戏的“一次线上时长”为例,就是英雄多久回一次城,英雄回城是进行装备更换和补给,所以它能影响装备的价格,装备价格又影响一次线上获得的金币数,这个金币数和一次线上时长又影响一次线上总共出多少波兵,每波兵总共能获得多少金币,以及打野在野区能打几只怪,每只怪得多少金币。一次线上时长与技能篮耗又能影响英雄蓝量上限、回蓝速度。

多数情况下,游戏中一个因变量需要多个自变量才能得出。并且当因变量不符合预期时,要经常回来修改自变量。这里涉及到一个原则——数值体验和数值平衡是根据游戏运营中的各种数据调出来的。你永远不可能算准,因为玩家会用各种你未能预料的方式,打破预期。

2.4 技能冷却时间

技能释放后,技能会进入冷却,在冷却时间结束前,技能不能释放。

即时对战中,冷却时间从什么时候开始计算,直接影响规定时间内技能释放的次数。以一个拿刀挥砍的技能为例,技能动作分为前摇、命中瞬间、后摇三部分,命中瞬间的时间=0。如果前摇时间为A,后摇时间为B,技能冷却时间为C,A+B≤C,战斗时间为D,D≥A+B,求技能释放次数:

A=前摇时间,B=后摇时间,C=技能冷却时间

  • 若从技能前摇开始,冷却时间就开始计时,则技能释放次数≈D÷C

  • 若从技能前摇结束后,冷却时间才开始计时,因为每次冷却时间结束后,要再进行一次前摇,才会开始计算冷却时间,所以技能释放次数≈D÷(A+C)

  • 若从技能后摇结束后,冷却时间才开始计时,则技能释放次数≈D÷(A+B+C)

从以上三种情况可以看出,冷却时间从前摇开始的时候,就开始计时的话,规定时间内技能的攻击次数是最多的。

有的同学可能已经注意到了,为什么我在上边用了一个“≈”号,而不是“=”号。举个例子,若D=60秒,C=58秒,则在第59秒还能放一次技能,但如果A=2,B=2,即A+B=4,则技能在第59秒开始释放进行前摇,但前摇还没结束,战斗就已经停止。这就类似于《率土之滨》中,技能已经准备完成,但没释放成功的概念。

所以,对于冷却时间从技能前摇开始的情况,计算其释放次数的精确函数表达式应该:

if(D-C≤0,1,if(D-(A+B)-rounddown(D÷C,0)*C<0,rounddown(D÷C,0),roundup(D÷C,0))

其中,if、rounddown、roundup均是Excel中的函数。其他两种情况的精确表达式,各位同学自行思考。

2.5 最大值和最小值

最大值和最小值是数值平衡计算过程中,极其常用的概念,经常用于计算和调节不稳定数据。

数学中一个区间内的极大值和极小值

以BUFF类技能为例,AB两个单位互殴,A是远程,B是近战,B可以开增伤BUFF,A边打边跑,B要追着A做输出,这意味着在B开增伤BUFF的时候,由于没有追到A,所以B并不是所有技能伤害都能享受到增伤BUFF,假设B增伤BUFF持续时间是25秒,战斗时长为30秒,B追上A全程总共花费时间为10秒,则技能享受增伤BUFF的最大时长是30-10=20秒,最小时长是25-10=15秒,最大时长意味着增伤BUFF持续时间中的一部分用来追人,最小时长意味着开了增伤BUFF后,才开始追人。

在战斗平衡计算过程中,如果用技能收益最大值去计算数值,就意味着实际战斗容错很低,如果用技能收益最小值去计算数值,就意味着实际战斗容错很高。

三、实战演练

数值搭建过程根据是否进行大规模调整进行划分,分为框架搭建和数值调整两个阶段,框架搭建阶段以手填数值为主,涉及数值微调,主要目标是搭框架;数值调整阶段是在框架搭建后,按照对各个因变量的预期,对自变量进行整体的大规模综合调整。

这里以即时战斗游戏为例,引用《英雄联盟》中的职业进行框架搭建阶段的演示,涉及部分数值调整思路。内容主要涉及职业属性,装备属性,战斗平衡。下文中所有表格中,表红色的文字都是可手动调整的自变量。

3.1 定义属性及公式

第一步定义游戏中有哪些属性。在这里设定有以下属性:

  • 生命值,魔法值,物理攻击,魔法攻击,物理防御,魔法防御,命中值,闪避值,暴击值。

  • 其中,攻击方命中值和防御方闪避值共同得出命中率。

第二步定义计算公式。计算公式的定义涉及游戏中有多少个属性系统,本游戏中,设定只有三个系统——角色系统、装备系统、技能系统,其他类型的系统,可以根据装备系统的数值设计思路,自行设计。设定公式如下:

游戏中的伤害公式及系数设定

  • 总生命值=角色生命值+装备生命值+其他系统生命值

  • 其他属性总值与总生命值的计算思路相同,这里就不罗列了。

  • 物理伤害=攻击方总物理攻击×系数1×(1-防御方物理减免)×技能系数百分比+系数2。防御以防御减免的方式呈现,意味着一定会破防,但也有缺点,攻击方总物理攻击越高,被减掉的伤害就越多。系数1和系数2是设定值,均可调整。

  • 魔法伤害=攻击方总魔法攻击×系数3×(1-防御方魔法减免)×技能系数百分比+系数4。

  • 物理减免=(总物理防御×系数5)÷(总物理防御+等级×系数6+系数7),这个公式首先是除法公式,分母加入等级,使得在装备不变等级提升时,防御减免下降,促使玩家更换高等级装备。系数用来调整图像走势,使走势符合预期。

  • 魔法减免=(总魔法防御×系数8)÷(总魔法防御+等级×系数9+系数10)

  • 命中率=总命中值/(总命中值+总闪避值×系数11)×100%,命中率最低值设定为10%,最高值设定为90%。

  • 暴击率=(总暴击值×系数12)÷(总暴击值+等级×系数13+系数14)

  • 暴击伤害=正常伤害×系数15

其中,暴击率、物理减免、魔法减免、命中率都是隐性数值,游戏中不会直接显示出来,要通过其他显性数值换算。其中,暴击率和命中率,应用纯随机,不做机制上的伪随机处理。

第三步定义攻击判断流程。技能CD从前摇开始时就开始计算。游戏中有三种攻击判定结果:

  • 攻击未命中
  • 攻击命中,但未暴击
  • 攻击命中,并且暴击

这里使用逐步判断法,即先判断是否命中,再判断是否暴击。则真实暴击概率=命中率×暴击率。对于逐步判断法,判定的优先级越往后,其真实发生概率偏差的就越大。

另一种攻击判断方法是圆桌理论,网上讲的很多,也有优缺点,目前主流游戏多使用复合判断方法。

3.2 定义标准人物属性

将各个属性类型赋值,作为标准人物的1级裸奔属性。

C18到K18是设定的1级标准人物裸奔属性

随后设定各个属性每一级的成长率,等级上限设定为30级,每10级进行一次等级突破,设定下一个10级中,各个属性的成长率高于上一个10级。有下边这个表。

各个等级角色的等级成长系数

再根据1级各个属性的值,及各个属性的成长率,算出下一级的属性值,以生命值为例,公式为:

  • 下一级生命属性值=上一级生命属性值×(1+生命属性值的成长率)

得到1到30级标准人属性,如下图所示:

标准人物各级属性

这里要注意,虽然数值策划在这里使用的是百分比增长,但做系统的时候,如果要显示下一级属性和下一级增长了多少属性,要显示成固定值的形式。

3.3 定义标准人装备属性

设定装备有白、绿、蓝、紫、橙5个品质,靠游戏中怪物掉落,等级有1、10、20、30四个档次。依次将每一种属性单拿出来,按照依品质、等级属性递增的原则,赋予属性成长系数。

装备上各个属性的成长系数

以蓝色品质3级装备的生命值为例,它的生命值属性=标准人3级生命值属性×蓝色装备1级的生命值属性成长系数(因为10级一档,所以3级的装备应用1级的属性增长系数)

对于装备属性成长系数的调整:

  • 如果期望玩家先把30级白装收集完,再去收集绿色1级装备,那么绿色1级装备的属性就应该高于白色30级装备属性,若发现计算结果不符合这个预期,就去调整成长系数。

  • 如果期望橙色装备总属性是同等级角色属性的30%,那么所有橙色装备属性成长系数,就都应该填30%。

  • 具体设定的数值,根据各个系统的预期数值需求进行综合调整。

计算完后,将1、10、20、30级装备属性单拿出来,这就是标准人装备的总属性。

标准人物各品质各等级装备总属性

这里要注意10级、20级、30级装备的属性,要依据角色等级突破后的属性去计算。因为玩家穿着10级装备要去打11级的怪物,11级的怪物属性会按照角色10级等级突破后的属性标准去计算。

如果给装备再加一个强化设定,总共10星强化,就要设定每一星强化后,装备属性的增长系数,再与装备原属性相乘。

如果装备有洗炼设定,就先计算装备总属性,再把洗炼的属性单拿出来做掉落权重和洗炼花费计算,类似于抽奖。

3.4 定义标准装备类型和属性

装备种类设定为武器、头、肩、衣服、腰带、裤子、鞋子、护腕1、护腕2、戒指1、戒指2,共11种装备,将9种属性分配到装备上,保证每种属性下都有大致等量的装备。得到如下所示的表格。

装备分类及装备所携带属性设定

再对每一种属性在不同装备上进行分配,保证每一种装备在属性分配上都占据一定优势,以此确保每一种装备的收集吸引力。

装备上各个属性的占比

之后按照标准人的装备属性,和装备上属性的占比,计算不同装备的具体属性,比如绿色10级武器上的物理攻击属性值=标准人绿色10级装备的物理攻击属性×物理攻击属性在武器上的占比。以此算出不同种类装备的具体属性值。

标准人物不同部位装备属性值

3.5 职业设定及各职业属性

以标准人为基准,为游戏总共设定两个定位差距大的职业——炼金术士和暗夜猎手。

其中炼金术士血量最高,主要是魔法伤害;暗夜猎手输出最高,主要是物理伤害。根据各个职业特点,以标准人的属性为基准,设定炼金术士和暗夜猎手的属性系数。如下图所示:

属性系数及其数值

ABCDE表示属性高低的程度,炼金术士防御高,所以生命值是A,暗夜猎手物理攻击最高,所以物理攻击是B。之后在对ABCDE进行手动赋值,最后转化成各个职业相对于标准人物的属性系数。属性系数也可以直接手填,比如炼金术士生命值系数可以直接手填个2,系数都要在综合计算数值后,根据因变量预期进行调整。

再用各个属性的属性系数×标准人相应属性的属性值,得到各个职业不同等级下的职业属性值。

炼金术士和暗夜猎手的属性值

3.6 各职业装备属性

根据标准人装备属性,及各职业的属性系数,算出各个职业的装备总属性。以炼金术士10级蓝色装备的生命值为例,其数值=标准人10级蓝色装备的生命值×炼金术士生命值属性系数,暗夜猎手和炼金术士的装备总属性如下图所示:

炼金术士和暗夜猎手各个品质、各个等级装备的总属性

再根据不同装备部位的属性分配及属性占比,得出各个职业不同品质、不同部位、不同等级的装备属性。

3.7 各个职业属性汇总

用各职业角色属性+各职业同等级装备总属性,得出各个职业不同等级下的总属性。因为装备有品质区分,所以要用不同品质的装备,分别与角色属性相加,得出各个职业在穿戴不同品质装备时的总属性。

炼金术士和暗夜猎手在穿戴蓝色装备时的总属性

之所以用X等级的角色属性+X等级的装备总属性,是因为游戏的预期设计是玩家以穿戴同等级装备为目标,为了让玩家以此目标进行游戏,怪物的属性设计,也要以这个标准去计算。

如10级怪物的属性,应该以角色等级为10+10级装备的属性去计算,角色等级属性取角色突破前的属性还是突破后的属性,取决于你是想让玩家先去打10级掉突破材料的怪物,还是先打10级掉装备的怪物。如果预期设定为先打10级掉突破材料的怪物,那么玩家打这个怪物时,角色属性处于未突破状态,身上穿的是1级装备,那么怪物属性的计算当取10级未突破角色属性,1级装备属性取那个品质,取决于你想让这个怪物有多强。

到了这一步,就应该进行一波参数和系数调整。方法是把各项属性的总数值,单拿出来,做折线图,查看折线图的变化趋势是否符合预期。以物理防御和魔法防御为例,将他们分别转化为物理减免和魔法减免,然后做折线图:

炼金术士穿蓝色装备时,物理减免曲线的变化趋势

则折线图的走势应该满足以下几点:

  • 装备品质和装备等级不变,随着角色等级的提高,减免值降低。因为我们在减免公式的分母中加入了等级,期望不换高等级高品质装备,防御能力就会降低。

  • 角色等级不变,装备品质、装备等级越高,减免值越高,且差距可观。

  • 穿上白色品质等级1的装备,所带来的物理减免或法术减免的增加,应该肉眼可见,不然穿上装备跟没有防御值一样。

如果折线图不符合上边两个预期,就去调整减免公式、角色防御属性成长系数、装备防御属性成长系数,甚至于为减免公式增加分段函数,由其是分段函数,大家以后如果要做数值,就会经常用到。分段函数的好处有两点:

  • 能够方便调节各个成长阶段的属性成长走势。

  • 可以灵活运用各种公式走势的优缺点。

  • 以后如果要拓展属性上限,可以新增一个分段函数,保证整体数值稳定。

3.8 职业玩法和职业技能设定

分别为炼金术士、暗夜猎手两个职业设定玩法,并依据玩法设计技能,这里直接引用《英雄联盟》炼金术士和暗夜猎手的技能设定,加以修改,如下图所示。

炼金术士和暗夜猎手的职业玩法、技能设定

依据技能的特点,对各个技能的参数进行赋值,这些值都是自变量,在职业对抗的预演中,如果最终预演的数值不符合预期,就可以调整这些自变量。这些自变量也严格按照一定的数值标准,比如大招的CD一定是最长的,如果调整自变量数值后,发现大招CD不是最长的,那就是调整错了。

炼金术士技能初步数值

暗夜猎手技能初步数值

移动速度设定为两个职业相同,均为1格/秒。上图中,暗夜猎手的射程和位移的单位均为秒,意味着走完这么长的射程距离,要花费多长时间,1.5秒意味着以1格/秒的移动速度走,要1.5秒走完,实际射程转化为格子数则是1.5格

技能等级设定为4个等级,角色每10级提升一次技能等级,这就意味着角色等级在1、10、20、30级时,技能等级分别为1、2、3、4级。

按照技能等级,手动为各个等级下的技能设定数值,这里的属性值大小会根据职业对抗结果进行最终调整。数值如下

炼金术士的各级技能属性

暗夜猎手的各级技能属性

在实际游戏设计过程中,技能数值是经常会调整的东西,上线后,也会经常涉及技能数值全面调整,技能机制也会因为实际需求进行调整,比如《英雄联盟》中的机器人,加速跑技能后会有一个短时间内降低移速的debuff,给技能加这个机制是因为技能原数值太小,不好做技能等级提升,为了增大技能数值,相应的在技能机制上给机器人加了个削弱。

四、职业对抗及数值平衡计算

有了各职业总属性和技能数值,就可以做职业对抗模拟了,模拟的目的是为了调整数值。模拟时选取各职业等级10级、20级、30级,进行两两对战。装备品质取蓝色。

  • 之所以选定从10级开始,是因为MMORPG游戏,玩家进入游戏后一定等级之前,是不会PK的,装备也没穿全,对这个时候的各职业进行职业对抗模拟没有意义。到了一定等级之后才会去PK。

  • 总共选取职业等级10级、20级、30级,三个等级位进行战斗模拟,是因为数值无法保证100%的平衡,但要保证阶段性的平衡,10、20、30是游戏设定的最基本的三个阶段。

  • 装备品质取蓝色纯属预期设定,实际游戏对抗模拟中,会取中、高两档装备进行对抗模拟,尤其是对于卖高级装备的游戏,要保证大R玩家穿着高品质高等级装备PK时,实力是相等的。

  • 虽然此处取了蓝色品质装备做平衡计算,但计算结果应该保证白、绿、紫、橙四种品质装备下的各职业依然能够保持平衡

对抗时,先用炼金术士VS炼金术士,再用暗夜猎手VS暗夜猎手,这样会得出两个战斗回合数,因为炼金术士防御最强,暗夜猎手伤害最高,所以得出的战斗回合数,是整个游戏中,两两对抗战斗回合数的最大值和最小值,相应的,暗夜猎手VS炼金术士的战斗回合数,应该处在这个最大值和最小值之间。

4.1 炼金术士VS炼金术士

炼金术士玩法和技能

分析炼金术士对打的特点:

  • 炼金术士打架时,是开着【毒气】毒对方。

  • 炼金术士VS炼金术士,攻击距离相同,不存在追击问题,所以移动速度、位移等可以抛开不管。

  • 由于炼金术士的【疯狂药剂】开启后会给自己加魔法攻击、双防、移动速度,所以要计算不同技能在开了【疯狂药剂】和没开【疯狂药剂】时候的释放次数和伤害值。

  • 【毒气】由于不受命中和暴击影响,一定会命中,且不会暴击,所以计算【毒气】的伤害期望值时,计算值=真实值

  • 由于【疯狂药剂】有生命恢复效果,每秒恢复一定最大生命值百分比,所以【疯狂药剂】应在受到伤害后开启,使生命恢复效果不浪费。

  • 【强力黏胶】和【过肩摔】配合造成的眩晕效果,会影响普攻的释放次数,对长CD技能释放次数的影响可以不计。

  • 【过肩摔】动作会把对方举起来摔到身后,就意味着【过肩摔】技能动作开始时,对方处于类似于眩晕的状态,眩晕时间=技能动作时间

  • 【疯狂药剂】的持续时间要分情况讨论,如果最后一次释放的【疯狂药剂】时间内,战斗已经结束,说明技能的持续时间,有一部分不能计算入战斗中。

  • 计算普攻释放次数时,要减去其他技能释放花费的动作时间。

  • 战斗双方倒下的标准是,战斗时间内(战斗回合数)内,“生命值/伤害值”的数值,刚好小于1,意味着刚好双方在最后一秒输出结束后,双双躺地。

调用和计算炼金术士在开启【疯狂药剂】前后的数据,如下

炼金术士【疯狂药剂】开启前后的数据

计算战斗中各个技能数据的思路如下:

  • 设定第一次开启【疯狂药剂】的时间为战斗后1秒。

  • 战斗时间手动设置,根据“生命值/伤害值”的数值大小最终确认。

疯狂药剂

  • 【疯狂药剂】开启次数=(战斗时间-第一次开疯狂药剂时间)÷技能CD时间

  • 【疯狂药剂】持续时间=if(战斗时间-第一次开启时间-(疯狂药剂开启次数-1)*技能CD时间<技能持续时间,战斗时间-第一次开启时间-(疯狂药剂开启次数-1)*技能CD时间+(疯狂药剂开启次数-1)*技能持续时间,疯狂药剂开启次数*技能持续时间)

毒气

  • 【毒气】开启次数为1次,即战斗开始后,开启就一直没关闭。

  • 【毒气】在没有【疯狂药剂】时造成的伤害=没开【疯狂药剂】前【毒气】造成的魔法伤害*(战斗时间-药剂持续时间-毒气释放次数*毒气动作时间),魔法攻击取疯狂药剂释放前的魔法攻击,毒气释放一次就会一直开下去。

  • 【毒气】在有【疯狂药剂】时造成的伤害=开【疯狂药剂】后【毒气】造成的魔法伤害*药剂持续时间。

强力黏胶

  • 【强力黏胶】的释放次数=战斗时间÷技能CD时间

  • 【强力黏胶】对应的伤害,是普攻在眩晕时间内造成的伤害,给【强力黏胶】设定一个修正系数,表示【过肩摔】不一定100%把对方扔到【强力黏胶】上,同时这个修正系数也是对普攻的修正,所以最终,【强力黏胶】的伤害=开【疯狂药剂】前的普攻物理伤害*rounddown(【强力黏胶】放次数*(战斗时间-药剂持续时间)/战斗时间,0)*【强力黏胶】单次眩晕时长*普攻修正值+开【疯狂药剂】后的普攻物理伤害*rounddown(【强力黏胶】释放次数*药剂持续时间/战斗时间,0)*【强力黏胶】单次眩晕时长*普攻修正值

过肩摔

  • 没开【疯狂药剂】时的【过肩摔】次数=战斗时间内【过肩摔】释放的总次数*没有药剂的时间占总战斗时间的比值=(总战斗时间/【过肩摔】技能CD时间)*(战斗时间-药剂持续时间)/战斗时间,结果向上取整。

  • 开【疯狂药剂】时的【过肩摔】次数=战斗时间内【过肩摔】释放总次数-没有药剂时释放的【过肩摔】次数=(总战斗时间/【过肩摔】技能CD时间)-没有药剂时释放的【过肩摔】次数,结果向上取整。

  • 伤害值分别通过魔法伤害公式计算。

普攻次数

  • 没开【疯狂药剂】时普攻次数=(战斗时间-药剂持续时间-【毒气】释放次数*【毒气】动作时间-【强力黏胶】释放次数*rounddown【(战斗时间-药剂持续时间)/战斗时间】*【过肩摔】动作时间-【过肩摔】非狂释放次数*【过肩摔】动作时间-【疯狂药剂】释放次数*动作时间-【强力黏胶】在没有药剂BUFF时间内的眩晕时间)÷普攻动作时间,结果向下取整。

  • 开【疯狂药剂】时普攻次数=(药剂持续时间-【强力黏胶】释放次数*rounddown(药剂持续时间/战斗时间,0)*【过肩摔】动作时间-【过肩摔】狂释放次数*【过肩摔】动作时间)/普攻动作时间

  • 伤害值分别通过物理伤害公式计算。

总生命值

  • 总生命值=总生命值*(1+【疯狂药剂】释放次数*【疯狂药剂】技能恢复生命比例)

伤害期望值

  • 除【毒气】外,其他伤害应该把命中率和暴击率算进去,得出伤害期望值

最终得出计算数据如下:

10级时,炼金术士VS炼金术士穿蓝色装备的对战数据

20级时,炼金术士VS炼金术士穿蓝色装备的对战数据

30级时,炼金术士VS炼金术士穿蓝色装备的对战数据

从以上数据可以看出,【毒气】伤害占总伤害比重的60%以上,战斗时间随着炼金术士等级提升,越来越低,但变化不大,符合对炼金术士的玩法设定。但要注意,这里所引用的数据,最终要根据炼金术士VS暗夜猎手的对战数据,得出的最终结果进行调整。

4.2 暗夜猎手VS暗夜猎手

暗夜猎手玩法和技能

分析暗夜猎手对打的特点:

  • 暗夜猎手打架时,是靠普攻互相伤害。

  • 暗夜猎手VS暗夜猎手,攻击距离相同,不存在追击问题,所以移动速度、位移等可以抛开不管。

  • 【杀戮时刻】会增加物理攻击,并降低【翻滚一箭】的CD时间,所以计算时要对每一个造成物理伤害的技能,按照是否开启【杀戮时刻】计算伤害。

  • 【击退巨箭】造成的眩晕对普攻次数有影响,对其他长CD技能的释放次数影响可以不计。

  • 【击退巨箭】并不一定能把对方射到障碍物上造成眩晕,所以要加一个修正。

  • 【击退巨箭】将目标射到障碍物上造成的伤害,跟没射到建筑物上造成的伤害不同,要分开计算。

  • 为了将【杀戮时刻】持续时间利用最大化,暗夜猎手对打肯定是上来就开技能。

  • 计算普攻释放次数时,要减去其他技能释放花费的动作时间。

调用和计算暗夜猎手在开启【杀戮时刻】前后的数据,如下:

暗夜猎手【杀戮时刻】开启前后的数据

计算战斗中各个技能数据的思路如下:

  • 战斗时间手动设置,根据“生命值/伤害值”的数值大小最终确认

杀戮时刻

  • 【杀戮时刻】释放次数=战斗时间/杀戮时刻CD时间

  • 【杀戮时刻】持续时间=if(战斗时间-【杀戮时刻】释放次数*【杀戮时刻】技能动作时间-(【杀戮时刻】释放次数-1)*【杀戮时刻】技能CD时间<【杀戮时刻】技能持续时间,(【杀戮时刻】释放次数-1)*【杀戮时刻】技能持续时间)+战斗时间-【杀戮时刻】释放次数*【杀戮时刻】技能动作时间-(【杀戮时刻】释放次数-1)*【杀戮时刻】技能CD时间,【杀戮时刻】技能持续时间*【杀戮时刻】技能释放次数)

击退巨箭

  • 没开【杀戮时刻】时【击退巨箭】释放次数=【击退巨箭】在战斗时间内释放的总次数*没有【杀戮时刻】的时间占总战斗时间的比值=(战斗时间/【击退巨箭】CD时间)*(战斗时间-【杀戮时刻】可持续时间)/战斗时间,结果向上取整

  • 没开【杀戮时刻】时【击退巨箭】的伤害=没射墙造成的伤害+射墙造成的伤害=没开【杀戮时刻】时【击退巨箭】的释放次数*【击退巨箭】眩晕时间修正*没开【杀戮时刻】时【击退巨箭】造成的物理伤害+没开【杀戮时刻】时【击退巨箭】的释放次数*(1-【击退巨箭】眩晕时间修正)*没开【杀戮时刻】时【击退巨箭】造成的射墙物理伤害

  • 开【杀戮时刻】时【击退巨箭】释放次数=战斗时间内【击退巨箭】释放总次数-没有【杀戮时刻】时【击退巨箭】的释放次数=战斗时间/【击退巨箭】CD时间-没有【杀戮时刻】时【击退巨箭】的释放次数

  • 开【杀戮时刻】时【击退巨箭】的伤害=没射墙造成的伤害+射墙造成的伤害=开【杀戮时刻】时【击退巨箭】的释放次数*【击退巨箭】眩晕时间修正*开【杀戮时刻】时【击退巨箭】造成的物理伤害+开【杀戮时刻】时【击退巨箭】的释放次数*(1-【击退巨箭】眩晕时间修正)*开【杀戮时刻】时【击退巨箭】造成的射墙物理伤害

翻滚一箭

  • 没开【杀戮时刻】时【翻滚一箭】释放次数=【翻滚一箭】在战斗时间内释放的总次数*没有【杀戮时刻】的时间占总战斗时间的比值=(战斗时间/【翻滚一箭】技能CD时间)*(战斗时间-【杀戮时刻】可持续时间)/战斗时间,结果向上取整

  • 开【杀戮时刻】时【翻滚一箭】释放次数=【杀戮时刻】可持续时间/(【翻滚一箭】技能CD时间*(1-【杀戮时刻】减少【翻滚一箭】CD的百分比)),结果向上取整

  • 伤害按照物理伤害计算公式分别计算

  • 这里要注意【翻滚一箭】的CD时间,在实际设计过程中,战斗策划会遇到这样一个问题——如果玩家开了【翻滚一箭】后,再开【杀戮时刻】,【杀戮时刻】的剩余CD应该是多少,各位同学自己思考其中细节。

普攻

  • 没开【杀戮时刻】时普攻释放次数=(战斗时间-【杀戮时刻】持续时间-没开【杀戮时刻】时【击退巨箭】眩晕时间-【杀戮时刻】释放次数*动作时间-没开【杀戮时刻】时【击退巨箭】的释放次数*【击退巨箭】的动作时间-没开【杀戮时刻】时【翻滚一箭】的释放次数*【翻滚一箭】的动作时间)/普攻动作时间,结果向下取整

  • 开【杀戮时刻】时普攻释放次数=(【杀戮时刻】持续时间-【杀戮时刻】持续时间内修正后眩晕-【杀戮时刻】持续时间内【击退巨箭】释放次数*动作时间-【杀戮时刻】持续时间内【翻滚一箭】释放次数*动作时间)/普攻动作时间,结果向下取整

  • 伤害按照物理伤害计算公式分别计算

暗夜猎手

  • 释放次数=普攻释放次数÷3,结果向下取整,“÷3”是因为每3次普攻触发一次暗夜猎手

伤害期望值

  • 各个技能和普攻伤害应该把命中率和暴击率算进去,得出伤害期望值。

  • 在计算总伤害期望值时,应该把暗夜猎手造成的伤害,换算成真实伤害,并计入到总伤害期望值中。

最终得出计算数据如下:

10级时,暗夜猎手VS暗夜猎手穿蓝色装备的对战数据

20级时,暗夜猎手VS暗夜猎手穿蓝色装备的对战数据

30级时,暗夜猎手VS暗夜猎手穿蓝色装备的对战数据

从以上数据可以看出,普攻+暗夜猎手的伤害之和,占总伤害的60%左右,符合玩法设定。20级对战时,生命/总伤害期望值=0.92,有0.08的差距,说明战斗在10秒多时就已经结束。

4.3 炼金术士VS暗夜猎手

分析对打的特点:

  • 暗夜猎手是远程,有位移技能,炼金术士是近战,所以战斗开始后,炼金术士要追赶暗夜猎手,用于追赶的时间,在计算炼金术士的【毒气】技能伤害时,要从战斗时间中减去。

  • 技能输出要分为炼金术士进攻暗夜猎手,和暗夜猎手进攻炼金术士两部分计算,而且要先计算暗夜猎手,因为他是远程,能在开始战斗后就造成伤害。

  • 炼金术士会开【疯狂药剂】给自己加属性,所以炼金术士的伤害和防御能力要按照【疯狂药剂】开启前后分别计算。

  • 【疯狂药剂】不会给炼金术士普攻提供伤害加成,且暗夜猎手没有给自己加物防的技能,所以炼金术士的普攻不用分开计算。

  • 暗夜猎手会开【杀戮时刻】给自己加属性,所以暗夜猎手的伤害能力要按【杀戮时刻】开启前后分别计算。

  • 为了保证BUFF技能的最大化效用,炼金术士会在战斗开始受到伤害后,立即开启【疯狂药剂】,暗夜猎手会在战斗开始后立即开启【杀戮时刻】。

  • 暗夜猎手对炼金术士释放【击退巨箭】的眩晕,再修正后要算进炼金术士追上暗夜猎手的时间里去,炼金术士对暗夜猎手释放【过肩摔】和【强力黏胶】造成的眩晕,要从暗夜猎手输出时间中减去。

  • 炼金术士和暗夜猎手对战平衡的标准是:前一秒双方“生命/总伤害”的比值都>1,下一秒都<1。

  • 最后有一个追击问题,暗夜猎手的最优输出方式应该是边走边打,还是站撸。

先看追击问题:

追击示意图

应用题1:

  • 有AB两个单位,A的移动速度=A格/秒,B的移动速度=B格/秒,且B<A,

  • AB之间相隔M,同时向左行驶

问题1:多久A才能追上B

问题2:若B不动,A多久能追上B

问题3:以上两种情况下,比较B普攻次数的大小

对于问题1:

  • 假设:X秒后A追上B

  • 则有:A*X=B*X+M →(A-B)*X=M → X=M/(A-B)

  • 当B的攻速小于1时,B=1-B的攻速,意味着每1秒,B用一部分时间普攻,一部分时间位移,此时B的普攻次数=X

对于问题2:

  • X=M/A

  • 当B的攻速小于1时,B=1-B的攻速,进而B的攻速=1-B,则B在被A追上时,B的普攻次数=总时间/B的攻速=M/A*(1-B)

对于问题3:

  • 假设:假设M/A*(1-B)>M/(A-B)

  • 则有:A*(1-B)
  • B → A*B>B → A>1

  • 所以:当A开加速,使速度>1时,B站撸普攻次数最多,当A的速度=1时,B站撸和边走边打的普攻次数相同,当A的速度<1时,B边走边打,普攻次数最多

对于暗夜猎手VS炼金术士,由于双方移动速度都为1格/秒,移动速度提高后,炼金术士的移动速度>1格/秒,所以,暗夜猎手站撸普攻次数最多。

调用和计算暗夜猎手和炼金术士战斗中属性如下:

炼金术士和暗夜猎手战斗中属性

分别计算炼金术士和暗夜猎手的技能数据:

通用数据:

  • 设定炼金术士战斗开始后1秒开启【疯狂药剂】,【毒气】释放1次后就会一直开启

  • 设定暗夜猎手战斗开始后立即释放【杀戮时刻】

暗夜猎手-杀戮时刻

  • 【杀戮时刻】释放次数=战斗时间/【杀戮时刻】CD时间,向上取整

  • 【杀戮时刻】持续时间=if(战斗时间-【杀戮时刻】释放次数*【杀戮时刻】技能动作时间-(【杀戮时刻】释放次数-1)*【杀戮时刻】技能CD时间<【杀戮时刻】技能持续时间,(【杀戮时刻】释放次数-1)*【杀戮时刻】技能持续时间)+战斗时间-【杀戮时刻】释放次数*【杀戮时刻】技能动作时间-(【杀戮时刻】释放次数-1)*【杀戮时刻】技能CD时间,【杀戮时刻】技能持续时间*【杀戮时刻】技能释放次数)

暗夜猎手-击退巨箭

  • 没开【杀戮时刻】时【击退巨箭】释放次数=【击退巨箭】在战斗时间内总共释放的次数*没有【杀戮时刻】的时间占战斗时间的比值=(战斗时间/【击退巨箭】CD时间)*(战斗时间-【杀戮时刻】持续时间)/战斗时间,向上取整

  • 没开【杀戮时刻】时【击退巨箭】伤害=没开【杀戮时刻】时【击退巨箭】没射墙造成的伤害+射墙造成的伤害=没开【杀戮时刻】时【击退巨箭】的释放次数*【击退巨箭】眩晕时间修正*没开【杀戮时刻】时【击退巨箭】造成的物理伤害+没开【杀戮时刻】时【击退巨箭】的释放次数*(1-【击退巨箭】眩晕时间修正)*没开【杀戮时刻】时【击退巨箭】造成的射墙物理伤害

  • 开【杀戮时刻】时【翻滚一箭】释放次数=【击退巨箭】在战斗时间内总共释放的次数-没有【杀戮时刻】时【击退巨箭】的释放次数=(战斗时间/【击退巨箭】CD时间)-没有【杀戮时刻】时【击退巨箭】的释放次数

  • 开【杀戮时刻】时【击退巨箭】伤害的计算方式同没开【杀戮时刻】时【击退巨箭】伤害的计算方式,炼金术士防御能力取开【疯狂药剂】后的属性

暗夜猎手-翻滚一箭

  • 没开【杀戮时刻】时【翻滚一箭】释放次数=【翻滚一箭】在战斗时间内释放的总次数*没有【杀戮时刻】的时间占总战斗时间的比值=(战斗时间/【翻滚一箭】技能CD时间)*(战斗时间-【杀戮时刻】持续时间)/战斗时间,向上取整

  • 计算没开【杀戮时刻】时【翻滚一箭】的伤害,取炼金术士开【疯狂药剂】后的防御能力

  • 开【杀戮时刻】时【翻滚一箭】释放次数=【杀戮时刻】持续时间/(【翻滚一箭】技能CD时间*(1-【杀戮时刻】减少【翻滚一箭】CD的百分比)),向上取整

  • 计算开【杀戮时刻】时【翻滚一箭】的伤害,取炼金术士开【疯狂药剂】后的防御能力

暗夜猎手-普攻

  • 没开【杀戮时刻】时普攻释放次数=(战斗时间-【杀戮时刻】持续时间-被【强力黏胶】眩晕的时间-其他技能时间)/普攻动作时间,向下取整

  • 开【杀戮时刻】时普攻释放次数=【杀戮时刻】持续时间/普攻动作时间

  • 按照【杀戮时刻】开启前后的物理攻击分别计算普攻伤害

暗夜猎手-暗夜猎手

  • 【暗夜猎手】释放次数=普攻总次数/3

  • 【暗夜猎手】造成的伤害=【暗夜猎手】释放次数*【暗夜猎手】造成的生命百分比伤害*炼金术士生命值

炼金术士-疯狂药剂

  • 【疯狂药剂】释放次数=战斗时间/【疯狂药剂】CD时间,向上取整

  • 【疯狂药剂】持续时间==if(战斗时间-【疯狂药剂】第一次开启时间-(【疯狂药剂】开启次数-1)*技能CD时间<【疯狂药剂】技能持续时间,战斗时间-【疯狂药剂】第一次开启时间-(【疯狂药剂】开启次数-1)*【疯狂药剂】技能CD时间+(【疯狂药剂】开启次数-1)*【疯狂药剂】技能持续时间,【疯狂药剂】开启次数*【疯狂药剂】技能持续时间)

炼金术士-追击距离

  • 追击距离=暗夜猎手普攻距离+【击退巨箭】释放次数*【击退巨箭】距离+【翻滚一箭】释放次数*【翻滚一箭】距离

炼金术士-追上之前花费时间

  • 追上之前花费时间≈追击距离*没有【疯狂药剂】的时间占比/移动速度+追击距离*有【疯狂药剂】的时间占比/移动速度*(1+【疯狂药剂】对移动速度的加成比例)+【击退巨箭】的眩晕时间=追击距离*(战斗时间-【疯狂药剂】持续)/(战斗时间*移动速度)+追击距离*【疯狂药剂】持续/(战斗时间*移动速度(1+【疯狂药剂】对移动速度的加成比例+【剧毒加速】移动速度加成比例))+【击退巨箭】的眩晕时间

炼金术士-药剂最大有伤害时间

  • 药剂最大有伤害时间=if(战斗时间-追上之前花费时间<药剂持续,战斗时间-追上之前花费时间,药剂持续)

炼金术士-毒气

  • 【毒气】开启一次后就会一直开启,按照药剂最大有伤害时间计算【毒气】造成的魔法伤害

炼金术士-强力黏胶

  • 【强力黏胶】释放次数=战斗时间/【强力黏胶】技能CD时间,向上取整

炼金术士-过肩摔

  • 没开【疯狂药剂】时【过肩摔】释放次数=(战斗时间-【疯狂药剂】持续时间)/【过肩摔】技能CD,结果向上取整
  • 开【疯狂药剂】时【过肩摔】释放次数=【疯狂药剂】持续时间/【过肩摔】技能CD
  • 按照开启【疯狂药剂】前后的魔法攻击分别计算【过肩摔】的魔法伤害

炼金术士-普攻

  • 普攻释放次数=(战斗时间-追上之前花费时间)/普攻技能CD时间

炼金术士-总生命值

  • 炼金术士的总生命值计算时要算上【疯狂药剂】在战斗时间内恢复的生命值

最终计算各种数据如下:

10级暗夜猎手和炼金术士穿蓝色装备的对打数据

20级暗夜猎手和炼金术士穿蓝色装备的对打数据

30级暗夜猎手和炼金术士穿蓝色装备的对打数据

在上文中说过,最终战斗平衡要保证炼金术士和暗夜猎手对打时,穿任何品质装备都能平衡,这里的平衡允许有一定百分比的误差。暗夜猎手和炼金术士穿橙色装备的对打数据如下:

10级暗夜猎手和炼金术士穿橙色装备的对打数据

20级暗夜猎手和炼金术士穿橙色装备的对打数据

30级暗夜猎手和炼金术士穿橙色装备的对打数据

从上图可以看出,20级暗夜猎手和炼金术士穿橙色装备的对打数据,在平衡上有极小的误差,这种小误差不需要修改,因为实际战斗过程中的操作误差就能让这个小误差变得跟没有一样。这个误差表示暗夜猎手在这个阶段比炼金术士强一点点,如果要修正这个误差,就去调整暗夜猎手20级橙色装备的属性,使其有效生命值降低。

暗夜猎手和炼金术士穿紫色装备的对打数据如下:

10级暗夜猎手和炼金术士穿紫色装备的对打数据

20级暗夜猎手和炼金术士穿紫色装备的对打数据

30级暗夜猎手和炼金术士穿紫色装备的对打数据

暗夜猎手和炼金术士穿绿色装备的对打数据如下:

10级暗夜猎手和炼金术士穿绿色装备的对打数据

20级暗夜猎手和炼金术士穿绿色装备的对打数据

30级暗夜猎手和炼金术士穿绿色装备的对打数据

从以上数据可以看出,30级暗夜猎手和炼金术士穿绿色装备的对打数据,在战斗进行到20秒时,暗夜猎手的“生命/总伤害期望值”=0.862,炼金术士的“生命/总伤害期望值”=0.994,看起来误差很大,需要修改,但是在观察战斗进行到第19秒时的数据,如下所示,双方“生命/总伤害期望值”均>1,说明这时候双方都存活,只是下一秒伤害过量的程度不同,所以不需要修改。

30级暗夜猎手和炼金术士穿绿色装备的对打第19秒数据

暗夜猎手和炼金术士穿白色装备的对打数据如下:

10级暗夜猎手和炼金术士穿白色装备的对打数据

20级暗夜猎手和炼金术士穿白色装备的对打数据

30级暗夜猎手和炼金术士穿白色装备的对打数据

从以上数据可以看出,30级暗夜猎手和炼金术士穿白色装备的对打数据,在战斗进行到第13秒时,暗夜猎手的“生命/总伤害期望值”=0.992,说明此时暗夜猎手已经死亡,而炼金术士的“生命/总伤害期望值”=1.188,表示他在第13秒时依然存活,再看第12秒的对战数据,在第12秒时双方都存活。这就说明30级炼金术士穿白色装备时,战斗能力强于暗夜猎手,这个时候就要调整炼金术士30级白色装备属性,使其装备的有效生命值降低。

30级暗夜猎手和炼金术士穿白色装备的对打在第12秒时的数据

最后根据伤害占比去计算各个技能的蓝耗。

这篇文章就写到这里。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
一个蓝领为何值5首轮,签1.5亿?连续出战600场,现役最强铁人!

一个蓝领为何值5首轮,签1.5亿?连续出战600场,现役最强铁人!

你的篮球频道
2026-01-22 13:19:02
利润预增超400%,存储芯片独角兽,势不可挡!

利润预增超400%,存储芯片独角兽,势不可挡!

飞鲸投研
2026-01-22 18:37:47
澳门最强高中生!官方:澳门黑熊球员李翔将加入北体大征战CUBA

澳门最强高中生!官方:澳门黑熊球员李翔将加入北体大征战CUBA

懂球帝
2026-01-22 15:05:06
李昊:在海外踢球时因位置问题机会有限;目前想先把中超踢好

李昊:在海外踢球时因位置问题机会有限;目前想先把中超踢好

懂球帝
2026-01-22 21:36:19
80后已经有1100万人提前下车了。

80后已经有1100万人提前下车了。

爱吃糖的猫cat
2025-11-16 18:27:38
屁股大的女生腰臀比太惊艳,黑色T恤搭配瑜伽裤,展现极致好身材

屁股大的女生腰臀比太惊艳,黑色T恤搭配瑜伽裤,展现极致好身材

小乔古装汉服
2025-12-24 10:46:22
王楚钦太优秀了!王楚钦以统治级表现征服WTT赛场,刷新乒坛纪录

王楚钦太优秀了!王楚钦以统治级表现征服WTT赛场,刷新乒坛纪录

开成运动会
2025-12-24 12:38:14
今起停牌!603616,筹划重大资产重组!

今起停牌!603616,筹划重大资产重组!

中国经济网
2026-01-22 17:28:05
72小时内,联大爆发两波争端,中国禁止日本入常,解放军开始上场

72小时内,联大爆发两波争端,中国禁止日本入常,解放军开始上场

科普100克克
2026-01-22 17:53:21
C罗虐菜局五次越位!越位还跳水!险胜弱旅后又发个人照!

C罗虐菜局五次越位!越位还跳水!险胜弱旅后又发个人照!

氧气是个地铁
2026-01-22 16:12:18
有哪些说话给人下套的例子?网友:偏僻叫不到代驾,都给安排明白

有哪些说话给人下套的例子?网友:偏僻叫不到代驾,都给安排明白

夜深爱杂谈
2026-01-21 20:01:54
3个妹妹一个也没嫁!重庆一哥哥很苦恼:为啥自己妹妹不想结婚?

3个妹妹一个也没嫁!重庆一哥哥很苦恼:为啥自己妹妹不想结婚?

唐小糖说情感
2026-01-04 17:23:54
耗资3000万,正面对决吴京,我感慨:41岁谢苗终于迈出了这一步

耗资3000万,正面对决吴京,我感慨:41岁谢苗终于迈出了这一步

靠谱电影君
2026-01-22 21:05:13
iPhoneFold价格曝光,顶配版或突破2万元

iPhoneFold价格曝光,顶配版或突破2万元

鲁中晨报
2026-01-22 20:15:39
高市早苗或成为日本最短任期首相之一!

高市早苗或成为日本最短任期首相之一!

西楼知趣杂谈
2026-01-22 11:47:40
京东推出黄金手机壳11299元起售,最高售价112299元,不支持七天无理由退货,客服工作人员:可接受检测

京东推出黄金手机壳11299元起售,最高售价112299元,不支持七天无理由退货,客服工作人员:可接受检测

鲁中晨报
2026-01-22 17:15:27
曝崩牙驹是“画饼大哥”!兄弟出狱不管不问,醒狮的费用都不给

曝崩牙驹是“画饼大哥”!兄弟出狱不管不问,醒狮的费用都不给

裕丰娱间说
2026-01-22 10:39:56
欧媒:特朗普才是西方的头号“中吹”,是他让全世界都爱上了中国

欧媒:特朗普才是西方的头号“中吹”,是他让全世界都爱上了中国

通文知史
2026-01-21 19:20:03
“长安”这个名字不好吗,为什么要改为“西安”,谁改的?

“长安”这个名字不好吗,为什么要改为“西安”,谁改的?

长风文史
2026-01-20 20:02:02
曼晚列枪魔大战伤缺球员:德利赫特、齐尔克泽、卡拉菲奥里等

曼晚列枪魔大战伤缺球员:德利赫特、齐尔克泽、卡拉菲奥里等

懂球帝
2026-01-22 23:00:10
2026-01-23 02:39:00
GameRes游资网 incentive-icons
GameRes游资网
GameRes游资网
7275文章数 10461关注度
往期回顾 全部

游戏要闻

猎魂世界:1.5版本四大看点盘点!到底哪一个才是大家最期待的?

头条要闻

“和平委员会”签约国家名单公布 西欧国家无一参加

头条要闻

“和平委员会”签约国家名单公布 西欧国家无一参加

体育要闻

跑个步而已,他们在燃什么?

娱乐要闻

车银优赚800亿 涉嫌逃税200亿!

财经要闻

西贝拿到“救命钱”,然后呢

科技要闻

几千亿只是开胃菜,AI基建还得再砸几万亿

汽车要闻

配备多块娱乐屏 极氪8X内饰曝光

态度原创

时尚
数码
房产
旅游
本地

这些才是最日常的冬季穿搭!不露腿、不扮嫩,简约舒适又保暖

数码要闻

2026款华硕a豆14 Air笔记本发布,6999元起

房产要闻

开年王炸!四重政策红利加码,广州置业窗口期迈入倒计时!

旅游要闻

降温也能赏花海?上海这里太懂浪漫

本地新闻

云游中国|格尔木的四季朋友圈,张张值得你点赞

无障碍浏览 进入关怀版