虽然Robocode里自带了一个Robot的编辑器,不过功能略显不足,正好最近在研究Eclipse,我们就来看一下如何在Eclipse创建一个自己的机器人。
    本文的开发环境:Windows XP Professional SP2 + J2SDK1.4.2_10 + Eclipse 3.1.1 + Robocode 1.0.6,请首先确保您的机器上安装了相关的开发包。

一、 Eclipse的相关设置:
    首先介绍一下,我机器上Eclipse的Workspace为E:/mywork/Java/Exercise/Eclipse;我机器上Robocode的安装路径为C:/Program Files/robocode。
    (1) 创建项目:启动Eclipse后,单击菜单"File”-----"New”-----"Project”,启动向导,选择"Java Project”,项目名为"MyRobocode”。
    (2) 在项目中创建package:然后在"Package Explorer”(包浏览器)处右键单击"MyRobocode”项目,选择"New”-----"Package”,创建一个新包,如图1所示:


图1

包的名字为"com.loujing”,如下图所示(Java建议,为了创建一个全世界独一无二的包,请将您的域名反转做为包名,且全为小写,我的域名为loujing.com):


图2

这里需要创建包的原因是:您编写的机器人需要和全世界其他程序员编写的机器人对战,所以您机器人的名字必须是唯一的。Robocode采用“包名+机器人类名”来做标识,以便区分。 
     (3) 导入Robocode类库:因为Robocode工具包中已替你写好了大部分的代码,如果您想创建自己的机器人,就必须将类库加入到项目中来,在"Package Explorer”处右键单击"Robocode”项目,选择"Properties”(属性),如图3所示:


图3

在打开的对话框中,我们在左边选中"Java Build Path”,右边选择"Libraries”页,单击"Add External JARs…”按钮,然后找到Robocode的安装路径(我机器上是C:/Program Files/robocode),选中"robocode.jar”,确定即可,如图4所示:


图4

(4) 创建自己的机器人:一切具备,终于开始写机器人的代码了。在"Package Explorer”中找到"MyRobocode”项目中"com.loujing”包,单击右键,选择"New”-----选择"File”,如图5所示:


图5

在弹出的对话框中,输入文件名"AIRobot.java”(人工智能机器人-----酷吧),如图6所示:


图6

然后,在AIRobot.java中键入如下代码:

复制内容到剪贴板  程序代码

package com.loujing;
import robocode.*;  //导入包 
public class AIRobot extends Robot  //继承自Robot类
{
    public void run() {  //必须的方法,确定机器坦克的基本行为
    while(true) {
        turnGunRight(360); //右转炮管360
        }
    }
    
    public void onScannedRobot(ScannedRobotEvent e) { //当扫描到其它机器坦克时
        ahead(100);   //前进100
        turnLeft(90);  //机器坦克左转90
    }
}

是不是出乎意料的简单,几乎没写几行代码吧,一个基本的框架就好了。另外,在Eclipse里,当您把鼠标移到某个标识符上面时,会实时显示Robocode的API帮助,比如图7所示就显示了onScannedRobot方法说明:


图7

二、Robocode的相关设置:
    当把AIRobot.java编译之后,AIRobot.class就产生了,下面我们来看看如何在Robocode里调用到您的*.class文件呢,您有两种方法:
    (1) 将产生的*.class的文件复制到Robocode安装路径下的robots下,比如我会将AIRobot.class拷贝到C:/Program Files/robocode/robots下即可。
    (2) 其实还有一种更简单的方法,Robocode对Eclipse的支持很好,我们可以直接在Robocode里设置好路径。启动Robocode,选择"Option"菜单-----单击"Preferences",在打开的对话框中选择"Development Options"页,把您之前建的Eclipse项目的路径填入,单击"Finish"按钮即可(我刚才建的项目路径是E:/mywork/Java/Exercise/Eclipse/MyRobocode),如图8所示:


图8

另外,在"View Options"页,有一个复选框"Visible Scan Arcs",您可以把它选上,这样,机器人扫描时就可以看到射线状的雷达了,很酷啊。

三、测试自己的Robot:一切准备就绪了,现在来测试一下我们写的那个弱智机器人吧。
    启动Robocode,选择"Battle"菜单-----单击"New"(新建一个战斗),打开的对话框如图9所示:


图9

在Packages列表中,可以看到所有的包,其中有我们之前创建的com.loujing包;在Robots列表中,会列出所有的机器人,其中也有我们创建的AIRobot。利用Add按钮增加两个AIRobot(当然您也可以多增加几个机器人进去,如果您只选择一个,系统会提示您不能战斗,您就只能观察一个机器人的运动了),在Selected Robots列表中出现的就是您现在选择参加战斗的机器人了。
    Number of Rounds表明战斗的回合数,默认是10回合;当一切选好,我们单击"Start Battle"按钮,您就会看到如图10所示:


图10

