WindowInstall - ScutGame/Scut GitHub Wiki

此章节介绍如何搭建Scut服务端Window开发环境

安装准备

  • Web服务器:IIS

  • NoSql数据库:Redis

  • 关系型数据库:Microsoft SQL或MySql

  • 开发工具:Microsoft Visual Studio

    • VS代码生成插件:ReSharper
    • VS Python开发插件:IronPython Tool,Python开发者使用,可选
    • VS Lua开发插件:BabeLua,Lua开发者使用,可选
  • Scut开发类库

下载与安装

1. IIS Web服务器

IIS 7.0以上版本,此以Window7为例:

安装步骤

  1. 打开"开始"-"控制面板",选择"程序和功能"
  2. 点击左边"打开或关闭Windows功能",弹出"Windows功能"面板
  3. 展开"Internet信息服务",将"Web管理工具"与“万维网服务”的所有子项都勾选上
  4. 点击"确定"安装

安装结果检查

  1. 打开"C:\windows\Temp"目录,右击属性在安全栏编辑增加"everyone"用户读写权限
  2. 打开Internet信息服务,访问"iisstart.htm"页面,显示"IIS7" logo表示安装成功

2. Redis数据库服务器

Redis Server使用Redis 2.6.12以上版本,NoSql的Redis数据库可以提供高效可靠的读写性能,Scut将使用Redis存储玩家的数据,而不是数据库,这点需要注意,之前有做过服务端的这里会有差别;

下载地址:包含Win64位与32位 http://scutgame.com/download/Redis-win2.6.12.zip

安装步骤

  1. 解压Redis-win2.6.12.zip包到D:\Redis\目录
  2. 根据所使用的系统选择运行x64或x86目录下的 run.bat文件,启动Redis服务器
  3. 打开redis-cli.exe程序测试,输入set命令,设置键为"name" 值为"John",再输入get命令,取出键为"name"的值

安装结果检查

>set name John
OK
>get name
"John"

需要开机启动

run.bat的快捷方式Copy到‘开始’-‘程序’-‘启动’目录下。

Redis配置

Redis是内存数据,它的数据定期更新到磁盘中,如果直接关闭它会丢失一段时间的数据;以快照方式同步到磁盘的更新频率配置如下

#   after 90 sec (1.5 min) if at least 1 key changed
#   after 30 sec if at least 10 keys changed
#   after 6 sec if at least 10000 keys changed
save 90 1
save 30 10
save 6 10000

另外防止意外断电还可以使用AOF的方式同步数据,开启配置:(此方式性能会比快照的方式性能差1-2倍左右)

appendonly yes
appendfsync everysec

3.1 MS SQL数据库

MS Sql 2005以上版本

下载地址与安装,在baidu中搜索下,(安装时使用sa账号登录,需要设置密码:123);

安装结果检查

打开SQL Server Management Studio,使用sa/123登录,查看是否有系统数据库:master等数据库;

3.2 MySQL数据库

MySql 5.0以上版本

下载地址与安装,在baidu中搜索下;

安装结果检查

打开MySql命令行窗口,输入密码登录后,输入如下命令(显示有数据库说明成功):

mysql>show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+

4. VS开发工具

Microsoft Visual Studio 2013以上版本,Net Framework运行时4.5.1以上

下载地址:http://www.cocoachina.com/bbs/read.php?tid=195353

安装:在baidu中搜索下,这里就不介绍了

如果之前有安装VS2012的,可以升级,下载安装Net Framework4.5.1运行时;Scut的类库是在Net Framework4.5.1下编译的,低版本不能使用

安装结果检查

  • IIS服务器-ISAPI和CGI限制:可选

    a) 如果有使用IIS服务器时,需要检查是否正确安装.net4.0版本,并允许启用;

    b) 选择站点根目录,切换到功能视图,打开“ISAPI和CGI限制”,是否有ASP.NET V2.0.50727ASP.NET V4.0.30319项,且是允许状态;

    c) 如果没有,打开Cmd命令窗口,输入"C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i"向IIS中注册,没有此目录需先安装.NET Framework4.0;

    d) 安装成功后,重新检查 a) 步骤;

4.1 VS代码生成插件

使用ReSharper最新版本

安装:在baidu中搜索下,这里就不介绍了

4.2 VS Python开发插件

使用Python2.7.3 Tool

新版本下载地址:http://ironpython.net/tools/

安装位置:C:\Program Files (x86)

安装成功配置:(这步很重要,Scut引擎使用Python脚本时会加载此Python安装的Lib类库目录))

  1. 右击我的电脑,点属性,选择高级系统设置
  2. 打开系统属性窗口,在高级选项卡下打开环境变量
  3. 增加一个环境变量:"IRONPYTHONPATH"
  4. 设此变更的路径:"C:\Program Files (x86)\IronPython 2.7\Lib"
  5. 点击"确定"保存退出
  6. 重启电脑

4.3 VS Lua开发插件

使用Babelua新版本

下载地址: http://babelua.codeplex.com/

5. Scut开发类库

官网下载最新版本:http://scutgame.com/,32位的到“下载”栏目中下载。

开发包中包括:GameServer的控制台程序,ScutSMS工具,排行榜示例脚本和Release的Lib类库。

运行GameServer控制台程序:

  1. 先启动Redis Server
  2. 首次运行,需要先运行Install.bat(或手动将Lib目录的类库Copy到Console目录下)
  3. 运行GameServer.exe

开发新项目时,只需要将Console目录和Lib目录Copy到项目当前路径下即可。