Difference between revisions of "Wallaby"

From Robowiki
Jump to navigation Jump to search
m (minor fix)
m (update)
Line 6: Line 6:
 
| movement      = Minimum Risk <br> Antigrav  <br> Oscillating
 
| movement      = Minimum Risk <br> Antigrav  <br> Oscillating
 
| released        = August 2012
 
| released        = August 2012
| current_version = 4.4
+
| current_version = 4.7
 
| license        = [[RWPCL]]
 
| license        = [[RWPCL]]
| download_link  = http://www.casepool.de/robocode/wompi.Wallaby_4.4.jar  
+
| download_link  = http://www.casepool.de/robocode/wompi.Wallaby_4.7.jar  
 
| isOneOnOne      = false
 
| isOneOnOne      = false
 
| isMelee        = true
 
| isMelee        = true
Line 27: Line 27:
 
<!-- {{subst:rumblestats:meleerumble|wompi.Wallaby 4.1}}-->
 
<!-- {{subst:rumblestats:meleerumble|wompi.Wallaby 4.1}}-->
  
:{{RumbleStatsDefault|link=http://darkcanuck.net/rumble/RatingsDetails?game=micromeleerumble&name=wompi.Wallaby+4.4|rumble=MicroMeleeRumble|scorelabel=APS|score=68.8|rank=1st|win=134|loss=0|plrank=1st|glicko2=-15.9|score2label=Survival|score2=92.59}}
+
:{{RumbleStatsDefault|link=http://darkcanuck.net/rumble/RatingsDetails?game=micromeleerumble&name=wompi.Wallaby+4.7|rumble=MicroMeleeRumble|scorelabel=APS|score=68.71|rank=1st|win=134|loss=0|plrank=1st|glicko2=-195.2|score2label=Survival|score2=94.13}}
:{{RumbleStatsDefault|link=http://darkcanuck.net/rumble/RatingsDetails?game=minimeleerumble&name=wompi.Wallaby+4.4|rumble=MiniMeleeRumble|scorelabel=APS|score=68.15|rank=2nd|win=171|loss=2|plrank=2nd|glicko2=-167.5|score2label=Survival|score2=91.32}}
+
:{{RumbleStatsDefault|link=http://darkcanuck.net/rumble/RatingsDetails?game=minimeleerumble&name=wompi.Wallaby+4.7|rumble=MiniMeleeRumble|scorelabel=APS|score=68.07|rank=2nd|win=172|loss=1|plrank=2nd|glicko2=-384|score2label=Survival|score2=92.99}}
:{{RumbleStatsDefault|link=http://darkcanuck.net/rumble/RatingsDetails?game=meleerumble&name=wompi.Wallaby+4.4|rumble=MeleeRumble|scorelabel=APS|score=65.01|rank=13th|win=325|loss=21|plrank=22nd|glicko2=-1172|score2label=Survival|score2=84.86}}
+
:{{RumbleStatsDefault|link=http://darkcanuck.net/rumble/RatingsDetails?game=meleerumble&name=wompi.Wallaby+4.7|rumble=MeleeRumble|scorelabel=APS|score=64.93|rank=15th|win=328|loss=18|plrank=17th|glicko2=-1530.3|score2label=Survival|score2=87.03}}
  
 
== Strategy ==
 
== Strategy ==

Revision as of 15:45, 2 September 2012

Wallaby
Author(s) Wompi
Extends AdvancedRobot
Targeting Circular Targeting
Movement Minimum Risk
Antigrav
Oscillating
Released August 2012
Current Version 4.7
Code License RWPCL
Download

Sub-Pages: Version History | Challenges

Background Information

What's special about it?

Nothing really special. It is designed as close combat bot but over the time it changed to middle distance. I think the combination of movement and gun makes it working

How competitive is it?
MicroMeleeRumble ‒ APS: 68.71% (1st), PL: 134-0 (1st), Survival: 94.13%
MiniMeleeRumble ‒ APS: 68.07% (2nd), PL: 172-1 (2nd), Survival: 92.99%
MeleeRumble ‒ APS: 64.93% (15th), PL: 328-18 (17th), Survival: 87.03%

Strategy

How does it move?

The movement is a combination of Minimum Risk, Antigrav and Oscillation. All three movements are combined together but the weight changes as the battle progresses. At battle start the antigrav is a major factor to stay out of the initial heat. After the herd is thinned the oscilation kicks in and wallaby goes oscillating to mid combat distance. The movement has a fixed travel width of 185 pixel once the minimum risk angle is found, but can under certain circumstances, like near bots, switch to 'free' movement. Which leads to very nice avoid moves in crowded battle situations.
Wallaby Movement

How does it fire?

The gun is designed for close to mid combat distance and is a precise circular gun with wall handling and wall backtracking. All scanned velocities of the target are averaged and used to feat the circular gun. The radar locks dependent on gun heat and while the target is locked the gun collects all heading difference of the target. If the fire angle has to be calculated, the circular gun projects the guessed target position with the overall average velocity and the average of the last heading differences.
Wallaby Targeting

How does the melee strategy differ from One-on-one strategy?

just melee

How does it select a target to attack in melee?

closest until two opponents left, after this the one with the least energy

What does it save between rounds and matches?

matches - nothing
rounds - nothing, static variables for code size

Additional Information

Can I use your code?

Sure, its open source.

What's next for your robot?

There are alot of things i don't like and want to be fixed.

  • to much wall hitting
    • with implementing of the 'free' movement the wall hits are decreased by a huge margin
  • engaging stronger opponent (more energy)
    • still an issue but not as bad as i first thought
    • the main flaw with 2-3 opponents left is, the movement brings Wallaby mostly between the other bots and therefor they all together shoot at me. Luckily, Wallaby can kill bots very quickly and the time where everyone can shoot at me is very short. Especially with the last two enemies rule - shoot the one with the least energy
  • of course hitrate (never enough)
    • yes still true
    • i had to define hit rate new - it should say 'increased hit rate for the same bullet power profile'. You can easily increase the hit rate by using a lesser bullet power, but this has to be weighted to score vs survival and vice versa
  • would be nice to bring it in top 10 general
    • well top 19 is reached and Wallaby starts to win against top 9 bots (of course by a very small margin).
    • now on top 16 and the win margin against top 10 bots is increased
    • after fiddling in a little randomisation for the movement - now top 15-14
    • version 4.4 reached top 13 after 10k battles but it is still very tight because the difference is 0.04% to top 15
Does it have any White Whales?

Of course the mighty Capulet a bot of CrazyBassoonist - only micro bot where my survival is under 60%.
My next step would be beating GlowBlowMelee a bot of rozu - v4.4 is very close -0.15% (mini), and 0.01% (general)
Would be nice to beat SandboxDT a bot of Paul Evans (0.1% to go) - yes, left him behind with 0.4%

What other robot(s) is it based on?

It combines the basic concepts from robowiki and is not based on a particular bot.

Credits

Credit for inspiration goes to CrazyBassoonist. I learned alot just by watching his bots.
Credit for code size goes to alot of nano bot authors. Mainly the top ranking melee nano bots.
And of course Credit to all robowiki contributors for making it easy to learn robocode from the scratch.
Credit to Voidious for making his RoboRunner and providing a very nice melee test environment.