Difference between revisions of "Wallaby"

From Robowiki
Jump to navigation Jump to search
m (update)
m (update)
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        = May 2012
+
| released        = August 2012
| current_version = 4.1
+
| current_version = 4.4
 
| license        = [[RWPCL]]
 
| license        = [[RWPCL]]
| download_link  = http://www.casepool.de/robocode/wompi.Wallaby_4.1.jar  
+
| download_link  = http://www.casepool.de/robocode/wompi.Wallaby_4.4.jar  
 
| isOneOnOne      = false
 
| isOneOnOne      = false
 
| isMelee        = true
 
| isMelee        = true
Line 24: Line 24:
 
; How competitive is it?
 
; How competitive is it?
 
<!-- {{subst:rumblestats:micromeleerumble|wompi.Wallaby 4.1}}-->
 
<!-- {{subst:rumblestats:micromeleerumble|wompi.Wallaby 4.1}}-->
<!-- {{subst:rumblestats:minmeleerumble|wompi.Wallaby 4.1}}-->
+
<!-- {{subst:rumblestats:minimeleerumble|wompi.Wallaby 4.1}}-->
 
<!-- {{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.1|rumble=MicroMeleeRumble|scorelabel=APS|score=68.61|rank=1st|win=133|loss=0|plrank=1st|glicko2=310.2|score2label=Survival|score2=92.97}}
+
:{{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=minimeleerumble&name=wompi.Wallaby+4.1|rumble=MiniMeleeRumble|scorelabel=APS|score=67.99|rank=2nd|win=170|loss=1|plrank=2nd|glicko2=226.2|score2label=Survival|score2=91.89}}
+
:{{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=meleerumble&name=wompi.Wallaby+4.1|rumble=MeleeRumble|scorelabel=APS|score=64.79|rank=15th|win=323|loss=15|plrank=13th|glicko2=-555.4|score2label=Survival|score2=85.54}}
+
:{{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}}
  
 
== 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 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.  
 
<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. The target is averaged by velocity and heading.
+
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.  
 
<br>[[/WallabyTargeting| Wallaby Targeting]]
 
<br>[[/WallabyTargeting| Wallaby Targeting]]
  
Line 45: Line 45:
  
 
; How does it select a target to attack in [[melee]]?
 
; How does it select a target to attack in [[melee]]?
closest  
+
closest until two opponents left, after this the one with the least energy
  
 
; What does it save between rounds and matches?
 
; What does it save between rounds and matches?
 
matches - nothing<br>
 
matches - nothing<br>
rounds - average velocity, static variables for code size
+
rounds - nothing, static variables for code size
  
 
== Additional Information ==
 
== Additional Information ==
Line 59: Line 59:
 
There are alot of things i don't like and want to be fixed.
 
There are alot of things i don't like and want to be fixed.
 
* to much wall hitting
 
* to much wall hitting
** hmm maybe this isn't so bad at all, at least it stays very close to the edge
+
** with implementing of the 'free' movement the wall hits are decreased by a huge margin
 
* engaging stronger opponent (more energy)
 
* engaging stronger opponent (more energy)
 
** still an issue but not as bad as i first thought
 
** still an issue but not as bad as i first thought
** the main flaw is with 2-3 opponents left, 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.
+
** 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)  
 
* of course hitrate (never enough)  
 
** yes still true
 
** yes still true
** hitrate is quite an mystery, you never know if the changes raise or ruin it
+
** 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  
 
* 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).  
 
** 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
 
** 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   
 
** 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>
 
Of course the mighty [[Capulet|Capulet]] a bot of [[User:CrazyBassoonist|CrazyBassoonist]] - only micro bot where my survival is under 60%. <br>
My next step would be beating [[GlowBlowMelee]] a bot of [[User:rozu|rozu]] - still 0.2% to go<br>
+
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>
Would be nice to beat [[SandboxDT]] a bot of [[User:Paul_Evans|Paul Evans]] (0.1% to go) - yes, left him behind with 0.2%  
+
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%  
  
 
; What other robot(s) is it based on?
 
; What other robot(s) is it based on?
Line 82: Line 83:
 
Credit for inspiration goes to CrazyBassoonist. I learned alot just by watching his bots. <br>
 
Credit for inspiration goes to CrazyBassoonist. I learned alot 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 alot of 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.
+
And of course Credit to all robowiki contributors for making it easy to learn robocode from the scratch.<br>
 +
Credit to Voidious for making his [[RoboRunner]] and providing a very nice melee test environment.
  
 
__NOTOC__  __NOEDITSECTION__
 
__NOTOC__  __NOEDITSECTION__
 
[[Category:MicroBots]]
 
[[Category:MicroBots]]
 
[[Category:Bots]]
 
[[Category:Bots]]

Revision as of 10:28, 20 August 2012

Wallaby
Author(s) Wompi
Extends AdvancedRobot
Targeting Circular Targeting
Movement Minimum Risk
Antigrav
Oscillating
Released August 2012
Current Version 4.4
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.8% (1st), PL: 134-0 (1st), Survival: 92.59%
MiniMeleeRumble ‒ APS: 68.15% (2nd), PL: 171-2 (2nd), Survival: 91.32%
MeleeRumble ‒ APS: 65.01% (13th), PL: 325-21 (22nd), Survival: 84.86%

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% in melee, and 0.01% in 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.