Archived talk:Shadow 20040725

From Robowiki
Jump to navigation Jump to search
       Archive        This is an archive of past discussions. Do not edit the contents of this page. If you wish to start a new discussion or revive an old one, please do so on the current talk page.     
Shadow Sub-pages:
ShadowVersion History - Archived Talk 20040725 - Archived Talk 20090724 - Melee Gun

I used to like testing against Shadow 1.22 because I could always beat it. No more. Very impressive bot, I'm guessing the limitations of Tron's movement were getting frustrating? Anyways, perhaps you could be so kind to describe your "forward pattern matcher," I'm very curious how it works. -- Alcatraz

You can still test against version 1.22, I do :). Yep, it was getting very hard to squeeze more performance out of Tron's 1vs1 movement, so I decided to make a simpler movement for tests. It almost instantly beat Tron 60/40, and I had Shadow lying around begging for an update... I promise I'll describe the targeting soon (as in today). Update: Done -- ABC

I had just packaged an impulse release of Jekyl up too. Very frustrating. Care to exchange emails of our new bots to do some 1-v-1 testing of future releases? -- jim

Sure, but only if you promise not to package pre-learned data until after I upload it to the repository... ;) Btw, v2.02 just barely wins against the current version of MrHyde (1000 rounds).
abc AT aclsi DOT pt -- ABC

I'm not too happy about the 2.11 melee result's you're getting. I guess I'll be going to the melee MovementLaboratory soon -- Paul Evans

You probably should :). The current development version won the 5k round test I did last night, but by a very small margin. It still lacks some details like ramming evasion and trap avoidance. I also discovered a small (but probably significant) bug in the target selection code introduced in Tron's V2 rewrite. And of course I still have some major parameter optimising to do... I'll be away this weekend (snowboarding season started :)), I'll release it sometime next week. -- ABC

Update: just a small teaser to get you working... ;) http://robocode.aclsi.pt/r1000_agressive1.gif (notice how I managed to beat DT in every category in this fight, maybe I should do a "PEZ" and frame it... :P)

Of course you should! Great work. Don't destroy it with too many fixes. =) Now, this calls for a Melee competition. -- PEZ

Yes! Awesome work ABC. You've always been the king of melee since the early days of Robocode; when you do release Shadow, you should ask Amarok to run the EternalRumble to regain your crown :D -- Vuen

Today I made a couple of strange but interesting tests. First I ran a battle with one Shadow 2.15 and nine SandboxDTs 2.41, Shadow won with a very big score margin. Then I ran a battle with nine Shadows and one SandboxDT, DT came dead last! :) I also found out that nine DTs run very very slow and that nine Shadows consume too much memory, after around 150 rounds Robocode crashed with an outOfMemory error (512MB). :( -- ABC

Cool. Maybe this can get Paul to focus away from 1v1 a while. =) -- PEZ

I hope so, I'm having lots of fun with melee/teams. ;) Also, there is a bug that makes DT crash sometimes when the final duel of a melee battle starts, something to do with the onHitByBullet event. -- ABC

A very solid solid 3rd! Congrats!! It seems that u found too a solution to deal with those HeadOnTrageting bots, right? It may be coincidence, didn't look very well i am just waking up, but it seems that u have now some new problem bot very similar to Musashi, like DogManSPE, TimDog, DevilFISH, HumblePieLite and others... -- Axe

About the HumblePieLite, RayVermette says : "It's movement is very simple: mirror the enemy's movement through the center of the battlefield". I already made some testing trying to tune my movement against it, but when i came up with a good tunning (beating it by +75%), unfortunately i became very vulnerable against PM guns (FunkyChicken beating me). The reason seems to be very obvious: If he mirror my moving, and my gun is a PM gun, a good tunning against it was one that made it easy hit to PM.
The good thing is that it seems that my actual moving is good against PM guns. The bad thing is that a good tunning against HumblePieLite, probably would decrease my rating against a lot of other bots.
q·þ�n't take off of my mind that the mirror maybe a weakness. Something says to me that the solution is probably quite simple... -- Axe

Yep, Shadow now dodges HeadOnTargeting perfectly, and should also dodge any other "fixed gessFactor" gun just as well. I think I managed to do it right, it also performs better against everybody else. Thanks for inspiring me to do it with your experiment. It was much easier than I expected (with a little luck involved, of course ;)), I compute the average GuessFactor of last N bullets that hit me, and adjust the movement acordingly. I can live with the mirror movement weakness (it currently beats HumblePieLite by 58%, afterall), a simple solution would be an anti-mirror gun. I'd rather spend my time improving the movement, the distance to Lacrimas/DT suddenly became humanly possible again... :)-- ABC

Very elegant solution, and KISS also! No doubts that is more generic than the one i found. U are probably right about spending too much time with HumblePieLite in your case, in mine i have a 40%, but Shadow is also in a completely different level than Musashi. I was looking the Shadow's details, and is impressive. You have only 4 bots with less that 50%:
|axeBots.Musashi_2.15 | 49.7 | <== I know that is a draw, but let me be happy for a while:) |cx.Lacrimas_1.27 | 44.4 | |pe.SandboxDT_2.41 | 49.2 | |pe.SandboxLump_1.52 | 47.7 | I have a big problem with SandBoxLump (and u a little one), i have analized it, but i still can't figure out what is the problem with it. If u know, please let me know. Congrats again! -- Axe

Thanks, I believe the only bots that beat Shadow 2.21 in the long run (1000 rounds) are DT and Lacrimas, I'm happy :). The problem with SandboxLump is that it is a very strong bot, I think you will have a hard time finding an "easy" solution... ;) Your big problem with it is probably that it likes to fight at close range, and has a very powerfull gun/movement at those distances. Finding a flat movement that can scale well to close range fights is very hard. -- ABC

I agree. Never mind having Lump as a ProblemBot. -- PEZ

Indeed, having Paul's bots as ProblemBots is not a problem, is a fact of life. What calls me attention is the fact that SandboxLump haves a problem index greater than DT. A major problem of Musashi is certainly the close-combat situations, this is probably what Lump takes advantadge of. -- Axe


Ok, I'm now convinced that I'm on to something... something potentially big. My latest crazy idea is turning out even better than I expected, I'm even considering obfuscation! :) Watch this space for the next version of Shadow. -- ABC

Umm.. "eeep!"? I'm guessing this is a new movement? -- Kuuran

I did it!!!

Words cannot express what I'm feeling right now :):):):):):):), maybe a couple of pictures: http://robocode.aclsi.pt/DTKill.gif http://robocode.aclsi.pt/Lacrimas.gif

Tell me it isn't beautiful! :) And more, the next 1000 rounds look the same, regardless of the data saving "advantage"... Can you imagine the adrenaline overdose? ;)

-- ABC

Wow.. 53.9 percent against DT and 56.4 against Lacrimas. Nice. -- Kuuran

