Robocode:基础知识及入门示例

article/2025/6/22 17:34:31

文章目录

  • 参考
  • 定义
  • 坐标系
  • 简单的API
  • 可Overwrite的方法
  • 一个简单示例

参考

百度文库-Robocode

定义

机器人:一些可以旋转、移动、射击、侦测的小型坦克。

机器人的底盘、火炮和雷达系统都可以独立运动,也可以相互“锁定”,一起移动。换句话说,如果将雷达向下锁定,那么它将随火炮一起移动;如果火炮向下锁定,它将随机器人的底盘一起移动。

坐标系

在这里插入图片描述在这里插入图片描述

简单的API

// 向前和向后移动
ahead()
back()// 开火
fire()// 控制火炮是否向下锁定
setAdjustGunForRobotTurn()// 控制雷达是否向下锁定
setAdjustRadarForGunTurn()// 底盘旋转
turnRight()
turnLeft()// 旋转火炮
turnGunRight()
turnGunLeft()// 旋转雷达反射镜
turnRadarLeft()
turnRadarRight()

可Overwrite的方法

// 当你的机器人被击中时
onHitByBullet()// 当你的机器人与其它机器人相撞时
onHitRobot()// 当撞墙时
onHitWall()// 用雷达扫描到其他机器人时
onScannedRobot()

一个简单示例

