<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://robowiki.net/w/index.php?action=history&amp;feed=atom&amp;title=Talk%3ARabidWombat</id>
	<title>Talk:RabidWombat - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://robowiki.net/w/index.php?action=history&amp;feed=atom&amp;title=Talk%3ARabidWombat"/>
	<link rel="alternate" type="text/html" href="http://robowiki.net/w/index.php?title=Talk:RabidWombat&amp;action=history"/>
	<updated>2026-04-05T09:39:10Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>http://robowiki.net/w/index.php?title=Talk:RabidWombat&amp;diff=7260&amp;oldid=prev</id>
		<title>Robobot: Robobot 0.1 : correcting user page links</title>
		<link rel="alternate" type="text/html" href="http://robowiki.net/w/index.php?title=Talk:RabidWombat&amp;diff=7260&amp;oldid=prev"/>
		<updated>2009-05-22T07:44:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/wiki/User:Robobot&quot; title=&quot;User:Robobot&quot;&gt;Robobot&lt;/a&gt; 0.1 : correcting user page links&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 07:44, 22 May 2009&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Segment your GF gun on LateralVelocity, and the linear gun will be redundant.  Also segment it on change in enemy's heading, and circular targeting will be redundant (though I'm not sure whether that one would be useful).  -- [[Simonton]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Segment your GF gun on LateralVelocity, and the linear gun will be redundant.  Also segment it on change in enemy's heading, and circular targeting will be redundant (though I'm not sure whether that one would be useful).  -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Simonton|&lt;/ins&gt;Simonton]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For a GF-gun to replace CircularTargeting, you need both heading and change of heading. As alternative also LateralVelocity and AdvancingVelocity could be used. I still have to see a GF-gun though with more than 75% hitrate against SpinBot. CircularTargeting does in ''most'' cases make the LinearTargeting obsolete, as the hitrate against f.e. Walls would be the same for both methods.   -- [[GrubbmGait]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For a GF-gun to replace CircularTargeting, you need both heading and change of heading. As alternative also LateralVelocity and AdvancingVelocity could be used. I still have to see a GF-gun though with more than 75% hitrate against SpinBot. CircularTargeting does in ''most'' cases make the LinearTargeting obsolete, as the hitrate against f.e. Walls would be the same for both methods.   -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:GrubbmGait|&lt;/ins&gt;GrubbmGait]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;True dat.  -- [[Simonton]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;True dat.  -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Simonton|&lt;/ins&gt;Simonton]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;You'd also need bullet time (and a very fine grained one, at that) for either combination, but the strength of GuessFactorTargeting doesn't lie in getting high hit rates against SpinBot =) -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;You'd also need bullet time (and a very fine grained one, at that) for either combination, but the strength of GuessFactorTargeting doesn't lie in getting high hit rates against SpinBot =) -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;True dat, too.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;True dat, too.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l11&quot; &gt;Line 11:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 11:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Thanks for the advice, guys. I've been thinking about modifying my guns so that I can use them to provide possible firing angles that the enemy might be using and compare that against the actual hits. Basically, RabidWombat would be dodging its own guns. The problem with that strategy is when it's up against another robot with a virtual gun array; pitting RabidWombat against itself with that setup would have them constantly switching guns and never settling on any one dodging method. Anyone else have experience with making a robot dodge its own guns? -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Thanks for the advice, guys. I've been thinking about modifying my guns so that I can use them to provide possible firing angles that the enemy might be using and compare that against the actual hits. Basically, RabidWombat would be dodging its own guns. The problem with that strategy is when it's up against another robot with a virtual gun array; pitting RabidWombat against itself with that setup would have them constantly switching guns and never settling on any one dodging method. Anyone else have experience with making a robot dodge its own guns? -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In general, I think dodging your own guns will give you what seems like a pretty powerful RandomMovement, but not the same level of true bullet dodging as WaveSurfing with [[WaveSurfing/PrecisePrediction|PrecisePrediction]]. If you're going to the trouble of simulating guns and dodging them, it doesn't seem like much of a step up to just do true WaveSurfing, where you use &amp;lt;nowiki&amp;gt;onHitByBullet&amp;lt;/nowiki&amp;gt; to update the data in the gun you're dodging instead of just simulating how you'd make it learn. But I think you'll find that you learn a lot trying to implement the fresh ideas you come up with yourself, so I say go for it and let us know how it works out ;) -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In general, I think dodging your own guns will give you what seems like a pretty powerful RandomMovement, but not the same level of true bullet dodging as WaveSurfing with [[WaveSurfing/PrecisePrediction|PrecisePrediction]]. If you're going to the trouble of simulating guns and dodging them, it doesn't seem like much of a step up to just do true WaveSurfing, where you use &amp;lt;nowiki&amp;gt;onHitByBullet&amp;lt;/nowiki&amp;gt; to update the data in the gun you're dodging instead of just simulating how you'd make it learn. But I think you'll find that you learn a lot trying to implement the fresh ideas you come up with yourself, so I say go for it and let us know how it works out ;) -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* I should be more careful: conceptually, it's not much of a step up. Getting WaveSurfing working bug-free can quickly become late nights full of WaveSuffering! Ask anyone... -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* I should be more careful: conceptually, it's not much of a step up. Getting WaveSurfing working bug-free can quickly become late nights full of WaveSuffering! Ask anyone... -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Also, if you dodge your own gun, persey, enemy mirror movement could make it impossible to hit them! --[[Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Also, if you dodge your own gun, persey, enemy mirror movement could make it impossible to hit them! --[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Chase-san|&lt;/ins&gt;Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** Hmm, I think I've been effectively dissuaded. Time to devour that WaveSurfing tutorial... -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** Hmm, I think I've been effectively dissuaded. Time to devour that WaveSurfing tutorial... -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Dodging HeadOnTargeting and Linear / CircularTargeting alone would have great effect on your performance. It is not a bad idea to try that first just 'to get the hang of it'. After that the WaveSurfing/Tutorial is an excellent next step. (I like small steps) -- [[GrubbmGait]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Dodging HeadOnTargeting and Linear / CircularTargeting alone would have great effect on your performance. It is not a bad idea to try that first just 'to get the hang of it'. After that the WaveSurfing/Tutorial is an excellent next step. (I like small steps) -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:GrubbmGait|&lt;/ins&gt;GrubbmGait]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;See [[Vyper]], [[Thorn]], and [[GrubbmGrb]] for examples of how good a non-surfing dodging system can perform. I hope you find the [[WaveSurfing/Tutorial|WaveSurfing Tutorial]] useful; I'm sure it could be improved, so please do give feedback on it. As for more advanced surfing systems that you might be able to learn from, I'd recommend [[Dookious]] (of course =)), [[CassiusClay]], and [[Chalk]] as great OpenSource surfers with clean code. [[Kev]]'s [[WaveSerpent]], [[Alcatraz]]'s [[Cyanide]], and [[David Alves]]' PhoenixOS are probably good references, too, but I can't vouch for them as much just because I haven't looked at them as much. -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;See [[Vyper]], [[Thorn]], and [[GrubbmGrb]] for examples of how good a non-surfing dodging system can perform. I hope you find the [[WaveSurfing/Tutorial|WaveSurfing Tutorial]] useful; I'm sure it could be improved, so please do give feedback on it. As for more advanced surfing systems that you might be able to learn from, I'd recommend [[Dookious]] (of course =)), [[CassiusClay]], and [[Chalk]] as great OpenSource surfers with clean code. [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Kev|&lt;/ins&gt;Kev]]'s [[WaveSerpent]], [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Alcatraz|&lt;/ins&gt;Alcatraz]]'s [[Cyanide]], and [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:David Alves|&lt;/ins&gt;David Alves]]' PhoenixOS are probably good references, too, but I can't vouch for them as much just because I haven't looked at them as much. -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Most of the bigger ones, ergo the ones listed above can be confusing, misleading, badly formatted, or are just confusing. Thought koduos to PhoenixOS and [[Chalk]]. Dookious is just to big in my opinion for someone just starting into it to try and make out. My suggestion however is [[GresSuffurd]] as its structure is simple, and at the same time, it models closely to the tutorial bot, making it easier to understand. --[[Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Most of the bigger ones, ergo the ones listed above can be confusing, misleading, badly formatted, or are just confusing. Thought koduos to PhoenixOS and [[Chalk]]. Dookious is just to big in my opinion for someone just starting into it to try and make out. My suggestion however is [[GresSuffurd]] as its structure is simple, and at the same time, it models closely to the tutorial bot, making it easier to understand. --[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Chase-san|&lt;/ins&gt;Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Just curious - have you looked since the full rewrite? The movement rewrite is like 1.3x and since... I acknowledge it was a horrible mess before, but I'm pretty happy with it now. Definitely the truth that the best surfers are complex, though. -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Just curious - have you looked since the full rewrite? The movement rewrite is like 1.3x and since... I acknowledge it was a horrible mess before, but I'm pretty happy with it now. Definitely the truth that the best surfers are complex, though. -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;PhoenixOS isn't bad. One of these days I might even go through and comment it. =) --[[David Alves]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;PhoenixOS isn't bad. One of these days I might even go through and comment it. =) --[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:David Alves|&lt;/ins&gt;David Alves]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Yah, I found the PowerNeededToKill rather nice, though it had a clause that wasn't needed. --[[Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Yah, I found the PowerNeededToKill rather nice, though it had a clause that wasn't needed. --[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Chase-san|&lt;/ins&gt;Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Before I go delving into those, I should probably mention that RabidWombat uses AntiGravityMovement. So do any of the above-mentioned bots also use AntiGravityMovement? Has ''anyone'' done OneOnOne bots with AntiGravity [[DodgingBullets|bullet dodging]]? -- [[RobertWalker]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Before I go delving into those, I should probably mention that RabidWombat uses AntiGravityMovement. So do any of the above-mentioned bots also use AntiGravityMovement? Has ''anyone'' done OneOnOne bots with AntiGravity [[DodgingBullets|bullet dodging]]? -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:RobertWalker|&lt;/ins&gt;RobertWalker]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* My original attempts at bullet dodging and WaveSurfing were in a modified AntiGravity system, but my code got much simpler and I got much better results when I finally ditched the AntiGravity stuff. It's certainly possible to do it, though. -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* My original attempts at bullet dodging and WaveSurfing were in a modified AntiGravity system, but my code got much simpler and I got much better results when I finally ditched the AntiGravity stuff. It's certainly possible to do it, though. -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The main problem I've had with anti-gravity bullet dodging is that one tends to run directly away from the bullets instead of moving to the side... of course, this means you just get pummeled into a corner until you're dead. No fun. -- [[Ne]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The main problem I've had with anti-gravity bullet dodging is that one tends to run directly away from the bullets instead of moving to the side... of course, this means you just get pummeled into a corner until you're dead. No fun. -- [[Ne]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l37&quot; &gt;Line 37:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 37:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A quick backlink search on AntiGravityMovement reveals that TheArtOfWar uses AntiGravityMovement in both OneOnOne and [[Melee]], so maybe I should look closer there. I ''could'' make completely different movement systems for OneOnOne versus [[Melee]], but I'd rather not because 1) it's a lot more work, of course, and 2) my current AntiGravityMovement is actually working pretty well in OneOnOne. Granted it's not beating [[Dookious]] or CassiusClay or anything, but then I wasn't expecting it to because I'm pretty new to Robocode. However, with only very basic bullet dodging (running away from HeadOnTargeting), it's regularly beating some bots that I thought would waste it, such as SpareParts and MakoHT, which appears the land RabidWombat in the middle of the RoboRumble OneOnOne pack. Not bad for a newbie bot, I think. Since I'm not really expecting to topple any of the Robocode Goliaths out there, I'm actually pretty pleased with this.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A quick backlink search on AntiGravityMovement reveals that TheArtOfWar uses AntiGravityMovement in both OneOnOne and [[Melee]], so maybe I should look closer there. I ''could'' make completely different movement systems for OneOnOne versus [[Melee]], but I'd rather not because 1) it's a lot more work, of course, and 2) my current AntiGravityMovement is actually working pretty well in OneOnOne. Granted it's not beating [[Dookious]] or CassiusClay or anything, but then I wasn't expecting it to because I'm pretty new to Robocode. However, with only very basic bullet dodging (running away from HeadOnTargeting), it's regularly beating some bots that I thought would waste it, such as SpareParts and MakoHT, which appears the land RabidWombat in the middle of the RoboRumble OneOnOne pack. Not bad for a newbie bot, I think. Since I'm not really expecting to topple any of the Robocode Goliaths out there, I'm actually pretty pleased with this.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** (Edit Conflict) A lot of times, what you want to do with Robocode comes down to how much of your life you're willing to sacrifice for programming Java tanks. =) Sounds like AntiGrav 1-on-1 movement works well for what you want to do right now. TheArtOfWar is an [[Ancients|ancient]] tank, once one of the absolute greatest and still quite capable in melee. At the higher levels, you definitely need specialized 1v1 or Melee movement to stay competitive, of course. -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** (Edit Conflict) A lot of times, what you want to do with Robocode comes down to how much of your life you're willing to sacrifice for programming Java tanks. =) Sounds like AntiGrav 1-on-1 movement works well for what you want to do right now. TheArtOfWar is an [[Ancients|ancient]] tank, once one of the absolute greatest and still quite capable in melee. At the higher levels, you definitely need specialized 1v1 or Melee movement to stay competitive, of course. -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*** I have a wife and baby, so I think you can probably guess how much time I have for Java tank programming. :) -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*** I have a wife and baby, so I think you can probably guess how much time I have for Java tank programming. :) -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l43&quot; &gt;Line 43:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 43:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Speaking of the rumble, does the latest Robocode client allow you to run a &amp;quot;local rumble&amp;quot; based on just the bots that you have? I haven't been brave enough to download the newest version. -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Speaking of the rumble, does the latest Robocode client allow you to run a &amp;quot;local rumble&amp;quot; based on just the bots that you have? I haven't been brave enough to download the newest version. -- RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* I don't know how to setup a &amp;quot;local rumble&amp;quot;, but there is a program called [[RoboLeague]] that might suit your needs. It's really a must-have Robocode utility, IMO. I use it with 1.07, I'm not sure how it will work with later versions, but we'll need to get it working with 1.3 because I absolutely need to have RoboLeague! -- [[Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* I don't know how to setup a &amp;quot;local rumble&amp;quot;, but there is a program called [[RoboLeague]] that might suit your needs. It's really a must-have Robocode utility, IMO. I use it with 1.07, I'm not sure how it will work with later versions, but we'll need to get it working with 1.3 because I absolutely need to have RoboLeague! -- [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Voidious|&lt;/ins&gt;Voidious]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** Hmm, I'll have to give RoboLeague a look. Thanks for the tip. I'm thinking of just going ahead and unleashing RabidWombat into the RoboRumble wild and seeing how it does. It's currently using the Rules class, though, which I'd have to address.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;** Hmm, I'll have to give RoboLeague a look. Thanks for the tip. I'm thinking of just going ahead and unleashing RabidWombat into the RoboRumble wild and seeing how it does. It's currently using the Rules class, though, which I'd have to address.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*** You can grab the Rules source from the cvs, ergo here: [http://robocode.cvs.sourceforge.net/*checkout*/robocode/robocode/robocode/Rules.java?revision=1.9 Rules.java]. Then just put it into your package itself, updating the package as needed. --[[Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*** You can grab the Rules source from the cvs, ergo here: [http://robocode.cvs.sourceforge.net/*checkout*/robocode/robocode/robocode/Rules.java?revision=1.9 Rules.java]. Then just put it into your package itself, updating the package as needed. --[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Chase-san|&lt;/ins&gt;Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As far as white whales go, my testing standard has always been [[Freya]] for melee and GrubbmGrb for duels.  Freya 0.31 was one of the first bots I downloaded, and GrubbmGait the first robocoder I conversed with.  I think those tanks will give you a good run but are beatable without being a demigod of Robocode. -- Martin&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As far as white whales go, my testing standard has always been [[Freya]] for melee and GrubbmGrb for duels.  Freya 0.31 was one of the first bots I downloaded, and GrubbmGait the first robocoder I conversed with.  I think those tanks will give you a good run but are beatable without being a demigod of Robocode. -- Martin&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;ACtually the first robot I downloaded was Dustbunny and RaikoMX, and I attempted to beat MX with a chopped version of dustbunnies anti-gravity. Good times.. --[[Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;ACtually the first robot I downloaded was Dustbunny and RaikoMX, and I attempted to beat MX with a chopped version of dustbunnies anti-gravity. Good times.. --[[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;User:Chase-san|&lt;/ins&gt;Chase-san]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Hmm, this actually sounds like an interesting topic for its own page... I'm thinking WorthyOpponents... --RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Hmm, this actually sounds like an interesting topic for its own page... I'm thinking WorthyOpponents... --RobertWalker&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Robobot</name></author>
		
	</entry>
	<entry>
		<id>http://robowiki.net/w/index.php?title=Talk:RabidWombat&amp;diff=1391&amp;oldid=prev</id>
		<title>RobertWalker: Migrated talk</title>
		<link rel="alternate" type="text/html" href="http://robowiki.net/w/index.php?title=Talk:RabidWombat&amp;diff=1391&amp;oldid=prev"/>
		<updated>2007-12-03T17:34:28Z</updated>

		<summary type="html">&lt;p&gt;Migrated talk&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Segment your GF gun on LateralVelocity, and the linear gun will be redundant.  Also segment it on change in enemy's heading, and circular targeting will be redundant (though I'm not sure whether that one would be useful).  -- [[Simonton]]&lt;br /&gt;
&lt;br /&gt;
For a GF-gun to replace CircularTargeting, you need both heading and change of heading. As alternative also LateralVelocity and AdvancingVelocity could be used. I still have to see a GF-gun though with more than 75% hitrate against SpinBot. CircularTargeting does in ''most'' cases make the LinearTargeting obsolete, as the hitrate against f.e. Walls would be the same for both methods.   -- [[GrubbmGait]]&lt;br /&gt;
&lt;br /&gt;
True dat.  -- [[Simonton]]&lt;br /&gt;
&lt;br /&gt;
You'd also need bullet time (and a very fine grained one, at that) for either combination, but the strength of GuessFactorTargeting doesn't lie in getting high hit rates against SpinBot =) -- [[Voidious]]&lt;br /&gt;
&lt;br /&gt;
True dat, too.&lt;br /&gt;
----&lt;br /&gt;
Thanks for the advice, guys. I've been thinking about modifying my guns so that I can use them to provide possible firing angles that the enemy might be using and compare that against the actual hits. Basically, RabidWombat would be dodging its own guns. The problem with that strategy is when it's up against another robot with a virtual gun array; pitting RabidWombat against itself with that setup would have them constantly switching guns and never settling on any one dodging method. Anyone else have experience with making a robot dodge its own guns? -- RobertWalker&lt;br /&gt;
&lt;br /&gt;
In general, I think dodging your own guns will give you what seems like a pretty powerful RandomMovement, but not the same level of true bullet dodging as WaveSurfing with [[WaveSurfing/PrecisePrediction|PrecisePrediction]]. If you're going to the trouble of simulating guns and dodging them, it doesn't seem like much of a step up to just do true WaveSurfing, where you use &amp;lt;nowiki&amp;gt;onHitByBullet&amp;lt;/nowiki&amp;gt; to update the data in the gun you're dodging instead of just simulating how you'd make it learn. But I think you'll find that you learn a lot trying to implement the fresh ideas you come up with yourself, so I say go for it and let us know how it works out ;) -- [[Voidious]]&lt;br /&gt;
&lt;br /&gt;
* I should be more careful: conceptually, it's not much of a step up. Getting WaveSurfing working bug-free can quickly become late nights full of WaveSuffering! Ask anyone... -- [[Voidious]]&lt;br /&gt;
* Also, if you dodge your own gun, persey, enemy mirror movement could make it impossible to hit them! --[[Chase-san]]&lt;br /&gt;
** Hmm, I think I've been effectively dissuaded. Time to devour that WaveSurfing tutorial... -- RobertWalker&lt;br /&gt;
* Dodging HeadOnTargeting and Linear / CircularTargeting alone would have great effect on your performance. It is not a bad idea to try that first just 'to get the hang of it'. After that the WaveSurfing/Tutorial is an excellent next step. (I like small steps) -- [[GrubbmGait]]&lt;br /&gt;
&lt;br /&gt;
See [[Vyper]], [[Thorn]], and [[GrubbmGrb]] for examples of how good a non-surfing dodging system can perform. I hope you find the [[WaveSurfing/Tutorial|WaveSurfing Tutorial]] useful; I'm sure it could be improved, so please do give feedback on it. As for more advanced surfing systems that you might be able to learn from, I'd recommend [[Dookious]] (of course =)), [[CassiusClay]], and [[Chalk]] as great OpenSource surfers with clean code. [[Kev]]'s [[WaveSerpent]], [[Alcatraz]]'s [[Cyanide]], and [[David Alves]]' PhoenixOS are probably good references, too, but I can't vouch for them as much just because I haven't looked at them as much. -- [[Voidious]]&lt;br /&gt;
&lt;br /&gt;
Most of the bigger ones, ergo the ones listed above can be confusing, misleading, badly formatted, or are just confusing. Thought koduos to PhoenixOS and [[Chalk]]. Dookious is just to big in my opinion for someone just starting into it to try and make out. My suggestion however is [[GresSuffurd]] as its structure is simple, and at the same time, it models closely to the tutorial bot, making it easier to understand. --[[Chase-san]]&lt;br /&gt;
&lt;br /&gt;
* Just curious - have you looked since the full rewrite? The movement rewrite is like 1.3x and since... I acknowledge it was a horrible mess before, but I'm pretty happy with it now. Definitely the truth that the best surfers are complex, though. -- [[Voidious]]&lt;br /&gt;
&lt;br /&gt;
PhoenixOS isn't bad. One of these days I might even go through and comment it. =) --[[David Alves]]&lt;br /&gt;
* Yah, I found the PowerNeededToKill rather nice, though it had a clause that wasn't needed. --[[Chase-san]]&lt;br /&gt;
&lt;br /&gt;
Before I go delving into those, I should probably mention that RabidWombat uses AntiGravityMovement. So do any of the above-mentioned bots also use AntiGravityMovement? Has ''anyone'' done OneOnOne bots with AntiGravity [[DodgingBullets|bullet dodging]]? -- [[RobertWalker]]&lt;br /&gt;
&lt;br /&gt;
* My original attempts at bullet dodging and WaveSurfing were in a modified AntiGravity system, but my code got much simpler and I got much better results when I finally ditched the AntiGravity stuff. It's certainly possible to do it, though. -- [[Voidious]]&lt;br /&gt;
&lt;br /&gt;
* The main problem I've had with anti-gravity bullet dodging is that one tends to run directly away from the bullets instead of moving to the side... of course, this means you just get pummeled into a corner until you're dead. No fun. -- [[Ne]]&lt;br /&gt;
&lt;br /&gt;
** True, unless you only use the component of the force that is perpendicular to the enemy, which is what I'm doing. -- RobertWalker&lt;br /&gt;
&lt;br /&gt;
* A quick backlink search on AntiGravityMovement reveals that TheArtOfWar uses AntiGravityMovement in both OneOnOne and [[Melee]], so maybe I should look closer there. I ''could'' make completely different movement systems for OneOnOne versus [[Melee]], but I'd rather not because 1) it's a lot more work, of course, and 2) my current AntiGravityMovement is actually working pretty well in OneOnOne. Granted it's not beating [[Dookious]] or CassiusClay or anything, but then I wasn't expecting it to because I'm pretty new to Robocode. However, with only very basic bullet dodging (running away from HeadOnTargeting), it's regularly beating some bots that I thought would waste it, such as SpareParts and MakoHT, which appears the land RabidWombat in the middle of the RoboRumble OneOnOne pack. Not bad for a newbie bot, I think. Since I'm not really expecting to topple any of the Robocode Goliaths out there, I'm actually pretty pleased with this.&lt;br /&gt;
&lt;br /&gt;
** (Edit Conflict) A lot of times, what you want to do with Robocode comes down to how much of your life you're willing to sacrifice for programming Java tanks. =) Sounds like AntiGrav 1-on-1 movement works well for what you want to do right now. TheArtOfWar is an [[Ancients|ancient]] tank, once one of the absolute greatest and still quite capable in melee. At the higher levels, you definitely need specialized 1v1 or Melee movement to stay competitive, of course. -- [[Voidious]]&lt;br /&gt;
&lt;br /&gt;
*** I have a wife and baby, so I think you can probably guess how much time I have for Java tank programming. :) -- RobertWalker&lt;br /&gt;
----&lt;br /&gt;
Speaking of the rumble, does the latest Robocode client allow you to run a &amp;quot;local rumble&amp;quot; based on just the bots that you have? I haven't been brave enough to download the newest version. -- RobertWalker&lt;br /&gt;
&lt;br /&gt;
* I don't know how to setup a &amp;quot;local rumble&amp;quot;, but there is a program called [[RoboLeague]] that might suit your needs. It's really a must-have Robocode utility, IMO. I use it with 1.07, I'm not sure how it will work with later versions, but we'll need to get it working with 1.3 because I absolutely need to have RoboLeague! -- [[Voidious]]&lt;br /&gt;
&lt;br /&gt;
** Hmm, I'll have to give RoboLeague a look. Thanks for the tip. I'm thinking of just going ahead and unleashing RabidWombat into the RoboRumble wild and seeing how it does. It's currently using the Rules class, though, which I'd have to address.&lt;br /&gt;
*** You can grab the Rules source from the cvs, ergo here: [http://robocode.cvs.sourceforge.net/*checkout*/robocode/robocode/robocode/Rules.java?revision=1.9 Rules.java]. Then just put it into your package itself, updating the package as needed. --[[Chase-san]]&lt;br /&gt;
----&lt;br /&gt;
As far as white whales go, my testing standard has always been [[Freya]] for melee and GrubbmGrb for duels.  Freya 0.31 was one of the first bots I downloaded, and GrubbmGait the first robocoder I conversed with.  I think those tanks will give you a good run but are beatable without being a demigod of Robocode. -- Martin&lt;br /&gt;
&lt;br /&gt;
ACtually the first robot I downloaded was Dustbunny and RaikoMX, and I attempted to beat MX with a chopped version of dustbunnies anti-gravity. Good times.. --[[Chase-san]]&lt;br /&gt;
&lt;br /&gt;
Hmm, this actually sounds like an interesting topic for its own page... I'm thinking WorthyOpponents... --RobertWalker&lt;/div&gt;</summary>
		<author><name>RobertWalker</name></author>
		
	</entry>
</feed>