Difference between revisions of "Neuromancer"

From Robowiki
Jump to navigation Jump to search
m (updates)
m (Update version and link)
 
(12 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{Infobox Robot
 
{{Infobox Robot
| bgcolour        =
 
 
| name            = Neuromancer
 
| name            = Neuromancer
| altimage        =
 
| image          =
 
| imagesize      =
 
| caption        =
 
 
| author          = [[User:Skilgannon]]
 
| author          = [[User:Skilgannon]]
 
| extends        = [[AdvancedRobot]]
 
| extends        = [[AdvancedRobot]]
| targeting      = Shadow-style melee gun, logging into circular VCS bins
+
| targeting      = Shadow-style melee gun, PIF logging into circular VCS bins
| movement        = Melee [[Wave Surfing/Go To]] with [[Dynamic Clustering]]
+
| movement        = Melee [[Wave Surfing/Go To]] with [[Dynamic Clustering]], logged into circular VCS bins
| released        =
+
| best_rating    = 1st in MeleeRumble
| best_rating    = 4th in MeleeRumble
+
| current_version = 7.1
| rating          =
+
| download_link  = http://robocode-archive.strangeautomata.com/robots/jk.melee.Neuromancer_7.1.jar
| current_version =  
+
| isOpenSource    = yes
| license        =
+
| isMelee        = yes
| download_link  = http://minifly.rchomepage.com/robocode/
+
| isOneOnOne      = yes
| source_link    =  
 
 
}}
 
}}
  
 
==== Most Recent Updates ====
 
==== Most Recent Updates ====
Check out [[/Version_History]]
+
Check out [[/Version History]]
  
 
==== What's special about it? ====
 
==== What's special about it? ====
Line 26: Line 20:
  
 
==== How competitive is it? ====
 
==== How competitive is it? ====
Version 0.6 is at 4th overall - just in front of [[Shadow]]
+
1st in Melee, so it currently sets the standard for Melee state of the art.
  
 
==== How does it [[Dodging Bullets|dodge bullets]]? ====
 
==== How does it [[Dodging Bullets|dodge bullets]]? ====
Line 32: Line 26:
  
 
====  What does it save between rounds and matches? ====
 
====  What does it save between rounds and matches? ====
Between rounds it saves all the surfing data and targeting, between matches nothing
+
Between rounds it saves all the surfing and targeting data, between matches nothing
  
 
==== Where did you get the name? ====
 
==== Where did you get the name? ====
Neuromancer is the name of an AI in a book titled, fittingly, "Neuromancer"
+
Neuromancer is the name of an AI in a book titled, fittingly, "Neuromancer". I also think it sounds awesome, and it sort-of follows the nounverber pattern I've used in a few of my other bots (Waylander, Stormrider)
  
 
==== Can I use your code? ====
 
==== Can I use your code? ====
Line 46: Line 40:
 
==== What's next for your robot? ====
 
==== What's next for your robot? ====
 
* Using waves with an uncertainty width, rather than just a single-tick-wide wave.
 
* Using waves with an uncertainty width, rather than just a single-tick-wide wave.
* Tuning and adding/removing attributes in the gun and movement.
+
* Branching the movement at each wave crossing, to allow multiple waves to be correctly surfed, rather than the current [[CassiusClay]] style multi-wave surfing.
* Double-checking the gun physics - my spidey-sense is tingling.
+
* Tuning and adding/removing attributes in the gun and movement, and layering different views for a more diverse stats system
 +
* Try to get radar scans to line up with both enemy gunheat-0 and who I am targeting when my gunheat is 0
 +
* Use post-fire-data to figure out more details about where and when (and IF) enemies fired
 +
* Slowing down when turning hard - new debugging graphics make it obvious there is potential here
 +
* Improving 1v1 PWin
 +
* Improving early-round melee movement when there are lots of enemies
 +
 
 +
This list only seems to get longer the more things I do...
  
 
==== Does it have any [[WhiteWhale]]s? ====
 
==== Does it have any [[WhiteWhale]]s? ====
Those 5 top bots seem to steal my score against the weaker ones =) I'll have to do something about that. There are also a few problem bots like DiamondStealer and Dreadnaught which will require a bit of testing. I'm guessing some bullet power management would do wonders.
+
[[Diamond]] really stomps me in the endgame, so some sort of flattening and adaptive targeting may be helpful. Or just taking out Diamond earlier in the game before I have to face it 1v1...
  
 
==== What other robot(s) is it based on? ====
 
==== What other robot(s) is it based on? ====
Line 56: Line 57:
  
 
It takes the targeting idea of 'everybody at once' from [[Shadow]].
 
It takes the targeting idea of 'everybody at once' from [[Shadow]].
 
It also uses [[Rednaxela]]'s Kd-Tree.
 
  
 
[[Category:Bots|Neuromancer]]
 
[[Category:Bots|Neuromancer]]

Latest revision as of 11:17, 30 November 2017

Neuromancer
Author(s) User:Skilgannon
Extends AdvancedRobot
Targeting Shadow-style melee gun, PIF logging into circular VCS bins
Movement Melee Wave Surfing/Go To with Dynamic Clustering, logged into circular VCS bins
Best Rating 1st in MeleeRumble
Current Version 7.1
Download

Most Recent Updates

Check out /Version History

What's special about it?

It does a nice job of surfing in a melee setting, which scales smoothly back to 1v1 surfing.

How competitive is it?

1st in Melee, so it currently sets the standard for Melee state of the art.

How does it dodge bullets?

By keeping tabs on which angles (actually Guess Factors) the enemy is most likely to shoot at in different circumstances, and avoiding them

What does it save between rounds and matches?

Between rounds it saves all the surfing and targeting data, between matches nothing

Where did you get the name?

Neuromancer is the name of an AI in a book titled, fittingly, "Neuromancer". I also think it sounds awesome, and it sort-of follows the nounverber pattern I've used in a few of my other bots (Waylander, Stormrider)

Can I use your code?

Sure, but under the following terms:

  • Your bot MUST be OpenSource.
  • You give credit in your code, and in any documentation of your bot.
  • Pleeaase don't just take my bot, tweak it and release it under another name. Rather tell me about the changes, and I'll give you credit. =)
  • Use of this code without my personal permission in ANY competition WHATSOEVER is strictly prohibited (an exception being the Roborumble)

What's next for your robot?

  • Using waves with an uncertainty width, rather than just a single-tick-wide wave.
  • Branching the movement at each wave crossing, to allow multiple waves to be correctly surfed, rather than the current CassiusClay style multi-wave surfing.
  • Tuning and adding/removing attributes in the gun and movement, and layering different views for a more diverse stats system
  • Try to get radar scans to line up with both enemy gunheat-0 and who I am targeting when my gunheat is 0
  • Use post-fire-data to figure out more details about where and when (and IF) enemies fired
  • Slowing down when turning hard - new debugging graphics make it obvious there is potential here
  • Improving 1v1 PWin
  • Improving early-round melee movement when there are lots of enemies

This list only seems to get longer the more things I do...

Does it have any WhiteWhales?

Diamond really stomps me in the endgame, so some sort of flattening and adaptive targeting may be helpful. Or just taking out Diamond earlier in the game before I have to face it 1v1...

What other robot(s) is it based on?

Some of the goto stuff is based on DrussGT. I've perused Shiz and HawkOnFire but none of the code was directly used, just ideas from what I learned.

It takes the targeting idea of 'everybody at once' from Shadow.