Difference between revisions of "SimpleBot/Version History"

From Robowiki
Jump to navigation Jump to search
m (Add Understanding SimpleBot subpage.)
m (Now retired and replaced by ScalarBot.)
 
(3 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
| page2 = Understanding SimpleBot
 
| page2 = Understanding SimpleBot
 
}}
 
}}
 +
Now retired and replaced by [[ScalarBot]].
 
----
 
----
 
* {{SimpleVersion|date=2017-08-28|version=0.024c.c}}
 
* {{SimpleVersion|date=2017-08-28|version=0.024c.c}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024c.c|rumble=RoboRumble|scorelabel=APS|score=84.2|rank=22nd|win=668|loss=23|plrank=452nd|glicko2=N/A|pwin=96.67|vote=4.45|anpp=87.54|score2label=Survival|score2=91.03}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024c.c|rumble=RoboRumble|scorelabel=APS|score=84.34|rank=22nd|win=1120|loss=32|plrank=31st|glicko2=N/A|pwin=97.18|vote=2.79|anpp=88.83|score2label=Survival|score2=90.98}}'''
 
** '''Based on 0.024c'''
 
** '''Based on 0.024c'''
 
** REFACTOR EVERYTHING. Hope it don't break anything.  
 
** REFACTOR EVERYTHING. Hope it don't break anything.  
Line 19: Line 20:
 
** Performance decreased a lot.  
 
** Performance decreased a lot.  
 
* {{SimpleVersion|date=2017-08-26|version=0.024c}}
 
* {{SimpleVersion|date=2017-08-26|version=0.024c}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024c|rumble=RoboRumble|scorelabel=APS|score=83.06|rank=36th|win=1093|loss=59|plrank=54th|glicko2=N/A|pwin=94.88|vote=2.81|anpp=87.3|score2label=Survival|score2=89.84}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024c|rumble=RoboRumble|scorelabel=APS|score=83.06|rank=36th|win=1093|loss=59|plrank=54th|glicko2=N/A|pwin=94.88|vote=2.81|anpp=87.3|score2label=Survival|score2=89.84}}'''
 
** Add second-wave surfing.  
 
** Add second-wave surfing.  
 
** Weight waves on bullet damage. Not yet tried weighting on distance or so.
 
** Weight waves on bullet damage. Not yet tried weighting on distance or so.
Line 27: Line 28:
 
** '''Merge branch knn to master. '''
 
** '''Merge branch knn to master. '''
 
* {{SimpleVersion|date=2017-08-26|version=0.023h.knn.b}}
 
* {{SimpleVersion|date=2017-08-26|version=0.023h.knn.b}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h.knn.b|rumble=RoboRumble|scorelabel=APS|score=82.15|rank=46th|win=1091|loss=60|plrank=54th|glicko2=N/A|pwin=94.79|vote=1.27|anpp=86.41|score2label=Survival|score2=89.1}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h.knn.b|rumble=RoboRumble|scorelabel=APS|score=82.15|rank=46th|win=1091|loss=60|plrank=54th|glicko2=N/A|pwin=94.79|vote=1.27|anpp=86.41|score2label=Survival|score2=89.1}}'''
 
** Tune gun against RaikoMicro & FloodMini:  
 
** Tune gun against RaikoMicro & FloodMini:  
 
*** Use manhattan distance for knn
 
*** Use manhattan distance for knn
Line 37: Line 38:
 
*** Thanks [[User:Skilgannon|Skilgannon]] for the great idea of using currentGf! Also thanks [[User:Skilgannon|Skilgannon]] for the ideas of using manhattan distance & gaussian distribution kernel density.  
 
*** Thanks [[User:Skilgannon|Skilgannon]] for the great idea of using currentGf! Also thanks [[User:Skilgannon|Skilgannon]] for the ideas of using manhattan distance & gaussian distribution kernel density.  
 
* {{SimpleVersion|date=2017-08-25|version=0.023h_knn}}
 
* {{SimpleVersion|date=2017-08-25|version=0.023h_knn}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h_knn|rumble=RoboRumble|scorelabel=APS|score=79.56|rank=63rd|win=1061|loss=89|plrank=80th|glicko2=N/A|pwin=92.22|vote=1.47|anpp=83.6|score2label=Survival|score2=85.99}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h_knn|rumble=RoboRumble|scorelabel=APS|score=79.56|rank=63rd|win=1061|loss=89|plrank=80th|glicko2=N/A|pwin=92.22|vote=1.47|anpp=83.6|score2label=Survival|score2=85.99}}'''
 
