Difference between revisions of "Wallaby"

From Robowiki
Jump to navigation Jump to search
m (update)
m (Minor edit.)
 
(7 intermediate revisions by one other user not shown)
Line 5: Line 5:
 
| targeting      = [[Circular Targeting]]
 
| targeting      = [[Circular Targeting]]
 
| movement      = Minimum Risk <br> Antigrav  <br> Oscillating
 
| movement      = Minimum Risk <br> Antigrav  <br> Oscillating
| released        = August 2012
+
| released        = September 2012
| current_version = 4.4
+
| current_version = 5.1
 
| 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_5.1.jar  
 
| isOneOnOne      = false
 
| isOneOnOne      = false
 
| isMelee        = true
 
| isMelee        = true
Line 20: Line 20:
  
 
; What's special about it?
 
; 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
+
Version 5.1 made a jump from 'not so special' to 'very nice'. Wallaby now has one of the best movements within the micro/melee weight class and can even hold himself in the general class very well. The bot was originally designed as a close combat bot, but over time it changed to middle distance. I think the synergy of its movement, gun, and radar makes it work.
  
 
; How competitive is it?
 
; How competitive is it?
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+5.1|rumble=MicroMeleeRumble|scorelabel=APS|score=69.02|rank=1st|win=134|loss=0|plrank=1st|glicko2=-399.5|score2label=Survival|score2=94.18}}
:{{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+5.1|rumble=MiniMeleeRumble|scorelabel=APS|score=68.4|rank=1st|win=172|loss=1|plrank=2nd|glicko2=-619.1|score2label=Survival|score2=92.95}}
:{{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+5.1|rumble=MeleeRumble|scorelabel=APS|score=65.29|rank=13th|win=330|loss=16|plrank=15th|glicko2=-1895.2|score2label=Survival|score2=86.61}}
 +
 
  
 
== Strategy ==
 
== Strategy ==
  
 
; How does it [[Movement|move]]?
 
; How does it [[Movement|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.  
+
The movement is a combination of Minimum Risk, Antigrav and Oscillation. All three movements are combined together, but the weighting changes as the battle progresses. At the start of the battle the antigrav is a major factor to stay out of the initial heat. After the herd is thinned the oscillation kicks in and wallaby goes oscillating to mid combat distance. The movement has a fixed travel width of 185 pixels once the minimum risk angle is found, but can under certain circumstances, like near or ram bots, switch to 'free' movement. Which leads to very nice avoid moves in crowded battle situations.  
 
<br>[[/WallabyMovement| Wallaby Movement]]
 
<br>[[/WallabyMovement| Wallaby Movement]]
  
 
; How does it fire?
 
; 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.  
+
The gun is a precise circular gun designed for close to mid combat distance, with wall handling and wall backtracking. All scanned velocities of the target are averaged and used to feed 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.  
 
<br>[[/WallabyTargeting| Wallaby Targeting]]
 
<br>[[/WallabyTargeting| Wallaby Targeting]]
  
Line 45: Line 46:
  
 
; How does it select a target to attack in [[melee]]?
 
; How does it select a target to attack in [[melee]]?
closest until two opponents left, after this the one with the least energy
+
closest
  
 
; What does it save between rounds and matches?
 
; What does it save between rounds and matches?
Line 54: Line 55:
  
 
; Can I use your code?
 
; Can I use your code?
Sure, its open source.  
+
Sure, it's open source.  
  
 
; What's next for your robot?
 
; What's next for your robot?
There are alot of things i don't like and want to be fixed.
+
* v5.1 should be the last version of this bot. Maybe if I find something that looks really promising I will touch him again, but for now he is finished.  
* 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 Whale]]s?
 