Nice?!? ;) That is over 1950 ranking points in the rumble! And yes, it's a new movement. :) -- ABC

Are you going to let us in on the secret? -- Tango

Holy... no surprise you're considering obfuscation. :-) Definitely keep this one to yourself. I want the chance to figure it out on my own. ;-) Looking forward to the next version of Shadow! - Jamougha

Yep, I think I'll keep this one for myself, at least for a while. I expect to release it this weekend, I just need to get used to this obfuscation stuff. Btw, here is my current score against your excellent Raiko: http://robocode.aclsi.pt/Shadow_2.31vsRaiko_0.22.gif Can you spot the diferences from Shadow_2.21's result? :) -- ABC

Thousand rounds are all well and good but I would like to know how it is performing over 35 rounds. I am amazed that you continue to do so well without saving data but how do you perform in the short run against a bot that has 35 rounds of saved data on you? What about 70 rounds? If you can learn quick enough to overcome the top dogs and keep those kind of scores there may be a new Sherriff in town. I can not wait to see it, even if all it will do is serve as a reminder that I will never catch you guys at the top. =^> -- jim


That is a good question, only time will tell. Until now I have found that the 35 rounds rumble works amazingly well at predicting a 1000 rounds battle outcome. At least with my bots, I never see a big discrepancy between my tests and scores in the RR@H. This new movement, on the other hand, is quite diferent from what I've done so far, so things could work diferently... -- ABC

  • Looks like I have my answer. Congrats, even if it is depressing to now be that much farther away from the top. -- jim

This is exciting indeed. I so wonder what it is you have figured out. That's incredible scores against the current top bots! Congratulations to you and to the Robocode evolution! -- PEZ

Here it goes, I hope you guys got your clients running, with all the excitement I forgot to leave my work computer on for the weekend... :\ -- ABC

1st place with 1952(!) points after 70 battles, lost to DT in the first encounter, things are looking good nevertheless. The suspense is killing me, though. :) -- ABC

Man! I'm so bloody impressed! My RR@H client can't help since it's all Shadow battles, but it's slowly getting its share of battles. DT is finally dethroned, now the question is by how much, You are the best now ABC. Lets see how you cope with the chase, =) -- PEZ

Bring it on! Right now I feel like I've "decoded the matrix", I can dodge bullets! (I still _have_ to, though ;)). Lets see how Paul reacts to the biggest lead anybody ever had against him... -- ABC

"Navegar é preciso, viver não é preciso...". Congratulações as mais sinceras em alto e bom português! -- Axe

Muitíssimo obrigado. Pelas congratulações e pela inspiração, o sucesso inesperado do Musashi teve uma quota parte de responsabilidade na minha vontade súbita de explorar novos caminhos. Espero continuar a ver grandes avanços vindos desse lado do oceano. A idea de "vectorial pattern matching" é sem dúvida genial, muitas vezes a visualizei na minha cabeça mas nunca cheguei a conseguir concretizá-la. Talvez o meu sucesso até possa contribuir para a sua valorização, já que neste momento os meus problem-bots são precisamente os que utilizam métodos similares... -- ABC

Congrats ABC! You've been so successful at this game for so long and now you've passed DT ! -- Alcatraz

Thanks! :)

I think that getting DT's crown is meanfull by itself ,somekind of ligth-speed barrier, unreachable... No more. "The king is dead. Long live the king!" -- Axe

Congrats! This is big! I wonder if this movement idea you stumbled upon is the same one that exists in tormented scribbles in my Robocode notebook, heh. I'd better implement that thing eventually and find out. Now I guess we all have to set our sights on YOU! -- nano

O~~Cool,after my room was burned in a fire(fortunately my PC was not broken.),i see a new crown,Congrats ABC~;] -- iiley

Congratulations!!! :-) And it's not even a slight win... 35.16 rating points above DT. I guess the ball in is Paul's court now, can he make an impressive comeback? I'm inclined to say no, at least in the short run... Well done! :-) -- Tango

He could of course copy the movement idea. It's easy enough to figure out what's going on and if someone on earth knows how to implement it besides ABC it's Paul. -- PEZ

Contratulations ABC !!! First Shadow took the melee crown , that was cool. After that ShadowTeam beat DTTeam ( well i have to say that it is DTTeam 1.71) , that was impressive.Finally Shadow also slaughters everything , that unbelievable.Lets see whats next Shadow 2.41 or SandboxFKV (FKV - final killer version ). :D --deathcon

  • and congratulations from me too!!! and thanks, you give us new inspiration :-) --Loki

No doubts that this is the end of an era: The DT supremacy age.
I really think that Paul should leave DT untouched as 2.41. Afterall it is a millstone, just like Ray Vermette done with TAOW, and what i think that ABC should do with Tron. Of course it's not up to me to decide, but if it was, i would start some kind of a SandboxDT+, leaving there the unreachable (except for Shadow now) SandboxDT millstone. -- Axe

After all, if a bot deserves a monument, that bot is DT. -- Axe

But we can just document the versions of DT that has been the most outstandable. For me it was DT 1.61 which was not updated for months and months and still ruled the EternalRumble. Now we know that DT 2.41 was a truly strong bot. I doubt there will be more than a handfull of bots that can outrank it in a year. Let's see what DT 2.51 can do! -- PEZ

I agree, 1.61 was the height of DT. Then flatteners became the rage ;) PEZ, you said it's easy to see, what did you mean? I see Shadow's new movement as populating a guess factor and then leaving it before expected bullet impact times, but I'm hardly sure about it. -- Kuuran

If I'm right. And if I'm successful in implementing it, then you'll see it in an OpenSource bot eventually. =) -- PEZ

Congrats again, the highest score and flatest movement I've ever seen. :-) Also you appear to have nullified the advantage of saved data almost completely. My dev version seems to draw with 2.31 over 100-150 rounds, but starting with saved data makes no difference at all, or maybe even makes things worse. :-/ And this is one tough bot over 35 rounds! - Jamougha

Good news for DT fans - a new gun which I was about to ditch does very well against the new shadow (but does not help against other bots - unfortunatly it is not ready for release because a) the gun is very slow b) it does not work until round 100+ c) there is too much data to be saved d) I have worked on movement at the same time and the development version of DT looses easily to Lacrimas. In order to move up the rankings I also have to find ways of thrashing those weaker bots. Watch this space :) Paul

This gun would not happen to either a) shoot at the second highest point or b) shoot some place in the middle of the two highest peaks would it? I have a gun which does better than my normal gun (only slightly better but statistically significant) by shooting between the peak where Shadow is presently at and the second highest peak. My assumption is that Shadow is bouncing between two peaks similiar to SandboxDT (I also feel like the peaks have a distance between that allows Shadow to get to in the time it would take one Wave to reach him). So my aim point favors what I think will be his next peak and not where he currently is. Very interesting challenge though. And I must admit that waiting for 100 rounds to catch up with his movement is suicide. His gun is waaay to good for that. -- jim

