IDK Bot
Created 9/7/2026
Active
A simple strategy
Avg score
7.649
Wins
3866
Losses
8658
Win rate
21.9%
Total battles: 17648
Score history
Avg: 7.649
Recent battles
- IDK Bot 9.81 vs 9.88 Test
- raju 8.95 vs 9.09 IDK Bot
- IDK Bot 9.58 vs 9.65 evil tic tacs
- Columbus 9.81 vs 9.81 IDK Bot Tie
- IDK Bot 9.91 vs 9.91 i copied srihan Tie
- IDK Bot 4.96 vs 5.03 Unintended Defection bot
- IDK Bot 5.91 vs 6.16 RanBot3003
- Poseidon 9.89 vs 9.89 IDK Bot Tie
- IDK Bot 8.29 vs 2.29 C!
- IDK Bot 6.95 vs 6.89 NexBot V
- Opportunist v4 9.63 vs 9.76 IDK Bot
- tieseeker v5 7.03 vs 7.03 IDK Bot Tie
- IDK Bot 5.35 vs 5.81 Gridger
- the thinker v2 9.9 vs 9.95 IDK Bot
- IDK Bot 5.45 vs 5.74 Dilemma-Bot-Hackclub
- ITS CORN!🌽 THE ONLY THING TH... 9.89 vs 9.89 IDK Bot Tie
- goatbotv3.1 9.64 vs 9.77 IDK Bot
- better 9.52 vs 9.66 IDK Bot
- glitch v2.1 for stag hunt 9.15 vs 9.21 IDK Bot
- ApexUltimate v8 9.9 vs 9.9 IDK Bot Tie
- IDK Bot 4.75 vs 5.29 Swimmingbot3
- IDK Bot 9.79 vs 9.68 goatbotv3.1
- IDK Bot 5.45 vs 5.98 take a fuckin' guess
- IDK Bot 5.41 vs 5.86 Miyagi-do
- JustBeatIt V4 9.92 vs 9.92 IDK Bot Tie
- cop until 2 defect 8.48 vs 8.58 IDK Bot
- IDK Bot 5.59 vs 5.79 big grim guy
- IDK Bot 8.45 vs 8.52 greedy tic tacs
- IDK Bot 9.77 vs 9.58 Reactant V3.5.1
- IDK Bot 9.19 vs 9.25 BeeBot3
- IDK Bot 7.89 vs 7.89 Tuff8 Tie
- Opportunist 6.66 vs 6.35 IDK Bot
- Apex 5.96 vs 5.31 IDK Bot
- Miyagi-do 9.48 vs 9.48 IDK Bot Tie
- random 6.32 vs 6.05 IDK Bot
- IDK Bot 7.77 vs 7.83 Wikipedia
- IDK Bot 5.65 vs 5.22 A Rational Individual
- IDK Bot 9.63 vs 9.37 Adaptative v3.1.1
- IDK Bot 8.99 vs 9.09 One Last Win v0.1
- OmegaTFT 5.72 vs 5.31 IDK Bot
- goatbotv4.1 9.69 vs 9.75 IDK Bot
- IDK Bot 8.54 vs 8.54 3Blue1Brown Tie
- The Ultimate Bot v3 9.91 vs 9.91 IDK Bot Tie
- IDK Bot 7.58 vs 7.58 Better-Tuff8 Tie
- Mark 5 5.08 vs 4.98 IDK Bot
- IDK Bot 5.84 vs 6.24 AcyclicTitForTat
- Grudger 6.04 vs 5.25 IDK Bot
- IDK Bot 9.86 vs 9.72 crownbotv2
- tic tacs 9.52 vs 9.52 IDK Bot Tie
- IDK Bot 9.9 vs 9.9 kind detective Tie
Source
export default function bot({ history, memory }) {
const round = history.length
// Round 1: always cooperate. Never be the first to defect.
if (round === 0) {
return ["C", { oppDefections: 0, myDefections: 0 }]
}
memory = memory ?? { oppDefections: 0, myDefections: 0 }
const last = history[round - 1]
const oppLast = last.opponent
if (oppLast === "D") memory.oppDefections++
const oppDefectRate = memory.oppDefections / round
let move
if (round >= 15 && memory.oppDefections === 0) {
// Very likely an always-cooperate bot after enough rounds of evidence.
// Exploit it — 3 points/round beats the 2 we'd get from mutual cooperation.
move = "D"
} else if (round >= 10 && oppDefectRate > 0.85) {
// Very likely an always-defect (or near it) bot. Stop trying to
// reciprocate cooperation that never comes — just defect back.
move = "D"
} else if (oppLast === "D") {
// Tit-for-tat retaliation, but generous: forgive occasionally so a
// single defection (or misread) doesn't lock us into permanent
// mutual defection, which is worse for both sides long-term.
move = Math.random() < 0.1 ? "C" : "D"
} else {
move = "C"
}
return [move, memory]
}