Geomancy/Version History

From Robowiki
< Geomancy
Revision as of 06:11, 16 September 2009 by Synapse (talk | contribs) (Added download links)
Jump to navigation Jump to search

Pages: Main page · Code · Version History · Discussion

Versions

11 - G1916.2 - Removed an axis, bugfixes, tweaks
Fixed another disabled opponents bug.
Fixed a skipping turns bug revealed by proper onDeath and onWin handling.
Decreased non-impacting wave weight when flattening from 1.0 to 0.5.
Tweaked flattener activation and deactivation thresholds.
Decreased spread on bin smoothing.
Removed Last Stopped axis from gun and movement.
Minor tweaks.
10 - G1905.9 - Nothing major, should fix anomalous scores
Added full-match stat tracking, including proper onDeath and onWin handling.
Added dynamic non-firing wave weighting.
Linked dynamic distance and flattener with enemy hitrate.
Linked dynamic non-firing wave weight with my hitrate.
Added end-of-round garbage collection, which seems to prevent my bot from skipping turns mid-fight.
Changed bin smoothing function to a not use Math.pow.
9 - G1905.3 - Bad idea recovery mode
Disabled flattener until I'm losing badly.
Re-added dynamic distancing.
Associated bullet power with normal distance such that I still fire at normal power if my preferred distance increases.
Internal changes making power and distance tweaks simpler.
Added graph showing danger of future positions. Red marks the current position.
8 - G1867.3 - Flattening, distancing, and memory changes
Decreased number of buckets on the gun from 64 to 32.
Replaced most segmentation doubles with floats.
Removed dynamic distancing.
Added dynamic flattening, with a default weight for non-impacting waves of 0.1 (vs 1 for a bullet).
This hurt my ranking against simple targeters badly.
Added color changes to waves in debug graphics to reflect their bullet's condition (hit target, hit bullet). This makes watching battles with debug graphics on more fun.
7 - G1927.7 - Major tweaks
Switched to sane rolling depths for surfing.
Made surfing and gun rolling depths variable based on degree of segmentation.
Increased minimum distance for dynamic distancing.
Fixed equation for orthogonality. (Thanks Voidious)
Decreased velocity weighting to 12.5%.
6 - G1941.7 - Tweaks and adjustments
Decreased surfing rolling depth a lot - from 50 to 15. Should be much more adaptable now.
Added dynamic distancing.
Added axis weighting, permitting a degree of influence on which segments are trusted more, regardless of how their data looks.
Weighted velocity 25% higher than other axes. This should produce solid gains against simple targeters.
5 - G1940.9 - Added Orthogonality and BulletFlightTime axes
Added two new axes.
Updated debug graphics.
4a - G1941.1 - Not ProGuarded
Same as 4 but no after-compile optimizations.
4 - ? - Lots of bugfixes
Resolved some silliness where multi-wave surfing was falsely seeing a safe spot.
Improved statistic calculations.
Updated debug graphics slightly.
Narrowly avoided adding a false optimization (thanks Rsim!).
Corrected firing wave origin point.
Adjusted aim location to fire through the center of wave bins rather than at the first corner.
Optimized by ProGuard - likely why it fails on many clients.
3 - G1936 - removed velocity snapping, refined bot width calculation
Rolled back changes from version 2 -- while the velocity manipulation is quite effective against some bots, notably Geomancy 1, it hurts my overall ranking badly.
Added more precise bot width calculation, including partial bin addition for bins at the edges of the bot width.
2 - NA - Velocity snapping added
2a - G1898.9 - bugfix release
In the two turns before enemy gunheat reaches zero, I limit my velocity to 0, 4, or 8 (whichever's closest) so that the enemy's segmentation has lowered resolution.
My first upload of version 2 used AdvancedRobot.setDebugVariable, which is not present in Roborumble-sanctioned versions of Robocode. As a result a few clients who got the buggy version are seeing crashes 100% of the time. 2a has the function removed.
1 - G1937.0, 59th - Release
Cleaned up Watermelon, removed old code it didn't need, fixed some minor issues, tweaked some numbers, and gave it a shiny new name.