做好准备工作后,可以开始搭建我们的kbengine服务端,运行成功kbengine服务端,共有9个服务会相应的被打开,并会全部提示【info】found all components!

准备工作

1.在github上下载项目最新的源码

2.下载测试的客户端源码(这里使用unity3d)

kbengine服务端源码目录介绍

当前目录为: KBE_ROOT根目录

KBE_ROOT/assets【KBE_ROOT/kbengine_demos_assets】:游戏工程例子根目录

  res :工程的所有资源

    server:放置服务端相关配置

  scripts:所有游戏逻辑的相关python文件

    base、cell、client :(python逻辑)

    bots:机器人测试的python逻辑

    common:公共文件

    data:逻辑的数据资源

    db:dbmgr的扩展文件,数据访问操作

    entity_defs:实体定义

      interface:实体接口定义

    server_common:服务端公共逻辑

    user_type:自定义用户类型目录

    login.....:游戏具体实现python逻辑

KBE_ROOT/doc:API文档及项目指南

KBE_ROOT/kbe:引擎目录

  tools:工具

    server:服务端工具

      guiconsole:可视化的控制台工具

      install:引擎安装工具

      pycluster:跨平台python脚本集群控制工具

    xlsx2py:游戏数据表导出工具

  src:KBEngine源代码

    build:makefile公共脚本

    client:客户端插件和例子目录

    lib:项目模块源代码

      client_lib:客户端底层公共框架

      cstdkbe:标准库

      db_mysql:Mysql数据库实现

      dbmgr_lib:数据操作公共接口

      dependencies:依赖库

      entitydef:实体解析模块

      helper:协助性模块

      math:数学公式相关模块

      navigation:2d/3d导航模块

      network:网络处理模块

      pyscript:脚本插件

      python:python源代码

      resmgr:资源管理器

      server:服务端公共模块

      thread:多线程模块

      xml:xml文件解析模块

    libs:编译后的lib文件存放

    server:服务端源代码

      cellapp:与位置信息相关的游戏逻辑

      baseapp:客户端通信,与位置无关的游戏逻辑(公会、聊天、大厅、排行)

      loginapp:处理实体的注册与登录

      dbmgr:实体数据存储与查询

      machine:机器人 实体压力测试

      tools:服务端助手工具

        bots:压力测试源码

        guiconsole:可视化控制台源码

        logger:日志管理器

        interface:接口管理器

  res:引擎资源目录

    key:RSA密钥

    scripts:python脚本库

    server:服务端引擎配置

      log4cxx_properties:日志配置

  bin:编译后的项目可执行文件存放位置

    server:编译后的客户端存放目录

unity3d_demo源码介绍

Assets

  Plugins
    kbengine:KBEngine插件层(包含了网络消息处理、客户端实体维护、与服务端对接层)
   Scripts
     kbe_scripts:客户端逻辑脚本层
      Account.cs:对应于服务端的账号实体的客户端部分实现
      Avatar.cs:对应于服务端的角色实体的客户端部分实现
      clientapp.cs:按照服务端的概念cellapp、baseapp、etc,这里我们抽象出一个clientapp
      Combat.cs: 对应于服务端的def interfaces/Combat的客户端部分实现
      GameObject.cs:对应于服务端的def interfaces/GameObject的客户端部分实现
      Gate.cs:对应于服务端的Gate实体的客户端部分实现
      Monster.cs: 对应于服务端的Monster实体的客户端部分实现
      NPC.cs:对应于服务端的NPC实体的客户端部分实现
      Skill.cs:一个简单的不能再简单的技能执行类,服务端cell/skill下面也有,而客户端主要是进行一些检查
      SkillBox.cs:玩家的技能列表,对应于服务端的def interfaces/Skillbox的客户端部分实现
      SkillObject.cs:技能对象(施法者、目标、受术者等),服务端cell/skill下面也有
      u3d_scripts:客户端UI等表现层
      UI.cs:处理UI部分
      World.cs: 处理场景世界部分
      GameEntity.cs:所有服务端同步过来的实体在表现层都必须继承该类,完成统一的表现(头顶名称、血条等)与控制(实体状态、移动)

相关配置介绍

entities.xml:服务端所有有效的实体类型必须在此进行注册,引擎初始化时会根据此处依次加载实体的描述信息。

kbengine_defs.xml:服务端默认配置,在此用户可以修改cellappbaseapp、loginapp等所有的组件配置。
注意:你可能经常需要对引擎进行升级,直接修改此处可能在升级时产生冲突,另外也不适合多个项目放在同一KBEngine环境的情况。
建议在kbengine.xml中进行重载修改,你只需要对想修改的部分按照格式在xml中重写就可以了。