** '''Based on 0.023h. '''
 
** '''Based on 0.023h. '''
 
** Try kNN (my Bucket PR KdTree implementation) in gun and movement.  
 
** Try kNN (my Bucket PR KdTree implementation) in gun and movement.  
 
* {{SimpleVersion|date=2017-08-24|version=0.024}}
 
* {{SimpleVersion|date=2017-08-24|version=0.024}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024|rumble=RoboRumble|scorelabel=APS|score=71.14|rank=134th|win=965|loss=187|plrank=154th|glicko2=N/A|pwin=83.77|vote=0.71|anpp=74.72|score2label=Survival|score2=77.11}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.024|rumble=RoboRumble|scorelabel=APS|score=71.14|rank=134th|win=965|loss=187|plrank=154th|glicko2=N/A|pwin=83.77|vote=0.71|anpp=74.72|score2label=Survival|score2=77.11}}'''
 
** WaveSurfing: Add a flattener.  
 
** WaveSurfing: Add a flattener.  
 
** Gun: fire gfs from last 50 tick waves.  
 
** Gun: fire gfs from last 50 tick waves.  
Line 48: Line 49:
 
** Add another tier (which is lower than max) for killer shot.  
 
** Add another tier (which is lower than max) for killer shot.  
 
* {{SimpleVersion|date=2017-08-24|version=0.023h}}
 
* {{SimpleVersion|date=2017-08-24|version=0.023h}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h|rumble=RoboRumble|scorelabel=APS|score=70.1|rank=155th|win=922|loss=230|plrank=199th|glicko2=N/A|pwin=80.03|vote=0.88|anpp=73.51|score2label=Survival|score2=75.69}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023h|rumble=RoboRumble|scorelabel=APS|score=70.1|rank=155th|win=922|loss=230|plrank=199th|glicko2=N/A|pwin=80.03|vote=0.88|anpp=73.51|score2label=Survival|score2=75.69}}'''
 
** Fix a bug in 0.023g: now reset energy power when init round.  
 
** Fix a bug in 0.023g: now reset energy power when init round.  
 
* {{SimpleVersion|date=2017-08-24|version=0.023g (skipped)}}
 
* {{SimpleVersion|date=2017-08-24|version=0.023g (skipped)}}
 
** Rework energy management.  
 
** Rework energy management.  
 
* {{SimpleVersion|date=2017-08-23|version=0.023f}}
 
* {{SimpleVersion|date=2017-08-23|version=0.023f}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023f|rumble=RoboRumble|scorelabel=APS|score=68.04|rank=192nd|win=901|loss=250|plrank=218th|glicko2=N/A|pwin=78.28|vote=0.61|anpp=71.28|score2label=Survival|score2=77.82}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023f|rumble=RoboRumble|scorelabel=APS|score=68.04|rank=192nd|win=901|loss=250|plrank=218th|glicko2=N/A|pwin=78.28|vote=0.61|anpp=71.28|score2label=Survival|score2=77.82}}'''
 
** Gun: try to match enemy bullet power.  
 
** Gun: try to match enemy bullet power.  
 
* {{SimpleVersion|date=2017-08-22|version=0.023e}}
 
* {{SimpleVersion|date=2017-08-22|version=0.023e}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023e|rumble=RoboRumble|scorelabel=APS|score=67.91|rank=194th|win=896|loss=255|plrank=224th|glicko2=N/A|pwin=77.85|vote=0.89|anpp=71.08|score2label=Survival|score2=75.33}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023e|rumble=RoboRumble|scorelabel=APS|score=67.91|rank=194th|win=896|loss=255|plrank=224th|glicko2=N/A|pwin=77.85|vote=0.89|anpp=71.08|score2label=Survival|score2=75.33}}'''
 
** Fix a bug in 0.023d that caused WallSmoothing not working.  
 
