KBE_登录Demo

目录

服务器
最小资产库创建
entity配置
实体的Python实现
创建第一个空间Space
让entity进入空间Space
客户端(unity)
生成客户端SDK
实现Client部分验证
验证测试
正文=

服务器

最小资产库创建

运行文件“new_assets.bat”,生成最小资产库“server_assets”,更名为“first_assets"

entity配置

entity声明

<root>
	<Player hasClient="true"></Player>
</root>

hasClient 表示这个实体有客户端

entity配置

新建def配置文件,配置文件名称规定为(实体名称.def)
添加方法声明
{项目资产库}scriptsentity_defsPlayerEntity.def

  • entity的 Python实现
    名称规则(实体名.py)
  • base文件夹下的部分
    {资产库}aseFirstPlayer.py
  • cell文件夹下的部分
    {资产库}scriptscellFirstPlayer.py
  • entity何时创建?
    教程采用:使用账户入口对第一个enetity进行创建,只添加一句: FirstEntity
  • {项目资产库}/res/server/kbengine.xml
    Space配置
    entity声明和def文件配置
    {资产库}scriptsentities.xml
    {资产库}scriptsentity_defsWorldSpace.def
    Space的 Python实现
    名称规则(空间名.py)
    base部分
    {资产库}scriptsaseWorldSpace.py
    cell部分
    {资产库}scriptscellWoldSpace.py
    space何时创建
    教程采用:Baseapp就绪时创建Space空间,在baseapp就绪后加载空间space
    {资产库}scriptsasekbemain.py
    验证空间Space是否加载成功
    *开始验证:打开guiconsole(......kbengine-2.4.kbe oolsserverguiconsole)选择baseapp,然后选中debug便签,输入Python语句:KBEngine.entities.items(),Ctrl+Enter执行语句,输出结果如下:

错误警告

我们可能需要设置一下用户账户和密码,位置在{资产库}resserverkbengine.xml: root -> dbmgr -> databaseInterfaces -> default -> auth

注意2(9个窗口一个都不能少)
折叠的代码中所有的实例名称(PlayerEntity 或者 FIrstPlayer 选一个统一)都需要统一,我上面没有再修改,吐槽博客园的编辑器 (¬︿¬☆)

让entity进入空间Space
我们再次打开之前的文件({项目资产库}/scripts/base/PlayerEntity.py)
添加一个回调和函数,onClientEnabled ,因为我们的PlayerEntity继承了Proxy,所以当客户端可用时,这个函数会被执行,此时我们选择让entity进入空间

客户端(unity)
生成客户端SDK
配置SDK生成工具

实现Client部分验证
验证测试

原文地址:https://www.cnblogs.com/bbdr/p/10579748.html