zoukankan      html  css  js  c++  java
  • KBE_创建项目和基本常识

    此笔记参考官方文档

    第一个项目

    资产库:是每一个项目文件夹的名称,使用KBE提供的生成工具生成一个最小资产库,其中包含了很多常用的工具,默认名server_assets:


    res:放置一些资源(入地图资源,res/spaces目录下)以及当前项目的服务器配置(res/server目录下);

    scripts:脚本的文件夹,所有脚本开发都在该文件夹下进行,引用自官方手册;

    base: Baseapp上的脚本存放位置
    bots: Bot机器人的脚本存放位置
    cell: Cellapp上的脚本存放位置
    common: 脚本开发中共用的一些模块的存放位置,如Functor、KBEDebug等工具模块
    data: 存放数据的位置,比如策划配置好的表格等(一般是py文件,而非excel文件),可以在脚本开发时快速获取到对应的数据对象
    db: DBMgr上的脚本存放位置
    entity_defs: Entity的配置文件存放位置
    interface: 第三方接口服务器的脚本存放位置
    logger: 日志服务器的脚本
    login: Loginapp的脚本存放位置
    user_type: 用户自定义的数据类型的实现脚本的存放位置
    entities.xml: Entity实体声明文件,用到的Entity需要在此进行声明,否则无法使用

    第一个entity

     创建一个entity的实体,它包含如下几个部分:

    1. entity 的声明({项目资产库}/scripts/entities.xml
      声明过后,引擎才知道它的存在。
    2. 配置,即def配置文件的编写({项目资产库}/scripts/entity_defs/FirstEntity.def
      该文件是一个entity的完整描述文件,从而让引擎及服务器各个组件知道这个entity有哪些能力(方法和属性)
    3. python脚本的实现。每个entity最多有三个部分的实现(client/cell/base)
      • {项目资产库}/scripts/base/FirstEntity.py)如果有Baseapp上的功能需求,则需要有对应的base实现
      • {项目资产库}/scripts/cell/FirstEntity.py)如果有cellapp上的功能需求,则需要有对应的cell实现
      • client部分一般在客户端上进行实现,不在服务端范围内
    4. 创建实体对象。在引擎端调用API来创建该实体对象,相当于实例化实体。

    第一个Space

    space空间是cell上的一个抽象概念,每个space相当于一个空间,它可以是一个场景,一个副本,一个房间等

    不在同一个space的客户端无法互动,通讯。

    创建一个space:

    1. entity声明({项目资产库/scripts/entities.xml}
      在该文件下添加FirstSapce
    2. def配置({项目资产库/scripts/entity_defs/FirstSpace.def}
    3. python实现({项目资产库/scripts/base/FirstSpace.py}
      空间实体继承自:KBEngine.Space
    4. cell部分的实现({项目资产库/scripts/cell/FirstSpace.py}
    5. 在baseapp就绪时创建空间({项目资产库/scripts/base/kbemain.py}
      在kbemain.py中的onBaseAppReady函数中添加创建空间实体的语句

    让entity进入space空间

    这里我们让entity在客户端链接服务器并和entity关联时,就立马进入空间

    {项目资产库/scripts/base/FirstEntity.py},添加onClientEnable回调函数

  • 相关阅读:
    oracle 安装
    C++中 接口的定义 COM
    linux查看及改变运行级别
    BSD Apache GPL LGPL MIT
    DES MAC PIN HEX
    c语言字符输出格式化
    oracle
    Windows C++ 子目录数量
    GetProcAddress 宏
    How do I install Adobe Flash on Debian Wheezy?
  • 原文地址:https://www.cnblogs.com/bbdr/p/10535752.html
Copyright © 2011-2022 走看看