** Fix a bug in 0.023d that caused WallSmoothing not working.  
 
* {{SimpleVersion|date=2017-08-22|version=0.023d}}
 
* {{SimpleVersion|date=2017-08-22|version=0.023d}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023d|rumble=RoboRumble|scorelabel=APS|score=67.07|rank=212th|win=726|loss=235|plrank=386th|glicko2=N/A|pwin=75.55|vote=0|anpp=0|score2label=Survival|score2=73.97}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023d|rumble=RoboRumble|scorelabel=APS|score=67.07|rank=212th|win=726|loss=235|plrank=386th|glicko2=N/A|pwin=75.55|vote=0|anpp=0|score2label=Survival|score2=73.97}}'''
 
** Try some non-iterative way of [[WallSmoothing]] in both gun and movement. Also as a side effect, a trivial bug in the old simplest implementation of WallSmoothing is eliminated. And the total running time is halved comparing to the old implementation when fighting against RaikoMicro.  
 
** Try some non-iterative way of [[WallSmoothing]] in both gun and movement. Also as a side effect, a trivial bug in the old simplest implementation of WallSmoothing is eliminated. And the total running time is halved comparing to the old implementation when fighting against RaikoMicro.  
 
* {{SimpleVersion|date=2017-08-22|version=0.023c (skipped)}}
 
* {{SimpleVersion|date=2017-08-22|version=0.023c (skipped)}}
Line 66: Line 67:
 
** Fix a bug causing wave to be logged after enemy die.  
 
** Fix a bug causing wave to be logged after enemy die.  
 
* {{SimpleVersion|date=2017-08-21|version=0.023b}}
 
* {{SimpleVersion|date=2017-08-21|version=0.023b}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023b|rumble=RoboRumble|scorelabel=APS|score=67.96|rank=192nd|win=881|loss=270|plrank=243rd|glicko2=N/A|pwin=76.54|vote=0.49|anpp=71.18|score2label=Survival|score2=75.49}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023b|rumble=RoboRumble|scorelabel=APS|score=67.96|rank=192nd|win=881|loss=270|plrank=243rd|glicko2=N/A|pwin=76.54|vote=0.49|anpp=71.18|score2label=Survival|score2=75.49}}'''
 
** Aim at predicted fire location instead of current location;  
 
** Aim at predicted fire location instead of current location;  
 
** Fix a long living bug which caused fire power to mismatch aim power;  
 
** Fix a long living bug which caused fire power to mismatch aim power;  
 
** Add graphics for firing waves.  
 
** Add graphics for firing waves.  
 
* {{SimpleVersion|date=2017-08-21|version=0.023}}
 
* {{SimpleVersion|date=2017-08-21|version=0.023}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023|rumble=RoboRumble|scorelabel=APS|score=67.94|rank=192nd|win=890|loss=262|plrank=235th|glicko2=N/A|pwin=77.26|vote=1.14|anpp=71.15|score2label=Survival|score2=74.9}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.023|rumble=RoboRumble|scorelabel=APS|score=67.94|rank=192nd|win=890|loss=262|plrank=235th|glicko2=N/A|pwin=77.26|vote=1.14|anpp=71.15|score2label=Survival|score2=74.9}}'''
 
** Use [[Precise GuessFactor]] in gun.  
 
** Use [[Precise GuessFactor]] in gun.  
 
* {{SimpleVersion|date=2017-08-20|version=0.022d}}
 
* {{SimpleVersion|date=2017-08-20|version=0.022d}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022d|rumble=RoboRumble|scorelabel=APS|score=67.65|rank=199th|win=880|loss=272|plrank=244th|glicko2=N/A|pwin=76.39|vote=0.7|anpp=70.82|score2label=Survival|score2=74.56}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022d|rumble=RoboRumble|scorelabel=APS|score=67.65|rank=199th|win=880|loss=272|plrank=244th|glicko2=N/A|pwin=76.39|vote=0.7|anpp=70.82|score2label=Survival|score2=74.56}}'''
 
** Tune against some RamBots:  
 
** Tune against some RamBots:  
 
*** Fire a dummy wave when there is no wave to surf.  
 