But if you can catch up with it run 100 rounds and package DT with the data. The only really significant problem mentioned is savefile size, which is admittedly a huge issue. He's nullified much of file saving as an advantage, but it's obviously still relevant and on DT's side. -- Kuuran

The gun that works against Shadow is a very highly segmented gun. It does not do anthing fancy. I am still looking at my movement and have not investigated shadows movement yet. I am confident that if it is taking active measures to be in a particular place it will have weakneses/predictability which can be exploited. The trick is to find the logic of Shadow's movement - the first thing to determin is does it adapt movement because of (a) a hit, or (b) a timeout. If it's a timeout is the time to adapt dynamic or fixed. Once this has been determined the gun can be designed. -- Paul

Still, a bot of current need not have a gun that works against Shadow to be a throne contender. What is needed is a strong gun and a movement that can perform near Shadow's. -- PEZ

[edit conflict] Well it looks like it has pattern to it to be honest. Or at least the PMs I've seen pointed at it are far less adversely affected. I'm tempted to say it doesn't matter much why it's adapting in this case, since it seems likely that it's using the same movement technique for that adaptation time and again; I think some sort of segmented or multi-pattern PM might be the answer. -- Kuuran

A Cigaret with a movement to challenge that of Shadow's would probably be enough. It's just one little catch there. =) -- PEZ

Imo, a very highly segmented GF gun is very similar to a (1D) pattern matcher. And yes, that's my current weakness, I'm working on it. Shadow 2.15 scores better against 2.31 (50/50 score)than DT and Lacrimas do. After some bugfixes/tweaks I've been able to slightly improve my performance against it (53/47), but my score against DT suffered a bit (I still win, though :)). Of course you'll need a movement to challenge mine, the current threats are, of course, DT and Lacrimas. Btw, Shadow adapts _fast_, and a hit plays a big part in it's adaptation. That is why I managed to crush simple targeting methods fast, while still presenting a flat profile to good ones. Can't wait to be dethroned, it's great to see great minds working against me for a change. :)-- ABC

The difference between those two gun types would be learning speed. Please leak some more details about your movement. =) -- PEZ

I agree with ABC the most likley way my hi-seg gun works against shadow is because it behaves more like a pattern matcher. However an anti-adaptive movement GF gun is the way I shall go - given the success rate of the hi-seg gun against Shadow I think I can make adaptive movement a disadvantage against good bots (but not for a week or so I have too much work). -- Paul



PEZ, I'm not sure there is a big learning speed difference either. If it's highly segmented enough then it's basically got one segment for each unique move an opponent does, just like a pm learns each move one at a time. The difference being a pm doesn't look at as many factors (ie: heading and velocity are the only thing required to match) and can at least guess by searching a shorter depth when an overly segmented gun would just fire your default. Side note: have you seen Iiley's latest curve flattening results? He might already have the movement to put Cigaret's gun on. -- Kuuran

Put it this way. A straight stat gun, heavily segmented, will take forever to start giving you high hit rates. A straight PM gun usually starts kicking ass early on in the battles. Call it what you want. I call it learning speed. =) Yeah, Lacrimas has an impressive movement. From my analysis it shares much of what makes up the Shadow movement. I just wish I new how to do it! -- PEZ

Truely it needs long time to give you good hit rates,but if you would implement such a gun as a virtual gun beside a normal GFGun what's optimal.One gun helps you hitting your opponent even after some single rounds while the other gets trained in order to slaughter its enemy after 1k rounds --deathcon

I also think Lacrimas movement shares the main idea with mine. Thanks to Iiley not open-sourcing it, I had to come up with my own ideas on how to do it, look how it turned out... ;) I'm sure you'll find your own way to do it PEZ, potentially even better than ours. The harder it is, the bigger the satisfaction :). About PM vs GF, I'm not talking about "traditional" PM guns, but about something like my own gun (or Musashi's), with a PM base but some statistical element (multiple choice) and many more factors (segments) involved in the evaluation of the "match". The big difference between such a gun and a (again, traditional) GF gun, is the way you store the outcome of each potential bullet. In my gun I replay the enemy's past movements (2d) to find the best angle, in a GF gun you store the guessFactors (1d) that worked in the most similar situation. I actually have lots of ideas on how to make a GF gun with some of the advantages of a PM gun, it's a lot about how you store those GFs... Another difference is that a PM gun will act a bit like a GF gun that fires waves at every tick. -- ABC

Depends. Marshmallow's first PM gun made special tokens for when the gun was fired. That gun didn't work at all because of many bugs, but anyway. =) -- PEZ

I somehow doubt I can create a movement better than Shadows's or even something close to it. My toolbox just doesn't seem to contain the right tools. Concentrating on a segment at a time I can get almost, but not quite, as flat as you. But it is always to the expense of totally horrible profiles against any other common segmentation... Maybe I should focus my efforts on out-gunning you instead. =) -- PEZ

You sound like me talking about DT for the past year. :) -- ABC

Though you outgunned DT all the while. =) -- PEZ

I like to think so, but it's debatable, DT still leads the TargetingChallenge... Speaking of challenges, maybe it's time to start an AntiShadowChallenge? It still supports the "movement only" behavior, and it would be interesting to know where each gun stands against my movement. -- ABC

You must be mad to suggest that. =) What about we make a TargetingChallenge2K4 and include Shadow, RaikoMX and Lacrimas in the line up of reference bots? DT doesn't lead the TC that counts the most for RR@H performance. I am pretty sure Shadow would outperform DT in TargetingChallenge/ResultsFastLearning. -- PEZ

You can alway use the properties file to optimise against Shadow. A public challenge would also help me in identifying its weaknesses. And a targeting challnd: is somewhat different from a battle situation since you don't influence the enemy's movement with your own, and only use power 3 bullets. I would include DT 2.41 in a 2K4 challenge, it was the first one to include true adaptive movement. -- ABC

If you don't coount Marshmallow 0.5.something that is. It had EnemyWaves and adaptive movement. But I had not been robocoding long enough then to understand much about movement so I didn't get it to work... Well, it's so many things I don't get to work. =) We can replace the current DT with a 2.41 of course. But I think we should try make the line-up a little more balanced. Succeeding in RR@H is not about gunning down ghosts like Shadow. =) -- PEZ

Muffin has a pretty average movement I could volunteer. -- Kuuran

OK. Let's add Muffin and Shadow I say. What bots should be removed? (I like 10 as a number). Maybe this discussion should mobe to the TargetingChallenge2K4 page. -- PEZ


The best just got better. The new version has a rating of 1970ish which is absolutely phenomenal - for the first time a 2000 rating looks possible. well done ABC --Brainfade

a big "WOW" from me!!! , it looks like it would be really easy to increase a bots rating ;) -- rozu

