Difference between revisions of "Chase Bullets"

From Robowiki
Jump to navigation Jump to search
(first start to get some things together - unfinished)
m (nav box)
 
(2 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
| page1      = Implementations
 
| page1      = Implementations
 
}}
 
}}
 
 
[[File:Blue_Shift.JPG|thumb|200px|right|Example of waves that reach enemy at the same time]]
 
[[File:Blue_Shift.JPG|thumb|200px|right|Example of waves that reach enemy at the same time]]
 
 
== How it Works ==
 
== How it Works ==
  
Line 14: Line 12:
 
* Chase Bullets
 
* Chase Bullets
 
* Bullet Doubling - {{OldWiki|BulletDoubling}} (Old Wiki)
 
* Bullet Doubling - {{OldWiki|BulletDoubling}} (Old Wiki)
* Doppler Effect - [[wikipedia:Doppler effect| Doppler Effect]
+
* Doppler Effect -[[wikipedia:Doppler effect| Doppler Effect]]
  
 
== How can you use it ==
 
== How can you use it ==
Line 30: Line 28:
  
 
<!-- i will do this after the reorganizing  is finished , this contains the math behind it-->
 
<!-- i will do this after the reorganizing  is finished , this contains the math behind it-->
-- TODO --
+
One of the basic math behind chase bullets is:
 +
:<math>B_{1}  =\text{ first bullet power }</math>
 +
:<math>B_{2} =\text{ second bullet power }</math>
 +
:<math>D_{1} =\text{  distance to target when shooting the first bullet }</math>
 +
:<math>D_{2} =\text{distance to target when shooting the second bullet }</math>
 +
:<math>C_{1} = \text{the gun cooling rate after shooting the first bullet }</math>
 +
:<math>S_{1} = \text{ bullet speed for the first bullet}</math>
 +
 
 +
If you put all this together in a formula, you can calculate the second  bullet power with:
 +
 
 +
:<math> B_{2} = {20 - ( {  D_{2} \over ({D_{1} \over  S_{1}}-C_{1}) }  ) \over 3}</math>
 +
 
 +
where:
 +
 
 +
:<math>C_{1} = {(1+ {B_{1} \over 5}) \over 0.1}</math> with a given default cooling rate of 0.1
 +
:<syntaxhighlight>double c1 = Rules.getGunHeat(b1)/getGunCoolingRate()</syntaxhighlight>
 +
 
 +
and:
 +
 
 +
:<math> S_{1} = 20 - 3 * B_{1}</math>
 +
:<syntaxhighlight>double s1 = Rules.getBulletSpeed(b1)</syntaxhighlight>
 +
 
  
 
== Examples ==
 
== Examples ==
Line 41: Line 60:
 
* [[CigaretBH]]
 
* [[CigaretBH]]
  
 +
 +
{{Targeting Navbox}}
 
[[Category:Targeting]]
 
[[Category:Targeting]]

Latest revision as of 18:20, 17 June 2012

Sub-pages:
Implementations
Example of waves that reach enemy at the same time

How it Works

ChaseBullets is a system by which multiple bullets are fired so that they will reach the distance of the enemy robot simultaneously, thereby hopefully increasing the chance to hit, adding to the damage done, or confusing the enemy's movement.

Common Descriptions

How can you use it

  • confuse advanced enemy movement systems
    • Since many robots' movements respond to detecting enemy fire, the assumption is that they will be dodging the high power bullet and the low power bullet will have a higher chance of hitting.
  • collect more damage points
  • shooting at multiple points near the guessed target position to increase the hit rate
  • increase your effective bullet shadow
  • just for the fun of it

Concept

One of the basic math behind chase bullets is:

<math>B_{1} =\text{ first bullet power }</math>
<math>B_{2} =\text{ second bullet power }</math>
<math>D_{1} =\text{ distance to target when shooting the first bullet }</math>
<math>D_{2} =\text{distance to target when shooting the second bullet }</math>
<math>C_{1} = \text{the gun cooling rate after shooting the first bullet }</math>
<math>S_{1} = \text{ bullet speed for the first bullet}</math>

If you put all this together in a formula, you can calculate the second bullet power with:

<math> B_{2} = {20 - ( { D_{2} \over ({D_{1} \over S_{1}}-C_{1}) } ) \over 3}</math>

where:

<math>C_{1} = {(1+ {B_{1} \over 5}) \over 0.1}</math> with a given default cooling rate of 0.1
double c1 = Rules.getGunHeat(b1)/getGunCoolingRate()

and:

<math> S_{1} = 20 - 3 * B_{1}</math>
double s1 = Rules.getBulletSpeed(b1)


Examples

There are several implementations of chase bullets available on the Implementations sub-page.

See also