Gary L. Simmons  rev 09/05/03  http://webwonks.org/Marathon/Anvil/Quartz/theta.html
Home  Marathon  Joke OT Weak  Web Building  Resumé  Lynx  Hobbies  Extra  Site Map Links Page Extra Go to next department


The Battle Cat's Litterbox


Anvil Tips | Quartz'  Quarry | Hit Points | Theta | Adding Textures


All About Theta


Actually, there isn't really a hell of a lot to say on this subject. Basically, theta error isn't a random spread like most people think, as far as I can tell, the number you type in is actually the index number of the pattern you want to use. What I've done below is take snapshots of those patterns (up to #10) so other people can get a good idea of what's going on.

Marathon's hashing functions seem to be very good, so the latter of these pictures are actually composites created from several screen captures. (What this means for those of you who don't speak programmer is that the pattern isn't all that obvious, and that any given 'shot slot' may take quite a while to be chosen. There's a small blurb about hash tables and collisions at the bottom of this page)


It's interesting to note that even-numbered patterns never create a shot that goes straight ahead.

1
Theta error one
2
Theta error  two
3
Theta error  3
4
Theta error four
5
Theta error five
6
Theta error six
7
Theta error seven
8
Theta error eight
9
Theta error nine
10
Theta error 10


This last picture |center| demonstrates a way around these patterns. For this, I turned on horizontal and vertical wander in the shot's properties, and set the theta to 0. (The spread that results from turning the 'wanders' on varies with the speed of the projectile. For this example, the fusion bolts were traveling at '1024')


2
wander @ 1024
3
two
wander
three


... And that's about it. I dunno if this helps anybody, but I found it interesting.

If for some reason you want to contact me (to yell at me about wasting my time or whatever), my email addy is quartz@sneakertech.com.



Without going into too much detail, a 'hash table' is a data structure consisting of lots of slots. When data is deposited into this table, the choice of a slot should be evenly random- each slot has an equal chance at being called, regardless of whether it's been called previously or not.

The "von Mises Birthday Paradox" is an example illustrating how collisions (a slot gets called/chosen more than once) occur a lot more frequently then you might expect- it states that if a room has 23 people in it, then there's a 50% probability that at least two of them have the same birthday, even though the 'table' is only 6.5% full (23 out of a possible 365).

Anvil Tips | Quartz'  Quarry | Hit Points | Theta | Adding Textures
Top of page

Back to the Litterbox