Thanks! It's not as easy as it looks though, sometimes I touch it and it goes down like a rock :). I'm amazed at the precision of the "better score against DT == better against everybody else" rule. The last test I did against DT 2.41, just before packaging, indicated a possible 1966 ranking, exactly where it is after 600 battles! Anyway, I still need to find a solution to those pattern matching problem bots, my own gun works particularly well against this movement, and so does Iiley's old gun. -- ABC

I don't know exactly how your adaptive movement works, but I would suggest adding a second adaptation module where you point your pm at yourself and instead do APM style adaptive moving. If you're getting hit by something completely not in line with the expected targeting pull out the second module. The learning component of this is easy to save compared to a pm gun so you could make tiny files indicating movement 1 or 2 on each bot and thus only go through the potentially painful learning once.

Since you have what's arguably the best pm you already have an excellent source for predicting where a pm will shoot, use it.

-- Kuuran

iiley's old gun works excellently against the current Tityus movement too. Much better than your gun or any other gun, maybe with the exeption of ScruchiPu's. If you find out how to fix it for Shadow, please share. T does no AdaptiveMovement whatsoever.

Truly excellent work with improving that incredibly flat movement! I don't even dare graph it this time. I still am under great shock from RoboGrapher's view of Shadow 2.31. You are the very best. Simple as that! -- PEZ

Lol, thanks, you flatter me :). I thought about doing the APM thing, the problem is my gun is quite slow, and it would need twice the memory to also save my own past movement. I might still try it, but I still hope to find a simpler solution based on my current (GF based) method. -- ABC

I've never found Shadow to be all that slow, and the idea Paul suggested of a ridiculously segmented gun would probably take comparable amounts of memory. If you're really only worried about performance, maybe you could just reduce how often you poll your APM and offensive PM for data? Only check your APM every 5 ticks or some other arbitrary number, and only check your offensive PM for next position when you're within 3-4 ticks of your gun being cool. You certainly don't need PM data when you've got a gun heat of 1.3 or so. -- Kuuran

I only check my PM exactly before I fire (-1 tick for gunTurn ;)). The first version of this gun did it every tick, and that made it (Tron) a true SlowBot. I keep my gun pointed straight at the enemy in the meantime. -- ABC

Interesting, I ran 250 rounds against my grapher utility and got:

1st: jam.RaikoGrapher	18857	6400	1280	9925	1251	0	0	136	122	0



2nd: abc.Shadow 2.33	17771	6100	1220	9191	1256	3	0	122	128	0

(Better use pre tags for monospace and non-wiki linking -- PEZ) (Just toss a space in front for a monospace font -- Kuuran)

Eh? Maybe I should enter it into the rumble...

Anyway, congrats on the improvement! I didn't think there was that much room for it. :-) - Jamougha

Very interesting, have you tried 1000 rounds? What did the graph look like? -- ABC

I'm trying a thousand rounds now, it takes a while on my PC. Basically the graph looked like hell near the walls (I edited my grapher yesterday to have 6 wall indexes, that could be what's causing this). -Jamougha

FloodGrapher shows a huge negative spike in its "moving towards wall" segment, I just never even tried to get rid of it because it doesn't seem to influence my score... Wall distance is a big factor in my own gun (melee habits), must make some experiments... -- ABC

A thousand rounds :-

1st: jam.RaikoGrapher	77464	25600	5120	41364	5372	7	0	539	488	0
2nd: abc.Shadow 2.33	72126	24400	4880	37969	4870	6	0	490	512	0

IIRC Flood's gun uses a fairly strict near-wall segment, which you're probably only triggering at the start of the round. Raiko's is more subtle, and this gun is an attempt to measure the opponent's relation to the wall, not just whether you're heading into it; probably more similar to Shadow's gun, in fact. - Jamougha

Yes, actually I measure both frontal and lateral distance to the wall in Shadow's gun. What I find strange is the fact that DT doesn't seem to take advantage of this aparent weakness... That result sure looks like a green spot in my LRP. I got an idea on how to better handle near wall movement, I'll try it out. -- ABC

I am very hapy to see Shadow so high. Tron+TAOW are my first-favorite-bots, and Shadow is Tron++ (wich i claim again to be left as a millstone, it made history). As i alredy said, ABC is one of my geatest inspirers, hail to u man, u surely deserves it!!! In the mean-time, it wouldn't be bad if u watch your back, see u on the top some day :-). -- Axe

OK, so I am also trying a richer wall segment. Of course I am at the same time tuning my movement so I will probably not learn anything... Anyway, more wall segment buckets means a huge data file! 13K against a good flattener. 8K or so against easier bots. Obviously my current pre-learnt data strategy will not work with these files. On the other hand I haven't confirmed yet that it helps against Shadow. But if it does I will have to try this with GloomyDark where I can use the CribSheet approach.

About countering your wall segment vulnerability... Shouldn't you be able to just segment on it for your AdaptiveMovement system? If the graph looks horrible, but differently horrible all the time you should remain hard to hit. -- PEZ

I believe I'm hard to hit as it is... :) Just like in a manually tunned movement, my semi-automatic one is very sensiblit r change. Sometimes, if I "force" it to precisely flatten a specific segment, it starts showing glaring weaknesses in other more important ones. I still have to perfect my wall smothing code first, so I can start thinking about behaving the same regardless of wall collision danger. To Axe: thanks man, I love your "I'm doing it my way!" philosophy too. Maybe I'll try aplying my "magic formula" to Tron one of these days. Tron has, imho, made history more than once, no reason why it can't do it again ;). I'll name it v3.xx if I do it, and keep links to previous versions in it's homepage. -- ABC

=) I'll specify that better, "remain hard to hit near the walls". -- PEZ


I think the RaikoMX code might be good reading for anyone who want to keep a flat profile near the walls. Not that I understand the code, but you might. -- PEZ

PEZ, yeah, filesize is partially what's stopping me from implementing this gun into a competition bot. The data file after 1000 rounds vs Shadow was over 33k. :-\ Plus most of the segments still only had a few hundred samples. It also doesn't help at all against a great many bots - mostly the wall crawlers, iiley's bots seem immune. (btw, what's hard to understand about RaikoMX? I thought I was writing nice clear code for once in my life. :-) ) - Jamougha

My try with a richer wall segment didn't help at all against Shadow. I'll wait until you release a bot using your approach to it. =) I increased the granularity some and it is appearant how Shadow is non-flat there, but I think I have destroyed my movement now so Shadow has no trouble hitting me... About your movement code in RaikoMX. It's nice and clear enough, but I don't understand the theory behind it so it's still opaque to me. It works just great, I can see that from my graphing!-- PEZ

Somehow I doubt it has something to do with a clever wall behaviour segmentation. You only need very basic wall segmentation to get at Shadow there.

1st: abc.Shadow 2.33	778791	239600	47920	437461	53736	73	0	4911	5187
2nd:         pez.TGB	762118	259350	51870	399531	51302	64	0	5216	4792

