Difference between revisions of "RabidWombat"
Jump to navigation
Jump to search
RobertWalker (talk | contribs) m (Added category) |
RobertWalker (talk | contribs) (RabidWombat getting a rewrite) |
||
(10 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Infobox Robot | {{Infobox Robot | ||
− | |image=RabidWombat.jpg | + | | image = RabidWombat.jpg |
− | |author=[[RobertWalker]] | + | | name = RabidWombat |
− | |extends=[[PluggableRobot]] | + | | author = [[RobertWalker]] |
− | |targeting=[[VirtualGuns|Virtual gun array]]: [[HeadOnTargeting|head-on]] | + | | extends = [[PluggableRobot]] |
− | |movement=[[AntiGravityMovement|antigravity | + | | targeting = [[VirtualGuns|Virtual gun array]]: |
− | }}== Background Info == | + | :[[HeadOnTargeting|head-on]] |
+ | :[[LinearTargeting|linear]] | ||
+ | :[[CircularTargeting|circular]] | ||
+ | :[[GuessFactor|guess factor]] | ||
+ | | movement = [[AntiGravityMovement|antigravity]] | ||
+ | | license = no license selected yet | ||
+ | | isOneOnOne = true | ||
+ | | isMelee = false | ||
+ | | isOpenSource = false | ||
+ | }} | ||
+ | == Release Notes == | ||
+ | * Version 0.7.1 | ||
+ | ** Removed MyRules class | ||
+ | ** Updated movement code to better handle equilibrium states | ||
+ | * Version 0.7 | ||
+ | ** Initial release on [[RoboRumble]] | ||
+ | |||
+ | == Background Info == | ||
; What's special about it? | ; What's special about it? | ||
− | : | + | : Nothing, particularly. Just another bot. |
; Great, I want to try it. Where can I download it? | ; Great, I want to try it. Where can I download it? | ||
− | : | + | : I'm currently rewriting RabidWombat, so he's not available for download at the moment. I'll put it back out there when my rewrite is complete. |
; How competitive is it? | ; How competitive is it? | ||
− | : It's | + | : It's okay. It lands in the middle of the pack in the [[RoboRumble]]. |
== Strategy == | == Strategy == | ||
; How does it [[Movement|move]]? | ; How does it [[Movement|move]]? | ||
− | : It uses a variation of [[AntiGravityMovement|antigravity movement]]. The enemy robot exerts an attractive or repulsive force on RabidWombat, depending on how far away it is, in order to maintain a particular distance from the enemy. (It's pretty much working on [http://en.wikipedia.org/wiki/Hooke%27s_Law Hooke's law].) That distance grows if RabidWombat is losing and shrinks if it's winning, so that it'll run away or close in for the kill as appropriate. Walls exert a repulsive force. Bullet dodging is done with force vectors | + | : It uses a variation of [[AntiGravityMovement|antigravity movement]]. The enemy robot exerts an attractive or repulsive force on RabidWombat, depending on how far away it is, in order to maintain a particular distance from the enemy. (It's pretty much working on [http://en.wikipedia.org/wiki/Hooke%27s_Law Hooke's law].) That distance grows if RabidWombat is losing and shrinks if it's winning, so that it'll run away or close in for the kill as appropriate. Walls exert a repulsive force when RabidWombat gets close enough to them, which gets stronger the closer it is. Bullet dodging is also done with force vectors (see below). |
; How does it fire? | ; How does it fire? | ||
− | : It has a virtual gun array containing (currently) a [[HeadOnTargeting|head-on targeting gun]] | + | : It has a virtual gun array containing (currently) a [[HeadOnTargeting|head-on targeting gun]], a [[LinearTargeting|linear targeting gun]], a [[CircularTargeting|circular targeting gun]] and a [[GuessFactor|guess factor gun]]. (I suppose the linear targeting gun is probably redundant.) It fires [[Waves|waves]] (for guess factor targeting) and [[VirtualBullets|virtual bullets]] (for tracking the success of the various guns) every turn and fires the real bullets with the best gun. Stats decay over time so that it will adapt more readily to changes in enemy behavior. I might add a [[PatternMatching|pattern matching gun]] to the array. |
; How does it [[DodgingBullets|dodge bullets]]? | ; How does it [[DodgingBullets|dodge bullets]]? | ||
− | : For the moment, it assumes that the opponent is using [[HeadOnTargeting|head-on targeting]] | + | : For the moment, it assumes that the opponent is using [[HeadOnTargeting|head-on targeting]], then creates a force vector which is perpendicular to the presumed bullet's flight path so that it will run away from the bullet. I'm still somewhat undecided on the final bullet dodging strategy. |
; What does it save between rounds and matches? | ; What does it save between rounds and matches? | ||
− | : Currently, it saves gun accuracy, guess factor and energy stats between rounds and nothing between matches | + | : Currently, it saves gun accuracy, guess factor and energy stats between rounds and nothing between matches. |
== Additional Info == | == Additional Info == | ||
Line 33: | Line 50: | ||
; Can I use your code? | ; Can I use your code? | ||
− | : | + | : Yes, although I haven't applied a license yet, it really doesn't bother me if someone wants to adapt the code for their own purposes, as long as you credit me. |
; What's next for your robot? | ; What's next for your robot? | ||
− | * | + | : Here's the to-do list: |
+ | * Finish re-write | ||
+ | * Figure out why it's not always shooting where it thinks it is | ||
* Improve bullet dodging | * Improve bullet dodging | ||
* Add a pattern matching gun | * Add a pattern matching gun | ||
Line 44: | Line 63: | ||
* Tweak, tweak, tweak... | * Tweak, tweak, tweak... | ||
− | ; Does it have any [[ | + | ; Does it have any [[White Whale|white whales]]? |
− | : For now, I've been pitting RabidWombat against [[SpareParts]], with good results | + | : For now, I've been pitting RabidWombat against [[SpareParts]], with good results. |
== Credits == | == Credits == | ||
Line 52: | Line 71: | ||
[[Category:Bots|RabidWombat]] | [[Category:Bots|RabidWombat]] | ||
[[Category:1-vs-1 Bots|RabidWombat]] | [[Category:1-vs-1 Bots|RabidWombat]] | ||
− | [[Category:MegaBots | + | [[Category:MegaBots|RabidWombat]] |
− | |||
− | |||
__NOTOC__ __NOEDITSECTION__ | __NOTOC__ __NOEDITSECTION__ |
Latest revision as of 18:17, 13 May 2016
RabidWombat | |
Author(s) | RobertWalker |
Extends | PluggableRobot |
Targeting | Virtual gun array: |
Movement | antigravity |
Code License | no license selected yet |
Release Notes
- Version 0.7.1
- Removed MyRules class
- Updated movement code to better handle equilibrium states
- Version 0.7
- Initial release on RoboRumble
Background Info
- What's special about it?
- Nothing, particularly. Just another bot.
- Great, I want to try it. Where can I download it?
- I'm currently rewriting RabidWombat, so he's not available for download at the moment. I'll put it back out there when my rewrite is complete.
- How competitive is it?
- It's okay. It lands in the middle of the pack in the RoboRumble.
Strategy
- How does it move?
- It uses a variation of antigravity movement. The enemy robot exerts an attractive or repulsive force on RabidWombat, depending on how far away it is, in order to maintain a particular distance from the enemy. (It's pretty much working on Hooke's law.) That distance grows if RabidWombat is losing and shrinks if it's winning, so that it'll run away or close in for the kill as appropriate. Walls exert a repulsive force when RabidWombat gets close enough to them, which gets stronger the closer it is. Bullet dodging is also done with force vectors (see below).
- How does it fire?
- It has a virtual gun array containing (currently) a head-on targeting gun, a linear targeting gun, a circular targeting gun and a guess factor gun. (I suppose the linear targeting gun is probably redundant.) It fires waves (for guess factor targeting) and virtual bullets (for tracking the success of the various guns) every turn and fires the real bullets with the best gun. Stats decay over time so that it will adapt more readily to changes in enemy behavior. I might add a pattern matching gun to the array.
- How does it dodge bullets?
- For the moment, it assumes that the opponent is using head-on targeting, then creates a force vector which is perpendicular to the presumed bullet's flight path so that it will run away from the bullet. I'm still somewhat undecided on the final bullet dodging strategy.
- What does it save between rounds and matches?
- Currently, it saves gun accuracy, guess factor and energy stats between rounds and nothing between matches.
Additional Info
- Where did you get the name?
- It sounded cool. Its initials happening to be RW didn't hurt, either.
- Can I use your code?
- Yes, although I haven't applied a license yet, it really doesn't bother me if someone wants to adapt the code for their own purposes, as long as you credit me.
- What's next for your robot?
- Here's the to-do list:
- Finish re-write
- Figure out why it's not always shooting where it thinks it is
- Improve bullet dodging
- Add a pattern matching gun
- Take wall bumping into account for virtual gun calculations
- Weight virtual gun stats based on hit probability
- Segment statistics
- Tweak, tweak, tweak...
- Does it have any white whales?
- For now, I've been pitting RabidWombat against SpareParts, with good results.
Credits
PluggableRobot was developed in parallel to support RabidWombat, so look there for some credits. Other than that, it wasn't directly based on any other robot, although I've culled many ideas from the wiki. I'm trying to be good about giving attribution in the source, and when I get some time I'll transfer them to the wiki.