Rock, Paper, Scissors cheating competition

Submitted by walker on Tue, 2009-03-17 16:34

Anybody interested in a competition?

"IC"-ly, this is a competition to create an object that wins more often at Rock-Paper-Scissors than the other objects.

Realistically: This is all about how well you can cheat, in different ways.

There will be different categories, each with different structure (to allow/prevent different kinds of cheating). The basic setup is this:

A player is created with no powers, objects, etc. To this player is then @chown'd *clones* of three objects: The testing object, and the two competing objects, A and B. The testing object is then triggered to fetch the answers from A, then B. It then compares the answers and announces a winner or draw (if both give same answer). If it doesn't get a valid answer for some reason, it declares a draw. It is then repeated for B first, then A.

Different categories will be provided with different testing objects. (And thus, different ways to cheat).

e.g:

Basic Ufun: This simply does switch(u(A/guess)-u(B/guess),rock-paper,B,paper-rock,A,rock-scissors,A,scissors-rock,B,paper-scissors,B,scissors-paper,A,Draw)

Basic trigger: @trigger a/makeguess ; @trigger b/makeguess ; switch(get(a/guess)-[get(b/guess)],...)

And other, fancier categories and ideas thrown in:

* No money for owning player (so no lsearch()).
* localized u()s, with cleared q-registers.
* Inability to modify the calling object.
* Any other ideas?

Prizes: Depending on how many people participate, and if anyone wants to sponsor prizes. (If we get at least 10 people, I don't mind sponsoring a $40 gift certificate to Amazon)