TGB (Tityus Grapher Bot) is just a Tityus with RaikoMX movement and some RoboGrapherBot behaviour. RGB behaviour is only meant to produce more saturated data in all segments. I must of course look at those changes since it almost forces a draw against Shadow. I think Shadow might have particulary hard to hit RaikoMX.

-- PEZ

I like that explanation better. I would find very strange if DT didn't find such a big weakness in Shadow's movement over 1000 rounds. That is exactly why I use long battles against DT to optimise my movement, it's long term learning is still the best, imo. -- ABC

Do you use DT in CurveFlatteningChallenge reference mode when doing these tests? I think you might find that it hits you much better than regular DT mode. -- PEZ

I use normal battles, optimising your movement against a stationary opponent doesn't garantee a good performance in a battle situation. Do you mean a stationary DT shooting power 3 bullets has a better hit rate against Shadow than in a normal battle? I find that hard to believe... -- ABC

No, but I think Shadow might be more vulnerable to power 3 bullets than it is to lower power. Look at these:

Shadow clear of the walls and no other segmentation. It's so incredibly flat that I previously thought it was fully impossible to create such a flat profile. (Now I only think it's impossible for mortals.):

http:/robocode/uploads/pez/ShadowNoWalls.png


Shadow under medium powered fire. Still very, very flat.

http:/robocode/uploads/pez/ShadowMediumPower.png


Shadow under high powered fire. Not all that flat, is it?

http:/robocode/uploads/pez/ShadowHighPower.png


Shadow near walls. This could probably be improved. =)

http:/robocode/uploads/pez/ShadowNearWall.png


Dev Tityus near walls. Though it isn't as neat clear of the walls, but I'm working on it. =)


http:/robocode/uploads/pez/TityusNearWall.png

Well, I'm not trying to teach you anything about movement. I have nothing to teach you about it, I'm pretty sure. But it's interesting graphs anyways.

-- PEZ

Very interesting indeed! Thanks a lot for that analysis. I think I know how high power bullets can affect my profile like that, specially at medium/short distances. That can probably explain my under-performing against iiley's old gun bots, and Albert's Aspid series, they all use power 3 only bullets. Let's see if I can fix that without loosing too much against DT... :) -- ABC

*ponders* Has anyone tried a gun that fires at the lowest areas of Shadow's profile? If you tuned it correctly I suspect that would be an effective anti-AM gun, after all, isn't the whole predictability to AM that you go where your profile is weakest to flatten it? Or a gun that keeps accumulated and rolling stats, then fires at the point where the rolling stats are furthest below the accumulated ones? -- Kuuran

It is a mistake to say that AM consists of going where your profile is weakest. AM in actuality consists of going everywhere but where your profile is strongest (or practically, going everywhere but where you last got shot at). -- nano

The other problem is the lowest point on almost all curves in GF-1.0, because it is almost impossible (if not totally impossible) to reach, so unless you had some kind of checks in place, you would always miss. -- Tango

I said fire at the lowest point, not be ridiculous. Besides, that was the point of keeping the non-recent average. I think nano's objection is more valid, but firing at the peak of a normal movement you're only firing at where there's a somewhat better chance they'll go. I see this as pretty much being the same, you're firing at the part of their long-term profile that hasn't been filled out recently. -- Kuuran

Thinking about it, i see tango's point. The overall assumption you have to make for this to work, is that the overall goal of the AM system is to have a perfectly flat profile across ALL guess factors at an abitrary point in the future. If this is true, then it can be assumed that logically the opposition has the highest probability of visitting the guess factor with the lowest count in order to even everything up. The problem occurs if (like tango said) one of the guess factors you are accounting for is never or rarely visited, because in this situation you will end up firing at a point where you are going to have little success. Does this actually happen in AM systems?? i have no idea - i'm just speculating... :) --Brainfade

Brainfade, generally, AM systems use the place they were last hit, or the rolling average of where they were hit, to adjust their movement strategy. One way to tackle it might be to add a segment based on which GF you last hit the opponent at. I've meant to try this for a while, but never gotten around to it. -- Jamougha

  • Oh, i thought the use of EnemyWaves meant that there was a continual collection of data rather than relying on actual bullet hits. Just show's how little i know... :P --Brainfade
    • Read the EnemyWave page and you'll see that a lot of the effort is focused on trying to align bullets that have hit you with the correct wave. That's the adaptive part of the movement. It's possible to not bother about where your enemy hts you and just use EnemyWaves to flatten your profile. -- PEZ

Merely recording the last GF that you hit the opponent at and making sure not to fire near there until you hit him again would be a good idea I think. Of course, you'd have to make sure to only use that strategy against bots with very flat profiles. :) -- nano

I somehow doubt it matters much. Shadow has such a flat profile that if your GF gun works it will fire all over and that would work about as well as anything. -- PEZ

It seems like no one really read the second half of what I wrote, so I'll say it again. Record an accumulation of the opponent's movement and compare it to a rolling average, shoot where the biggest discrepency is, in all movement systems that keep even a remotely consistent profile this will be where the highest probability of visiting is, since it's the portion of their overall profile which isn't being fulfilled at the moment. This is the equivalent of shooting at the lowest point without the assumption of a perfectly flat profile. -- Kuuran

The problem being, of course, that with a rolling average, you are going to have lots of discrepancies, and the margin of error for the "largest discrepancy", when compared with the total profile, is enormous. @PEZ: Shadow's profile is flat only when you look at the big picture. If you can segment on the correct data (such as Jamougha's suggestion of the last GF Shadow was hit at), then you will see a profile that is, at least, less flat. -- nano

The issue being mostly how you store that recent average, though.. Yeah, and if you segment correctly you should be seeing a less flat profile even for an adaptive mover, particularly if they aren't aware of your segments or you segment on something they're feeding into their system (like last point of impact). -- Kuuran

It seems that the 2.41 version of Shadow has some problems: about ~20 points less. Amazing, losing 20 pts and still ~25 pts. above the second... -- Axe

Yep, now I have to figure out where those points went. The "DT rule" still holds though, worse against DT == lower ranking. I will probably make some more experiments soon, I'll use versions 2.4x for ranking tests in preparation for a hopefully solid 2.51. It's hard to improve a bot when there is only one opponent that gives it a fight ;). Shadow 2.41 beats 2.33 by over 52% in 1000 rounds, btw... -- ABC

I don't think that only DT made all that difference, think that you've got a decrease against Musashi too (-3% aprox.), and probably some other bots too. "Mas você pode permitir-se este luxo..." -- Axe

I'm not saying that the points I lost against DT were the sole cause of the lower ranking, just that a lower score against DT means a genericly inferior movement. DT's gun is one of the few around that instantly punishes every small bit of movement predictability, even when that movement works better against other good guns. In this case I tried to increase the adapting speed to improve weak bot trashing, but looks like I lost some precious points against the top ones. My LRP looks slightly more balanced, though. -- ABC

