Jump to content
BrainDen.com - Brain Teasers
  • 0


unreality
 Share

Question

Here's the challenge: write a little code snippet in java or just generic pseudocode or even just describe your algorithm (you don't even have to know programming, I can just convert your algorithm for you!) that plays ROCK PAPER SCISSORS against an enemy... that enemy is another algorithm!

THE GAME

We all know the game rock paper scissors could use a little strategy... sure there is some psychological merit to it, but most of it is luck. Well, that's about to change.... you will create a deterministic algorithm that will battle against other algorithms for the ultimate title of ROCK PAPER SCISSORS CHAMPION!!! There will be no randomness functions, no chance, no luck. It's about skill. Is your algorithm a simple numerical ninja? Or is it a complex meta-algorithm that attempts to counterguess the enemy's strategy? MAY THE BEST ALGORITHM WIN!!!!!

TECHNICAL SPECS

Your algorithm has access to three different inputs: it has an array of all the moves its used previously. This array is called a. There is another array, b, that contains the moves used by the enemy in this match. You also have a variable, i, that denotes the round number (i=0 is the first round, i=1 is the next round, then i=2, etc).

Right now I have the global var numRounds set to 50. Ie, there will be 50 rounds before we see whose won more games. Let me know if you think that number should be something else.

0 = ROCK

1 = PAPER

2 = SCISSORS

[rock beats scissors, scissors beats paper, paper beats rock]

the arrays a & b are of the datatype int and hold zeroes, ones and twos up to a or b. a and all values after that in the array is NULL, same with b. So the array is only defined from a[0] to a[i-1] or equivalent for b.

For the very first round, i=0, there will be nothing in the arrays. So if your algorithm uses previous data to make future decisions, you'll need to have some primer value for i=0

For anyone interested, here is my java code that runs all this:



// ROCK PAPER SCISSORS CONTEST FOR BRAINDEN

//  BY UNREALITY

//    ENJOY

import java.util.Scanner;

public class ropasc

{

    public static int numGames = 50;

// rock: 0

// paper: 1

// scissors: 2


    private int[] myTurns; private String myName;



    public ropasc(String name)

    {

        myName = name;

        myTurns = new int[numGames];

    }


    public int[] get()

    {

        return myTurns;

    }


    public String getName()

    {

        return myName;

    }


    public int next(int[] enemy, int i)

    {

        int x=0;

        if (myName=="Test1") x = test1(myTurns, enemy, i);

        if (myName=="Test2") x = test2(myTurns, enemy, i);

        if (myName=="Test3") x = test3(myTurns, enemy, i);

        // etc. Could use "java.lang.reflect.*" to do this more elegantly but this way is simpler

        myTurns[i] = x;

        return x;

    }


    public int test1(int[] a, int[] b, int i)

    {

        if (i==0) return 2;

        return b[i-1];

    }


    public int test2(int[] a, int[] b, int i)

    {

        return i % 3;

    }


    public int test3(int[] a, int[] b, int i)

    {

        int sum = 0;

        for (int z=0; z<i; z++)

        {

            sum += (a[z] + b[z]);

        }

        sum %= 3;

        return sum;

    }


    public static String conv(int k)

    {

            if (k==0) return "ROCK";

            if (k==1) return "PAPER";

            if (k==2) return "SCISSORS";

            return "";

    }


    public static void main(String[] args)

    {


        String na = "", nb = "";

     /*   String na = "Test1"; // these two lines

        String nb = "Test2"; // will be the only ones changed to switch who is fighting whom */

        // how about, instead get user input?

        Scanner inp = new Scanner(System.in);

        System.out.print("\n\nFirst Algorithm: ");

        na = inp.next();

        System.out.print("\nSecond Algorithm: ");

        nb = inp.next();


        System.out.print(na + " vs " + nb + "\n\n");

        ropasc rps1 = new ropasc(na);

        ropasc rps2 = new ropasc(nb);

        int res1 = 0, res2 = 0, win1 = 0, win2 = 0, result = 2;

        for (int i=0; i< numGames; i++)

        {

            res1 = rps1.next(rps2.get(), i);

            res2 = rps2.next(rps1.get(), i);

            result = (2+res1+res2) % 3;

            if (result==1) win2++;

            if (result==0) win1++;

            System.out.println(conv(res1) + " vs " + conv(res2));

        }

        String zprint ="";

        if (win1>win2) zprint = rps1.getName() + " wins " + win1 + " games to " + win2 + "!!!\n";

        if (win1<win2) zprint = rps2.getName() + " wins " + win2 + " games to " + win1 + "!!!\n";

        if (win1==win2) { zprint = "Both players won " + win1 + " games! The match was a tie\n"; } else { zprint += "There were " + (numGames - win1 - win2) + " ties\n"; }

        System.out.print(zprint);

    }

}

New entrants will be like this:

public int nameOfAlgorithmint[] a, int[] b, int i)

{

// body here

}

and will be inserted into the program after the algorithm method for test3

All algorithms must return one of these three integers: 0 (ROCK), 1 (PAPER), 2 (SCISSORS)!!!

good luck and post here with remarks, questions, etc.... let's get a signup list?

1) Unreality

2) ...

should we shoot for eight people?

REMEMBER YOU DONT NEED TO KNOW PROGRAMMING... you just need to make a killer algorithm that's a whiz at R/P/S :) I can write the actual code for it for you if you want!

Link to comment
Share on other sites

  • Answers 257
  • Created
  • Last Reply

Top Posters For This Question

Recommended Posts

  • 0

Oh, and I don't think that the first three rounds should count toward any of the win/loss/tie counts, so they won't help decide who wins or ties the match, and they won't be included in the log score.

Link to comment
Share on other sites

  • 0

Well... It's been fun to see ALL these things that came out from a simple idea of RPS contest, I bet unreality never thought his idea of a game would go this far... Kudos unreality :thumbsup:

haha yeah

What's a Vector<>? I know ArrayList<> but haven't learned Vector...

Vector is pretty much like ArrayList from what I've gathered

Oh, and I don't think that the first three rounds should count toward any of the win/loss/tie counts, so they won't help decide who wins or ties the match, and they won't be included in the log score.

yeah I was thinking that too, but I think it should be just i=0 that doesn't count (after that it's strategy). Does anyone else think i=0 should be omitted from the scoring?

Link to comment
Share on other sites

  • 0

I prefer omitting the first three rather than just the first. It's hard to really be pure strategy after only one round.

but it's the only the first round (i=0) where both programs are blind and just have a set move. After that, they can start even then to try to predict patterns. If the first three moves didn't matter then everyone would have their programs BS the first three rounds and so pattern detection wouldn't be able to kick in until some rounds after that, you see? It's arbritration... I think it's a good idea to make i=0 not matter, but after that it's strategy, fledgling as it is for those first few rounds, but it develops into more knowledgeable strategy. You could push it farther back but two rounds would just be wasted. If any rounds are omitted it should be and only be i=0

Link to comment
Share on other sites

  • 0

I wrote "pattern_seeker_defeater" and this is how it beat pattern seeker:

Welcome to R/P/S!

0 (hawk)

1 (test1)

2 (test2)

3 (test3)

4 (izzy)

5 (phil)

6 (backatyou)

7 (dnoob)

8 (rand)

9 (allrock)

10 (jarze)

11 (medji)

12 (mr_apple_pi)

13 (darth1)

14 (izzy1)

15 (izzy2)

16 (darth2)

17 (darth3)

18 (mrapple1)

19 (medji1)

20 (medji2)

21 (patternSeeker)

22 (phil1)

23 (phil2)

24 (unr1)

25 (unr2)

26 (phil3)

27 (apple3)

28 (backatyou2)

29 (fib2)

30 (apple4)

31 (unr3)

32 (phil_pseudo)

33 (collatz)

34 (phillip!)

35 (plasmid!)

36 (unreality!)

37 (pattern_seeker_defeater)

Enter the numbers of the programs you wish to fight, separated by spaces:

37 21

pattern_seeker_defeater vs patternSeeker

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

scissors vs paper

rock vs scissors

pattern_seeker_defeater won 100 games and patternSeeker won 0 ~ there were 0 ties

pattern_seeker_defeater wins!!!

Final Results:

pattern_seeker_defeater vs patternSeeker: pattern_seeker_defeater wins!!!

Win Count:

pattern_seeker_defeater: 1.0

patternSeeker: 0.0

Type y for analysis n

Type y to play again n

Thanks for playing!

Link to comment
Share on other sites

  • 0

If the first three moves didn't matter then everyone would have their programs BS the first three rounds and so pattern detection wouldn't be able to kick in until some rounds after that, you see?

Good point... so yeah, just omit i=0

@PatternSeekerDefeater

sexy.

I hope that my program stands a better shot against PatternSeeker (or PatternSeeker 2.0) in T3... but even if I do somehow win, I know it's not gonna as one sided as PatternSeeker dominated Darth1 in T2. I remember that, for most of the game, it looked like this:

Darht1 v PatternSeeker

Rock v Rock

Rock v Paper

Paper v Paper

Paper v Scissors

Scissors v Scissors

Scissors v Rock

And it ended up that there were 20 something ties and 20 something wins for PS. My program successfully did what I wanted it do, to a point: play something that would either tie/win the opponents next move, based on the R/P/S I thought would be LEAST likely to be the opponent's next move. It did so on the first move, but got outsmarted by PS on the second, regardless of which bracket my program was in (except for one little thing that caused PS to stumble and my program started _really_ doing what I wanted it to do, for about six rounds).

Anyway.

Trying to figure out these anti-programs sounds really fun! But I gotta return to work -.-

EDIT:

I wonder if any of the anti-programs will actually be good all-around programs

Edited by DarthNoob
Link to comment
Share on other sites

  • 0

I wonder if any of the anti-programs will actually be good all-around programs

I don't think so because:

any anti-program is static, that is, it will be the same every time it's run no matter the opponent [there is one case where this would not be true but it would be hard to make, see asterisk below]. Thus, the static pattern will either seem pseudorandom, and thus do about average OR it will be some fairly simple pattern (as in pattern_seeker_defeater) that may happen to luckily beat the one algo it's designed to, but a pattern that all the other pattern seekers would probably beat. So if it did win against others it would be purely coincidence I think. Let's find out:

Final Results:

pattern_seeker_defeater vs test1: test1 wins!!!

pattern_seeker_defeater vs test2: It was a tie!!!

pattern_seeker_defeater vs test3: It was a tie!!!

pattern_seeker_defeater vs izzy: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs phil: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs backatyou: It was a tie!!!

pattern_seeker_defeater vs dnoob: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs allrock: allrock wins!!!

pattern_seeker_defeater vs jarze: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs medji: medji wins!!!

pattern_seeker_defeater vs mr_apple_pi: mr_apple_pi wins!!!

pattern_seeker_defeater vs darth1: darth1 wins!!!

pattern_seeker_defeater vs izzy1: izzy1 wins!!!

pattern_seeker_defeater vs izzy2: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs darth2: It was a tie!!!

pattern_seeker_defeater vs darth3: darth3 wins!!!

pattern_seeker_defeater vs mrapple1: It was a tie!!!

pattern_seeker_defeater vs medji1: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs medji2: It was a tie!!!

pattern_seeker_defeater vs patternSeeker: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs phil1: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs phil2: phil2 wins!!!

pattern_seeker_defeater vs unr1: unr1 wins!!!

pattern_seeker_defeater vs unr2: unr2 wins!!!

pattern_seeker_defeater vs phil3: It was a tie!!!

pattern_seeker_defeater vs apple3: It was a tie!!!

pattern_seeker_defeater vs backatyou2: backatyou2 wins!!!

test1 vs test2: test2 wins!!!

test1 vs test3: It was a tie!!!

test1 vs izzy: It was a tie!!!

test1 vs phil: test1 wins!!!

test1 vs backatyou: test1 wins!!!

test1 vs dnoob: It was a tie!!!

test1 vs allrock: It was a tie!!!

test1 vs jarze: jarze wins!!!

test1 vs medji: It was a tie!!!

test1 vs mr_apple_pi: mr_apple_pi wins!!!

test1 vs darth1: It was a tie!!!

test1 vs izzy1: izzy1 wins!!!

test1 vs izzy2: test1 wins!!!

test1 vs darth2: darth2 wins!!!

test1 vs darth3: test1 wins!!!

test1 vs mrapple1: mrapple1 wins!!!

test1 vs medji1: test1 wins!!!

test1 vs medji2: medji2 wins!!!

test1 vs patternSeeker: patternSeeker wins!!!

test1 vs phil1: test1 wins!!!

test1 vs phil2: It was a tie!!!

test1 vs unr1: test1 wins!!!

test1 vs unr2: unr2 wins!!!

test1 vs phil3: It was a tie!!!

test1 vs apple3: test1 wins!!!

test1 vs backatyou2: backatyou2 wins!!!

test2 vs test3: It was a tie!!!

test2 vs izzy: test2 wins!!!

test2 vs phil: test2 wins!!!

test2 vs backatyou: test2 wins!!!

test2 vs dnoob: It was a tie!!!

test2 vs allrock: It was a tie!!!

test2 vs jarze: It was a tie!!!

test2 vs medji: test2 wins!!!

test2 vs mr_apple_pi: test2 wins!!!

test2 vs darth1: darth1 wins!!!

test2 vs izzy1: test2 wins!!!

test2 vs izzy2: izzy2 wins!!!

test2 vs darth2: test2 wins!!!

test2 vs darth3: darth3 wins!!!

test2 vs mrapple1: mrapple1 wins!!!

test2 vs medji1: It was a tie!!!

test2 vs medji2: It was a tie!!!

test2 vs patternSeeker: patternSeeker wins!!!

test2 vs phil1: It was a tie!!!

test2 vs phil2: It was a tie!!!

test2 vs unr1: test2 wins!!!

test2 vs unr2: unr2 wins!!!

test2 vs phil3: It was a tie!!!

test2 vs apple3: apple3 wins!!!

test2 vs backatyou2: test2 wins!!!

test3 vs izzy: test3 wins!!!

test3 vs phil: It was a tie!!!

test3 vs backatyou: backatyou wins!!!

test3 vs dnoob: dnoob wins!!!

test3 vs allrock: It was a tie!!!

test3 vs jarze: test3 wins!!!

test3 vs medji: test3 wins!!!

test3 vs mr_apple_pi: mr_apple_pi wins!!!

test3 vs darth1: darth1 wins!!!

test3 vs izzy1: test3 wins!!!

test3 vs izzy2: test3 wins!!!

test3 vs darth2: darth2 wins!!!

test3 vs darth3: darth3 wins!!!

test3 vs mrapple1: It was a tie!!!

test3 vs medji1: It was a tie!!!

test3 vs medji2: medji2 wins!!!

test3 vs patternSeeker: test3 wins!!!

test3 vs phil1: test3 wins!!!

test3 vs phil2: It was a tie!!!

test3 vs unr1: It was a tie!!!

test3 vs unr2: test3 wins!!!

test3 vs phil3: It was a tie!!!

test3 vs apple3: It was a tie!!!

test3 vs backatyou2: backatyou2 wins!!!

izzy vs phil: izzy wins!!!

izzy vs backatyou: It was a tie!!!

izzy vs dnoob: izzy wins!!!

izzy vs allrock: izzy wins!!!

izzy vs jarze: jarze wins!!!

izzy vs medji: It was a tie!!!

izzy vs mr_apple_pi: mr_apple_pi wins!!!

izzy vs darth1: darth1 wins!!!

izzy vs izzy1: izzy wins!!!

izzy vs izzy2: izzy wins!!!

izzy vs darth2: darth2 wins!!!

izzy vs darth3: izzy wins!!!

izzy vs mrapple1: mrapple1 wins!!!

izzy vs medji1: medji1 wins!!!

izzy vs medji2: medji2 wins!!!

izzy vs patternSeeker: patternSeeker wins!!!

izzy vs phil1: izzy wins!!!

izzy vs phil2: izzy wins!!!

izzy vs unr1: unr1 wins!!!

izzy vs unr2: unr2 wins!!!

izzy vs phil3: It was a tie!!!

izzy vs apple3: apple3 wins!!!

izzy vs backatyou2: backatyou2 wins!!!

phil vs backatyou: phil wins!!!

phil vs dnoob: phil wins!!!

phil vs allrock: It was a tie!!!

phil vs jarze: phil wins!!!

phil vs medji: medji wins!!!

phil vs mr_apple_pi: mr_apple_pi wins!!!

phil vs darth1: darth1 wins!!!

phil vs izzy1: izzy1 wins!!!

phil vs izzy2: izzy2 wins!!!

phil vs darth2: phil wins!!!

phil vs darth3: darth3 wins!!!

phil vs mrapple1: It was a tie!!!

phil vs medji1: medji1 wins!!!

phil vs medji2: phil wins!!!

phil vs patternSeeker: phil wins!!!

phil vs phil1: phil wins!!!

phil vs phil2: It was a tie!!!

phil vs unr1: phil wins!!!

phil vs unr2: unr2 wins!!!

phil vs phil3: It was a tie!!!

phil vs apple3: phil wins!!!

phil vs backatyou2: backatyou2 wins!!!

backatyou vs dnoob: backatyou wins!!!

backatyou vs allrock: backatyou wins!!!

backatyou vs jarze: jarze wins!!!

backatyou vs medji: backatyou wins!!!

backatyou vs mr_apple_pi: mr_apple_pi wins!!!

backatyou vs darth1: It was a tie!!!

backatyou vs izzy1: backatyou wins!!!

backatyou vs izzy2: backatyou wins!!!

backatyou vs darth2: It was a tie!!!

backatyou vs darth3: backatyou wins!!!