; Does it have any [[White Whale]]s?
Of course the mighty [[Capulet|Capulet]] a bot of [[User:CrazyBassoonist|CrazyBassoonist]] - only micro bot where my survival is under 60%. <br>
+
* Right now Wallaby doesn't have any white whales. He is 1st place in both micro and mini, and has quite a high ranking in general.
My next step would be beating [[GlowBlowMelee]] a bot of [[User:rozu|rozu]] - v4.4 is very close -0.15% in melee, and 0.01% in general<br>
+
** [[Capulet|Capulet]], a bot of [[User:CrazyBassoonist|CrazyBassoonist]], was for a long time one of the top white whales in micro.
Would be nice to beat [[SandboxDT]] a bot of [[User:Paul_Evans|Paul Evans]] (0.1% to go) - yes, left him behind with 0.4%
+
** [[GlowBlowMelee]], a bot of [[User:rozu|rozu]],  was one of the toughest bots to beat (and it's still very close) in mini.
 +
** [[SandboxDT]], a bot of [[User:Paul_Evans|Paul Evans]], one of the most impressive moments was when Wallaby beat this former melee general champion.
 +
 
  
 
; What other robot(s) is it based on?
 
; What other robot(s) is it based on?
Line 81: Line 72:
  
 
== Credits ==
 
== Credits ==
Credit for inspiration goes to CrazyBassoonist. I learned alot just by watching his bots. <br>
+
Credit for inspiration goes to CrazyBassoonist. I learned a lot just by watching his bots. <br>
Credit for code size goes to alot of nano bot authors. Mainly the top ranking melee nano bots. <br>
+
Credit for code size goes to many nano bot authors. Mainly the top ranking melee nano bots. <br>
And of course Credit to all robowiki contributors for making it easy to learn robocode from the scratch.<br>
+
And of course Credit to all robowiki contributors for making it easy to learn robocode from scratch.<br>
 
Credit to Voidious for making his [[RoboRunner]] and providing a very nice melee test environment.
 
Credit to Voidious for making his [[RoboRunner]] and providing a very nice melee test environment.
  

Latest revision as of 00:59, 17 December 2012

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

Sub-Pages: Version History | Challenges

Background Information

What's special about it?

Version 5.1 made a jump from 'not so special' to 'very nice'. Wallaby now has one of the best movements within the micro/melee weight class and can even hold himself in the general class very well. The bot was originally designed as a close combat bot, but over time it changed to middle distance. I think the synergy of its movement, gun, and radar makes it work.

How competitive is it?
MicroMeleeRumble ‒ APS: 69.02% (1st), PL: 134-0 (1st), Survival: 94.18%
MiniMeleeRumble ‒ APS: 68.4% (1st), PL: 172-1 (2nd), Survival: 92.95%
MeleeRumble ‒ APS: 65.29% (13th), PL: 330-16 (15th), Survival: 86.61%


Strategy

How does it move?

The movement is a combination of Minimum Risk, Antigrav and Oscillation. All three movements are combined together, but the weighting changes as the battle progresses. At the start of the battle the antigrav is a major factor to stay out of the initial heat. After the herd is thinned the oscillation kicks in and wallaby goes oscillating to mid combat distance. The movement has a fixed travel width of 185 pixels once the minimum risk angle is found, but can under certain circumstances, like near or ram 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 a precise circular gun designed for close to mid combat distance, with wall handling and wall backtracking. All scanned velocities of the target are averaged and used to feed 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

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, it's open source.

What's next for your robot?
  • v5.1 should be the last version of this bot. Maybe if I find something that looks really promising I will touch him again, but for now he is finished.


Does it have any White Whales?
  • Right now Wallaby doesn't have any white whales. He is 1st place in both micro and mini, and has quite a high ranking in general.
    • Capulet, a bot of CrazyBassoonist, was for a long time one of the top white whales in micro.
    • GlowBlowMelee, a bot of rozu, was one of the toughest bots to beat (and it's still very close) in mini.
    • SandboxDT, a bot of Paul Evans, one of the most impressive moments was when Wallaby beat this former melee general champion.


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 a lot just by watching his bots.
Credit for code size goes to many 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 scratch.
Credit to Voidious for making his RoboRunner and providing a very nice melee test environment.