I think ABC has got the right focus. While you others seem to figure on how to hit Shadow he's putting his brains on the task of outmoving DT. A good Anti-AM gun will maybe bring home 1 or 2 points. A working Anti-DT movement can bring home 100-200 points depending on where you start from. -- PEZ

Working on it right now, PEZ. :) Just not talking about it! -- nano

We all, AM is the next step, no doubts. I am preparing a new bot (Okami, i will name it), but i'm having some problems in tunning that GF's & EnemyWaves... Afterall, we can't leave ABC alone on the top, can we? It isn't polite ;-) -- Axe

A new DT is on the loose, the top will probably be redefined... :) -- ABC

Exciting stuff! Shadow 2.42 managed to reach 1st place after 158 battles. But now it has a negative momentum, I don't think it'll manage to stay there for long. Must work on 2.51, sleep and work will have to wait... ;) -- ABC

Some RR@H client decided to fight Shadow 2.42 and DT 2.51 over and over, after 12 battles I win by 53%, that is completely unexpected. In my tests DT starts winning after 5 or 6 35 round battles due to it's data saving advantage... -- ABC

Not if the battles were on different clients. -- Kawigi

(edit conflict)I think that, in this case, it's the same client. I've seen my client get stuck in the same battle like this, I don't know why but it happens. On the other hand, I've also seen the client preventing bots from writing to disk with a security exception. It's not like a single pairing can influence the ranking a lot, but it's nice to see Shadow still winning against DT after 17 battles... ;) -- ABC

I think it looks like you have reclaimed the crown. Exciting battle indeed. Shadow's details sheet looks plain amazing. If you could find a way to counter those pattern matchers you might win the race for the 2000 barrier. I agree, sleep and work can wait. =) -- PEZ

After 18 battles Shadow beats DT by 50.8%. I think that counts as a draw, so congratulations to both of you! -- Tango


Is there a reason why the RoboRumble@Home meleerumble isn't using the latest version of Shadow and Tron? Same goes for DT, actually... My client doesn't have the old versions on it, so those bots are never included in melee battles that I run, since I don't have the jar and my client can't automatically download it (URLs point to the latest versions, not the old ones) --David Alves

I forgot to update the melee participants page, since I didn't change Shadow's melee stategy... Tron's latest version is still 2.02. -- ABC

Btw, thanks for reminding me of the melee rumble. Now that I think about it, Shadow 2.3+ doesn't handle the final duel correctly, it will "dodge" the last isolated opponent's gun, instead of keeping separate statistics for each one. I think I'll relax a bit from this 1on1 frenzy and put some time into melee/teams and general restructuring. -- ABC

Now I think you got the animation on the logo just right! A take back what I said above that you have got the right focus though. =) -- PEZ

Yep, I completely lost the focus lately ;). I got a bit tired from the fight for the top spot, to much stress for me. Now I'm having trouble starting working on Shadow again, It will take a lot of work to do the changes I'm thinking about. It's much easier to play with the logo... :) -- ABC

It happens with me sometimes too... The AntiMirrorSystem page was an excuse to not working on the bots, and when it was completed I've started the Okami page (even before having a started version), spending a good time searching in the web for a nice picture... All for not having to start the coding... In portuguese we have a obscure word for this: "procrastinação"...MYéæ) -- Axe

Nice animation, btw. -- Axe

Thanks, here is another one:
http://robocode.aclsi.pt/shadow_logo_anim3.gif
Do you think it will improve my ranking? :) -- ABC

  • I don't know, but surelly will give u an excuse for not improving it :) -- Axe


is that portuguese word equivelent to the english word procrastinating?

  • Indeed! You have that word too! It came from latin: procrastinatione. -- Axe
  • haha . that's funny. anyway go to andrew and help me with my bot. i'v taken to advertising on other people's pages
  • Sure. We all do this anyway. The comunity is very cooperative, one proof of this is the huge amount of info that u find here, we all try to help each other outside the ring (inside is other story:)). I haven't answered personally nothing for you yet, just because is very poor my own expertise on what seems to be your interesting area, GFs... But be sure that you are in very good hands, people like Paul, PEZ, Kawigi and others are one of the very bests in that area (someone said once that one of the best things in robocode is that u can actually receive advices from the #1s:). -- Axe

A prediction is required - will 2.46 break the 2K rating barrier (ratings page is down at the moment - it may have already done so). -- Paul

I really don't know, it seems to give less consistent test results. I introduced an untested change to the dodging data saving that could go either way in 35 round battles. Pattern matchers are still a big problem, I still haven't found a way to consistently beat Aleph and Shadow 2.15... -- ABC

Haven't you forgot to update the RoboRumble/MeleeParticipants page? -- PEZ

I didn't run a single melee test with these latest versions, so it is kind of intentional. If anybody has trouble running the melee rumble feel free to update it. I promise I'll work on a "complete" v1.51 now, maybe even with some melee/teams tweaks. -- ABC

1992.93 and counting! This is exciting. -- PEZ

So far so good... :) -- ABC

it's a hard fight there at the top ;). but I think we have to wait for version 2.51 to see the first 2k rating -- rozu

1st: pe.SandboxDT 2.71	374281	137900	27580	184604	24181	15	0	2769	2238	0
2nd: abc.Shadow 2.45	361578	111900	22380	202875	24350	73	0	2247	2758	0

--David Alves

Thanks for the 5k rounds test David, that's 50,8% for DT. I'll try it with Shadow 2.46 and see what happens... -- ABC

Done, closer than I thought:

1st: abc.Shadow 2.46	364000	115600	23120	200588	24611	80	0	2316	2687	0
2nd: pe.SandboxDT 2.71	359277	134350	26870	175301	22730	25	0	2693	2312	0

-- ABC


Yikes. Anyone know enough statistics to tell us the % chance that that result is significant vs. the chance that it's within the margin of error? --David Alves

I know no math, but I would call that a tie. =) But Shadow could probably break it by surviving just a little more. -- PEZ

That sure is tie in my book too, 50,3% in 5k rounds, you don't get much closer than that. After those 5k rounds I've run 4 500 round battles without deleting the data files, and Shadow won every one of them by up to 53%. I think I'll try tweaking Shadow's long term memory a bit further, maybe it's falling into some kind of pattern in very long battles... -- ABC

ABC, how many points would Shadow get without data saving? I'd say around 5 points lesæÄH? mean I saw Shadows rating gradually increase from about 1986 over a longer period of time. What do you think? Just to get some information... to see if it's worth to implement it into Aleph. -- rozu