*** Fire a dummy wave when there is no wave to surf.  
Line 86: Line 87:
 
** Add Precise WaveTracking.
 
** Add Precise WaveTracking.
 
* {{SimpleVersion|date=2017-08-20|version=0.022b}}
 
* {{SimpleVersion|date=2017-08-20|version=0.022b}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022b|rumble=RoboRumble|scorelabel=APS|score=59.65|rank=376th|win=546|loss=306|plrank=604th|glicko2=N/A|pwin=64.08|vote=0|anpp=62.18|score2label=Survival|score2=64.75}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022b|rumble=RoboRumble|scorelabel=APS|score=59.65|rank=376th|win=546|loss=306|plrank=604th|glicko2=N/A|pwin=64.08|vote=0|anpp=62.18|score2label=Survival|score2=64.75}}'''
 
** Tune against RaikoMicro —  
 
** Tune against RaikoMicro —  
 
*** Simple Energy Management;  
 
*** Simple Energy Management;  
Line 93: Line 94:
 
** Switch to orbiting fire position. Thanks [[User:Dsekercioglu|Dsekercioglu]]!  
 
** Switch to orbiting fire position. Thanks [[User:Dsekercioglu|Dsekercioglu]]!  
 
* {{SimpleVersion|date=2017-08-19|version=0.022}}
 
* {{SimpleVersion|date=2017-08-19|version=0.022}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022|rumble=RoboRumble|scorelabel=APS|score=59.64|rank=376th|win=575|loss=381|plrank=562nd|glicko2=N/A|pwin=60.15|vote=0.18|anpp=61.99|score2label=Survival|score2=63.09}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.022|rumble=RoboRumble|scorelabel=APS|score=59.64|rank=376th|win=575|loss=381|plrank=562nd|glicko2=N/A|pwin=60.15|vote=0.18|anpp=61.99|score2label=Survival|score2=63.09}}'''
 
** Surf next wave immediately when the current wave touches.  
 
** Surf next wave immediately when the current wave touches.  
 
** Tune danger function.  
 
** Tune danger function.  
 
* {{SimpleVersion|date=2017-08-19|version=0.021}}
 
* {{SimpleVersion|date=2017-08-19|version=0.021}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.021|rumble=RoboRumble|scorelabel=APS|score=59.61|rank=377th|win=608|loss=388|plrank=524th|glicko2=N/A|pwin=61.04|vote=0.35|anpp=62.79|score2label=Survival|score2=62.83}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.021|rumble=RoboRumble|scorelabel=APS|score=59.61|rank=377th|win=608|loss=388|plrank=524th|glicko2=N/A|pwin=61.04|vote=0.35|anpp=62.79|score2label=Survival|score2=62.83}}'''
 
** Minor fix in movement (a long living bug).  
 
** Minor fix in movement (a long living bug).  
 
** Add debug graphics.  
 
** Add debug graphics.  
 
** Take distance into account in danger calculation.  
 
** Take distance into account in danger calculation.  
 
* {{SimpleVersion|date=2017-08-19|version=0.02}}
 
* {{SimpleVersion|date=2017-08-19|version=0.02}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.02|rumble=RoboRumble|scorelabel=APS|score=43.52|rank=764th|win=80|loss=175|plrank=1090th|glicko2=N/A|pwin=31.37|vote=0.18|anpp=44.77|score2label=Survival|score2=42.54}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.02|rumble=RoboRumble|scorelabel=APS|score=43.52|rank=764th|win=80|loss=175|plrank=1090th|glicko2=N/A|pwin=31.37|vote=0.18|anpp=44.77|score2label=Survival|score2=42.54}}'''
 
** Simple [[WaveSurfing]] that selects a random [[GuessFactor|gf]] and dodge.  
 
** Simple [[WaveSurfing]] that selects a random [[GuessFactor|gf]] and dodge.  
 
* {{SimpleVersion|date=2017-08-18|version=0.011}}
 