backatyou vs mrapple1: It was a tie!!!

backatyou vs medji1: medji1 wins!!!

backatyou vs medji2: medji2 wins!!!

backatyou vs patternSeeker: patternSeeker wins!!!

backatyou vs phil1: backatyou wins!!!

backatyou vs phil2: backatyou wins!!!

backatyou vs unr1: backatyou wins!!!

backatyou vs unr2: backatyou wins!!!

backatyou vs phil3: backatyou wins!!!

backatyou vs apple3: apple3 wins!!!

backatyou vs backatyou2: backatyou2 wins!!!

dnoob vs allrock: allrock wins!!!

dnoob vs jarze: It was a tie!!!

dnoob vs medji: medji wins!!!

dnoob vs mr_apple_pi: mr_apple_pi wins!!!

dnoob vs darth1: dnoob wins!!!

dnoob vs izzy1: izzy1 wins!!!

dnoob vs izzy2: dnoob wins!!!

dnoob vs darth2: darth2 wins!!!

dnoob vs darth3: darth3 wins!!!

dnoob vs mrapple1: It was a tie!!!

dnoob vs medji1: dnoob wins!!!

dnoob vs medji2: dnoob wins!!!

dnoob vs patternSeeker: It was a tie!!!

dnoob vs phil1: phil1 wins!!!

dnoob vs phil2: phil2 wins!!!

dnoob vs unr1: unr1 wins!!!

dnoob vs unr2: unr2 wins!!!

dnoob vs phil3: phil3 wins!!!

dnoob vs apple3: It was a tie!!!

dnoob vs backatyou2: backatyou2 wins!!!

allrock vs jarze: jarze wins!!!

allrock vs medji: It was a tie!!!

allrock vs mr_apple_pi: mr_apple_pi wins!!!

allrock vs darth1: darth1 wins!!!

allrock vs izzy1: izzy1 wins!!!

allrock vs izzy2: izzy2 wins!!!

allrock vs darth2: darth2 wins!!!

allrock vs darth3: darth3 wins!!!

allrock vs mrapple1: It was a tie!!!

allrock vs medji1: It was a tie!!!

allrock vs medji2: It was a tie!!!

allrock vs patternSeeker: patternSeeker wins!!!

allrock vs phil1: phil1 wins!!!

allrock vs phil2: It was a tie!!!

allrock vs unr1: unr1 wins!!!

allrock vs unr2: unr2 wins!!!

allrock vs phil3: It was a tie!!!

allrock vs apple3: allrock wins!!!

allrock vs backatyou2: backatyou2 wins!!!

jarze vs medji: jarze wins!!!

jarze vs mr_apple_pi: jarze wins!!!

jarze vs darth1: jarze wins!!!

jarze vs izzy1: jarze wins!!!

jarze vs izzy2: izzy2 wins!!!

jarze vs darth2: jarze wins!!!

jarze vs darth3: jarze wins!!!

jarze vs mrapple1: It was a tie!!!

jarze vs medji1: medji1 wins!!!

jarze vs medji2: medji2 wins!!!

jarze vs patternSeeker: patternSeeker wins!!!

jarze vs phil1: It was a tie!!!

jarze vs phil2: jarze wins!!!

jarze vs unr1: unr1 wins!!!

jarze vs unr2: jarze wins!!!

jarze vs phil3: jarze wins!!!

jarze vs apple3: jarze wins!!!

jarze vs backatyou2: jarze wins!!!

medji vs mr_apple_pi: medji wins!!!

medji vs darth1: medji wins!!!

medji vs izzy1: izzy1 wins!!!

medji vs izzy2: medji wins!!!

medji vs darth2: It was a tie!!!

medji vs darth3: medji wins!!!

medji vs mrapple1: mrapple1 wins!!!

medji vs medji1: medji wins!!!

medji vs medji2: medji2 wins!!!

medji vs patternSeeker: patternSeeker wins!!!

medji vs phil1: It was a tie!!!

medji vs phil2: It was a tie!!!

medji vs unr1: medji wins!!!

medji vs unr2: medji wins!!!

medji vs phil3: medji wins!!!

medji vs apple3: apple3 wins!!!

medji vs backatyou2: backatyou2 wins!!!

mr_apple_pi vs darth1: darth1 wins!!!

mr_apple_pi vs izzy1: izzy1 wins!!!

mr_apple_pi vs izzy2: mr_apple_pi wins!!!

mr_apple_pi vs darth2: It was a tie!!!

mr_apple_pi vs darth3: mr_apple_pi wins!!!

mr_apple_pi vs mrapple1: mrapple1 wins!!!

mr_apple_pi vs medji1: medji1 wins!!!

mr_apple_pi vs medji2: medji2 wins!!!

mr_apple_pi vs patternSeeker: patternSeeker wins!!!

mr_apple_pi vs phil1: mr_apple_pi wins!!!

mr_apple_pi vs phil2: mr_apple_pi wins!!!

mr_apple_pi vs unr1: unr1 wins!!!

mr_apple_pi vs unr2: mr_apple_pi wins!!!

mr_apple_pi vs phil3: mr_apple_pi wins!!!

mr_apple_pi vs apple3: mr_apple_pi wins!!!

mr_apple_pi vs backatyou2: backatyou2 wins!!!

darth1 vs izzy1: izzy1 wins!!!

darth1 vs izzy2: darth1 wins!!!

darth1 vs darth2: darth1 wins!!!

darth1 vs darth3: darth1 wins!!!

darth1 vs mrapple1: darth1 wins!!!

darth1 vs medji1: darth1 wins!!!

darth1 vs medji2: darth1 wins!!!

darth1 vs patternSeeker: patternSeeker wins!!!

darth1 vs phil1: darth1 wins!!!

darth1 vs phil2: darth1 wins!!!

darth1 vs unr1: darth1 wins!!!

darth1 vs unr2: darth1 wins!!!

darth1 vs phil3: It was a tie!!!

darth1 vs apple3: darth1 wins!!!

darth1 vs backatyou2: backatyou2 wins!!!

izzy1 vs izzy2: izzy2 wins!!!

izzy1 vs darth2: izzy1 wins!!!

izzy1 vs darth3: izzy1 wins!!!

izzy1 vs mrapple1: mrapple1 wins!!!

izzy1 vs medji1: medji1 wins!!!

izzy1 vs medji2: medji2 wins!!!

izzy1 vs patternSeeker: patternSeeker wins!!!

izzy1 vs phil1: izzy1 wins!!!

izzy1 vs phil2: izzy1 wins!!!

izzy1 vs unr1: unr1 wins!!!

izzy1 vs unr2: izzy1 wins!!!

izzy1 vs phil3: izzy1 wins!!!

izzy1 vs apple3: izzy1 wins!!!

izzy1 vs backatyou2: backatyou2 wins!!!

izzy2 vs darth2: darth2 wins!!!

izzy2 vs darth3: izzy2 wins!!!

izzy2 vs mrapple1: mrapple1 wins!!!

izzy2 vs medji1: It was a tie!!!

izzy2 vs medji2: izzy2 wins!!!

izzy2 vs patternSeeker: patternSeeker wins!!!

izzy2 vs phil1: phil1 wins!!!

izzy2 vs phil2: izzy2 wins!!!

izzy2 vs unr1: izzy2 wins!!!

izzy2 vs unr2: izzy2 wins!!!

izzy2 vs phil3: izzy2 wins!!!

izzy2 vs apple3: apple3 wins!!!

izzy2 vs backatyou2: It was a tie!!!

darth2 vs darth3: darth2 wins!!!

darth2 vs mrapple1: mrapple1 wins!!!

darth2 vs medji1: darth2 wins!!!

darth2 vs medji2: medji2 wins!!!

darth2 vs patternSeeker: patternSeeker wins!!!

darth2 vs phil1: darth2 wins!!!

darth2 vs phil2: darth2 wins!!!

darth2 vs unr1: unr1 wins!!!

darth2 vs unr2: unr2 wins!!!

darth2 vs phil3: darth2 wins!!!

darth2 vs apple3: apple3 wins!!!

darth2 vs backatyou2: backatyou2 wins!!!

darth3 vs mrapple1: It was a tie!!!

darth3 vs medji1: darth3 wins!!!

darth3 vs medji2: darth3 wins!!!

darth3 vs patternSeeker: darth3 wins!!!

darth3 vs phil1: darth3 wins!!!

darth3 vs phil2: darth3 wins!!!

darth3 vs unr1: darth3 wins!!!

darth3 vs unr2: unr2 wins!!!

darth3 vs phil3: phil3 wins!!!

darth3 vs apple3: darth3 wins!!!

darth3 vs backatyou2: backatyou2 wins!!!

mrapple1 vs medji1: It was a tie!!!

mrapple1 vs medji2: It was a tie!!!

mrapple1 vs patternSeeker: patternSeeker wins!!!

mrapple1 vs phil1: It was a tie!!!

mrapple1 vs phil2: It was a tie!!!

