浅谈如何做一个游戏服务器

浅谈如何做一个游戏服务器,第1张

首先要知道游戏类型是什么,然后知道承载人数是多少,以及开发周期多少。需要根据这些来决定游戏架构和技术选型。

对于gameplay来说,本身就是个大循环,一定频率进行tick,接收来客户端或者其他服务器的rpc,处理逻辑,然后数据落地以及发送数据给客户端或者其他服务器,一般gameplay来说在同一个进程里都是同步的方式去编写,同步的实现大多数是单线程的,或者使用coroutine来实现actor这种模式。大部分游戏交互都是比较多,所以不论service和service之间的交互还是玩家和玩家之间的交互,如果考虑多线程的同步的问题,会非常复杂以及很容易做错,所以一个service内同一个时刻都是在一个线程中执行的。

针对mmo或者一些竞技类游戏往往有场景管理的概念,就是游戏AOI,比如一个玩家移动,需要告诉周围所有的玩家,复杂度在nn,如果减少这个n,就有了AOI算法,比如九宫格,十字链表等,如果刚开服的时候很多人挤到一个主城中,就算采用九宫格和十字链表等AOI等算法,往往同屏内玩家数量还是很大,客户端渲染的单位数量比服务器少一个数量级的,所以场景管理这里还可以有个分线的做法,玩家多的时候,不同线不可见,玩家少的时候进行合并。

如果做帧同步一些关键点为表现要和逻辑分离,随机算法和随机种子的一致性,数学库浮点换定点,三角函数采用泰勒展开或者查表法,需要保序的容器,timer不能基于钟表时间而需要帧timer,以及防作弊(一般都是投票法,或者服务器跑个验证端)

现在很多游戏在线更新bug甚至不停服更新慢慢变成一种强需求了,实现这种方式主要使用脚本热更新,热重启+逻辑内存以及ab服切换来实现。

我有架设过私服的服务器,不过不知道对你是否有帮助。。

简单的说就是拿个游戏的服务端,下一个APM,ODBC和MYSQL(呵,我当时是用XP弄的所以要下咯) 然后再进行服务里面的设置以前各个软件的相应设置。最后在路由里面弄一下端口映射,连上外网!!

如果你还要弄个注册账号的。就弄个小的ASP!这样也就差不多了!!

只要把客户端发给你的朋友,这样就可以一起玩了!!

服务器是一个实体计算机。你可以花钱购买一个实体服务器,然后通过电信等网络提供商架构一个光纤,然后购买然后游戏服务器程序设置好,那么你的游戏服务器就架构好了。

另外,常见的而且省钱的方式是租用

服务器空间(其实就是服务器上硬盘的一部分空间而已),他们已经把上面这个服务器架构好了,然后把服务器的空间分成很多份,分别卖给不同的人,这样,买空间的人省钱了,他们也可以赚更多的钱,可以用这些空间做网站

做游戏服务器空间都可以。

具体的你可以联系当地的电信部门就好了。也可以上这里看看

:wwwonlyidccom/hire/gameshtml

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 浅谈如何做一个游戏服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情