* {{SimpleVersion|date=2017-08-18|version=0.011}}
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.011|rumble=RoboRumble|scorelabel=APS|score=34.53|rank=927th|win=307|loss=840|plrank=897th|glicko2=N/A|pwin=26.77|vote=0.26|anpp=35.74|score2label=Survival|score2=27.68}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.011|rumble=RoboRumble|scorelabel=APS|score=34.53|rank=927th|win=307|loss=840|plrank=897th|glicko2=N/A|pwin=26.77|vote=0.26|anpp=35.74|score2label=Survival|score2=27.68}}'''
 
** Fire recorded [[GuessFactor|GuessFactors]] randomly.  
 
** Fire recorded [[GuessFactor|GuessFactors]] randomly.  
 
* {{SimpleVersion|date=2017-08-18|version=0.01}}  
 
* {{SimpleVersion|date=2017-08-18|version=0.01}}  
** '''{{SimpleStats|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.01|rumble=RoboRumble|scorelabel=APS|score=18.51|rank=1073rd|win=124|loss=1023|plrank=1056th|glicko2=N/A|pwin=10.81|vote=0|anpp=0|score2label=Survival|score2=14.7}}'''
+
** '''{{RumbleStatsDefault|link=http://literumble.appspot.com/BotDetails?game=roborumble&name=aaa.SimpleBot%200.01|rumble=RoboRumble|scorelabel=APS|score=18.51|rank=1073rd|win=124|loss=1023|plrank=1056th|glicko2=N/A|pwin=10.81|vote=0|anpp=0|score2label=Survival|score2=14.7}}'''
 
** First try in [[roborumble]] with fixed [[GuessFactor]] (actually 1.0, which is ridiculous)
 
** First try in [[roborumble]] with fixed [[GuessFactor]] (actually 1.0, which is ridiculous)
** fix circular movement.  
+
** Use fixed circular movement.  
  
 
[[Category:Bot Version Histories]]
 
[[Category:Bot Version Histories]]

Latest revision as of 05:59, 19 January 2023

SimpleBot Sub-pages:
SimpleBotVersion History - Understanding SimpleBot

Now retired and replaced by ScalarBot.


  • 0.024c.c – 2017-08-28
    • RoboRumble ‒ APS: 84.34% (22nd), PL: 1120-32 (31st), Survival: 90.98%
    • Based on 0.024c
    • REFACTOR EVERYTHING. Hope it don't break anything.
    • Add Acceleration & WallDistance (actually PreciseMea/OldSchoolMea) dimension in movement (in a separate tree to make sure not breaking existing tree).
  • 0.024d (skipped) – 2017-08-27
    • Movement:
      • Use kernel density.
      • Remove most recent hit gf.
      • Try straight wall distance in surfing dimensions.
      • Try to decay GuessFactors with gaussian distribution.
    • Performance decreased a lot.
  • 0.024c – 2017-08-26
    • RoboRumble ‒ APS: 83.06% (36th), PL: 1093-59 (54th), Survival: 89.84%
    • Add second-wave surfing.
    • Weight waves on bullet damage. Not yet tried weighting on distance or so.
    • Add stationary risk (risk if I hit the brake immediately).
  • 0.024b (skipped) – 2017-08-26
    • Remove flattener completely.
    • Merge branch knn to master.
  • 0.023h.knn.b – 2017-08-26
    • RoboRumble ‒ APS: 82.15% (46th), PL: 1091-60 (54th), Survival: 89.1%
    • Tune gun against RaikoMicro & FloodMini:
      • Use manhattan distance for knn
      • Use gaussian distribution kernel density
      • Use max overlap for selecting best firing angle
      • Use accel for lateral direction in gun.
      • Give up PreciseMea but in gun attribute.
      • Add accel & currentGf dimension.
      • Thanks Skilgannon for the great idea of using currentGf! Also thanks Skilgannon for the ideas of using manhattan distance & gaussian distribution kernel density.
  • 0.023h_knn – 2017-08-25
    • RoboRumble ‒ APS: 79.56% (63rd), PL: 1061-89 (80th), Survival: 85.99%
    • Based on 0.023h.
    • Try kNN (my Bucket PR KdTree implementation) in gun and movement.
  • 0.024 – 2017-08-24
    • RoboRumble ‒ APS: 71.14% (134th), PL: 965-187 (154th), Survival: 77.11%
    • WaveSurfing: Add a flattener.
    • Gun: fire gfs from last 50 tick waves.
  • 0.023i (skipped) – 2017-08-24
    • Fire lower power at first shot.
    • Add another tier (which is lower than max) for killer shot.
  • 0.023h – 2017-08-24
    • RoboRumble ‒ APS: 70.1% (155th), PL: 922-230 (199th), Survival: 75.69%
    • Fix a bug in 0.023g: now reset energy power when init round.
  • 0.023g (skipped) – 2017-08-24
    • Rework energy management.
  • 0.023f – 2017-08-23
    • RoboRumble ‒ APS: 68.04% (192nd), PL: 901-250 (218th), Survival: 77.82%
    • Gun: try to match enemy bullet power.
  • 0.023e – 2017-08-22
    • RoboRumble ‒ APS: 67.91% (194th), PL: 896-255 (224th), Survival: 75.33%
    • Fix a bug in 0.023d that caused WallSmoothing not working.
  • 0.023d – 2017-08-22
    • RoboRumble ‒ APS: 67.07% (212th), PL: 726-235 (386th), Survival: 73.97%
    • Try some non-iterative way of WallSmoothing in both gun and movement. Also as a side effect, a trivial bug in the old simplest implementation of WallSmoothing is eliminated. And the total running time is halved comparing to the old implementation when fighting against RaikoMicro.
  • 0.023c (skipped) – 2017-08-22
    • Add a switch to debug graphics, and is off by default.
    • Try to truncate gun gf history but no noticeable increase or decrease in performance against RaikoMicro.
    • Fix a bug causing wave to be logged after enemy die.
  • 0.023b – 2017-08-21
    • RoboRumble ‒ APS: 67.96% (192nd), PL: 881-270 (243rd), Survival: 75.49%
    • Aim at predicted fire location instead of current location;
    • Fix a long living bug which caused fire power to mismatch aim power;
    • Add graphics for firing waves.
  • 0.023 – 2017-08-21
  • 0.022d – 2017-08-20
    • RoboRumble ‒ APS: 67.65% (199th), PL: 880-272 (244th), Survival: 74.56%
    • Tune against some RamBots:
      • Fire a dummy wave when there is no wave to surf.
    • Precise prediction now ends after wave passes center instead of touches.
    • Limit attack angle
    • distancing on enemy distance instead of distance of wave source.
    • Add most recent gf in combination of random gf of last 20.
  • 0.022c (skipped) – 2017-08-20
    • Take botWidth into account when calculating wave danger;
    • Show selected GuessFactors in graphics;
    • Add Precise WaveTracking.
  • 0.022b – 2017-08-20
    • RoboRumble ‒ APS: 59.65% (376th), PL: 546-306 (604th), Survival: 64.75%
    • Tune against RaikoMicro —
      • Simple Energy Management;
      • WaveSurfing select randomly in last 20 hits;
      • BulletHitBullet event handled.
    • Switch to orbiting fire position. Thanks Dsekercioglu!
  • 0.022 – 2017-08-19
    • RoboRumble ‒ APS: 59.64% (376th), PL: 575-381 (562nd), Survival: 63.09%
    • Surf next wave immediately when the current wave touches.
    • Tune danger function.
  • 0.021 – 2017-08-19
    • RoboRumble ‒ APS: 59.61% (377th), PL: 608-388 (524th), Survival: 62.83%
    • Minor fix in movement (a long living bug).
    • Add debug graphics.
    • Take distance into account in danger calculation.
  • 0.02 – 2017-08-19
    • RoboRumble ‒ APS: 43.52% (764th), PL: 80-175 (1090th), Survival: 42.54%
    • Simple WaveSurfing that selects a random gf and dodge.
  • 0.011 – 2017-08-18
    • RoboRumble ‒ APS: 34.53% (927th), PL: 307-840 (897th), Survival: 27.68%
    • Fire recorded GuessFactors randomly.
  • 0.01 – 2017-08-18
    • RoboRumble ‒ APS: 18.51% (1073rd), PL: 124-1023 (1056th), Survival: 14.7%
    • First try in roborumble with fixed GuessFactor (actually 1.0, which is ridiculous)
    • Use fixed circular movement.