mrapple1 vs unr1: It was a tie!!!

mrapple1 vs unr2: unr2 wins!!!

mrapple1 vs phil3: It was a tie!!!

mrapple1 vs apple3: It was a tie!!!

mrapple1 vs backatyou2: mrapple1 wins!!!

medji1 vs medji2: It was a tie!!!

medji1 vs patternSeeker: patternSeeker wins!!!

medji1 vs phil1: medji1 wins!!!

medji1 vs phil2: It was a tie!!!

medji1 vs unr1: medji1 wins!!!

medji1 vs unr2: medji1 wins!!!

medji1 vs phil3: It was a tie!!!

medji1 vs apple3: medji1 wins!!!

medji1 vs backatyou2: backatyou2 wins!!!

medji2 vs patternSeeker: medji2 wins!!!

medji2 vs phil1: medji2 wins!!!

medji2 vs phil2: It was a tie!!!

medji2 vs unr1: medji2 wins!!!

medji2 vs unr2: unr2 wins!!!

medji2 vs phil3: It was a tie!!!

medji2 vs apple3: apple3 wins!!!

medji2 vs backatyou2: backatyou2 wins!!!

patternSeeker vs phil1: It was a tie!!!

patternSeeker vs phil2: patternSeeker wins!!!

patternSeeker vs unr1: unr1 wins!!!

patternSeeker vs unr2: patternSeeker wins!!!

patternSeeker vs phil3: patternSeeker wins!!!

patternSeeker vs apple3: patternSeeker wins!!!

patternSeeker vs backatyou2: patternSeeker wins!!!

phil1 vs phil2: phil1 wins!!!

phil1 vs unr1: unr1 wins!!!

phil1 vs unr2: It was a tie!!!

phil1 vs phil3: phil1 wins!!!

phil1 vs apple3: apple3 wins!!!

phil1 vs backatyou2: backatyou2 wins!!!

phil2 vs unr1: unr1 wins!!!

phil2 vs unr2: unr2 wins!!!

phil2 vs phil3: It was a tie!!!

phil2 vs apple3: phil2 wins!!!

phil2 vs backatyou2: backatyou2 wins!!!

unr1 vs unr2: unr2 wins!!!

unr1 vs phil3: phil3 wins!!!

unr1 vs apple3: apple3 wins!!!

unr1 vs backatyou2: backatyou2 wins!!!

unr2 vs phil3: unr2 wins!!!

unr2 vs apple3: It was a tie!!!

unr2 vs backatyou2: backatyou2 wins!!!

phil3 vs apple3: apple3 wins!!!

phil3 vs backatyou2: backatyou2 wins!!!

apple3 vs backatyou2: backatyou2 wins!!!

Win Count:

pattern_seeker_defeater: 12.0

test1: 13.0

test2: 15.0

test3: 13.5

izzy: 10.0

phil: 11.5

backatyou: 14.5

dnoob: 8.0

allrock: 8.0

jarze: 17.0

medji: 14.0

mr_apple_pi: 15.5

darth1: 19.5

izzy1: 15.0

izzy2: 12.0

darth2: 13.0

darth3: 13.5

mrapple1: 16.5

medji1: 14.0

medji2: 15.5

patternSeeker: 20.0

phil1: 8.0

phil2: 8.0

unr1: 12.0

unr2: 15.0

phil3: 9.0

apple3: 12.5

backatyou2: 22.5

Type y for analysis y


[Algos: 28] [Games: 378] [Average Score: 13.5] [Sdev: 3.598] [MAD: 2.750]


From Greatest to Least:

     backatyou2: 22.5       [1312 wins, 628 ties, 760 losses] 29.524

  patternSeeker: 20.0       [1366 wins, 688 ties, 646 losses] 30.355

         darth1: 19.5       [1213 wins, 949 ties, 538 losses] 26.104

          jarze: 17.0       [1126 wins, 948 ties, 626 losses] 24.001

       mrapple1: 16.5       [1021 wins, 889 ties, 790 losses] 13.727

    mr_apple_pi: 15.5       [920 wins, 886 ties, 894 losses] 13.683

         medji2: 15.5       [876 wins, 882 ties, 942 losses] 11.109

          test2: 15.0       [950 wins, 856 ties, 894 losses] 15.296

          izzy1: 15.0       [1018 wins, 880 ties, 802 losses] 21.620

           unr2: 15.0       [1390 wins, 620 ties, 690 losses] 23.109

      backatyou: 14.5       [1018 wins, 785 ties, 897 losses] 16.496

          medji: 14.0       [630 wins, 1362 ties, 708 losses] 12.341

         medji1: 14.0       [1005 wins, 738 ties, 957 losses] 13.385

          test3: 13.5       [880 wins, 1004 ties, 816 losses] 10.256

         darth3: 13.5       [987 wins, 503 ties, 1210 losses] 18.428

          test1: 13.0       [635 wins, 1200 ties, 865 losses] 10.085

         darth2: 13.0       [1089 wins, 744 ties, 867 losses] 16.492

         apple3: 12.5       [978 wins, 809 ties, 913 losses]  8.789

pattern_seeker_defeater: 12.0       [973 wins, 632 ties, 1095 losses]  8.357

          izzy2: 12.0       [955 wins, 782 ties, 963 losses] 11.630

           unr1: 12.0       [858 wins, 915 ties, 927 losses]  9.724

           phil: 11.5       [975 wins, 751 ties, 974 losses]  9.905

           izzy: 10.0       [928 wins, 899 ties, 873 losses] 11.128

          phil3: 9.0       [478 wins, 1354 ties, 868 losses]  4.273

          dnoob: 8.0       [735 wins, 904 ties, 1061 losses]  4.063

        allrock: 8.0       [372 wins, 819 ties, 1509 losses]  3.361

          phil1: 8.0       [616 wins, 1002 ties, 1082 losses]  7.303

          phil2: 8.0       [372 wins, 819 ties, 1509 losses]  3.361

The biggest blowout game(s) was(were): pattern_seeker_defeater won 100 games and patternSeeker won 0 ~ there were 0 ties test1 won 0 games and test2 won 100 ~ there were 0 ties test1 won 100 games and backatyou won 0 ~ there were 0 ties test2 won 0 games and darth1 won 100 ~ there were 0 ties test2 won 100 games and izzy1 won 0 ~ there were 0 ties test2 won 0 games and mrapple1 won 100 ~ there were 0 ties test2 won 0 games and unr2 won 100 ~ there were 0 ties backatyou won 100 games and allrock won 0 ~ there were 0 ties backatyou won 100 games and phil2 won 0 ~ there were 0 ties allrock won 0 games and backatyou2 won 100 ~ there were 0 ties phil2 won 0 games and backatyou2 won 100 ~ there were 0 ties Type y to play again n Thanks for playing!
So it didn't do horrible, but it got 12 points and the average score was 13.5, so not very good either *
* It may be possible to create a more versatile defeater that takes the OPPONENT's last move and somehow uses that knowledge to defeat their next one. In this case, it would perform non-statically when faced with algos that aren't the same as its sworn enemy. But I couldn't say whether that would perform better or worse against these other enemies than its static version. Here's an attempt at a "dynamic" jarze_defeater... jarze:

if (i==0) return ROCK;

return (b[i-1]+1)%3;

the "static" jarze_defeater:

if (i==0) return PAPER;

return (a[i-1]+2)%3;

which is identical to:

return (2*i + 1)%3;