中间区域就是站场,下面的按钮可以随时暂停、恢复、停止比赛。您可以仔细观察一下这两个AIRobot,是不是如我们之前所写,开始时先右转炮管360度,而当扫描到另一个机器人的时候,就先往前走100,然后向左转90度,所有的行动都是事先由您编程实现的。
    现在,您可以修改一下原来的AIRobot.java了,比如在onScannedRobot方法里增加一句"fire(1);",意思显而易见,当扫描到其它机器人的时候,就开火。
    您可以到Robocode的安装路径下的robots文件夹下,去打开*.java文件,看一下别人的机器人程序是怎么写的,或者去网上下载;如果对库函数有疑问,您可以单击Robocode程序的Help菜单,选择"Robocode API",或者直接双击安装路径下的javadoc/index.html打开帮助。您需要重点关心的是Robot类,看一下其中有哪些控制机器人的方法,以及该如何使用它们,如图11所示:


图11

怎么样,您是不是也来了兴趣了,也来创建自己的第一个机器人吧,如果您能够在特定时刻让机器人做出正确的反应,比如左右躲避、开火、遇墙回头等等,那么也算有人工智能了吧,呵呵。
    小岳去海南了,今天早上4点回来,不知不觉都1点了,今天大年夜了啊。

在Eclipse下开发Robocode相关推荐

  1. Java在eclipse下开发的常用快捷键集锦

    2019独角兽企业重金招聘Python工程师标准>>> Java在eclipse下开发的常用快捷键集锦 ctrl+shift+o 说明:删除无用的代码引用 使用场景:当前文件中的引用 ...

  2. eclipse下开发简单的Java Web Service

    service部分 在eclipse下新建一个动态web项目 在项目中新建一个service类 编写SayHello类的代码 package org.sunny.service;//包不要引用错了 i ...

  3. Java:eclipse下开发webservice教程

    1           环境准备 下载wtp-all-in-one-sdk-R-1.5.4-win32,这个是eclipse的web开发插件 下载jakarta-tomcat-5.0.30 下载axi ...

  4. linux eclipse gtk,Ubuntu+Eclipse下开发GTK+应用程序

    1.安装相关依赖的包 sudo apt-get install gnome-core-devel sudo apt-get install libglib2.0-doc libgtk2.0-doc s ...

  5. Eclipse下开发WAP网站

    WAP网站开发和WWW网站开发大同小异,今天摸索了一天终于写出了第一个wap页面. WAP网站开发和J2EE网站开发的环境基本一模一样,wml语句嵌入JSP页面即可,服务器采用Tomcat. inde ...

  6. Ubuntu下安装Stm32的Eclipse的开发环境(1)

    转载地址 https://blog.csdn.net/zhengyangliu123/article/details/56670282 STM32高级开发(15)-使用eclipse开发STM32 版 ...

  7. Eclipse python 开发环境配置

    Eclipse python 开发环境配置 由于项目需要用到脚本配置的东西,看了看Python能够做到基本上需要的工作,选择了 2.7.3稳定版本来进行测试开发. 转自: Eclipse+python ...

  8. 在eclipse上开发Android应用程序

    Android中文文档:开发和调试(eclipse) 2009-12-18 22:13 在用eclipse IDE开发android应用程序之前,你首先要创建一个Android工程,并且建立一个启动配 ...

  9. ubuntu下使用Eclipse下搭建c开发环境

    ubuntu下使用Eclipse下搭建开发环境基本上网上教程一大堆,但是复杂度太大,因为很多教程都是从JDK开始安装一直到最后,而且很多都是从别的linux发行版上弄来的方法,各种编译直接吓死人有木有 ...

最新文章

  1. MySQL初始化root密码以及root密码忘记解决方法
  2. 学php为什么要学linux,为什么 PHP 程序员应该学习使用 Swoole
  3. Facebook、LinkedIn、Airbnb、Google专家聚首QCon,他们会带来什么?
  4. 【渝粤题库】广东开放大学 传播学理论与实务 形成性考核
  5. Android官方开发文档Training系列课程中文版:添加ActionBar之添加Action按钮
  6. 网页滚动条上下滚动固定元素左右不固定之sticky
  7. ios学习笔记——RunTime
  8. 尼克老湿の面试回顾(7)
  9. 建班子:企业需要建立什么样的班子?
  10. 谷歌分析中的营销归因分析功能
  11. 编程之美读书笔记2.15 - 子数组之和的最大值(二维)
  12. Android存储(1)-- 你还在乱用Android存储嘛!!!
  13. 数值积分方法的总结(从简单梯形积分到龙贝格积分、自适应积分、高斯积分等)
  14. r语言和python的区别-r语言和python的详细对比
  15. 2019CCPC湖南全国邀请赛(广东省赛、江苏省赛)重现赛
  16. 苏轼:醉笑陪君三万场 不诉离殇
  17. 基于微信小程序的宿舍管理平台
  18. 30岁的女程序员该何去何从
  19. 如何使用 dlv 结合 Goland 进行程序 debug 调试
  20. Python中int、str、bytes相互转化,还有2进制、16进制表示,你想要的都在这里了

热门文章

  1. java数组的下界,Java泛型_上界extends_下界super
  2. Wannafly挑战赛12 C-删除子串
  3. python爬取豆瓣代码_python爬取豆瓣
  4. 7-1 立方体类的实现 (20分)
  5. Low Latency HLS的实现优化
  6. Automa自动化插件学习记录
  7. innodb的索引下推
  8. macbook proa1708_苹果笔记本a1708是哪一款?
  9. C++编程永不过时的语言,原因何在?
  10. 2017年中国互联网企业百强出炉 梆梆安全领跑移动安全行业