Your guess is as good as mine... I did it in a version where the adapting speed was much lower than it is now, it needed around 3 35 round battles to get 95%+ against HeadOnTargeting bots then. I changed to a much faster adapting method since then, and tweaked the data saving (compression) too. You have to be careful about data saving tho, you will sometimes get disabled in clients running java 1.4+ without the canonCaches=false flag. What I'm more curious about is if a data saving gun would make a difference in the ranking, I will probably try a guessFactor gun of my own when I get the time, afterall I already have most of the code done in the flattener/dodger. ;) -- ABC

My guess is that WaveSurfing will become quite common now when someone of the sharing type has described how to do it to the masses. Then data saving guns will become dangerous against many bots and possibly not compensating enough against non wave surfers. -- PEZ

I would rather say: Data saving guns are very efficient against many bots and possibly not compensating enough against wave surfers. Data saving WaveSurfing (like mine) negates the advantage of data saving guns, since I'll be riding the very same waves your gun sees in it's data files... -- ABC

Hmmm. I think we are saying the same thing. Maybe your wording is clearer though. Data saving guns doesn't seem to make that big a difference though. Fast learning guns are more important. -- PEZ

Yep, and btw, I'm all for sharing, I just didn't want to spoil the sharing guy's fun. ;) -- ABC

I would have liked to beat him too it. But when I realized what to do (my class is actually called WaveSurfer) it all seemed so big to start with so my lazy side opted for creating a killer nano instead. =) It was actually quite pleasing when the solution struck me. I pictured you with a big smile when you dropped small crumbs of hints on the wiki. =) -- PEZ

Addapting speed is one factor I should tune now for sure. the problem is that it should be different for different guns (big difference between GF and PM guns in general). May be that it would be good to learn this number (at least in Aleph it's a number). But this would be a problem against some clever guns like DT's. -- rozu

SYSTEM: You have made 10000 calls to getXX methods without calling execute()
SYSTEM: Robot disabled: Too many calls to getXX methods

Got this when a bot went in and out of shadow's radar range several times on a large battlefield. --David Alves

abc.Shadow 2.46: Exception: java.lang.ArrayIndexOutOfBoundsException: 9
java.lang.ArrayIndexOutOfBoundsException: 9
    at abc.i.a(Unknown Source)
    at abc.i.int(Unknown Source)
    at abc.i.do(Unknown Source)
    at abc.Shadow.run(Unknown Source)
    at robocode.peer.RobotPeer.run(RobotPeer.java:616)
    at java.lang.Thread.run(Thread.java:536)

Another large battlefield bug (5000x5000) --David Alves


isn't rr@h always 800x600 or 1000x1000 ?--andrew

Yeah, but you can run any size battle you want... for example there's the LongThinLeague which runs battles on 5000x400 battlefields. If you want to see what I was doing on such a large field look here: HCBot :-D --David Alves

Thanks David. I was aware of that OutOfBounds exception in large battlefields, got to investigate the getXX problem too. It also happens in a 1000x10?TæLelee battle when the final duel starts with both bots in oposing corners. Shadow is currently very much a 1on1 optimised bot, it still preforms decently in melee/teams though ;). I've been stuck on the "small tweak->long test" cycle lately, I think I'll even do one more small 1on1 movement test before the promised 2.51... -- ABC

Steps to reproduce, using HCBot on a 5000x5000 battlefield:

  1. Enter Shadow's radar range (Assuming you start outside of radar range)
  2. Exit Shadow's radar range
  3. Enter Shadow's radar range
  4. Fire

Shadow will throw an exception and you're free to ram it for the rest of the round. ;-) If I figure out how to reproduce the 10000 getXX() call bug I'll post instructions for that too. I'm starting to realize that HCBot is a really useful tool for debugging. --David Alves

Nothing that u didn't noticed for sure, but i think that if you solve that Ramming Bots (like NanoDeath & BiggerDeath) u might gain that few points and reach 2K... -- Axe

I had a bug in my gun that was only aparent in very close range fights. It's fixed now, I'm planning a small movement tweak that should also improve my score against rammers. I'm hoping I'll get some free time this weekend to make some other tweaks and hopefully join Jamougha in the 2kClub. -- ABC

Cool, 2.49 made it to 2000+ :). The funny thing is that it's movement is something I had already tried earlier, but never released it since it performs sligthly worse against DT and PM guns. Looks like those ranking points were hidden in the low ranked opponents, thanks to David for pointing that out. The PBI and LRP could probably be improved by indicating rating influence instead of expected score difference. Anyway, now to fix those melee bugs... -- ABC

Congratulations! :-) --David Alves

There were discussions about changing the PBIs over, I would guess LRP would soon follow if we did. I think most people were in favour of changing, so someone should probably do it... -- Tango

Yep, the PBIs are the basis of the LRP and the momentum value, should be an easy change. -- ABC

Would the format of the LRP graph still be interesting with this change of PBI calculation? I mean would the regression line still be relevant if it was drawn from the new PBI figures? If so the LRP applet won't even need a change. Can someone tell me again how those PBIs should be calculated and I'll look at the servlet code and implement it. -- PEZ

I think the LRP would be even more interesting, since it would reflect the exact rating influence of each opponent. The expected rating difference would be calculated like in the EloCalculator. PBI = ratingDiff - expectedRatingDiff. -- ABC

Isn't that how the expected diff is calculated today? -- PEZ

Ummm. Sorry, I asked that before checking. I'll see what I can do about it tonight. -- PEZ

But the new PBI must either be normalized to -100 <-> +100 (any suggestion on how to do that?) or the LRP applet be retrofitted to work with ELO points instead of percentage diffs. -- PEZ

And there is also the problem with ~100% scores resulting in huge rating diffs... Now that i think about it, there may be a problem in the ELO ranking, it doesn't behave very well with extreme scores. I don't really know, what do the ELO experts say? -- ABC

I'm all ears on the answer on that one. Also I'll wait with changing the PBI calculation of the servlets until we have figured on how to sort some of the issues out. -- PEZ

The ELOs do cause slightly nutty effects at times. However, since we don't accept 100% scores the best will normally be about 4000 - 10, 99.8% or so. It's a bit different in the Minibot challenge, where they just constrain 100% scores minimally to fit in. I guess that's why Aristocles is top instead of Tityus. :-) However if you check http://rumble.robowiki.net/servlet/PremierLeague?game=roborumble&table=2 then the table is almost unchanged - this just shows the mean percentage of score across all opponents IIRC.

As for PBIs... I guess you could just divide by ten? I don't envision many people having a Dave's PBI of +/- 1000, and you could cap it at 100. Should be a nice quick hack. -- Jamougha

@ABC, no, ELO rating doesn't behave very well in extreme cases, which is why no chess master in his right mind will play a rated game with anyone much lower than himself. I believe the eternal rumble only had matches bots that were within 10 ranks of each other for this reason. I agree with jam, the only pairing with a "Dave's PBI" that high is ad.last.Bottom vs. gg.Wolverine. I suggest we restrict it to +/- 500, if the "Dave's PBI" is less than or greater than that, plot it at +/- 500 anyway, but draw an up or down arrow instead of a dot. --David Alves

