<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[kbengine的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/kbengine</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; kbengine]]></copyright><item><title><![CDATA[KBEngine源码剖析1——角色账号登录和管理]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105324152</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105324152</guid><author>kbengine</author><pubDate>Sun, 05 Apr 2020 11:31:10 +0800</pubDate><description><![CDATA[文章目录
写在前面
登录时序图
流程分析
胡言乱语
写在前面
这个系列的博客，主要记录自己看CBE（原名KBE）源码的一些阅读笔记和心得，个人在看源码前比较喜欢先那那套源码做出个有可见性效果的产品demo来，然后根据demo在逐渐深入源码，所以在此之前先做了个联机版坦克大战，想先看看CBE怎么做游戏服务器的具体业务功能的，可以先瞅瞅之前的那三篇博客。
基于ComblockEngine+Unity的...]]></description><category></category></item><item><title><![CDATA[KBEngine源码剖析3——移动同步分析]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105324096</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105324096</guid><author>kbengine</author><pubDate>Sun, 05 Apr 2020 11:27:55 +0800</pubDate><description><![CDATA[移动应该说是网游里面最最基础的操作了， 但也是很重要的模块，不同类型游戏对于移动同步的精准度都是不同的，对于mmo这类非战斗向核心的游戏来说，通常对于主从客户端位置精准度要求不高，moba类游戏则比较重视主从客户端位置的精准度。由此，这两类游戏的同步策略一般也都是不同的。
为了追求高同步性的，往往会关闭掉客户端先行等策略，然后采用服务器驱动主从客户端位置更新的强一致性策略；如果同步性要求不是特别敏...]]></description><category></category></item><item><title><![CDATA[KBEngine warring项目源码阅读（三） 实体文件与Account处理]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166357</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166357</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:55:20 +0800</pubDate><description><![CDATA[上一篇开始，我们就提到了一个概念，并且进行了初步的运用，这个概念就是实体。

KBE中的实体是一个很重要的概念，可以说，有了实体就有了一切。

我们首先接着上一章的内容，来看Account.def对应的实体定义。




&lt;root&gt;
    &lt;Properties&gt;
        &lt;characters&gt;
            &lt;Type&gt;  ...]]></description><category></category></item><item><title><![CDATA[KBEngine warring项目源码阅读（二） 登录和baseapp的负载均衡]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166338</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166338</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:54:28 +0800</pubDate><description><![CDATA[原本不打算把登录拿出来写的，但是阅读登录部分的代码的时候发现登录和注册还不太一回事，因为登录涉及到分配baseapp的ip,负载均衡的实现，所以水一下。

流程图：



和上次一样，先是找unity控件



找到ui.cs下的login




 1     void login()
 2     {
 3         Common.DEBUG_MSG("login is Click, n...]]></description><category></category></item><item><title><![CDATA[让我们把KBEngine玩坏吧！如何定制我们自己的C++函数（一）]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166317</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166317</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:53:07 +0800</pubDate><description><![CDATA[为什么不更新kbe warring的代码解读了，因为在我看来那个demo讲完了实体就没东西可讲了，如果专心的看官方文档和PPT的话demo的代码后面没任何难点了已经，单纯的复制黏贴代码实在太过无聊。程序员一定要做点好玩的事情才行~

好吧，今天开始想法直接改引擎底层，争取把引擎底层直接玩坏(*^__^*)

另外因为平时工作比较忙，这个系列会不定期的更新。

从自己的HelloWorld写起

...]]></description><category></category></item><item><title><![CDATA[kbengine：【菜鸟写的教程系列01】在线列表的例子]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166277</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166277</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:51:22 +0800</pubDate><description><![CDATA[用KBE用了小半年 还是菜鸟级别 最近感觉会了些东西，发出来共享一下哈~

谢谢KBE大大的指导以及青蛙大神的视频，让我学会了部分用的方法，我是想做一个卡牌的游戏，这个帖子就是一个在线列表的例子。

基础：

看完青蛙的教程

主要内容：

维护一个实体

实体间通信

正文：

首先在kbe的脚本文件夹里新建一个实体的脚本文件，这里就弄一个Hall.py

与之对应的，需要在assets\sc...]]></description><category></category></item><item><title><![CDATA[kbengine添加多个数据库接口]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166240</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166240</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:48:21 +0800</pubDate><description><![CDATA[大神，好！我想请教一个问题！目前我们的游戏服务器在kbengine_defs.xml中的dbmgr中配置了一个mysq“数据库A”，现在我想在代码里直连“数据库B”从中查询数据。
使用sql查询数据库用的是executeRawDatabaseCommand函数，我看到它有个dbInterfaceName参数，需要在kbengine_defs.xml中配置的，请问要怎么配置？
def execut...]]></description><category></category></item><item><title><![CDATA[kbengine第三方支付流程图]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166226</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166226</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:47:05 +0800</pubDate><description><![CDATA[图2：



是不是最新版本的interfaces进程里就不用修改引擎源码了？
图2流程中，
1. interfaces脚本里面的http监听接口，应该是可以实现的把？感觉是可以实现的，只是要自己再去研究下py的http监听？或者说kbe中已经在底层为py提供了http监听接口？
2. 最后修改base上角色实体的元宝信息，还是放到 base脚本中onLoseChargeCB中完成 ?

...]]></description><category></category></item><item><title><![CDATA[kbengine聊天广播的简单实现方法]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166179</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166179</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:43:56 +0800</pubDate><description><![CDATA[建议再好好补充一下相关知识，你举的例子也挺乱的:lol
   KBEngine.Event.registerOut("sendMessagetoOtherClients",this,"sendMessagetoOtherClients")
   KBEngine.Event.registerOut("ReceiveMessage",this,"ReceiveMessage")
既然...]]></description><category></category></item><item><title><![CDATA[KBEngine 开业项目， 可以加入]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/105166135</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/105166135</guid><author>kbengine</author><pubDate>Sat, 28 Mar 2020 18:41:03 +0800</pubDate><description><![CDATA[KBEngine 开业项目， 可以加入


]]></description><category></category></item><item><title><![CDATA[提供一个interface上通过脚本扩展短链接第三方登录的例子（kbengine）]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882613</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882613</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:55:27 +0800</pubDate><description><![CDATA[这是一个interface上通过脚本扩展短链接第三方登录的例子，这个类可以看成是一个poller，每一个登陆请求可以创建一个这样的poller，也可以在外部设计一个回收池来回收。完全看你自己想要怎么管理。
			初始化以后使用start方法来连接并通过socket模拟http发送消息，发送完毕之后会等待接受返回。示例中通过解析json串来得到返回信息，用户可以根据自己的需要修改成其他的方式。
		...]]></description><category></category></item><item><title><![CDATA[kbengine进阶的热更新方案]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882577</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882577</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:52:50 +0800</pubDate><description><![CDATA[imp.reload可以重载模块,但是关键问题是已经实例化过的类是不会变的
比如:

class AA:
	  def testaa():
	  DEBUG_MSG("test")
	     
	self.a=AA()
复制代码

使用imp.reload热更新后a还是不会变,需要重新把self.a.__class__=AA才能完成热更新
这样非常得不方便
一...]]></description><category></category></item><item><title><![CDATA[使用KBEngine来调度UE4房间服务器的办法]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882566</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882566</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:51:02 +0800</pubDate><description><![CDATA[1: 这种做法你们可以不启动KBE的cellapp了
			2：你们只需要在KBE的baseapp上组织房间开启和关闭逻辑， 以及用户存档等特性
			3：你们需要在baseapp上利用E:\kbe\kbengine\assets\scripts\interface\Poller.py来实现与UE4 DS通讯， 这个东西脚本你们可以看看， 是直接创建socket并注册给引擎管理的， 引擎在linu...]]></description><category></category></item><item><title><![CDATA[kbengine 的 nginx反向代理https/wss 配置 支持kbe负载均衡]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882546</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882546</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:50:17 +0800</pubDate><description><![CDATA[微信开发要求 必须用https 和 wss连接， 这里给出nginx反向代理配置， 自己使用一切正常，希望能帮助大家。域名一定要在微信开发后台设置，不然连接不上，域名要备案，不然 审核不通过。
nginx.conf 添加两行
wss.conf 如下

upstream login_websocket {
	  server 120.*.*.*:20013 weight=1;
	 ...]]></description><category></category></item><item><title><![CDATA[写了个kbengine的异步http server，欢迎吐槽]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882533</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882533</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:49:10 +0800</pubDate><description><![CDATA[使用了 kbengine提供的fd 的接口，借鉴 tornado 和 sanic 写了个http server 框架，功能还很简单，不过对于简单的httpserver接口够用了，可以用在支付回调中
			在GitHub上面https://github.com/asynchronoust/kbengine-httpserver
			欢迎吐槽
		...]]></description><category></category></item><item><title><![CDATA[JS+TS插件，支持组件(新增纯TS版本KBE插件)]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882519</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882519</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:48:24 +0800</pubDate><description><![CDATA[如题，在CocosCreator中实现了JS插件（调整过的kbengine.js）+kbengine.d.ts，支持组件，当前测试没有什么问题，可能会有一些隐藏的问题。如果遇到问题，麻烦在这里回复，可以将它完善~_~！
支持版本(有组件的版本)：V2.0+，测试使用的是V2.5.5版本，用的是CocosCreator引擎，其他H5引擎也可以用
GIT地址：https://github.com/la...]]></description><category></category></item><item><title><![CDATA[使用Unity+KBEngine开发的mmo游戏demo的第二版(Lua热更)]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882506</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882506</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:47:34 +0800</pubDate><description><![CDATA[基于Unity+KBEngine开发的mmo游戏demo的第二版，主要工作是将KBE的客户端插件以及大部分游戏逻辑Lua化，实现客户端热更新。GitHub地址：https://github.com/liuxq/StriveGamekbe插件层逻辑分离出去作为submodule，请先更新插件https://github.com/liuxq/kbengine_unity3d_lua_plugins运行...]]></description><category></category></item><item><title><![CDATA[kbengine单服万人压力测试]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882485</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882485</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:46:26 +0800</pubDate><description><![CDATA[https://www.bilibili.com/video/av21956024/http://v.youku.com/v_show/id_XMj ... j.8428770.3416059.1
			测试版本
			KBEngine引擎版本：v0.9.9
			【客户端环境】
			机器型号       操作系统      CPU  ...]]></description><category></category></item><item><title><![CDATA[kbengine视频教程]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882452</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882452</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:45:43 +0800</pubDate><description><![CDATA[简单mmo教程(疯狂的青蛙制作)http://i.youku.com/u/UMTQ4MTQxNDIwNA==注意：视频中的客户端插件版本其中几处事件名称由于是错别字已经改名，具体改动参考：https://github.com/kbengine/kben ... 9173a22264b9f6d2879
炉石传说Demo制作教程(Firesuiry制作)https://bbs.comblockengi...]]></description><category></category></item><item><title><![CDATA[kbengine所有的demo源代码]]></title><link>https://blog.youkuaiyun.com/kbengine/article/details/104882374</link><guid>https://blog.youkuaiyun.com/kbengine/article/details/104882374</guid><author>kbengine</author><pubDate>Sun, 15 Mar 2020 17:42:42 +0800</pubDate><description><![CDATA[回复才可见的内容https://github.com/kbengine/kbengine_ue4_demo正在上传…重新上传取消https://github.com/kbengine/kbengine_unity3d_demo正在上传…重新上传取消https://github.com/u3dkbe/kbengine_unity3d_balls正在上传…重新上传取消正在上传…重新上传取消正在上传…重...]]></description><category></category></item></channel></rss>