Discuss Scratch
- Discussion Forums
- » Advanced Topics
- » [ATC#3] So you say you're a "hacker"? Prove it!
        ![[RSS Feed] [RSS Feed]](//cdn.scratch.mit.edu/scratchr2/static/__5b3e40ec58a840b41702360e9891321b__//djangobb_forum/img/feed-icon-small.png)  
- MegaApuTurkUltra
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Good idea. I didn't think performance was a concernYes, I agree. You don't even have to take the average of the ranks, the sum of ranks (the lower the better) does the same trick with less math.I think every run should be taken 3 times, not just the finalDefinitely. (in certain circumstances, RunRunProtect has beaten STINGER!)
Also, I'm happy to hear that STINGER can be beaten. RunRunProtect is IMO currently the best public bot.
@MATU
Why do you store the protections in a list? I think the look up is quite expensive. Why don't you use arrays? This would also make it easier to analyse, what lines/variables of a bot are protected.Pseudocode:
protect(var){
if (var is a number){
protection[var]++
} else {
protect[getIndex(var)]++
}
}

- MegaApuTurkUltra
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
@MATUI'll take a look but a console dump might be more useful
I tried to test my bot against all of the ones competing so far, and it glitched out on me… I downloaded the page and put it on google drive:
https://drive.google.com/open?id=0B-LI96qMKG3bdUVzVlVOeWRFVmM
EDIT: I added them in one at a time, and it crashed when I added InfiniteLoop.
- jokebookservice1
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
I don't like the idea of a knockout as mentioned: Some bots require other specific bots to work optimally
                        
                        
                    - MartinBraendli2
- 
                             Scratcher Scratcher
100+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
I don't like the idea of a knockout as mentioned: Some bots require other specific bots to work optimallySo you want a hack and smash with 30+ bots at once?
If there are a lot of bots around, there will be a lot of weak bots around. The winner then wont be, who performs best against good bots, but who performs best against victim bots. This is contrary to all forms of competition I know. The chess world champion is not determined, by who can beat a 4 year old boy in the least amount of rounds, but by who can beat other world class chess players (hope you get my analogy). To avoid such a thing, you have to eliminate weak bots.
- jokebookservice1
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Can we have an elimination system, but at the beginning all bots play against each otherI don't like the idea of a knockout as mentioned: Some bots require other specific bots to work optimallySo you want a hack and smash with 30+ bots at once?
If there are a lot of bots around, there will be a lot of weak bots around. The winner then wont be, who performs best against good bots, but who performs best against victim bots. This is contrary to all forms of competition I know. The chess world champion is not determined, by who can beat a 4 year old boy in the least amount of rounds, but by who can beat other world class chess players (hope you get my analogy). To avoid such a thing, you have to eliminate weak bots.
- CodeLegend
- 
                             Scratcher Scratcher
500+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
+1I don't like the idea of a knockout as mentioned: Some bots require other specific bots to work optimallySo you want a hack and smash with 30+ bots at once?
If there are a lot of bots around, there will be a lot of weak bots around. The winner then wont be, who performs best against good bots, but who performs best against victim bots. This is contrary to all forms of competition I know. The chess world champion is not determined, by who can beat a 4 year old boy in the least amount of rounds, but by who can beat other world class chess players (hope you get my analogy). To avoid such a thing, you have to eliminate weak bots.
Couldn't have said it better.
*won't :P
- MartinBraendli2
- 
                             Scratcher Scratcher
100+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
I don't see the point. Either those bots your bot needs, are good bots, and then you will see them in the final anyway (in my proposed mode), or those are weak bots, and you would have to fight the final without them (in your proposed mode).Can we have an elimination system, but at the beginning all bots play against each otherI don't like the idea of a knockout as mentioned: Some bots require other specific bots to work optimallySo you want a hack and smash with 30+ bots at once?
If there are a lot of bots around, there will be a lot of weak bots around. The winner then wont be, who performs best against good bots, but who performs best against victim bots. This is contrary to all forms of competition I know. The chess world champion is not determined, by who can beat a 4 year old boy in the least amount of rounds, but by who can beat other world class chess players (hope you get my analogy). To avoid such a thing, you have to eliminate weak bots.
Also, I don't think, that bots should rely on other bots. Like I said, i could create one good bot, and two wing men. My good bot for example has the same code on line 3 and 7. Wing man 1 only walks around and flips lines 3 and 7 of enemy bots. This wont hurt my good bot, but would harm all others, giving my good bot an advantage. Wing man 2 could be a repair bot, who injects lines of the good bot into enemy bots. My good bot wont be hurt by that (might even get repaired), why all other bots suffer from this code injection.
Whether this “wing man” is designed as a wing man, or is just a weak bot of a competitor doesn't even matter IMO. All bots should be able to fight for themselves, without support.
- MartinBraendli2
- 
                             Scratcher Scratcher
100+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Somehow. But not everyone will bring 3 bots into the tournament. But its still quite easy to make the groups. Quick demo in ScratchMy propositon:
- All bots are randomly distributed on 4 groups (A,B,C,D), so that no 2 bots of the same creator are in the same group.
Isn't this verging into Kirkman's School Girl Problem territory?
G
- iamunknown2
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
I found out that Revision 6 was problematic, so I reverted back to revision 5 and guess what:Submission: TTAIB (the totally awesome icy bot)SET DIRECTION RANDOM
MOVE
IF *@RANDOM%2 EQUALS 5 5 3
SET *@5 @4
TAG
SET EXECUTION_POINTER 1
Version 2:SET DIRECTION RANDOM
MOVE
IF *@RANDOM%2 EQUALS 5 5 3
SET *@4 @5
TAG v2
SET EXECUTION_POINTER 1
Version 3:PROTECT EXECUTION_POINTER
SET DIRECTION RANDOM
MOVE
IF *@RANDOM%2 EQUALS 6 6 4
SET *@4 @6
TAG IcyBot
SET EXECUTION_POINTER 1
SET DIRECTION RANDOM
MOVE
IF *@RANDOM%2 EQUALS 6 12 10
SET *@4 @12
TAG IcyBot
SET EXECUTION_POINTER 8
SET DIRECTION RANDOM
MOVE
IF *@RANDOM%2 EQUALS 6 18 16
SET *@4 @18
TAG IcyBot
SET EXECUTION_POINTER 14
SET DIRECTION RANDOM
MOVE
IF *@RANDOM%2 EQUALS 6 24 22
SET *@4 @24
TAG IcyBot
SET EXECUTION_POINTER 20
SET DIRECTION RANDOM
MOVE
IF *@RANDOM%2 EQUALS 6 30 28
SET *@4 @30
TAG IcyBot
SET EXECUTION_POINTER 26
SET EXECUTION_POINTER RANDOM
Credit:
@iamunknown2 for help
@gtoal for his edit of mine
@jokebookservice for a line of his bot
My bot beat everyone but SPRAYnPRAY and CopyBot (CopyBot won) but v3 will be better
- iamunknown2
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Better watch out, Stinger…

                        
                        
                    
- CodeLegend
- 
                             Scratcher Scratcher
500+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Better watch out, Stinger…Tell me which bots and which versions and I'll tell you the results.

EDIT: *STINGER
Last edited by CodeLegend (July 14, 2016 00:41:03)
- jokebookservice1
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Better watch out, Stinger…have you played against runrunrun?
- CodeLegend
- 
                             Scratcher Scratcher
500+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
I've played against all submissions marked as competing, with the exception of the last version of infiniteloop because it crashed the program.-snip-have you played against runrunrun?
So yes, I've played against RunRunRun and RunRunProtect 1v1 and in settings with other bots. I've won every time except for one instance with RunRunRun, RunRunProtect and CopyBot where RunRunProtect won.
- jokebookservice1
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Could you try:
PROTECT EXECUTION_POINTER
MOVE
IF *EXECUTION_POINTER EQUALS -1 1 4
SET *@RANDOM @8
PROTECT @(RANDOM%8+1)
PROTECT @RANDOM
SET EXECUTION_POINTER 1
TAG RunRunProtect
and have another go with the similar
PROTECT EXECUTION_POINTER
MOVE
IF *EXECUTION_POINTER EQUALS -1 1 4
SET *@RANDOM @8
PROTECT @(RANDOM%8+1)
SET @(RANDOM%24+9) @8
SET EXECUTION_POINTER 1
TAG RunRunProtect
                        
                        
                    PROTECT EXECUTION_POINTER
MOVE
IF *EXECUTION_POINTER EQUALS -1 1 4
SET *@RANDOM @8
PROTECT @(RANDOM%8+1)
PROTECT @RANDOM
SET EXECUTION_POINTER 1
TAG RunRunProtect
and have another go with the similar
PROTECT EXECUTION_POINTER
MOVE
IF *EXECUTION_POINTER EQUALS -1 1 4
SET *@RANDOM @8
PROTECT @(RANDOM%8+1)
SET @(RANDOM%24+9) @8
SET EXECUTION_POINTER 1
TAG RunRunProtect
- iamunknown2
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
@MATUHave you tried revision 6? I've changed it to something else…
I tried to test my bot against all of the ones competing so far, and it glitched out on me… I downloaded the page and put it on google drive:
https://drive.google.com/open?id=0B-LI96qMKG3bdUVzVlVOeWRFVmM
EDIT: I added them in one at a time, and it crashed when I added InfiniteLoop.
Last edited by iamunknown2 (July 14, 2016 03:52:24)
- TheMonsterOfTheDeep
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
I think the controller is broken…
I've been trying to write a somewhat competitive bot, and I'm testing it against RunRunProtect. However, it seems RunRunProtect is doing things it shouldn't be able to…
Observe:

All the RunRunProtects (green squares) are moving up, the entire time - the version I'm using has no set direction commands, and all of them started moving up at the beginning of the game. The blue squares only have a single TAG command, so there is no way they could affect the instruction set of the RunRunProtects. Even so, a RunRunProtect somehow manages to attack a robot to the side of it!
This is really annoying, because I now have no idea how good my bot is.
                        
                        
                    I've been trying to write a somewhat competitive bot, and I'm testing it against RunRunProtect. However, it seems RunRunProtect is doing things it shouldn't be able to…
Observe:

All the RunRunProtects (green squares) are moving up, the entire time - the version I'm using has no set direction commands, and all of them started moving up at the beginning of the game. The blue squares only have a single TAG command, so there is no way they could affect the instruction set of the RunRunProtects. Even so, a RunRunProtect somehow manages to attack a robot to the side of it!
This is really annoying, because I now have no idea how good my bot is.

- TheMonsterOfTheDeep
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Submission: Snipar
I'm not sure if this submission is valid, because it sort of really builds off of RunRunRun and RunRunProtect (i.e. protecting all its code  ). I can mark it as non-competitive if you guys want.
). I can mark it as non-competitive if you guys want.
As it were, this isn't even the real bot - I lost the real bot because I only had its code stored in the controller and I deleted it. Remember kids to never assume your work is saved!
 Remember kids to never assume your work is saved! 
Revision 1
                        
                            PROTECT @RANDOM%7+1
SET DIRECTION RANDOM
IF *DIRECTION EQUALS -1 6 4
SET *@RANDOM @7
SET *DIRECTION (DIRECTION+1)%4
SET EXECUTION_POINTER 1
TAG Snipar
 ). I can mark it as non-competitive if you guys want.
). I can mark it as non-competitive if you guys want.As it were, this isn't even the real bot - I lost the real bot because I only had its code stored in the controller and I deleted it.
 Remember kids to never assume your work is saved!
 Remember kids to never assume your work is saved! 