I'm guessing the current PBI's and the proposed PBI's have a somewhat logarithmic relationship to each other, so I don't think that drawing the LRP on the new PBI's makes a huge difference. I believe the LRP applet only reads the expected % score and the % score and subtracts them itself, if so, it wouldn't be broken by changing the PBI's, it would just behave as before using the old PBI calculation. -- Kawigi

The question for me now is if we should change the ELO curve so that it is finite? I'm no longer sure Jamougha and me are deserving of that 2000+ score, since it looks to me like we are basically exploiting a flaw in the rating system... What about a 95% score cap? --ABC

To arbitary for my liking. How about a "rating diff cap" (basically, if 2 bots are far apart, assume they are closer together). It's still arbitary, but might work better. -- Tango

You have all completely lost me I tell you. =) The only part I understood was that with the raw percentage scores Jamougha talked about. -- PEZ

Well, I did some tests with the calculator and maybe it's not a problem afterall. A +/- 500 restricted graph would be fine, or even just an ELO PBI. -- ABC

Are you sure you restore the data successfully? Your +0 points seem much more expensive than my recent +30 =) -- PEZ

I'm not sure anymore, it looks ok though. I'm using a strange kind of rolling averages in 2.49, I'll try it with Tron to be sure. Btw, Shadow 2.49 has a "hidden" flag, if you put "movLogLevel=100" in it's properties file it will print out the WaveSurfing data at the end of each round. That's why I say it looks ok, it seems to start each battle with the same data it saved. -- ABC

That certainly seems like valid test. -- PEZ

Que rufem os tambores! -- Axe

Closing in on RaikoMX I see. Good work! You just might be out-gunned by it and not out-moved. Given that some thought? -- PEZ

Yes, I've thought a lot about trying to improve my gun, but then I remember how hard it is to measure gun improvements. Tbh, my problem with Shadow is measuring any kind of improvements, in my tests it wins against everyone except DT by very good margins: 99,5% (that's 5 rounds lost in 1000!) against FloodGrapher, 60% against RaikoMX, 54% against SilverSurfer, etc... It still has some problems against PM guns (it looses against Shadow 2.15, f.e.), but I've been unable to solve that without decreasing it's performance against GF and simple guns. I'll probably try improving the gun next, but first I need to repackage it with the correct melee movement, 3.01 will act a bit strange in a melee battle... ;) -- ABC

What do you do when your bot has no wave to surf on? Like in closer combat when the gun cooling takes longer than the bullet travel time? -- PEZ

In 3.01 I just continue moving in the same direction. In 2.49 I activate the mirror movement. I also tried shooting a virtual enemy bullet at every tick and wavesurfing normally, never released a version with that option, though. -- ABC

I've also experimented with that last option. With a twitch. Can't fit it in my mini, but when I go megaboting with this I'll do it. Another thing I can't fit in Pugilist is to move in the direction where you get the farthest from your enemy. That should, at least in my theory, improve your performance against rammers in particular and close combatants in general. -- PEZ

That was my exactly reasoning with mirror movement, the mirror position is the best in terms of distance control and corner/wall trap avoidance. About the virtual bullet option, maybe the best way would be firing a future bullet at the predicted time of enemyGunHeat==0. -- ABC

Exactly. In my tests I use only virtual waves created this way. That way I can better match my enemy's stats on me when I decide where to go. Eats 45 bytes or so though for me, so I'll have to ether find those in P or sacrifice something else... How do you figure mirroring gives you distance control? If you mirror a rammer, doesn't that just help it? -- PEZ

If you are between a wall and a close combatant, you can't move away from him. By going towards the mirroring position you avoid those situations. I believe it earned me good points against the rammers, but I also fixed a major close combat gun bug... -- ABC

I must test. To me it sounds like you would end up in the center hugging and kissing the rammer... -- PEZ

Super strong that 3.04 is! Shadow has kicked Pugilist butt bad before. But now Shadow makes P look like a drunk old boxer who should have put his gloves on the shelf long ago. -- PEZ

Thanks. I hope it gets another chance to fight RaikoMX in the rumble, that 44% must be a fluke, I get over 60% in my tests... -- ABC

In loads of 35 round battles or in one huge 1000+ round battle? -- PEZ

One huge 1000 round battle, but I think it doesn't make that much of a difference. I'm sure it will straighten itself out if they meet again once or twice... -- ABC

RMX for lunch:
|jam.RaikoMX_0.29| 64.1| 1| 25-5-2004:22:56| 47.7| 16.3| Very impressive! That 3.05 table looks like a golf field, all green... -- Axe

So far so good, but RMX has never been a problem bot of mine... ;) -- ABC

  • very few are, actually ;) -- Axe


whoah, 3.07 has 2057 points after 147 battles! Could we see a new king by the end of this day? --Vic

2064 and rising! I don't think it'll stay this high much longer, but you never know. Here is hoping... ;) -- ABC

Way to go dude! Still at 2055 with 230 battles. I'm now sending in CassiusClay 1.0 into the ring and we'll see if it can pick up the fight for that crown! =) -- PEZ

Strong upgrade. 2046 points! I'm curious. How could you be so sure you had improved the movement? (As you say in the update note). -- PEZ

1000 rounds against DT are still the best indicator for me, Shadow 3.11 beats DT 3.02 in the long run. I also tested against RMX (over 60%) and CC (around 53%), just to be sure. ;) -- ABC

Interesting. If I used my performance against DT and RaikoMX as a measure I would say version 1.5.2 of CC having the best movement. But the sloppy prediction and magic numbers in that movement was just (in an uknown way) being exploiting some (unknown) weakness in their guns. At least that's what I think. My current, preciser and less arbritrary, movement is in theory much better and CC's rating is higher too, which somewhat supports the theory. But for you I guess things are a bit different. Since your movement has been precise and theory-based for quite a while. Besides, your gun doesn't fit into the universe the surfers are moving about in either. CC is trickiest for Shadow amongst the surfers? If so, I wonder why, but I take it is a good sign anyway. =) -- PEZ

I don't know if CC is the trickiest, it's just that it's the best ranked. I tested against CC 1.1.0 btw, can't keep up with your update speed ;). RMX is not a good measure for me either, I just use it to test if I didn't break anything important. I use DT because my gun is relatively weak against it's movement, therefor any performance improvement should mean my movement got better. Also, I still think Paul's gun is one of the best generalist guns ever made. -- ABC

Yeah, you keep insisting on that. =) CC 1.1.0 is pretty dated. It's definately not best ranked. Try 1.9.3 instead. It's geared for long battles. -- PEZ

I will. I used 1.1.0 because, iirc, it was one of the versions that beat Shadow 3.07. I'll keep DT as my main test, though. -- ABC


There are no threads on this page yet.