怎么架设游戏服务器?
让菜鸟和穷人也能架成自己的征途服务器:
首先你要忘掉网上发表的繁琐的架设教程,那都是有意无意的骗子,按本方法保证能很方便地架起自己的真征服务器。
一,机器需求。
内存必须大,建议4G,cpu要求不高,只要是64位的就行,比用amd
4200+,这套机器下来,价格在2000元元以下。
二,安装RHEL
50,可以电驴上搜索,DVD版的,下载后打人刻在一张DVD盘上。
Red
Hat
Enterprise
Linux
(Server
including
virtualization)系列号:2515dd4e215225dd
安装时,选则上mysql
web
等服务,其它可以不选,玩不转linux的人请关闭防火墙。
三,安装成功后,进入图形界面,界面很容易上手,在这里把网卡IP设好,这里假设为
1921680200
然后
服务
中把
mysqld
httpd
选上启动并保存。
四,把hometgz放在根目录,在图形界把它解开,在home目录里生成有server
ztgame
BAK三个目录。
把/home/BAK/MySQLshared-compat-5045-0rhel5x86_64rpm安装上。
五,建立数据库用户zt10game
开通远程和本地权限
默认的root密码是空,第一进入要设置root密码,一定要把它记住。然后用以下命令建议名为zt10game密码是12345678的用户:
grant
all
privileges
on
to
'zt10game'@'localhost'
identified
by
'12345678'
with
grant
option;
grant
all
privileges
on
to
'zt10game'@'%'
identified
by
'12345678'
with
grant
option;
六,建立和导入游戏数据库
在客户机安装SQLyog
Enterprise。把hometgz中的BAK\sql解在本地机,按名字建立数据库把把内容导入。
七,客户机管理工具主要用两个
SecureCRT
和
WinSCP3,前者是远程操作的,后者是文件管理。用WinSCP3设置所有文件为777属性。
八,用SecureCRT登录,cd
/home
然后
/4gsh等待游戏启动。出现三个
可以进游戏啦,服务端启动完毕。
九,客户请用104加三合一补丁。
十,登录器请用
可注册的完美登录器,这些网上都有。实在找不到的请回贴索取。
声明:这个端是一个朋友弄的,一不小心被我拿到,现发出来供大家学习、研究,据说用综合了网上可能找到的紫龙104
征途资料
做征途最新版这三个素材而成,学习者请在24小时后删除,绝不可用于商业用途,发生法律纠纷由使用者承担法律责任,本人概不责。(转)
首先你要弄游戏的服务器端,然后配置网络连接,接下来要配置服务器端使用的数据库,最后把相应的服务器应用程序按步启动,待都能正常连接数据库并开始提供服务了,就可以用客户端连接了。顺便说下“最主要是要根据你要搭建的游戏来决定搭建平台”比如传奇2用的是DB2数据库,征途用的LINUX+Mysql(也WIN版),美丽世界用的是MSSQL,天堂2用MSSQL等等,太多了,不举了。需要的服务器的话83095446
可以的。
但是你要考虑一下自身的条件:
1能否24小时开着机器?如果无法,那也就称不上服务器了。
2主机配置跟得上不,如果是古董级的,那就免了。毕竟外部连接一上来,CPU和内存都处理不过来了。卡都卡死。
3网络稳定吗?一般ADSL的就不好搭建服务器,速度和带宽都跟不上,建议起码是LAN的用户。
4一旦用于服务器以后,电脑主机就要专门用于游戏运行,而无法他用。管理员在服务器上打牌,打开网页什么的,都造成卡机的情况,会让游戏很不顺畅。
5技术方面能解决吗?例如IP如何固定,端口的安全设置,服务器的搭建,游戏服务器端的安装和修改之类的。
如果解决不了以上5个方面的问题,建议还是不要考虑了。
首先要知道游戏类型是什么,然后知道承载人数是多少,以及开发周期多少。需要根据这些来决定游戏架构和技术选型。
对于gameplay来说,本身就是个大循环,一定频率进行tick,接收来客户端或者其他服务器的rpc,处理逻辑,然后数据落地以及发送数据给客户端或者其他服务器,一般gameplay来说在同一个进程里都是同步的方式去编写,同步的实现大多数是单线程的,或者使用coroutine来实现actor这种模式。大部分游戏交互都是比较多,所以不论service和service之间的交互还是玩家和玩家之间的交互,如果考虑多线程的同步的问题,会非常复杂以及很容易做错,所以一个service内同一个时刻都是在一个线程中执行的。
针对mmo或者一些竞技类游戏往往有场景管理的概念,就是游戏AOI,比如一个玩家移动,需要告诉周围所有的玩家,复杂度在nn,如果减少这个n,就有了AOI算法,比如九宫格,十字链表等,如果刚开服的时候很多人挤到一个主城中,就算采用九宫格和十字链表等AOI等算法,往往同屏内玩家数量还是很大,客户端渲染的单位数量比服务器少一个数量级的,所以场景管理这里还可以有个分线的做法,玩家多的时候,不同线不可见,玩家少的时候进行合并。
如果做帧同步一些关键点为表现要和逻辑分离,随机算法和随机种子的一致性,数学库浮点换定点,三角函数采用泰勒展开或者查表法,需要保序的容器,timer不能基于钟表时间而需要帧timer,以及防作弊(一般都是投票法,或者服务器跑个验证端)
现在很多游戏在线更新bug甚至不停服更新慢慢变成一种强需求了,实现这种方式主要使用脚本热更新,热重启+逻辑内存以及ab服切换来实现。
0条评论