Revision 1
PROTECT @RANDOM%20+12
PROTECT @RANDOM%11+1
PROTECT EXECUTION_POINTER
PROTECT @RANDOM%11+1
SET DIRECTION RANDOM
IF *DIRECTION EQUALS -1 10 7
SET *@RANDOM @12
SET *DIRECTION (DIRECTION+1)%4
SET EXECUTION_POINTER 1
SET EXECUTION_POINTER 3
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
TAG Snipar
Last edited by TheMonsterOfTheDeep (July 15, 2016 00:14:26)
- jokebookservice1
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
Submission: SniparI am perfectly happy for derivatives if you want
-snip-
I'm not sure if this submission is valid, because it sort of really builds off of RunRunRun and RunRunProtect (i.e. protecting all its code). I can mark it as non-competitive if you guys want.
As it were, this isn't even the real bot - I lost the real bot because I only had its code stored in the controller and I deleted it.Remember kids to never assume your work is saved!

- IcyCoder
- 
                             Scratcher Scratcher
1000+ posts
[ATC#3] So you say you're a "hacker"? Prove it!
I tested IcyBot a lot and I found out with a lot of bots it is playing with (GREATERTHAN 5) it is a high scorer other than that it is a low scorer… So if it is 1 on 1 IcyBot will probably not want if it is a lot of bots it may or may not win
I will attempt to make v4
                        
                            I will attempt to make v4
Last edited by IcyCoder (July 14, 2016 12:56:15)
 
            ![[RSS Feed] [RSS Feed]](http://cdn.scratch.mit.edu/scratchr2/static/__5b3e40ec58a840b41702360e9891321b__//djangobb_forum/img/feed-icon-small.png)








