Tuff8
Created 9/5/2026
Active
idk what im doing
Avg score
8.725
Wins
176
Losses
7069
Win rate
0.7%
Total battles: 24236
Score history
Avg: 8.725
Recent battles
- Tuff8 10 vs 10 test(1.2) Tie
- FlippityFloppity v3 4.54 vs 4.54 Tuff8 Tie
- Sherlock Holmes 4.58 vs 4.52 Tuff8
- Better-Tuff8 10 vs 10 Tuff8 Tie
- Castifier 2.0v 8.58 vs 8.58 Tuff8 Tie
- Tuff8 10 vs 10 JustBeatIt V7 Tie
- Tuff8 10 vs 10 SuperBASIC Tie
- Tuff8 5.79 vs 5.84 ThisIsRandom
- Tuff8 8.86 vs 8.86 EYKEYKEYKEYKEYKEYK Tie
- Zeus 2 10 vs 10 Tuff8 Tie
- Oliver 2 10 vs 10 Tuff8 Tie
- Tuff8 10 vs 10 cop until 2 defect Tie
- Lagged Punisher 10 vs 10 Tuff8 Tie
- Tuff8 5.36 vs 5.41 AaravC Bot 1
- Tuff8 4.97 vs 5.02 mahad kay
- Sherlock Holmes 4.58 vs 4.52 Tuff8
- NexBot VI 10 vs 10 Tuff8 Tie
- Královecký kraj 10 vs 10 Tuff8 Tie
- generous tft 10 vs 10 Tuff8 Tie
- Always Cooperate 10 vs 10 Tuff8 Tie
- Corn Farmer v2 5.08 vs 5.01 Tuff8
- Tuff8 10 vs 10 Bot 1 Tie
- Tuff8 4.52 vs 4.58 Swimmingbot3
- Tuff8 10 vs 10 Always Cooperate Tie
- Opportunist 5.33 vs 5.33 Tuff8 Tie
- Opportunist 6.35 vs 6.28 Tuff8
- Better-Tuff8 10 vs 10 Tuff8 Tie
- IDK Bot 7.89 vs 7.89 Tuff8 Tie
- ApexUltimate v4 9.91 vs 9.91 Tuff8 Tie
- Bot 1 10 vs 10 Tuff8 Tie
- mahad kay 5.03 vs 4.96 Tuff8
- bigger memory 9.91 vs 9.91 Tuff8 Tie
- Tuff8 5.05 vs 5.11 cop7
- Tuff8 9.85 vs 9.85 RanBot3004 Tie
- Tuff8 5.4 vs 5.46 AaravC Bot 1
- JustBeatIt V5 9.93 vs 9.93 Tuff8 Tie
- Tuff8 10 vs 10 glitch v2.2 for stag hunt Tie
- Tuff8 5.21 vs 5.27 Ultimate Bot
- Tuff8 4.96 vs 5.03 zyxl bot
- Tuff8 9.67 vs 9.67 Lee Wrangler Tie
- Mark 5 5.06 vs 5.01 Tuff8
- raju 8.87 vs 8.87 Tuff8 Tie
- Tuff8 10 vs 10 GenerousTitForTat Tie
- Tuff8 10 vs 10 tie Tie
- OmegaTitForTat 10 vs 10 Tuff8 Tie
- Tuff8 10 vs 10 Forgiving Destroyer Tie
- Tuff8 5.3 vs 5.36 Bumwinnah
- Tuff8 10 vs 10 bigger memory Tie
- Tuff8 10 vs 10 goatbotv3.2 Tie
- Tuff8 4.96 vs 5.03 defector
Source
export default function bot({ history, memory }) {
const sigmoid = z => 1 / (1 + Math.exp(-z));
const tanh = Math.tanh;
// GRU parameters: update gate ≈ 1, reset gate irrelevant, candidate = tanh(x)
const Wz = 0, Uz = 0, bz = 10; // z ≈ 1 → immediate update
const Wr = 0, Ur = 0, br = 10; // r ≈ 1 (no effect with Uh=0)
const Wh = 1, Uh = 0, bh = 0; // h_tilde = tanh(x)
let h;
if (memory === null) {
h = 0.8; // start with a cooperative bias
} else {
h = memory.h;
}
let x;
if (history.length === 0) {
x = 1; // assume opponent cooperated on the first round
} else {
x = history[history.length - 1].opponent === "C" ? 1 : 0;
}
const z = sigmoid(Wz * x + Uz * h + bz);
const r = sigmoid(Wr * x + Ur * h + br);
const h_tilde = tanh(Wh * x + Uh * (r * h) + bh);
const h_new = (1 - z) * h + z * h_tilde;
// Decision rule: cooperate if hidden state says opponent is likely to cooperate
const ourMove = h_new > 0.5 ? "C" : "D";
return [ourMove, { h: h_new }];
}