KBEngine官方论坛

 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 配置 开服
查看: 37|回复: 11

使用bot进行测试时预见的问题。

[复制链接]

26

主题

100

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
发表于 6 天前 | 显示全部楼层 |阅读模式
https://bbs.comblockengine.com/f ... 4&highlight=bot
近乎同样的问题。

我的逻辑结构是Account登录 -》选择Player -》 移交控制权到Player
我在bots目录下创建了Account和Player并继承了Entity(同时删除了里面其他的方法,只留下需要调用的onXXXX方法,和例子中使用形式一样)。但是我的Player在base下有很多的component,我理解是这些component在bot创建的时候没有被找到,但是不知道该怎么解决。

谢谢
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 6 天前 | 显示全部楼层
错误贴出来
QQ:3603661
3603661@qq.com
回复

使用道具 举报

26

主题

100

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
 楼主| 发表于 6 天前 | 显示全部楼层
  1. bots01: [ERROR]: EntityDef::initialize: Could not load EntityComponentModule[XXXXComponent]
  2.       bots01: [S_ERROR]: ImportError: No module named 'XXXXComponent'
  3.       bots01: [ERROR]: app::initialize is error!
  4.       bots01: [S_ERROR]: AttributeError: entities
复制代码


XXXXComponent是挂载在Player上的一个组件(当然我估计其他的组件也都没找到,只是一开始找没找到一个就直接报错退出了
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 6 天前 | 显示全部楼层
你这个组件的py估计有问题, 无法被解释器加载
QQ:3603661
3603661@qq.com
回复

使用道具 举报

26

主题

100

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
 楼主| 发表于 6 天前 | 显示全部楼层
柯标 发表于 2018-12-4 16:53
你这个组件的py估计有问题, 无法被解释器加载

但是正常运行服务器,客户端连接服务器并且使用上面的功能一点问题都没有,只是今天进行bot测试出现了这个问题,之前也有人提过相同的问题不过,并没有给出解决方案。
回复

使用道具 举报

26

主题

100

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
 楼主| 发表于 6 天前 | 显示全部楼层
柯标 发表于 2018-12-4 16:53
你这个组件的py估计有问题, 无法被解释器加载

而且我的component的init函数里面除了kbe entitiycomponent 的init之外,也没有写别的
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 6 天前 | 显示全部楼层
把你这个组件的def和py贴上来看看,  py有base和cell吗?
QQ:3603661
3603661@qq.com
回复

使用道具 举报

26

主题

100

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
 楼主| 发表于 6 天前 | 显示全部楼层
柯标 发表于 2018-12-4 17:12
把你这个组件的def和py贴上来看看,  py有base和cell吗?

问题暂时找了,我在尝试修改,如果改后还有问题我再贴过来。



说一下问题,component中所有定义的ClientMethods必须在bots目录下实现,否则log中会报错找不到方法(实现方法哪怕是直接pass都可以,但是不能没有实现),可能是我理解的有问题,文档中的意思是bots目录下py文件中的方法必须是def过的,但是实际上逻辑是def过的clientmethod方法必须在py文件中实现。

目前正在挨个修改中,希望改完之后能启动成功。
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 6 天前 | 显示全部楼层
好的, 我看看这个提示是怎么不友好
QQ:3603661
3603661@qq.com
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 6 天前 | 显示全部楼层
QQ:3603661
3603661@qq.com
回复

使用道具 举报

26

主题

100

帖子

332

积分

中级会员

Rank: 3Rank: 3

积分
332
 楼主| 发表于 6 天前 | 显示全部楼层
柯标 发表于 2018-12-4 17:22
https://github.com/kbengine/kbengine/issues/921

主要是bots本身的弹出框只显示了找不到这个component,但其实是这个component初始化有问题(比如方法未实现,或者别的),给人了误导。


另外补充一点,好像bots下对server_common是不可见的,其他的(例如common)我还未尝试。
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 6 天前 | 显示全部楼层
bots是客户端, 当然不能servercommon
QQ:3603661
3603661@qq.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|KBEngine Forum

GMT+8, 2018-12-10 19:34 , Processed in 0.028540 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表