package forg;import robocode.HitRobotEvent;
import robocode.Robot;
import robocode.ScannedRobotEvent;/*** @author 无名Joker* @date 2020-03-02 15:47* @description*/public class WuMingRobot extends Robot {@Overridepublic void run(){while (true){// 前进100像素ahead(100);// 右旋火炮360度turnGunRight(360);// 后退100像素back(100);// 左旋火炮360度turnGunLeft(360);}}@Overridepublic void onScannedRobot(ScannedRobotEvent event) {// 扫描到敌人时开火fire(100);}@Overridepublic void onHitRobot(HitRobotEvent event) {// 第一次被子弹击中,右转90度turnRight(90);// 然后前进100像素避开第二次ahead(100);}
}

小车会按照这个运行规则一直执行
在这里插入图片描述


http://chatgpt.dhexx.cn/article/j7WbWXfx.shtml

相关文章

robocode 相关的总结

基础知识 1. heading 角度系 如图所示,所谓heading角,即从Y轴出发,然后顺时针绕回Y轴的这么个角度区间,取值范围: [0,360] 2. bearing角度系 所谓bearing 角,即从Y轴顺、逆时针出发,绕半圈回到…

世界robocode机器人的四大运动方式分析

摘要:前言Robocode在短短的时间内风靡全球,全世界的robocode爱好者设计出了大量的优秀智能机器人,他们都拥有各自的运动方式,有的很轻易被击中,有的却很难射击。设计一个好的运动方式是优秀robocode机器人取胜的要害。上届世界中级组冠军Fermat就是靠他让敌人难以琢…

Robocode教程1——安装、运行、配置

Robocode 的安装 系统安装最小环境要求: CPU:Pentium2/400MHz以上 内存:64MB以上 硬盘:10M以上 对硬件要求也不是完全绝对的,你用小的机器配置,带来的是比较慢的运行速度。当然具备以上硬件条件后,还要具有Java运行环…

笔记:Istio 组件 基础概念学习

文章目录 1. Istio是什么?1.1 读音1.2 简介1.3 服务网格是什么?1.4 为什么使用Isito?1.5 Istio 是如何诞生的?1.6 为什么我想用 ISTIO?1.7 目前Istio支持哪些部署环境?1.8 架构1.8.1 组件1.8.1.1 Envoy1.8.1.2 Pilot1…

Notes Sixth day-渗透攻击-红队-打入内网

** Notes Sixth day-渗透攻击-红队-打入内网(dayu) ** 作者:大余 时间:2020-09-22 请注意:对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技…

Notes Ninth Day-渗透攻击-红队-打入内网

** Notes Ninth Day-渗透攻击-红队-打入内网(dayu) ** 作者:大余 时间:2020-09-25 请注意:对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技…

Notes Fifth Day-渗透攻击-红队-信息收集

** Notes first day-渗透攻击-红队-信息收集(dayu) ** 作者:大余 时间:2020-09-20 请注意:对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技…

Notes Fifteenth Day-渗透攻击-红队-内部信息搜集

** Notes Fifteenth Day-渗透攻击-红队-内部信息搜集(dayu) ** 作者:大余 时间:2020-10-1 请注意:对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里…

多个容器一起打包_容器快速入门完全指南

介 绍 容器,以及Docker和Kubernetes之类的容器技术已经日益成为许多开发人员工具包中常见的工具。容器化的核心目标是提供一种更好的方式,以可预测和便于管理的方式在不同的环境中创建、打包以及部署软件。 在本文中,我们将一窥什么是容器&am…

项目经验123

DDDRPC架构 DDD分层架构介绍 DDD(Domain-Driven Design 领域驱动设计),目的是对软件所涉及到的领域进行建模,以应对系统规模过大时引起的软件复杂性的问题。开发团队和领域专家一起通过 通用语言(Ubiquitous Language)去理解和消…

区块链详解

一、比特币简介 区块链(Blockchain)技术源于比特币。在比特币中,为了保证每笔交易可信并不可篡改,中本聪发明了区块链,它通过后一个区块对前一个区块的引用,并以加密技术保证了区块链不可修改。 随着比特…

网络安全面试题目及详解

获取目标站点的绝对路径 如果是iis系统,尝试对参数进行恶意传值,使其出现报错页面对目标网站进行js代码审计,查看是否存在信息泄露出站点的绝对路径使用字典猜解目标站点的绝对路径如果目标是thinkphp框架,尝试访问无效的路径,或者对参数进行而已传值使其报错phpinfo页面泄露站…

云计算基础教程(第2版)笔记——基础篇与技术篇介绍

文章目录 前言 第一篇 基础篇 一 绪论 1.1 云计算的概念以及特征 1.1.1云计算的基本概念 1.1.2云计算的基本特征 1.2 云计算发展简史 1.3 三种业务模式介绍 1. 基础设施即服务(IaaS) 2. 平台即服务(PaaS) 3. 软…

2023年网络安全面试题(渗透测试):详细答案解析与最佳实践分享

如果在数据来源和网络分享方面存在侵权问题,请立即联系我以删除相关内容。 一、一句话木马 1、基本原理 通过利用存在文件上传漏洞的目标网站,将恶意的一行代码或脚本(通常是PHP语言)上传到目标服务器上,从而实现对…

一到两年工作经验的看完这些面试轻松拿offer

Java基础面试题 1、面向对象的特征有哪些方面 面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细…

容器快速入门完全指南

介 绍 容器,以及Docker和Kubernetes之类的容器技术已经日益成为许多开发人员工具包中常见的工具。容器化的核心目标是提供一种更好的方式,以可预测和便于管理的方式在不同的环境中创建、打包以及部署软件。 在本文中,我们将一窥什么是容器&a…

JavaWeb编年史(黄金时代)

从JavaWeb编年史的远古时代,一直到白银时代,我们见证了JavaWeb开发模式的大致变迁。说白了,就是不断解耦合的过程。接下来我们来聊聊项目架构的演变,之所以我把它划到了JavaWeb编年史(黄金时代)&#xff0c…

Docker、Podman 容器“扫盲“ 学习笔记【与云原生的故事】

【摘要】 笔记内容:由理论和具体docker常用操作构成。这篇博文笔记的定位是:温习,查阅,不适合新手学习。你拥有青春的时候,就要感受它,不要虚掷你的黄金时代,不要去倾听... 写在前面 笔记内容…

Docker、Podman 容器“扫盲“ 学习笔记

写在前面 之前只是做毕业设计时,接触一点,用DockFile在阿里云上部署了毕设。后来docker端口问题,机器被植入木马,拉去挖矿,cup天天爆满,百度半天删了好多文件不管用,后来恢复镜像了&#xff0c…

大数据-1

1、什么是大数据?特点? 大数据(英语:Big data),又称为巨量资料,指的是传统数据处理应用软件不足以处理它们的大或复杂的数据集的术语。在总数据量相同的情况下,与个别分析独立的小型…