ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAX
1
Score when playing against bot (average over 100 rollouts)
2
Bot IDSubmitterCodeDescriptionTotal Score0123458910111314151617212223252830313334353637383942434445505255565758596061
3
0Isaac Kingr = 0;Defect57.331.003.001.072.013.001.001.001.003.002.032.031.141.071.001.001.001.001.151.001.001.001.141.001.001.171.171.241.081.081.141.082.041.001.001.001.002.392.211.981.091.001.00
4
1Isaac Kingr = 1;Cooperate40.980.002.002.000.992.000.000.002.002.002.001.282.002.000.000.000.000.001.562.000.000.001.510.000.001.601.941.172.002.002.002.001.030.000.000.000.001.321.210.730.630.000.00
5
2Isaac King
r = h.length === 0 ? 1 : h[h.length - 1].o;
Tit for Tat67.170.972.002.001.462.002.000.940.962.002.001.642.002.002.002.002.002.001.291.662.000.941.900.960.941.801.971.582.002.002.002.001.500.942.000.940.941.621.631.391.310.960.95
6
3Odoacre
r = Math.random() < 0.5;
Random44.280.492.501.541.510.512.500.490.502.511.571.580.660.650.480.500.510.501.300.500.500.511.080.500.501.411.541.171.561.541.551.041.540.480.630.500.491.861.741.430.860.500.52
7
4Ender Ting
r = (c == s || !c.match('Math')) ? 1 : 0;
"Math" Hater47.490.002.002.001.982.002.000.000.002.002.002.022.002.000.002.000.000.001.122.050.000.001.090.000.001.691.941.252.002.002.001.091.020.000.001.001.001.392.221.960.670.000.00
8
5Dan Powellr = c.length > 15Long Program Liker50.291.003.002.001.002.002.000.000.002.002.001.362.002.000.002.002.000.001.552.000.000.001.550.000.001.611.941.192.002.002.002.001.031.000.000.000.001.321.270.800.671.001.00
9
8Bolton Bailey
r = 0; setTimeout(function() { }, 750);\n\n
Defect61.351.003.001.132.023.003.001.001.003.002.022.041.081.101.001.003.001.001.141.001.001.001.121.001.001.181.201.291.101.111.091.112.031.001.001.001.002.242.261.981.111.001.00
10
9Tetra
r = c.includes(\"r = 1\") ? 1 : 0;
"r = 1" Checker55.911.002.001.072.013.003.001.002.002.002.052.031.132.000.002.001.000.001.132.300.001.001.081.001.001.731.201.151.101.111.071.092.031.000.001.001.001.261.261.971.161.001.00
11
10Bolton Bailey
r = 1; setTimeout(function() { }, 750);
Cooperate42.120.002.002.000.982.002.000.002.002.002.001.192.002.000.000.000.000.001.540.950.000.001.490.000.001.661.931.312.002.002.002.001.040.000.000.000.001.421.260.800.550.000.00
12
11Daniel Filan
r = h.length === 0 ? 1 : (h[h.length - 1].o === 1 ? h[h.length - 1].m : 1 - h[h.length - 1].m)
Pavlov56.490.482.002.001.482.002.000.490.482.002.001.842.002.000.482.002.000.491.262.140.490.491.930.480.491.791.971.442.002.002.002.001.500.490.490.490.491.431.711.730.970.480.48
13
13Daniel Filan
let r_ = h.length === 0 ? 1 : (h[h.length - 1].o === 1 ? h[h.length - 1].m : 1 - h[h.length - 1].m); r = Math.random() < 0.95 ? r_ : 1 - r_;
Pavlov with 5% chance of doing the opposite50.200.492.361.701.470.492.320.480.492.402.011.951.081.160.491.650.490.491.302.020.480.491.970.490.481.601.681.281.681.681.691.191.500.480.490.490.491.831.701.671.040.490.49
14
14Lorenzo
r = h.every((r) => r.o);
Grim Trigger68.860.932.002.001.922.002.000.960.942.002.001.952.002.002.002.002.002.001.210.962.000.931.390.970.951.871.881.652.002.002.002.001.950.932.000.950.952.322.191.901.280.930.95
15
15Lorenzo
r = 1 && h.every((r) => r.o);
Grim Trigger70.000.962.002.001.932.002.000.952.002.002.001.952.002.002.002.000.942.001.212.002.000.961.350.960.951.851.851.642.002.002.002.001.920.942.000.960.942.382.201.921.300.960.96
16
16Multicore
r = 1; r = (d === 2) ? 1 : ((d < 14) ? 0 : h.every((r) => r.o))
Hardcoded Responses - Defect/Grim Trigger75.611.003.002.002.043.003.001.003.003.002.042.022.002.002.002.000.962.001.232.362.000.951.350.950.951.861.861.652.002.002.002.001.920.962.000.970.952.372.181.881.300.940.94
17
17DaemonicSigil
r = 1;if(c.split(/[^a-zA-Zd]+/).some((z)=>(z==\"c\"||z==\"h\"||z==\"i\"))){var l=h.length;r=l>0?h[l-1].o:1}else{r-=1}
Tit for Tat against bots with h/i/c in their code, else defect72.201.003.002.002.002.002.001.002.003.002.001.612.002.002.002.003.002.001.241.792.001.001.890.921.001.801.971.552.002.002.002.001.491.002.001.000.951.691.601.391.311.001.00
18
21Franek Zak
r = ((s.length + d) % 3 == 1)
Cooperates with bots whose ID is 2 mod 358.751.003.002.001.993.002.000.001.003.002.002.032.001.111.090.001.001.001.603.001.111.001.081.001.001.651.191.242.001.071.151.111.021.000.001.001.001.382.261.980.691.001.00
19
22
Benjamin Cosman
r = 1-1;let q=\"11211111111111222211112241112112211333222222222222221211112211\";let x=d>=q.length?2:Number(q[d]);if(x===2){r=h.every((r) => r.o);}if(x===3){r=f(c);}if(x===4){r=h.length>49 && h.every((r) => r.o);}
Hardcoded Responses - Defect/Grim Trigger/Mirror80.191.003.002.002.003.003.001.003.003.002.022.032.002.002.002.001.002.001.203.000.961.001.401.001.001.971.971.932.002.002.002.001.930.972.001.001.002.382.241.901.303.003.00
20
23Econom3trics
r = h.length ? (h[h.length-1].o ? (h[h.length-1].m ? 11/13 : 1/2) : (h[h.length-1].m ? 7/26 : 0)) > Math.random() : 1;
Different random probability for each combination of its last move and opponent's last move
57.150.932.221.351.600.942.220.930.942.231.591.621.271.221.271.302.201.251.222.101.250.931.430.910.941.371.421.411.311.341.281.581.640.941.030.960.941.731.761.441.210.950.95
21
25Bohaska
let o=0,z=0,j;r=Math.random();for(j=0;j<c.length;j++){if(c[j]==='1')o++;else if(c[j]==='0')z++}if(r<o/(o+z))r=1;else r=0;
Random based on ratio of 1s and 0s in opponent's code49.421.002.001.722.000.472.001.000.352.531.321.301.082.000.501.810.000.001.481.340.000.491.050.001.001.441.671.251.571.572.001.162.041.000.000.331.001.821.581.670.901.001.00
22
28Daniel Filan
r = 1; r=1; r = [m,2].includes(d) ? 1 : (d < 14 || [18,19,22,25,29+1,33,34,52,53,54,56,57,59+1,61].includes(d) ? 1-1 : h.every((r) => r.o));
Hardcoded Responses - Defect/Grim Trigger75.831.003.002.001.993.003.001.003.003.002.022.042.002.002.002.000.951.071.223.002.001.001.421.001.001.841.861.662.002.002.002.001.930.972.001.000.922.452.291.841.371.001.00
23
30s ziner
r = typeof a!=='undefined'?1: 0
Defect, attempt to fool simulators60.421.003.001.131.983.003.001.001.003.002.032.021.131.091.101.001.001.001.142.021.001.001.071.001.001.201.181.281.131.111.071.112.021.001.001.001.002.392.201.951.081.001.00
24
31s ziner
let x=[0,0];let y=[0,0];for(var i=1;i<h.length;i++){if(h[i-1].m==0&&h[i-1].o==1){x[h[i].o]+=1;}if(h[i-1].m==1&&h[i-1].o==0){y[h[i].o]+=1;}};r=(m==d||h.length===0)?1:r=x[0]>1&&x[1]==0?1:y[0]>0?0:Math.random()<h.length/99?0:h[h.length-1].o
Tit for tat with steadily increasing random chance of defecting, with special rules based on the opponent's defections and responses to defections
60.830.932.241.911.720.952.230.940.962.251.911.541.411.361.371.900.961.401.291.751.430.962.000.960.961.591.851.331.901.891.901.741.090.921.350.930.932.221.461.341.180.960.93
25
33Agh
if(arguments.callee.name!='f'){r=(!h.length||h[h.length-1].o)}else{r=d==m}
Defect except against self, attempt to fool simulators62.611.003.001.092.003.003.001.001.003.002.032.021.071.081.111.151.001.001.183.001.001.001.082.001.001.211.181.211.091.101.141.162.021.001.001.001.002.342.251.981.131.001.00
26
34Bohaska
if(arguments.callee.name!='f'){r=\"Robert'); DROP TABLE Students;--\"}else{r=d==32}
Defect except against [DISQUALIFIED], attempt to fool simulators
59.401.003.001.112.003.003.001.001.003.002.022.031.101.101.111.001.001.001.131.001.001.001.091.001.001.171.191.241.141.121.101.102.021.001.001.001.002.282.241.981.121.001.00
27
35Ilio
r = h.length === 0 ? 1 : h[h.length - 1].o;if (h.length >= 43 && h.length < 53) {r = [0,1,1,0,0,0,1,1,1,1][h.length - 43];}if (h.length >= 53) {if (h.map(e => e.o).slice(43, 53).join(\"\") === \"0110001111\") {r = 1;} else {r = 0;}}
Tit for Tat, then give signal, then defect if signal not returned
67.350.922.201.821.582.162.200.912.132.171.971.711.781.731.751.822.181.971.251.671.720.902.020.890.911.971.971.541.871.821.851.811.570.901.790.910.891.871.741.441.230.910.91
28
36Ilio
r=h.length===0?1:h[h.length - 1].o;if(h.length>=43&&h.length<53){r=[0,1,1,0,0,0,1,1,1,1][h.length - 43];}if(h.length>=53){if(h.map(e=>e.o).slice(43,53).join(\"\")===\"0110001111\"){r=1;}else{r=h.length===0?1:h[h.length - 1].o;}}
Tit for Tat, then give signal, then resume tit for tat64.330.912.031.971.482.032.030.900.902.031.971.621.771.741.751.970.911.971.281.591.760.911.900.910.901.971.971.571.971.971.971.831.490.921.890.900.901.681.631.411.240.900.90
29
37Ilio
r = h.length === 0 ? 1 : h[h.length - 1].o;if (h.length >= 20 && h.length < 30) {r = [0,1,1,0,1,0,0,1,1,0][h.length - 20];}if (h.length >= 30) {if (h.map(e => e.o).slice(20, 30).join(\"\") === \"0110100110\") {r = 1;} else {r = 0;}}
Tit for Tat, then give (different) signal, then defect if signal not returned.
64.850.882.421.621.662.382.400.852.432.351.951.831.461.481.461.600.881.931.291.521.490.862.040.900.881.701.721.931.631.631.601.741.660.881.470.880.882.071.931.571.240.880.90
30
38denyeverywhere
r=1; 17618===[...(s.substr(20)+c.substr(20))].reduce((a,c)=>a+c.charCodeAt(0),0) ? r=1 : (r = h.length === 0 ? 1 : h[h.length - 1].o)
Tit for Tat that cooperates unconditionally with its family67.030.962.002.001.502.002.000.950.952.002.001.642.002.002.002.002.002.001.251.522.000.931.890.960.931.851.971.592.002.002.002.001.500.952.000.950.961.601.591.401.270.960.96
31
39denyeverywhere
r=1; 17618===[...(s.substr(20)+c.substr(20))].reduce((a,c)=>a+c.charCodeAt(0),0) ? r=1 : (r = h.length === 0 ? 1 : h[h.length - 1].o)
Tit for Tat that cooperates unconditionally with its family65.870.962.002.001.472.002.000.940.942.002.001.662.002.002.002.000.962.001.261.522.000.951.880.950.941.801.971.582.002.002.002.001.470.952.000.930.931.641.571.351.350.950.95
32
42Tess
if (arguments.callee.name!='f') { console.log('How DARE you attempt to simulate me!?'); process.exit(); } r = (h.pop()||{o:1}).o;
Tit for Tat, attempt to disqualify simulators66.360.932.002.001.462.002.000.960.972.002.001.672.002.002.002.000.922.001.212.002.000.971.890.930.951.831.971.562.002.002.002.001.510.962.000.940.951.641.601.401.280.940.93
33
43Irigi
let n=1;h.forEach(game => {if (game.o == 1 && n < 3) { n = Math.max(n - 1, 0); } else { n = Math.min(n + 1, 3); }});r = n < 2 ? 1 : 0;r = h.length > 98 ? 0 : r;
Cooperate only if opponent has cooperated at least as many times as it defected
65.540.962.002.001.730.952.000.940.952.002.001.912.002.002.002.000.952.001.371.872.000.941.520.920.951.821.841.522.002.002.002.001.020.961.030.930.952.282.171.831.280.960.96
34
44MrLuke255
r = h.length % 2 == 0
Alternate between cooperate and defect52.210.482.491.561.442.492.480.480.492.481.521.530.670.730.701.562.490.671.270.480.700.492.360.490.491.411.561.221.551.571.552.491.520.490.480.490.491.881.721.440.850.480.49
35
45Romar=d==50Defect except against ID 5056.511.003.001.112.043.001.001.001.003.002.022.041.131.121.081.001.001.071.111.001.061.001.151.001.001.201.161.241.091.111.071.082.031.000.001.001.002.292.231.991.101.001.00
36
50Multicore
try{eval(`{let f=(d,m,c,s,f,h,i)=>{let r=9;${c};return +!!r};r=f}`);let θ='r=h.at(-1);r=!r||r.o',λ=Ω=>r(m,d,θ,c,f,Ω,Ω.map(χ=>({m:χ.o,o:χ.m}))),Σ=(μ,π)=>[...μ,{m:π,o:+!1}],α=λ([...i]),β=λ(Σ(i,α));r=f(θ)&α&!β&!λ(Σ(Σ(i,α),β))|d==m}catch{r = 1}
Simulate opponent, Tit for Tat against smart bots, Defect against dumb bots
85.561.003.002.001.933.003.001.003.003.002.012.032.002.002.002.003.002.001.123.002.001.001.381.001.001.892.011.692.002.002.002.482.053.002.003.003.002.412.251.971.341.001.00
37
52Roma
r=(d-r)/41;r!=(r**2)?r=Math.round(r-(d*3-27)/123):0;
Defect except against ID 5057.661.003.001.121.991.003.001.001.003.002.022.031.101.091.061.001.001.001.082.341.001.001.141.001.001.181.201.241.101.131.111.132.031.000.001.001.002.282.211.971.101.001.00
38
55Roma
r=h.lenght==0||(Math.min(...[...s].map(_=>_.charCodeAt(m=0)))+r)==d-Math.pow(d,m)
Defect except against ID 5056.771.003.001.112.021.003.001.001.003.002.022.021.111.111.101.101.001.001.111.001.161.001.141.001.001.221.191.241.091.141.091.112.021.000.001.001.002.272.291.961.151.001.00
39
56
Nathaniel Monson
r = 1; if (h.length <= 9) {r = 0;}
Defect first 10 turns, then cooperate46.990.312.341.721.312.312.340.382.372.292.021.410.410.390.381.772.310.311.461.330.280.300.470.330.361.361.680.911.761.731.730.461.320.360.300.360.361.671.581.310.510.340.35
40
57
Nathaniel Monson
r = 0;for (let i = 2, s = Math.sqrt(h.length + 1); i <= s; i++) {if((h.length + 1) % i === 0) {r = 1;};}
Defect on prime numbered rounds, else cooperate45.580.392.401.681.360.392.370.372.372.371.371.420.490.470.501.680.370.381.361.620.350.401.970.380.381.391.651.051.671.681.670.501.410.380.370.390.361.741.591.370.760.360.37
41
58
Nathaniel Monson
r = 0; if (h.length > 0) {r = h[h.length - 1].m; if (h[h.length - 1].o === 0) {r = Number(!r)} if (Math.random() < 0.07) {r = Number(!r)}}
Pavlov but defect on first turn. 7% chance to do the opposite
47.820.512.631.471.540.522.600.510.522.601.991.900.610.580.631.470.510.611.281.130.680.531.870.510.511.341.501.151.531.501.490.701.540.510.520.520.521.801.721.880.860.520.51
42
59
Anthony Peterson
r = h.length === 0 ? 1 : h[h.length - 1].o; if (h.length > 9) r = 0;
Tit for Tat first 10 turns, then defect64.180.952.681.381.822.672.660.950.922.722.021.931.351.381.371.382.651.371.181.791.440.961.650.930.941.441.441.511.351.421.351.431.840.951.340.950.932.182.031.741.290.950.97
43
60
Benjamin Cosman
r=(d==22)Defect except against ID 2256.391.003.001.072.003.001.001.001.003.002.042.021.141.071.121.001.000.001.101.001.001.001.081.001.001.191.211.241.091.101.121.092.031.001.001.001.002.332.291.971.111.001.00
44
61
Benjamin Cosman
r=(d==42-20)Defect except against ID 2256.251.003.001.091.963.001.001.001.003.002.032.031.091.081.121.001.000.001.091.001.001.001.151.001.001.191.211.201.071.101.131.092.021.001.001.001.002.292.271.981.071.001.00
45
46