最近要做游戏ai,看了一下行为树的东西,因为用的java,所以主要看了jbt:

https://github.com/gaia-ucm/jbt

这玩意分编辑器JBTEditor和核心库JBTCore两部分。在JBTEditor里边编辑好之后,导出xml文件;项目代码通过JBTCore库加载xml,然后驱动树的执行。

嗯,之所以用开源,主要就是懒的搞编辑器了,先玩一下JBTEditor。

不走不知道,一走全是坑。JBTEditor是基于Eclipse RCP开发的,没做过这方面的,只能摸着石头过河。

先下载一个最新版的Eclipse

按照官方说明,导入工程,打开"bteditor.product",然后"Launch an Eclipse application",干脆的挂掉。

一头雾水,百度的也是不着边际。初步怀疑,jdk版本、eclipse版本的问题,因为这个项目2013年以后就没再更新过。

挨个下载了jdk1.7,jdk1.6,eclipse2013版本,eclipse2014版本。。。各种组合,全部失败。

右键"bteditor.product","Run as","Run configurations",

勾上之后,启动的时候会检查插件依赖情况,或者直接点击右边的"Validate Plug-ins",也会报告缺失情况。

根据提示,勾上"org.eclipse.emf.*"以及"org.eclipse.ui.views.*"这些插件,再次启动,成功!

编辑器最终是要交给策划同学使用的,总不能让他们开着ide干活,导出可执行文件看看:

右键"bteditor.product","Export",

选择"Eclipse product","next",

指定输出目录即可,别的不改,"Finish"

执行editor\eclipse\JBTEditor.exe,嗯嗯,又报错了...

研究了半天,发现plugin有个加载时机的问题,也就是所谓startlevel,

这里用"Add Recommended"就可以加上正确的startLevel,然后导出的exe就可以用了。

总结一下吧:

  1. 用Eclipse for RCP导入JBTEditor工程
  2. 打开“bteditor.product”,“Configuration”选项卡里边调整plugin的StartLevel
  3. 切回“Overview”,“Launch an Eclipse application”,会报一次错
  4. 进入启动配置项里,勾上需要的插件,再次启动则成功
  5. 导出可执行文件

先写到这里,后续下回分解。

调研行为树jbt的更多相关文章

  1. 2017-12-09 JavaScript实现ZLOGO子集: 测试用例

    续前文JavaScript实现ZLOGO子集: 前进+转向. 在添加新功能之前, 先添加测试用例, 以应对日益复杂的代码. 选择使用QUnit编写运行测试用例. 暂时对比较复杂和I/O无关的部分进行测 ...

  2. 记lrd的高二上学期第五次调研考试

    河北某某中学的调研考试其实是很好玩的经历呢.可惜没有太多机会了. 背景: NOIP2016回来之后没有好好学文化课-.自习能翘就翘了,衡中特产学案自助没有好好写(说来我好像从来没被老师查到过,上课写学 ...

  3. 浅谈算法和数据结构: 七 二叉查找树 八 平衡查找树之2-3树 九 平衡查找树之红黑树 十 平衡查找树之B树

    http://www.cnblogs.com/yangecnu/p/Introduce-Binary-Search-Tree.html 前文介绍了符号表的两种实现,无序链表和有序数组,无序链表在插入的 ...

  4. 【.Net平台下插件开发】-MEF与MAF初步调研

    背景   Team希望开发一个插件的平台去让某搜索引擎变得更好.主要用于采集一些不满意信息(DSAT)给Dev.这些信息会由不同的team提供不同的 tool分析.有的提供仅仅是一个website,有 ...

  5. 【codenet】代码相似度计算框架调研 -- 把内容与形式分开

    首发于我的gitpages博客 https://helenawang.github.io/2018/10/10/代码相似度计算框架调研 代码相似度计算框架调研 研究现状 代码相似度计算是一个已有40年 ...

  6. 转:MySQL InnoDB Add Index实现调研

    MySQL InnoDB Add Index实现调研 MySQL Add Index实现 MySQL各版本,对于add Index的处理方式是不同的,主要有三种: Copy Table方式 这是Inn ...

  7. 【page-monitor 前端自动化 上篇】初步调研

    转载文章:来源(靠谱崔小拽) 前端自动化测试主要在于:变化快,不稳定,兼容性复杂:故而,想通过较低的成本维护较为通用的自动化case比较困难.本文旨在通过page-monitor获取和分析dom结构, ...

  8. Android原生PDF功能实现:PDF阅读、PDF页面跳转、PDF手势伸缩、PDF目录树、PDF预览缩略图

    1.背景 近期,公司希望实现安卓原生端的PDF功能,要求:高效.实用. 经过两天的调研.编码,实现了一个简单Demo,如上图所示. 关于安卓原生端的PDF功能实现,技术点还是很多的,为了咱们安卓开发的 ...

  9. Apache Drill 调研学习

    Apache Drill 调研学习 ## 一.Drill概述 在大数据时代,对于Hadoop中的信息,越来越多的用户需要能够获得快速且互动的分析方法.大数据面临的一个很大的问题是大多数分析查询都很缓慢 ...

随机推荐

  1. 自定义Json解析工具

    此博客为博主原创文章,转载请标明出处,维权必究:https://www.cnblogs.com/tangZH/p/10689536.html fastjson是很好用的json解析工具,只可惜项目中要 ...

  2. 你可能不知道的 docker 命令的奇淫怪巧

    你可能不知道的 docker 命令的奇淫怪巧 Intro 介绍并收录一些可能会用到的一些简单实用却很少有人用的 docker 命令 dangling images build 自己的 docker 镜 ...

  3. 阿里云RDS for SQL Server测试吐槽

    最近测试了一下阿里云RDS for SQL Server,有些设计简直就是反人类,让人不得不吐槽一番. 1:控制台创建数据库时,数据库名不能包含大小字母. 如上截图所示,数据库名称不能包含大写字母,好 ...

  4. 使用 Node.js 搭建 Web 服务器

    使用Node.js搭建Web服务器是学习Node.js比较全面的入门教程,因为实现Web服务器需要用到几个比较重要的模块:http模块.文件系统.url解析模块.路径解析模块.以及301重定向技术等, ...

  5. 浅析 jQuery 内部架构设计

    jQuery 对于大家而言并不陌生,因此关于它是什么以及它的作用,在这里我就不多言了,而本篇文章的目的是想通过对源码简单的分析来讨论 jQuery 的内部架构设计,以及 jQuery 是如何利用Jav ...

  6. 发布基于Orchard Core的友浩达科技官网

    2018.9.25 日深圳市友浩达科技有限公司发布基于Orchard Core开发的官网 http://www.weyhd.com/. 本篇文章为你介绍如何基于Orchard Core开发一个公司网站 ...

  7. SUSE12SP3-Mycat(4)rule.xml配置详解

    简介 rule.xml 里面就定义了我们对表进行拆分所涉及到的规则定义.我们可以灵活的对表使用不同的分片算法, 或者对表使用相同的算法但具体的参数不同.这个文件里面主要有 tableRule 和 fu ...

  8. ubuntu修改键盘映射

    code {margin: 0;padding: 0;font-size: 100%;word-break: normal;background: transparent;border: 0;}ol ...

  9. [Swift]LeetCode1036.逃离大迷宫 | Escape a Large Maze

    In a 1 million by 1 million grid, the coordinates of each grid square are (x, y) with 0 <= x, y & ...

  10. 理解滑动平均(exponential moving average)

    1. 用滑动平均估计局部均值 滑动平均(exponential moving average),或者叫做指数加权平均(exponentially weighted moving average),可以 ...