Source: Closed
Created: 01-05-2007 3:07am
Version | Released | Code Size | Class Size | Class Files | Link |
---|---|---|---|---|---|
Demo1 | 02-02-2007 | 3740 | 33535 | 19 | [Jar] |
Demo2 | 02-04-2007 | 4141 | 37100 | 20 | [Jar] |
Demo3 | 02-06-2007 | 4406 | 39015 | 20 | [Jar] |
Boy am I gonna learn humility if this bot turns out to do really badly in the rumble. I realize its nothing new, many bots have done what it will be doing. But its hard to be original in a place where originality normally means defeat. --Chase-san
"Standing on the shoulders of giants" has its merit :). -- Simonton
When I was putting more time into Robocode, I put plenty of time into wacky ideas and experiments, many of which were never published (that being said, some of that stuff should be published in one form or another some day, if for nothing else but the furthering of others' research). However, some good (or at least interesting) stuff did come out of it. My distinct FloodMovement is one of those things. It's primitive by today's standards, but it brought issues forward about movement that only a few people had thought of (and were keeping to themselves) at the time. -- Kawigi
I didn't say I didn't try to be original, I just don't use it in my bots. Most of it is rather, meh. --Chase-san
The results from my wavesurfing are less then desirable. I can get about 92 vs WSCA but gets about 16 vs WSCB. I'm not overly happy about this of course. It kinda bugs me but I plan to tear down most of the actually surfing system I have and rebuild them. WaveSuffering was well named! --Chase-san
I really don't mean to nitpick here, so I'm sorry if it comes off that way, but if I may humbly offer a suggestion... What's the goal with rebuilding from scratch each time? Of course, there are situations where rebuilding from scratch is helpful. But the bugs that cause most problems in WaveSurfing are mostly of the "nitty gritty detail" variety, not issues with the overall code structure. Rarely do we write code that doesn't need some debugging. I tend to think you would get desirable WaveSurfingChallenge scores faster if you just ironed out the bugs instead of rebuilding. It's up to you, though, of course. =) Best of luck in any case. -- Voidious
Heh, I did do that, thats how I got that score(its the highest I got, 92 vs A). I am not rebuilding all of it. Its a pain none the less. I want to make something that will work. The confusing thing is that pretty much all the bots i'm studing do things just a little differently when they create the way. Mostly its the round they get thier data from for each part of the enemy wave they send out. --Chase-san
When your dive-in protection and distancing is ok, you should be able to get 98 vs botA and around 60 vs botB and botC. Mind that this is with unsegmented surfing. Segmenting before you can get those scores, just obfuscates the bugs. Make use of the graphics to show your predictions with should not change while evaluating the same wave. Watch the behaviour near walls, botB and botC realy try to nail you there. Try to do one thing at the time, test it and if acceptable, move on to the next issue. I do it this way, mainly because I am used to develop this way and I only have time to do small steps, but it brought me close to the 2000-barrier. Success with your bug-hunt! -- GrubbmGait
I have come up with a very inspired (and hopefully original) structure for Genesis. It consists of a abstract Skeleton that will keep track of statistics, paint systems and other debugging systems, A Common Interface that holds all the static strategy and robocode system cosntants, it even holds genesis' colors. This way all I have to do is change a value or two in the interface and the entire bot can be easily manipulated, and also since all the statistics are in the Skeleton, I can leave my robot open to actual meaningful code! Basically I have made a very nice tuning bed for Genesis. This however requires a rewrite(already a good deal there). I might add a secondary skeleton(which I would call the muscle) that would keep track of scans, RobotStates?, logs and the like. I will empty out the only prehistory to make room for this new one. --Chase-san
Sounds good! I like the skeleton-muscle naming :). -- Simonton
Okay, I plan to impliment (here we go again, right?) a k-type clustering gun. I plan to use very special methods to speed up its execution to an acceptable level (no not a thread either). --Chase-san
Hrm, I have a complex structure, that should allow me easily to change and modify Genesis. However dispite this, I still haven't moved very far with Genesis's development. --Chase-san
Mind you, Genesis is going to be released, it will just take a little more then the 7 days for me to finish. --Chase-san
Ha! That's funny. But what do you mean it's not going to be released? -- Simonton
I never said it wouldn't be, I had unrealizedantly implied that it might not be, so I posted my 7 day joke. ;) --Chase-san
Oh, sorry, I misread that. -- Simonton
Now, for some real data on Genesis, not just possiblities. As you see in the melee rumble Genesis is using a rather bad implimentation of Minimum Risk Movement (which I plan to spruce up), which uses three shells, the further one being weighted less, this is to locate possible escape routes without losing the bonus gained from the nearest one (which is about 50 distance from the bot).Basically furthest one is for escape, center one for dodging one, and nearest one for escaping the most dangerous situations.
As for the one on one movement. It uses WaveSerpent's method of surfing, it also uses a non-deformative method of flattening, putting that data into a seperate bin, then combines them during the surfing, dodging them both (however, the flat gf's are dynamically weighted, based on enemy hit rate).
-- Chase-san
Okay, after working at it for a few hours I was able to get Genesis' melee movement to accept PrecisePrediction as its primary point generating tool (instead of just a project). After all the modifications I made it seems to work fairly quick. It does okay vs head on targeting(95% currently), but thats about it. --Chase-san
I have a thought that my precise prediction might be off still, which is why its doing so badly. --Chase-san
Hey man, just wanted to let you know that Genesis gets 0 score against Dookious every single time, so I've had to hack my client not to download it for now, or else it just keeps re-running it... Something you may want to look into. (It's definitely not crashing.) -- Voidious
Note the absolutely no OneOnOne support. --Chase-san
Its surfing was a horriblily failed Experiment, using melee style minimum risk movement and wavesurfing in conjunction. It moves interesting, I think its gun is the sux part though, perhaps if I drop Prototypes gun ontop of its base... hrrrrm, perhaps fix a few bugs. Nah, not just yet. --Chase-san