CopyRight©2021 139GAME.COM.CN All Right Reserved
《命运2》将与9月8日正式发售
Bungie信守承诺,继昨天首次对外公开了一段预告片后,今天正式公布了《命运2》的宣传片,虽然这一次也没有游戏实际画面,不过至少对于发售日和后续计划有了明确的安排。
根据官方的信息,《命运2》将与9月8日正式发售,玩家可以参加夏季举行的公开测试活动。而至于游戏实际战斗方面的信息还要等到5月18日解锁。另外,对于提前预购本作的玩家还能够提前参加测试。
《命运2》将提供丰富的故事剧情;全新、魅力的游戏场景;对全玩家友善的任务设置,无论是新老玩家都可以享受游戏;充满竞技性的PVP地图和模式;高度定制化的游戏角色。
巨大可变MA袭来!《敢达争锋对决》BOSS挑战:精神力高达
高达作品中的MA,即Mobile Armor的缩写,意为机动装甲。是一种与Mobile Suits同时代研发而来的机动兵器,彼此保持着“相爱相杀”的纠结关系。在高达系列各作品中的高潮部分均有出现,通常是“大反派”、“强无敌”、“瞬狱杀”的代名词。在近期完成二测的高达格斗手游《敢达争锋对决》中的BOSS挑战模式,就正式将这种可怕的存在,引入到了游戏中来,带来别样的感受!
BOSS挑战模式是《敢达争锋对决》新增加的PVE模式,也是目前最受玩家好评的模式之一。模式采取两种3人组队模式,即可以由服务器自动匹配组队队友;也可以通过游戏内的好友邀请的形式,手动邀请基友一同挑战。目前BOSS挑战对手为两机,分别是MA-08 大萨姆和精神力高达!大萨姆在首测期间我们以及介绍过,本期我们介绍新登场的G2:战粟的巨影:MRX-009 精神力高达!
MRX-009 精神力高达,初次登场于TV动画《机动战士Z高达》第17集。是联邦军NT专用型可变MS,由村雨强化人研究所开发。该机全高哪怕MA形态都超过30米,可以说是非常巨大的怪物般的存在,绝对适合《敢达争锋对决》收录,作为BOSS挑战的对手!
游戏中的MRX-009 精神力高达基本还原了原作中的设定。初始登场状态为MA形态,血条多达5条之多。由于制作组为了应对多人游戏,数值被设置为十分强劲。无论是防御用的装甲值和武装的攻击力都非常霸道。初始近战为高速冲撞,中远攻为散射光束炮。
当达到战斗中段,精神力高达会变形成为MS形态。如果说MA形态已经让玩家觉得力不从心,那么挑战真正的难度现在才开始。MS形态下精神力高达的攻击方式有所变化。近战有格斗,硬扛基本没有便宜可以占。中远攻击有三种类型,一种是双手二连光束炮集中攻击;另一种则是以精神力高达为圆心左右光束散射炮;最后一种就是正面散射光束炮射击。无论是那种攻击,攻击动作的硬直很小,威力很大,命中后会取消一切玩家行动判定。绝壁的怪物设定。
面对如此的挑战对象,是不是《敢达争锋对决》的玩家更加激动了呢?制作者为了让不同等级玩家都能体验到乐趣,还对关卡也做了难度选择。战力5100左右建议简单,普通难度战力则需要8480。当然,普通难度的奖励将是简单难度一倍之多,可以大幅提升战力哟。那么如何才能妥妥的搞定这样的怪物?我们将在明天的攻略指令文中详细描述。敬请期待!
官网地址:http://www.gundambattle.com
更多《敢达争锋对决》相关信息及福利请关注官方微博、微信
技术贴:即时战略游戏中高实用性寻路算法推荐
在即时战略(RTS)游戏中,寻路系统可谓其核心要素之一,但它的算法也是较难攻克的内容之一。在这篇文章中,来自iSamurai工作室的伍一峰为广大游戏开发者带来了他对即时战略游戏寻路算法的深入思考。
在即时战略(RTS)游戏中,寻路系统一般需要满足以下几个条件:
1)效率高,由于rts地图普遍较大,单位较多,因此处理效率很重要;
2)易编辑,便于level design;
3) 效果真实,如能找出最优(或者是看上去合理)路径;
4) 可以应对动态的游戏世界,例如起建筑。
根据@王亚晖所说,用于寻路的算法一般是A Star。为何是A Star而不是其他函数呢?
首先,A Star用到启发式函数(Heuristic Function)[1],和另一个算法Dijkstra(A Star的无启发函数版)相比可能会更有效率,因为启发函数设计得当,可以大大减少计算量。
又因为启发函数的估计往往不是精确的,所以A Star不一定能找出高出人类认知的最优解。但是对于游戏来说,看上去合理就行。
然而用A Star作为寻路算法,仅仅是解决了寻路系统基础部分的问题。作为系统,它还要有易编辑的特性。这就涉及到A Star中每个节点(Node)的表现方式问题。
一个最基本的表现方式是方块(Tile),如下图 [2]
我们可以将山洞所占的的几个方块设为“Not Movable”,这样A Star就会不会考虑到这几个方块,系统所生成的路径就不会碰到山洞。用方块作为AStar节点,其优点是简单,但也存在一些问题:
1)如果地图很大,方块就变得很多,这样A Star的节点就会大大增加,处理时间也会相应增大;
2) 单位的移动只能是上下左右,最多加上斜行,总共八个方向,不够真实;
3) 如果单位的体积大小不一致的话,大单位的图像可能会覆盖到“Not Movable”部分。
以上图为例,若有一条路线途经山洞边,那么一个占四个方块大小的巨人走过该路径的话,就会走在山洞上面。
为了解决使用方块时面临的这些问题,我们可以使用路经点(Waypoint)来做A Star节点,如下图 [3]
图中的红色的路径点代替了方块,成为A Star节点,这样的好处是我们可以自由地添加路径点,并相对地减少A Star节点数目。同时,单位也可以按照设计师设计的方法走。但是,我们从上图也可以看出这种方法也存在一定缺陷:
1)如果是大地图,路径点数量太少会显得生硬。
2) 需要考虑得面面俱到,不然一条直路忘了加路径点,单位就会“绕”(看上去)过去。
为了更好地解决以上问题,导航网格(Navmesh or Navigation Mesh)出现了,如下图所示 [4]
现在,灰白色的多边形成为了A Star节点,它很好地解决了上面所出现的所有问题:
1) 从图中可以看出,节点的数目大大减少,因为多边形可以覆盖任意区域,因此不用将其限制成方块或点。使用这种方法,除了能提高计算速度外,编辑导航网格的效率也能获得提升。
2) 通过计算直线两点和导航网格的相邻点(上图蓝色点)的位置关系,可以计算出两点是否能直接行走而没有阻碍物阻挡。例如上图从A点到B点通过计算可以得出可以直线行走,而不用像方块和导航点那样绕来绕去。
3) 在转角位不一定要经过相邻点,可以加上单位的体积半径,这样不同体积的单位都可以合理地通过转角。
对于建筑的考虑:
对RTS中的寻路系统来说,除了上述问题,还有一个很重要的要素需要考虑——就是它必须能应对动态的游戏世界。举一个简单的例子,起建筑。
在一些需要频繁修改游戏世界的场景中,以方块为节点会更加容易作出修改 [14] ——只需要将建筑所占的方块的“Not Movable”修改成“Movable”。
例如着名的塔防游戏《Field Runner》应该就是利用这种方法来实现的。而且作为塔防,《Field Runner》可以只在建塔之后寻路一次,缓存起来就行,所以在这一场景中方块成为了一个方便快捷的选择。
然而,导航网格也是可以动态修改的,不过开发难度会更大,而且运行中动态修改可能会造成延迟。有一些方法可以优化,例如动态地修改局部导航网格 [12],或者是完全不修改,而将建筑看作局部的障碍物用另一套机制来应对 [13]。
其实除了AStar算法之外,还有其他算法或技巧可用于RTS的寻路系统,在这里简单地介绍一下:
Potential Field:
它是将地图用一个矩阵来表示,矩阵储存着大小不同的电势(整数)。例如,正电势表示吸引,负电势表示排斥。游戏中的单位本身是一个负电势,游戏以一个数组储存所有单位的电势和位置 [7]。
那么在计算一个单位需要怎么从A点到B点时,我们可以用一个新的矩阵将目的地B点设成正电势,并以不同方式(如圆形、四边形等)辐射开,离B点越远电势越低,直到0。
然后将地图矩阵,目的地矩阵,和所有单位数组的电势相加,得出一个新的、反映当前游戏世界的电势矩阵。然后单位再选择周围所有电势点中的最高电势点去走。不过这里坑很多,因为它本质上是Greedy Algorithm,所以未必能找出解。[5]
但在某些设定中,例如在没有过于复杂地形,并且需要单位自动不相互覆盖的情况下,PotentialField还是可以完成任务 [8]。因为相比A Star的寻路系统来说,这个方法会比较简单。
Flocking Behavior:
在对于一大群单位的寻路,计算量是很大的,而且往往会有很多的重复,这些都是可以避免的。
如果单位的移动是利用Steering Behavior [9] 来实现的话,那么就可以为其中一个单位,称之为Leader,计算路径(例如用导航网格),然后其他单位按照以下Flocking原则来移动:
1) 分离,避开相邻单位;
2) 一致,和整体的移动方向一致,这里应该是Leader的移动方向;
3) 聚合,向整体的平均位置靠拢;
这样的话,就可以降低寻路的计算量,并且能得到更加真实的群体单位行进效果。
另外一个技巧和Flocking Behavior类似 [10]:
对于不用Steering Behavior的一大群单位,可以将他们设为一个组,计算这个组的路径(并且要考虑到这个组的半径以便通过转角位),然后给每个单位offset一个适当的距离。
如果遇到小的通道(例如门)可以适当调整offset。
《全面战争》里面一个队伍40人,大概就是用的这种方法 [11]。
还有一个优化技巧是Chunk [15]:
这个技巧和 @王亚晖所提到的“先切分地图然后分块去做”应该是一致的。
在规模宏大的地图中,为了进一步提高寻路速度,可以在编辑地图时将一些节点处理成一个Chunk,它有入口和出口,并且不同Chunk之间需要连接起来。
从A点移动到B点,首先在Chunk之间做寻路,得到一系列的Chunk,在Chunk 1的时候只需要在Chunk 1中寻路,去到Chunk 2的时候就只在Chunk 2中寻路。
它本质上是将地图分为两种维度,一种是粗略的Chunk,一种是Chunk里面的节点(可以是方块,路径点,导航网格),并分开进行处理。有种空间分割(SpacePartition)的味道在里面。
这个方法我没有真正用过,还望大家补充。
还有DStar,它主要运用在机器人领域 [6],可以在未知环境中寻路。
======================================
注释和资料来源:
[1] 启发式函数 Heuristic Function:估计路径所需的资源花费的函数,资源可以是“时间”,“体力”等等。对于精度要求不高的游戏来说,常用的启发函数是估算曼哈顿距离。
[2] 图片来源: Implementing Auto-tiling Functionality in a Tile Map Editor
[3] 图片来源:http://mgrenier.me/2011/06/pathfinding-concept-the-basics/ (这篇博客也有讲述寻路的概念,是一个不错的学习资源)
[4] 图片来源:Game/AI:Fixing Pathfinding Once and For All (这篇博客更加全面地讲述各种寻路系统的节点代表方式,值得一看)
[5] 推荐参考:Using Potential Fields in a Real-time Strategy Game Scenario(Tutorial)
[6] 参考来源:http://en.wikipedia.org/wiki/D*
[7] 单位可以移动,所以以数组来储存会比较方便,不用频繁更新矩阵。
[8] 一个成功的例子:n-created
[9] Steering Behavior,将一个单位考虑成一个受力点,通过增加不同的力,如吸引的,排斥的等等,实现如搜索、逃跑、躲避障碍和Flocking等行为。
[10] [11] 资料来源:Flanking Total War’s AI: 11 Tricks to Conquer for Your Game
[12] 动态地修改局部导航网格:Dynamic Navigation Mesh
[13] RV Obstacles:http://gamma.cs.unc.edu/RVO/
[14] 资料来源:A*Pathfinding Project
[15] 资料来源:RTS寻路系统概要 中orange030的补充
iPhone 5s成功吸金苹果毛利率一路上扬 投资者重拾信心
从历史纪录来看,在发布带有字母“s”的新款iPhone(相关资讯)后,苹果公司的毛利率往往能够一路上扬,近日有分析师预测,iPhone 5s的发布有望让苹果公司毛利率重回40%。富国证券分析师Maynard Um近日预测,今年12月苹果公司的毛利率有望达到39.6%,而在接下来的第二财季,产品质保费用的下降有望将其毛利率推至40%。
如果他的预测准确的话,这将成为苹果自2012年9月以来全公司毛利率首次超过40%。去年秋天发布iPhone 5和iPad mini之后,苹果公司毛利率大幅下滑,只因iPhone 5采用全新的产品设计,而iPad mini则采取了相当有竞争力的定价策略。
之前的一些历史数据也可以看出一个趋势:发布iPhone 3G,iPhone 4和iPhone 5之后,苹果的毛利率呈现明显的下滑趋势;而在iPhone 3GS和iPhone 4S发布之后,毛利率就一路上涨。
2012年第二财季苹果发布了iPhone 4S,毛利率也来到了历史最高点的47.4%,之后这一数字一路下滑,到2013年第三财季苹果的毛利率已经跌到了36.9%。
Maynard Um认为,如果苹果的毛利率能够再次涨回40%上下,将会帮助那些对苹果高价策略存在疑虑的投资者重拾信心。他也深信苹果有足够的发展空间拓展iPhone产品线,苹果紧靠目前的280家合作运营商就达到了目前的销量,相比之下,黑莓在颠峰时期拥有650家合作运营商。