游戏公司往往在运行初期要投入大批资金,购买高性能服务器。可是,一旦进入赢利期,后续的投入几乎可以不计,所以,行业内的投入主要在于游戏规则的创设,代码的编写,以及带宽的租用,服务器的购买或者租用。
中小型游戏:玩家规模比较大,通常普通云服务器承载会有着一定的压力,此时建议选择独立游戏服务器或高频云服务器。值得一提的是,随着游戏运营,游戏玩家规模的增长会需求服务器配置的升级,因此需要选择能够升级服务器配置。
大型游戏:对服务器要求很高,在选择游戏服务器租用时需要对服务器、数据中心、IDC商进行综合的考量。从石总(蜗牛CEO)的谈话中了解到
服务器的设计承载是30000人
其中10000人在线,20000人离线
20000人在离线的时候,人物还是存在于游戏中的,同时,人物离线后服务器还是继续的计算它的行为,为它安排行为。
那么这30000人可以理解为是同时在线的,10000为玩家实际 *** 作,即活,20000人由服务器 *** 作,为死
那么30000人同时在线(活),是可以实现的
专业人员猜测为多组服务器并行组成一个服务器,就是说九阴的一个服务器是由好几台服务器组成的有。《猎人MM》国服首测将于2022年1月19日,开启。本次测试为删档测试,不可充值,测试结束后,测试账号将保留,但账号所有相关资产将不予保留。由于首次测试可能对游戏服务器承载造成一定压力。届时可能会出现不定期维护、服务器临时关闭等情况。官方将尽可能避免此类情况的发生,敬请谅解。首先要知道游戏类型是什么,然后知道承载人数是多少,以及开发周期多少。需要根据这些来决定游戏架构和技术选型。
对于gameplay来说,本身就是个大循环,一定频率进行tick,接收来客户端或者其他服务器的rpc,处理逻辑,然后数据落地以及发送数据给客户端或者其他服务器,一般gameplay来说在同一个进程里都是同步的方式去编写,同步的实现大多数是单线程的,或者使用coroutine来实现actor这种模式。大部分游戏交互都是比较多,所以不论service和service之间的交互还是玩家和玩家之间的交互,如果考虑多线程的同步的问题,会非常复杂以及很容易做错,所以一个service内同一个时刻都是在一个线程中执行的。
针对mmo或者一些竞技类游戏往往有场景管理的概念,就是游戏AOI,比如一个玩家移动,需要告诉周围所有的玩家,复杂度在nn,如果减少这个n,就有了AOI算法,比如九宫格,十字链表等,如果刚开服的时候很多人挤到一个主城中,就算采用九宫格和十字链表等AOI等算法,往往同屏内玩家数量还是很大,客户端渲染的单位数量比服务器少一个数量级的,所以场景管理这里还可以有个分线的做法,玩家多的时候,不同线不可见,玩家少的时候进行合并。
如果做帧同步一些关键点为表现要和逻辑分离,随机算法和随机种子的一致性,数学库浮点换定点,三角函数采用泰勒展开或者查表法,需要保序的容器,timer不能基于钟表时间而需要帧timer,以及防作弊(一般都是投票法,或者服务器跑个验证端)
现在很多游戏在线更新bug甚至不停服更新慢慢变成一种强需求了,实现这种方式主要使用脚本热更新,热重启+逻辑内存以及ab服切换来实现。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)