kbengine.xml:服务端配置,在此用户可以修改cellappbaseapp、loginapp等所有的组件配置。

简单项目运行配置更改

1.项目运行时需要检测服务器的mysql数据库的大小写敏感问题 配置mysql安装文件中的 my.ini中的 [mysqld] 在后面添加 lower_case_table_names=2

2.项目基本配置KBE_ROOT\assets\res\server\kbengine.xml

系统环境变量

UID:自定义,服务器组标识(1~32767)

KBE_ROOT:kbengine引擎根目录

KBE_RES_PATH:项目资源路径

KBE_BIN_PATH: 项目可执行文件路径

运行kbengine

运行服务端KBE_ROOT\assets\start_server.bat

kbengine环境搭建(2)的更多相关文章

  1. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  2. Azure Service Fabric 开发环境搭建

    微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...

  3. rnandroid环境搭建

    react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...

  4. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  5. springMVC初探--环境搭建和第一个HelloWorld简单项目

    注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...

  6. 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~

    一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...

  7. Nexus(一)环境搭建

    昨天,成功搭建了自己的 Maven 环境(详见:Maven(一)环境搭建),今天就来研究和探讨下 Nexus 的搭建! 使用背景: 安装环境:Windows 10 -64位 JDK版本:1.7 Mav ...

  8. 「译」JUnit 5 系列:环境搭建

    原文地址:http://blog.codefx.org/libraries/junit-5-setup/ 原文日期:15, Feb, 2016 译文首发:Linesh 的博客:环境搭建 我的 Gith ...

  9. appium+robotframework环境搭建

    appium+robotframework环境搭建步骤(Windows系统的appium自动化测试,只适用于测试安卓机:ios机需要在mac搭建appium环境后测试) 搭建步骤,共分为3部分: 一. ...

随机推荐

  1. requirejs + vue 项目搭建

    以前都是支持 司徒正美 的,毕竟咱们也是跟着 司徒正美 一起走进了前端的世界.所以一般MVVM都是用avalon的,当然也是考虑到项目需要支持IE6,7,8的考虑.当然在用的时候也有一些小坑和bug, ...

  2. hdu 4676 Sum Of Gcd 莫队+数论

    题目链接 给n个数, m个询问, 每个询问给出[l, r], 问你对于任意i, j.gcd(a[i], a[j]) L <= i < j <= R的和. 假设两个数的公约数有b1, ...

  3. 【Howie玩docker】-使用mono编译c#程序

    根据前面的方法,在windows和Linux共享文件夹,然后就可以开发了! Start up an Ubuntu container $ docker run -it ubuntu bash Upda ...

  4. 全角和半角相互转换(C语言实现)

    目前,我们接触的汉字编码主要包括GBK和GB2312.其中,GB2312又称国标码,它是一个简化字的编码规范,也包括其他的符号.字母.日文假名等,共7445个图形字符,其中汉字占6763个.我们平时说 ...

  5. HDU 5716 带可选字符的多字符串匹配(ShiftAnd)

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=5716 [题目大意] 给出一个字符串,找出其中所有的符合特定模式的子串位置,符合特定模式是指,该子串 ...

  6. poj2583---Series Determination

    #include <stdio.h> #include <stdlib.h> int main() { int x,y,z,a,b,c; while(scanf("% ...

  7. 【转】Python3.x移除了callable内建函数

    原文地址:http://www.cnblogs.com/elvisxu/archive/2010/10/26/1861958.html 最近学习Python的时候,在Python3下跑<Dive ...

  8. iOS动态运行时方法

    在某些时候,程序可能需要根据获取的参数来决定调用的方法. 要实现这样的功能,就需要使用到动态运行时方法了. 首先需要定义好接口,以便调用. 然后就是动态调用定义好的方法. 这里有两种方法, 第一种: ...

  9. [有用命令]Linux 用户,用户组

    更改文件拥有者 -R 是递归的意思 chown [ -R ] root.work test 将test 文件 改为 拥有者 root , 用户组 work. chown [ -R ] work tes ...

  10. Swift 闭包表达式

    闭包是功能性自包含模块,可以在代码中被传递和使用. Swift 中的闭包与 C 和 Objective-C 中的 blocks 以及其他一些编程语言中的 lambdas 比较相似. 闭包的形式主要有三 ...