(static means an algo uses just 'i' and 'a' (or degeneratively, just i) to determine its move and thus uses the same moves independent of its enemy. Dynamic would mean it uses 'b' in its process and thus takes into account the enemy's moves. ) In attempting to write this, I thought about how I could do it, and I realized it is NOT possible to write a dynamic defeater of "jarze", because jarze is the opposite of static - it ONLY uses b to determine its move (except when i==0 of course) and never uses 'a' (its own moves). Jarze's next move is based entirely on its 'b' array, or YOUR 'a' array... let's say you're writing 'Defeator' specifically to defeat 'Algo'

VARIABLE                    ALGO'S VARIABLE           DEFEATOR'S VARIABLE

round number                       i                           i

array of algo's moves              a                           b

array of defeator's moves          b                           a

whatever ALGO uses in determining its next move, DEFEATOR has to use the compliment of that in determining how to beat ALGO's next move. So if ALGO uses only i and a, or only i, ("static") then DEFEATOR must use its i and b variables. If ALGO uses its b variable ("dynamic") then DEFEATOR uses its a variable.

So the only way to make DEFEATOR dynamic is if DEFEATOR can use its 'b' array which means ALGO must use its 'a' array.

so a jarze_defeator will always be static, but it may be possible with other algos... hmmm...

Link to comment
Share on other sites

  • 0

I'm going to go ahead and assume that im the only one who wants i=0 to count... If everyone chooses a specific output for i=0 then it becomes somewhat of a logical decision instead of a random win/loss. in t1 or t2 i would choose paper because beginners have a tendency of choosing rock. However in t3 the competition is more experienced and then it becomes more of a paradox. i guess its still random, but its fun to try and guess the most common first move.

Also, unreality, thanks for already making a static pattern seeker beater. I was thinking about doing that myself and submitting it for t3, but seeing how it performed i should probably think of something else.

Link to comment
Share on other sites

  • 0

Also, what if within your anti program you put in variables that relied on the opponents move set? You could still organize this so that it would play the same set of moves against the program it is meant to beat, but give more chance of beating other programs.

pattern_seeker_defeater vs patternSeeker

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

for example for i=1 and i=4 you could input your opponents more common move. changes like this might not make the program better, but it would get rid of the static aspect of the program.

oh well its just a thought.

Link to comment
Share on other sites

  • 0

I don't think so because:

any anti-program is static, that is, it will be the same every time it's run no matter the opponent [there is one case where this would not be true but it would be hard to make, see asterisk below]. Thus, the static pattern will either seem pseudorandom, and thus do about average OR it will be some fairly simple pattern (as in pattern_seeker_defeater) that may happen to luckily beat the one algo it's designed to, but a pattern that all the other pattern seekers would probably beat. So if it did win against others it would be purely coincidence I think. Let's find out:

Final Results:

pattern_seeker_defeater vs test1: test1 wins!!!

pattern_seeker_defeater vs test2: It was a tie!!!

pattern_seeker_defeater vs test3: It was a tie!!!

pattern_seeker_defeater vs izzy: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs phil: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs backatyou: It was a tie!!!

pattern_seeker_defeater vs dnoob: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs allrock: allrock wins!!!

pattern_seeker_defeater vs jarze: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs medji: medji wins!!!

pattern_seeker_defeater vs mr_apple_pi: mr_apple_pi wins!!!

pattern_seeker_defeater vs darth1: darth1 wins!!!

pattern_seeker_defeater vs izzy1: izzy1 wins!!!

pattern_seeker_defeater vs izzy2: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs darth2: It was a tie!!!

pattern_seeker_defeater vs darth3: darth3 wins!!!

pattern_seeker_defeater vs mrapple1: It was a tie!!!

pattern_seeker_defeater vs medji1: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs medji2: It was a tie!!!

pattern_seeker_defeater vs patternSeeker: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs phil1: pattern_seeker_defeater wins!!!

pattern_seeker_defeater vs phil2: phil2 wins!!!

pattern_seeker_defeater vs unr1: unr1 wins!!!

pattern_seeker_defeater vs unr2: unr2 wins!!!

pattern_seeker_defeater vs phil3: It was a tie!!!

pattern_seeker_defeater vs apple3: It was a tie!!!

pattern_seeker_defeater vs backatyou2: backatyou2 wins!!!

test1 vs test2: test2 wins!!!

test1 vs test3: It was a tie!!!

test1 vs izzy: It was a tie!!!

test1 vs phil: test1 wins!!!

test1 vs backatyou: test1 wins!!!

test1 vs dnoob: It was a tie!!!

test1 vs allrock: It was a tie!!!

test1 vs jarze: jarze wins!!!

test1 vs medji: It was a tie!!!

test1 vs mr_apple_pi: mr_apple_pi wins!!!

test1 vs darth1: It was a tie!!!

test1 vs izzy1: izzy1 wins!!!

test1 vs izzy2: test1 wins!!!

test1 vs darth2: darth2 wins!!!

test1 vs darth3: test1 wins!!!

test1 vs mrapple1: mrapple1 wins!!!

test1 vs medji1: test1 wins!!!

test1 vs medji2: medji2 wins!!!

test1 vs patternSeeker: patternSeeker wins!!!

test1 vs phil1: test1 wins!!!

test1 vs phil2: It was a tie!!!

test1 vs unr1: test1 wins!!!

test1 vs unr2: unr2 wins!!!

test1 vs phil3: It was a tie!!!

test1 vs apple3: test1 wins!!!

test1 vs backatyou2: backatyou2 wins!!!

test2 vs test3: It was a tie!!!

test2 vs izzy: test2 wins!!!

test2 vs phil: test2 wins!!!

test2 vs backatyou: test2 wins!!!

test2 vs dnoob: It was a tie!!!

test2 vs allrock: It was a tie!!!

test2 vs jarze: It was a tie!!!

test2 vs medji: test2 wins!!!

test2 vs mr_apple_pi: test2 wins!!!

test2 vs darth1: darth1 wins!!!

test2 vs izzy1: test2 wins!!!

test2 vs izzy2: izzy2 wins!!!

test2 vs darth2: test2 wins!!!

test2 vs darth3: darth3 wins!!!

test2 vs mrapple1: mrapple1 wins!!!

test2 vs medji1: It was a tie!!!

test2 vs medji2: It was a tie!!!

test2 vs patternSeeker: patternSeeker wins!!!

test2 vs phil1: It was a tie!!!

test2 vs phil2: It was a tie!!!

test2 vs unr1: test2 wins!!!

test2 vs unr2: unr2 wins!!!

test2 vs phil3: It was a tie!!!

test2 vs apple3: apple3 wins!!!

test2 vs backatyou2: test2 wins!!!

test3 vs izzy: test3 wins!!!

test3 vs phil: It was a tie!!!

test3 vs backatyou: backatyou wins!!!

test3 vs dnoob: dnoob wins!!!

test3 vs allrock: It was a tie!!!

test3 vs jarze: test3 wins!!!

test3 vs medji: test3 wins!!!

test3 vs mr_apple_pi: mr_apple_pi wins!!!

test3 vs darth1: darth1 wins!!!

test3 vs izzy1: test3 wins!!!

test3 vs izzy2: test3 wins!!!

test3 vs darth2: darth2 wins!!!

test3 vs darth3: darth3 wins!!!

test3 vs mrapple1: It was a tie!!!

test3 vs medji1: It was a tie!!!

test3 vs medji2: medji2 wins!!!

test3 vs patternSeeker: test3 wins!!!

test3 vs phil1: test3 wins!!!

test3 vs phil2: It was a tie!!!

test3 vs unr1: It was a tie!!!

test3 vs unr2: test3 wins!!!

test3 vs phil3: It was a tie!!!

test3 vs apple3: It was a tie!!!

test3 vs backatyou2: backatyou2 wins!!!

izzy vs phil: izzy wins!!!

izzy vs backatyou: It was a tie!!!

izzy vs dnoob: izzy wins!!!

izzy vs allrock: izzy wins!!!

izzy vs jarze: jarze wins!!!

izzy vs medji: It was a tie!!!

izzy vs mr_apple_pi: mr_apple_pi wins!!!

izzy vs darth1: darth1 wins!!!

izzy vs izzy1: izzy wins!!!

izzy vs izzy2: izzy wins!!!

izzy vs darth2: darth2 wins!!!

izzy vs darth3: izzy wins!!!

izzy vs mrapple1: mrapple1 wins!!!

izzy vs medji1: medji1 wins!!!

izzy vs medji2: medji2 wins!!!

izzy vs patternSeeker: patternSeeker wins!!!

izzy vs phil1: izzy wins!!!

izzy vs phil2: izzy wins!!!

izzy vs unr1: unr1 wins!!!

izzy vs unr2: unr2 wins!!!

izzy vs phil3: It was a tie!!!

izzy vs apple3: apple3 wins!!!

izzy vs backatyou2: backatyou2 wins!!!

phil vs backatyou: phil wins!!!

phil vs dnoob: phil wins!!!

phil vs allrock: It was a tie!!!

phil vs jarze: phil wins!!!

phil vs medji: medji wins!!!

phil vs mr_apple_pi: mr_apple_pi wins!!!

phil vs darth1: darth1 wins!!!

phil vs izzy1: izzy1 wins!!!

phil vs izzy2: izzy2 wins!!!

phil vs darth2: phil wins!!!

phil vs darth3: darth3 wins!!!

phil vs mrapple1: It was a tie!!!

phil vs medji1: medji1 wins!!!

phil vs medji2: phil wins!!!

phil vs patternSeeker: phil wins!!!

phil vs phil1: phil wins!!!

phil vs phil2: It was a tie!!!

phil vs unr1: phil wins!!!

phil vs unr2: unr2 wins!!!

phil vs phil3: It was a tie!!!

phil vs apple3: phil wins!!!

phil vs backatyou2: backatyou2 wins!!!

backatyou vs dnoob: backatyou wins!!!

backatyou vs allrock: backatyou wins!!!

backatyou vs jarze: jarze wins!!!

backatyou vs medji: backatyou wins!!!

backatyou vs mr_apple_pi: mr_apple_pi wins!!!

backatyou vs darth1: It was a tie!!!

backatyou vs izzy1: backatyou wins!!!

backatyou vs izzy2: backatyou wins!!!

backatyou vs darth2: It was a tie!!!

backatyou vs darth3: backatyou wins!!!

backatyou vs mrapple1: It was a tie!!!

backatyou vs medji1: medji1 wins!!!

backatyou vs medji2: medji2 wins!!!

backatyou vs patternSeeker: patternSeeker wins!!!

backatyou vs phil1: backatyou wins!!!

backatyou vs phil2: backatyou wins!!!

backatyou vs unr1: backatyou wins!!!

backatyou vs unr2: backatyou wins!!!

backatyou vs phil3: backatyou wins!!!

backatyou vs apple3: apple3 wins!!!

backatyou vs backatyou2: backatyou2 wins!!!

dnoob vs allrock: allrock wins!!!

dnoob vs jarze: It was a tie!!!

dnoob vs medji: medji wins!!!

dnoob vs mr_apple_pi: mr_apple_pi wins!!!

dnoob vs darth1: dnoob wins!!!

dnoob vs izzy1: izzy1 wins!!!

dnoob vs izzy2: dnoob wins!!!

dnoob vs darth2: darth2 wins!!!

dnoob vs darth3: darth3 wins!!!

dnoob vs mrapple1: It was a tie!!!

dnoob vs medji1: dnoob wins!!!

dnoob vs medji2: dnoob wins!!!

dnoob vs patternSeeker: It was a tie!!!

dnoob vs phil1: phil1 wins!!!

dnoob vs phil2: phil2 wins!!!

dnoob vs unr1: unr1 wins!!!

dnoob vs unr2: unr2 wins!!!

dnoob vs phil3: phil3 wins!!!

dnoob vs apple3: It was a tie!!!

dnoob vs backatyou2: backatyou2 wins!!!

allrock vs jarze: jarze wins!!!

allrock vs medji: It was a tie!!!

allrock vs mr_apple_pi: mr_apple_pi wins!!!

allrock vs darth1: darth1 wins!!!

allrock vs izzy1: izzy1 wins!!!

allrock vs izzy2: izzy2 wins!!!

allrock vs darth2: darth2 wins!!!

allrock vs darth3: darth3 wins!!!

allrock vs mrapple1: It was a tie!!!

allrock vs medji1: It was a tie!!!

allrock vs medji2: It was a tie!!!

allrock vs patternSeeker: patternSeeker wins!!!

allrock vs phil1: phil1 wins!!!

allrock vs phil2: It was a tie!!!

allrock vs unr1: unr1 wins!!!

allrock vs unr2: unr2 wins!!!

allrock vs phil3: It was a tie!!!

allrock vs apple3: allrock wins!!!

allrock vs backatyou2: backatyou2 wins!!!

jarze vs medji: jarze wins!!!

jarze vs mr_apple_pi: jarze wins!!!

jarze vs darth1: jarze wins!!!

jarze vs izzy1: jarze wins!!!

jarze vs izzy2: izzy2 wins!!!

jarze vs darth2: jarze wins!!!

jarze vs darth3: jarze wins!!!

jarze vs mrapple1: It was a tie!!!

jarze vs medji1: medji1 wins!!!

jarze vs medji2: medji2 wins!!!

jarze vs patternSeeker: patternSeeker wins!!!

jarze vs phil1: It was a tie!!!

jarze vs phil2: jarze wins!!!

jarze vs unr1: unr1 wins!!!

jarze vs unr2: jarze wins!!!

jarze vs phil3: jarze wins!!!

jarze vs apple3: jarze wins!!!

jarze vs backatyou2: jarze wins!!!

medji vs mr_apple_pi: medji wins!!!

medji vs darth1: medji wins!!!

medji vs izzy1: izzy1 wins!!!

medji vs izzy2: medji wins!!!

medji vs darth2: It was a tie!!!

medji vs darth3: medji wins!!!

medji vs mrapple1: mrapple1 wins!!!

medji vs medji1: medji wins!!!

medji vs medji2: medji2 wins!!!

medji vs patternSeeker: patternSeeker wins!!!

medji vs phil1: It was a tie!!!

medji vs phil2: It was a tie!!!

medji vs unr1: medji wins!!!

medji vs unr2: medji wins!!!

medji vs phil3: medji wins!!!

medji vs apple3: apple3 wins!!!

medji vs backatyou2: backatyou2 wins!!!

mr_apple_pi vs darth1: darth1 wins!!!

mr_apple_pi vs izzy1: izzy1 wins!!!

mr_apple_pi vs izzy2: mr_apple_pi wins!!!

mr_apple_pi vs darth2: It was a tie!!!

mr_apple_pi vs darth3: mr_apple_pi wins!!!

mr_apple_pi vs mrapple1: mrapple1 wins!!!

mr_apple_pi vs medji1: medji1 wins!!!

mr_apple_pi vs medji2: medji2 wins!!!

mr_apple_pi vs patternSeeker: patternSeeker wins!!!

mr_apple_pi vs phil1: mr_apple_pi wins!!!

mr_apple_pi vs phil2: mr_apple_pi wins!!!

mr_apple_pi vs unr1: unr1 wins!!!

mr_apple_pi vs unr2: mr_apple_pi wins!!!

mr_apple_pi vs phil3: mr_apple_pi wins!!!

mr_apple_pi vs apple3: mr_apple_pi wins!!!

mr_apple_pi vs backatyou2: backatyou2 wins!!!

darth1 vs izzy1: izzy1 wins!!!

darth1 vs izzy2: darth1 wins!!!

darth1 vs darth2: darth1 wins!!!

darth1 vs darth3: darth1 wins!!!

darth1 vs mrapple1: darth1 wins!!!

darth1 vs medji1: darth1 wins!!!

darth1 vs medji2: darth1 wins!!!

darth1 vs patternSeeker: patternSeeker wins!!!

darth1 vs phil1: darth1 wins!!!

darth1 vs phil2: darth1 wins!!!

darth1 vs unr1: darth1 wins!!!

darth1 vs unr2: darth1 wins!!!

darth1 vs phil3: It was a tie!!!

darth1 vs apple3: darth1 wins!!!

darth1 vs backatyou2: backatyou2 wins!!!

izzy1 vs izzy2: izzy2 wins!!!

izzy1 vs darth2: izzy1 wins!!!

izzy1 vs darth3: izzy1 wins!!!

izzy1 vs mrapple1: mrapple1 wins!!!

izzy1 vs medji1: medji1 wins!!!

izzy1 vs medji2: medji2 wins!!!

izzy1 vs patternSeeker: patternSeeker wins!!!

izzy1 vs phil1: izzy1 wins!!!

izzy1 vs phil2: izzy1 wins!!!

izzy1 vs unr1: unr1 wins!!!

izzy1 vs unr2: izzy1 wins!!!

izzy1 vs phil3: izzy1 wins!!!

izzy1 vs apple3: izzy1 wins!!!

izzy1 vs backatyou2: backatyou2 wins!!!

izzy2 vs darth2: darth2 wins!!!

izzy2 vs darth3: izzy2 wins!!!

izzy2 vs mrapple1: mrapple1 wins!!!

izzy2 vs medji1: It was a tie!!!

izzy2 vs medji2: izzy2 wins!!!

izzy2 vs patternSeeker: patternSeeker wins!!!

izzy2 vs phil1: phil1 wins!!!

izzy2 vs phil2: izzy2 wins!!!

izzy2 vs unr1: izzy2 wins!!!

izzy2 vs unr2: izzy2 wins!!!

izzy2 vs phil3: izzy2 wins!!!

izzy2 vs apple3: apple3 wins!!!

izzy2 vs backatyou2: It was a tie!!!

darth2 vs darth3: darth2 wins!!!

darth2 vs mrapple1: mrapple1 wins!!!

darth2 vs medji1: darth2 wins!!!

darth2 vs medji2: medji2 wins!!!

darth2 vs patternSeeker: patternSeeker wins!!!

darth2 vs phil1: darth2 wins!!!

darth2 vs phil2: darth2 wins!!!

darth2 vs unr1: unr1 wins!!!

darth2 vs unr2: unr2 wins!!!

darth2 vs phil3: darth2 wins!!!

darth2 vs apple3: apple3 wins!!!

darth2 vs backatyou2: backatyou2 wins!!!

darth3 vs mrapple1: It was a tie!!!

darth3 vs medji1: darth3 wins!!!

darth3 vs medji2: darth3 wins!!!

darth3 vs patternSeeker: darth3 wins!!!

darth3 vs phil1: darth3 wins!!!

darth3 vs phil2: darth3 wins!!!

darth3 vs unr1: darth3 wins!!!

darth3 vs unr2: unr2 wins!!!

darth3 vs phil3: phil3 wins!!!

darth3 vs apple3: darth3 wins!!!

darth3 vs backatyou2: backatyou2 wins!!!

mrapple1 vs medji1: It was a tie!!!

mrapple1 vs medji2: It was a tie!!!

mrapple1 vs patternSeeker: patternSeeker wins!!!

mrapple1 vs phil1: It was a tie!!!

mrapple1 vs phil2: It was a tie!!!

mrapple1 vs unr1: It was a tie!!!

mrapple1 vs unr2: unr2 wins!!!

mrapple1 vs phil3: It was a tie!!!

mrapple1 vs apple3: It was a tie!!!

mrapple1 vs backatyou2: mrapple1 wins!!!

medji1 vs medji2: It was a tie!!!

medji1 vs patternSeeker: patternSeeker wins!!!

medji1 vs phil1: medji1 wins!!!

medji1 vs phil2: It was a tie!!!

medji1 vs unr1: medji1 wins!!!

medji1 vs unr2: medji1 wins!!!

medji1 vs phil3: It was a tie!!!

medji1 vs apple3: medji1 wins!!!

medji1 vs backatyou2: backatyou2 wins!!!

medji2 vs patternSeeker: medji2 wins!!!

medji2 vs phil1: medji2 wins!!!

medji2 vs phil2: It was a tie!!!

medji2 vs unr1: medji2 wins!!!

medji2 vs unr2: unr2 wins!!!

medji2 vs phil3: It was a tie!!!

medji2 vs apple3: apple3 wins!!!

medji2 vs backatyou2: backatyou2 wins!!!

patternSeeker vs phil1: It was a tie!!!

patternSeeker vs phil2: patternSeeker wins!!!

patternSeeker vs unr1: unr1 wins!!!

patternSeeker vs unr2: patternSeeker wins!!!

patternSeeker vs phil3: patternSeeker wins!!!

patternSeeker vs apple3: patternSeeker wins!!!

patternSeeker vs backatyou2: patternSeeker wins!!!

phil1 vs phil2: phil1 wins!!!

phil1 vs unr1: unr1 wins!!!

phil1 vs unr2: It was a tie!!!

phil1 vs phil3: phil1 wins!!!

phil1 vs apple3: apple3 wins!!!

phil1 vs backatyou2: backatyou2 wins!!!

phil2 vs unr1: unr1 wins!!!

phil2 vs unr2: unr2 wins!!!

phil2 vs phil3: It was a tie!!!

phil2 vs apple3: phil2 wins!!!

phil2 vs backatyou2: backatyou2 wins!!!

unr1 vs unr2: unr2 wins!!!

unr1 vs phil3: phil3 wins!!!

unr1 vs apple3: apple3 wins!!!

unr1 vs backatyou2: backatyou2 wins!!!

unr2 vs phil3: unr2 wins!!!

unr2 vs apple3: It was a tie!!!

unr2 vs backatyou2: backatyou2 wins!!!

phil3 vs apple3: apple3 wins!!!

phil3 vs backatyou2: backatyou2 wins!!!

apple3 vs backatyou2: backatyou2 wins!!!

Win Count:

pattern_seeker_defeater: 12.0

test1: 13.0

test2: 15.0

test3: 13.5

izzy: 10.0

phil: 11.5

backatyou: 14.5

dnoob: 8.0

allrock: 8.0

jarze: 17.0

medji: 14.0

mr_apple_pi: 15.5

darth1: 19.5

izzy1: 15.0

izzy2: 12.0

darth2: 13.0

darth3: 13.5

mrapple1: 16.5

medji1: 14.0

medji2: 15.5

patternSeeker: 20.0

phil1: 8.0

phil2: 8.0

unr1: 12.0

unr2: 15.0

phil3: 9.0

apple3: 12.5

backatyou2: 22.5

Type y for analysis y


[Algos: 28] [Games: 378] [Average Score: 13.5] [Sdev: 3.598] [MAD: 2.750]


From Greatest to Least:

     backatyou2: 22.5       [1312 wins, 628 ties, 760 losses] 29.524

  patternSeeker: 20.0       [1366 wins, 688 ties, 646 losses] 30.355

         darth1: 19.5       [1213 wins, 949 ties, 538 losses] 26.104

          jarze: 17.0       [1126 wins, 948 ties, 626 losses] 24.001

       mrapple1: 16.5       [1021 wins, 889 ties, 790 losses] 13.727

    mr_apple_pi: 15.5       [920 wins, 886 ties, 894 losses] 13.683

         medji2: 15.5       [876 wins, 882 ties, 942 losses] 11.109

          test2: 15.0       [950 wins, 856 ties, 894 losses] 15.296

          izzy1: 15.0       [1018 wins, 880 ties, 802 losses] 21.620

           unr2: 15.0       [1390 wins, 620 ties, 690 losses] 23.109

      backatyou: 14.5       [1018 wins, 785 ties, 897 losses] 16.496

          medji: 14.0       [630 wins, 1362 ties, 708 losses] 12.341

         medji1: 14.0       [1005 wins, 738 ties, 957 losses] 13.385

          test3: 13.5       [880 wins, 1004 ties, 816 losses] 10.256

         darth3: 13.5       [987 wins, 503 ties, 1210 losses] 18.428

          test1: 13.0       [635 wins, 1200 ties, 865 losses] 10.085

         darth2: 13.0       [1089 wins, 744 ties, 867 losses] 16.492

         apple3: 12.5       [978 wins, 809 ties, 913 losses]  8.789

pattern_seeker_defeater: 12.0       [973 wins, 632 ties, 1095 losses]  8.357

          izzy2: 12.0       [955 wins, 782 ties, 963 losses] 11.630

           unr1: 12.0       [858 wins, 915 ties, 927 losses]  9.724

           phil: 11.5       [975 wins, 751 ties, 974 losses]  9.905

           izzy: 10.0       [928 wins, 899 ties, 873 losses] 11.128

          phil3: 9.0       [478 wins, 1354 ties, 868 losses]  4.273

          dnoob: 8.0       [735 wins, 904 ties, 1061 losses]  4.063

        allrock: 8.0       [372 wins, 819 ties, 1509 losses]  3.361

          phil1: 8.0       [616 wins, 1002 ties, 1082 losses]  7.303

          phil2: 8.0       [372 wins, 819 ties, 1509 losses]  3.361

The biggest blowout game(s) was(were): pattern_seeker_defeater won 100 games and patternSeeker won 0 ~ there were 0 ties test1 won 0 games and test2 won 100 ~ there were 0 ties test1 won 100 games and backatyou won 0 ~ there were 0 ties test2 won 0 games and darth1 won 100 ~ there were 0 ties test2 won 100 games and izzy1 won 0 ~ there were 0 ties test2 won 0 games and mrapple1 won 100 ~ there were 0 ties test2 won 0 games and unr2 won 100 ~ there were 0 ties backatyou won 100 games and allrock won 0 ~ there were 0 ties backatyou won 100 games and phil2 won 0 ~ there were 0 ties allrock won 0 games and backatyou2 won 100 ~ there were 0 ties phil2 won 0 games and backatyou2 won 100 ~ there were 0 ties Type y to play again n Thanks for playing!
So it didn't do horrible, but it got 12 points and the average score was 13.5, so not very good either *
* It may be possible to create a more versatile defeater that takes the OPPONENT's last move and somehow uses that knowledge to defeat their next one. In this case, it would perform non-statically when faced with algos that aren't the same as its sworn enemy. But I couldn't say whether that would perform better or worse against these other enemies than its static version. Here's an attempt at a "dynamic" jarze_defeater... jarze:

if (i==0) return ROCK;

return (b[i-1]+1)%3;

the "static" jarze_defeater:

if (i==0) return PAPER;

return (a[i-1]+2)%3;

which is identical to:

return (2*i + 1)%3;

(static means an algo uses just 'i' and 'a' (or degeneratively, just i) to determine its move and thus uses the same moves independent of its enemy. Dynamic would mean it uses 'b' in its process and thus takes into account the enemy's moves. ) In attempting to write this, I thought about how I could do it, and I realized it is NOT possible to write a dynamic defeater of "jarze", because jarze is the opposite of static - it ONLY uses b to determine its move (except when i==0 of course) and never uses 'a' (its own moves). Jarze's next move is based entirely on its 'b' array, or YOUR 'a' array... let's say you're writing 'Defeator' specifically to defeat 'Algo'

VARIABLE                    ALGO'S VARIABLE           DEFEATOR'S VARIABLE

round number                       i                           i

array of algo's moves              a                           b

array of defeator's moves          b                           a

whatever ALGO uses in determining its next move, DEFEATOR has to use the compliment of that in determining how to beat ALGO's next move. So if ALGO uses only i and a, or only i, ("static") then DEFEATOR must use its i and b variables. If ALGO uses its b variable ("dynamic") then DEFEATOR uses its a variable. So the only way to make DEFEATOR dynamic is if DEFEATOR can use its 'b' array which means ALGO must use its 'a' array. so a jarze_defeator will always be static, but it may be possible with other algos... hmmm...
Making a dynamic jarze_defeator was pretty easy =P

if (i == 0)

    return PAPER;

else

    return b[i-1];

Edited by DarthNoob
Link to comment
Share on other sites

  • 0

I was looking at the code for izzy, and


            {

                // do what won last time, or, if lost last time, advance one from sci -> pap -> rock (2 -> 1 -> 0)

                return a[i-1] - (((a[i-1] - b[i-1] + 3) % 3) / 2);

            }

are you sure that's right? If so, could you explain the logic to me?

Link to comment
Share on other sites

  • 0

I'm going to go ahead and assume that im the only one who wants i=0 to count... If everyone chooses a specific output for i=0 then it becomes somewhat of a logical decision instead of a random win/loss. in t1 or t2 i would choose paper because beginners have a tendency of choosing rock. However in t3 the competition is more experienced and then it becomes more of a paradox. i guess its still random, but its fun to try and guess the most common first move.

yeah I agree to an extent, and here's what I think should be done... I think at least one of the following two changes need to be implimented:

(1) make ties be within 0..2 wins instead of 0 or 1

OR

(2) make i=0 not count

I'd prefer the first one tbh

Also, what if within your anti program you put in variables that relied on the opponents move set? You could still organize this so that it would play the same set of moves against the program it is meant to beat, but give more chance of beating other programs.

pattern_seeker_defeater vs patternSeeker

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

for example for i=1 and i=4 you could input your opponents more common move. changes like this might not make the program better, but it would get rid of the static aspect of the program.

oh well its just a thought.

yeah you could, but the idea is that a defeator has to beat its target 100/100 times... so if a way can be found to do that and still sample from b, that'd be a good way of making it dynamic :)

Making a dynamic jarze_defeator was pretty easy =P


if (i == 0)

    return PAPER;

else

    return b[i-1];

hahaha nice! The original point I was going for in the asterisk was that knowing the behavior beforehand and how his b is based on your a, you could force something like this, but then I got distracted by variable isomorphism and just kind of wheeled off haha. But yes that one you just wrote is the one I wanted to write hehe :lol: Nice!
I was looking at the code for izzy, and

            {

                // do what won last time, or, if lost last time, advance one from sci -> pap -> rock (2 -> 1 -> 0)

                return a[i-1] - (((a[i-1] - b[i-1] + 3) % 3) / 2);

            }

are you sure that's right? If so, could you explain the logic to me?

that was just a space-saving trick to get all that on one arithmetic line...

firstly, this part:

((a[i-1] - b[i-1] + 3) % 3)

will equal 0 if last round was a tie, 1 if you won last round, or 2 if the enemy won last round.

Dividing that by two will equal 0 if last round was a tie or a win, and 1 if last round was lost.

Subtracting that from a[i-1] is the same as a[i-1] if last round won or tied, or one prior if last round was lost.

I'm not sure of the context of the program but it seems strange that I didn't add 3 and then mod3, to make sure that if it went from 0 to -1 that it would wrap around to 2, unless for some reason it was known to stop when it hit rock - and looking at the code, that is the case :D

Link to comment
Share on other sites

  • 0

Oh. Hm. I misunderstood the algorithm.

// use sci until sci loses; if sci loses at i=0, discard and use sci again til sci loses

// then use pap til pap loses

// then rock til rock loses

// then do whatever beats what they've used most

I tried looking at the code and got lost.

Here's one question: let's call X the RPS that has had the most wins against the enemy. After Izzy goes through with the sci, pap, and rock, does it stay on X (dynamic X that is) for every consecutive round?

And the second question: I thought that the else bracket (that I quoted earlier) was just dealing with ties for X: like if sci and pap both have 5 wins against the enemy, and rock has only 3, Izzy's earlier comments don't specify which he would choose, so I thought "do what won last time" meant pick sci if sci had the most recent win, or pick pap if pap had the most recent win. (Then I guess my brain kind of ignored the rest of the comment)

--

You got a defeater for Darth1 yet? =P

Link to comment
Share on other sites

  • 0

I can't read code, but I'll write a defeater (in words) if you tell me what you're doing with it. :P

*edit* I really need to stop abusing teh smileys.

Actually that was directed at Unreality, lol. Though if you could figure out a Darth1 defeater too, that'd be awesome.

So could you explain what your algorithm was for izzy (or was it called izzy1?)? Todavia estoy confundito

Link to comment
Share on other sites

  • 0

Umm, I think izzy was the lame one from tourney 1 (2?), so I think you'll be wanting izzy1?

Here's exactly what I PM'd Unreality.

Use scissors until scissors loses or ties three times in a row. If scissors loses first round, disregard, and use until it loses again/ties. Use rock until rock loses/ties three times in a row. Use paper until paper ties once/loses. Alternate between rock, paper, and scissors until end, in that order.

Beating it won't be hard, because you know *exactly* what it's going to do. :P

Now, spill on Darth1. :D

Clarification: By three times in a row, I mean any combination for three loses/ties. So lose, tie, tie would make it change what it's using.

*edit* Wait.. you were describing Izzy. By "beats whatever the opponent has used most", I mean out of the entire game.

Edited by Izzy
Link to comment
Share on other sites

  • 0

yeah I agree to an extent, and here's what I think should be done... I think at least one of the following two changes need to be implimented:

(1) make ties be within 0..2 wins instead of 0 or 1

OR

(2) make i=0 not count

I'd prefer the first one tbh

I also support option one. :thumbsup:

Link to comment
Share on other sites

  • 0

You got a defeater for Darth1 yet? =P

yep :P

Welcome to R/P/S!

0 (hawk)

1 (test1)

2 (test2)

3 (test3)

4 (izzy)

5 (phil)

6 (backatyou)

7 (dnoob)

8 (rand)

9 (allrock)

10 (jarze)

11 (medji)

12 (mr_apple_pi)

13 (darth1)

14 (izzy1)

15 (izzy2)

16 (darth2)

17 (darth3)

18 (mrapple1)

19 (medji1)

20 (medji2)

21 (patternSeeker)

22 (phil1)

23 (phil2)

24 (unr1)

25 (unr2)

26 (phil3)

27 (apple3)

28 (backatyou2)

29 (fib2)

30 (apple4)

31 (unr3)

32 (phil_pseudo)

33 (collatz)

34 (phillip!)

35 (plasmid!)

36 (unreality!)

37 (pattern_seeker_defeater)

38 (darth1_defeater)

Enter the numbers of the programs you wish to fight, separated by spaces:

38 13

darth1_defeater vs darth1

scissors vs paper

scissors vs paper

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

scissors vs paper

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

scissors vs paper

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

paper vs rock

rock vs scissors

scissors vs paper

darth1_defeater won 100 games and darth1 won 0 ~ there were 0 ties

darth1_defeater wins!!!

Final Results:

darth1_defeater vs darth1: darth1_defeater wins!!!

Win Count:

darth1_defeater: 1.0

darth1: 0.0

Type y for analysis n

Type y to play again n

Thanks for playing

edit: regarding the izzy/izzy1 thing, Darth was inquiring about izzy, but Izzy just described izzy1. Izzy, I think he wants to know about the original izzy from T1

(lol there were a lot of izzys in that sentence)

Oh and there may have been scenarios left undescribed in her original description of the algo (such as special cases, ties, etc) but somewhere in the PM conversation I asked her how she wanted it to behave in those circumstances

Edited by unreality
Link to comment
Share on other sites

  • 0

Dang you Unreality!!! Dang you to heck!

lol.

Now... go make a dynamic Darth1 defeater =P

By merely looking at unreality's defeater rounds ... does darth1 just beat whatever the opponent previously used?

Here's basically what Darth1 does:

If the enemy has used each of RPS a fairly close number of times, then I am predicting that the least common move played by the enemy is likely to show up. On the other hand, if there is a somewhat bigger difference between the most common enemy move and the least common enemy move, then I am predicting that the most common enemy move will occur again.* And then Darth1 always plays the predicted move +1. EDIT: Actually, wait, maybe not. I tried to make Darth1 play the move that is most likely to either win OR tie given what I think is the most likely predicted EDIT2: No wait, got it (lol, and it's my own program). Check this asterik *I'm actually predicting that the least common enemy move will not occur again.

I think.

I'm too lazy to break out the algorithm and look at it again, ha.

Btw, I can't wait until T3!

Edited by DarthNoob
Link to comment
Share on other sites

  • 0

Here's basically what Darth1 does:

If the enemy has used each of RPS a fairly close number of times, then I am predicting that the least common move played by the enemy is likely to show up. On the other hand, if there is a somewhat bigger difference between the most common enemy move and the least common enemy move, then I am predicting that the most common enemy move will occur again.* And then Darth1 always plays the predicted move +1. EDIT: Actually, wait, maybe not. I tried to make Darth1 play the move that is most likely to either win OR tie given what I think is the most likely predicted EDIT2: No wait, got it (lol, and it's my own program). Check this asterik *I'm actually predicting that the least common enemy move will not occur again.

I think.

I'm too lazy to break out the algorithm and look at it again, ha.

Btw, I can't wait until T3!

lol, can't tell you how many times that's happed to me before. That's why half of my program is comments, even with only 13 lines of commands (although I admit it still seems a little OCD-ish).

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...