1.安装与配置服务端
注意:
- VS需要安装C++支持,2017会自动检测并安装C++
- 项目需要升级到特定版本才能编译,右键项目,选择重定向解决方案目标
- 安装MySQL数据库,没必要用官方那个超级大的安装版本,直接下个JspStudy 2016,里面包含了一个精简绿色的MySQL
- 环境变量跟新用户步骤可以直接跳过
2.安装客户端
注意:
- 客户端版本一定要与服务端一致,否则无法链接 实际上不用,只要将客户端的资产放到服务器目录下,然后 gensdk,然后将SDK拷贝到客户端的 Plugins 下即可。客户端认的是SDK版本。
- 将客户端的资产库kbengine_demos_assets拷贝到服务端目录下
- 在服务器编译好后,运行kbengine_demos_assets下的 gensdk.bat,将生成的插件 kbengine_unity3d_plugins 拷贝到客户端的 Assets\Plugins 下
3.资产库
所谓资产库,即是一个新的项目的所有服务端 数据、脚本代码、资源等存储的地方,而这个地方就是一个文件夹,该文件夹一般可以放置在引擎根目录下(与kbe、assets文件夹同级)。
资产库文件夹也可以放置在其他地方,不过需要修改启动脚本中环境变量,在本文后面会进行阐述。
4.更改数据库地址
在资产库下的 res/server/kbengine.xml ,将 databaseInterfaces 节点下的 host 改为 localhost 就能连接本地数据库
同时也能改数据库的连接账户密码
5.添加Python代码提示
用Pycharm IDE,根据这篇教程设置:https://www.oschina.net/question/1769474_2216357
记得顺便把 scripts\common 的路径也添加进去,否则KBEDebug也没提示
6.服务器客户端互相调用
客户端调用服务器:在 BaseMethods 或 CellMethods 里加上 Exposed标签,就会把方法暴露给客户端,在 gensdk 后,引擎的sdk生成器会自动生成与之对应的客户端代码。这样一来,客户端就可以直接调用服务器上的方法进行通讯了。
服务器调用客户端:在 ClientMethods 下声明的方法,使服务器可以主动调用客户端上的方法,例如各种 onEnterGameSuccess 等事件回调。