网狐荣耀6701/6801服务端 子游戏编译 部署
1.前言
工作需要,接触到网狐的代码,因为没接触过vc和cocos经过一番才搭建起来,记录起来供大家参考。
服务端包括系统模块(协调服务器、聊天服务器、登录服务器、游戏服务器),网站(网狐前台、后台、房卡后台)。
2.环境准备
笔者这里是将数据库和服务器均运行在同一个win虚拟机中,具体环境准备不进行介绍。
- windows server(笔者这里用的是win7虚拟机)
- IIS + .NET4.0
- VS2015
- SQLServer2012
3.数据库初始化
因为网狐的数据库脚本中,有部分是基于 提供的路径去查找其他脚本的,所以执行前要将脚本中的地址替换成你当前脚本所在地址。
- 使用IDE打开脚本所在文件夹,全文替换。
- 搜索原本的地址(一键安装.bat中有),然后将搜索到的目录下的包含文本替换为你的脚本路径。
- 执行,如果运行到生成游戏标识,运行10min左右关闭即可。
4.网站部署
- 依次打开网站的目录,修改目录下web.config,将所有User ID=和Password替换为你的数据库用户名密码。
- 打开IIS管理器->展开“网站”->终止默认网站 防止端口占用
- 依次添加网站(前台、后台、房卡后台,注意端口不能重复,前台一般为80,方便用户访问),示例见图。
名称仅作为标识随意
物理路径为相应网站文件
IP地址输入“*”(即不限制访问来源ip)
主机名即域名 IIS管理器->应用程序池,确保添加的三个网站的.NET Framework版本均为v4.0。
如果不是,可以右键网站->高级设置->.NET Framework进行调整。
如果没有这个选项,确认是否安装了.NET4.0环境,没有就安装。
如果已经安装了,还是没有,打开cmd,输入下方命令。具体可以参见相关博客cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319 aspnet_regiis.exe -i
- 应用程序池中,依次右键网站->高级设置->启用32为应用程序为True。
- 进入网站后台,进行简单配置(默认用户名:admin,密码:123456)。配置下数据库地址。系统维护->机器管理->新增,名称随意,填写数据库ip地址、端口、账号、密码。机器码可以不需要。
5.编译并运行服务端
5.1系统模块编译
因为系统模块包括了服务端和pc客户端的项目,实际编译会生成服务器和pc客户端,如果不需要pc客户端,可以将相应项目进行卸载,并且可以略过下方的5和6步骤。
- 进入系统模块目录。
- 打开全局定义目录,修改Platform.h,修改网站地址和服务器ip(这里均为本地虚拟机地址)。
- 使用VS2015打开系统模块下的vs解决方案(sln后缀)。
- 调整菜单栏中的配置选项为 release_unicode
- 如果提示缺少d3dx9.h等文件,则说明项目需要依赖DirectX,将其添加到项目的包含路径中。需要用到的都是pc客户端的项目如 机器管理、视频组件、游戏广场、游戏框架。右键该项目->属性->VC++目录。
- 因为编译pc客户端需要依赖网狐图形类库、游戏引擎,但是没有源码,所以要编译通过,需要确保目录"链接库unicode"下有FGuilib.lib和GameEngine.lib。实际运行pc客户端的时候,也需要保证有FGuilib.dll和GameEngine.dll。
- 需要注意,每个项目都会生成相应dll或exe,有时需要调整。
调整生成的路径,右键项目->链接器->输出文件。这里的相对路径都是以当前项目目录为基准。
调整生成后一些操作(如果复制移动等),右键项目->生成事件->后期生成事件->命令行。需注意,只有"在生成中使用"选项为 是,才会生效。 - 右键解决方案->重新生成解决方案。
5.2运行生成的服务器
- 首先需要使用工具Collocate.exe,修改配置文件ServerParameter.ini,并将其放到生成的服务器目录中。
- 然后依次运行并启动协调服务器(Correspond.exe)->登录服务器(LogonServer.exe)->聊天服务器(ChatServer.exe)。确保没有报错,还有一个游戏服务器,运行子游戏的关键,但是需要先编译好子游戏,并放到服务器目录下,还要在网站后台中进行游戏的添加配置。
6编译运行子游戏
6.1编译子游戏
每个子游戏解决方案,是包含了服务端dll和客户端exe。同样如果不需要pc客户端,则可以卸载子游戏的客户端项目。
- 进入子游戏目录。我们以游戏510K为例,进入510K目录,使用vs2015打开目录下解决方案。
- 确认客户端项目引用了DirectX,同系统模块编译的第5步。
- 右键解决方案->重新生成解决方案。确保生成的服务端dll(510KServer.dll)放在运行服务器的目录下,exe(510K.exe)放在运行pc客户端的目录下。
6.2运行子游戏服务
- 进入510K目录,打开消息定义目录,查看CMD_Game.h文件,这里定义了后面需要在网站后台配置的信息,打开放着。
- 进入网站后台,(默认用户名:admin,密码:123456)。
- 模块Tab下,增加游戏模块。系统维护->游戏管理->新增。支持类型看情况点,保持。
模块标识 -> CMD_Game.h中的KIND_ID
模块名称 -> GAME_NAME
数据库名称 -> RYTreasureDB
数据库地址 -> 在网站部署中第6步添加的机器。
服务端版本 -> VERSION_SERVER
客户端版本 -> VERSION_CLIENT
服务端名称 -> 510KServer.dll
客户端名称 -> 510K.exe - 游戏Tab下,增加510K模块下游戏,与增加游戏模块的内容相似。(如果没有游戏类型选项,先到类型Tab下进行新增)。
- 手游Tab下,增加510K手机游戏,内容一样相似。具体内容怎么填写见网狐荣耀6701/6801 手机打包发布,目前可以先略过。
- 进入游戏服务器所在目录,确保5.2中的服务器已经启动。打开游戏服务器(GameServer.exe)。
点击创建房间->选择510K(如果没有,则要确保6.1中生成的510KServer.dll是否放到服务器目录下了)->进入配置页,记得需要配置服务端口,端口号随意,不要被占用或防火墙阻止即可,完成。
点击加载房间->选择刚刚创建的510K房间->启动服务。
结语
至此,网狐的数据库初始化完成,网站部署完成,服务端编译完成,子游戏编译完成,创建游戏,并运行了游戏服务器。下一篇将介绍网狐cocos手机端安卓打包、热更新,因为没有证书ios只简单介绍编译及注意事项。
相关推荐
CoderToy 2020-11-16
技术之博大精深 2020-10-16
emmm00 2020-11-17
bianruifeng 2020-11-16
云中舞步 2020-11-12
世樹 2020-11-11
暗夜之城 2020-11-11
张荣珍 2020-11-12
amienshxq 2020-11-14
ASoc 2020-11-14
yungpheng 2020-10-19
loveyouluobin 2020-09-29
尘封飞扬 2020-09-29
Coder技术文摘 2020-09-29
lbyd0 2020-11-17
BigYellow 2020-11-16
sushuanglei 2020-11-12
我心似明月 2020-11-09