glitch v2.1 for stag hunt
Created 9/15/2026
Active
updated for stag hunt
Avg score
8.610
Wins
47
Losses
3395
Win rate
0.6%
Total battles: 8514
Score history
Avg: 8.610
Recent battles
- glitch v2.1 for stag hunt 10 vs 10 hershey bot mentos v3 Tie
- glitch v2.1 for stag hunt 5.5 vs 5.57 AaravC Bot 1
- glitch v2.1 for stag hunt 9.9 vs 9.9 i copied srihan Tie
- glitch v2.1 for stag hunt 5.23 vs 5.29 Ultimate Bot
- glitch v2.1 for stag hunt 9.82 vs 9.89 test 1c
- Mabey 5.03 vs 4.96 glitch v2.1 for stag hunt
- glitch v2.1 for stag hunt 10 vs 10 hershey bot mentos v2 Tie
- glitch v2.1 for stag hunt 5.99 vs 6.08 AcyclicTitForTat
- ThisIsRandom 9.07 vs 6.29 glitch v2.1 for stag hunt
- glitch v2.1 for stag hunt 10 vs 10 bigger memory Tie
- glitch v2.1 for stag hunt 4.96 vs 5.03 always defect
- glitch v2.1 for stag hunt 10 vs 10 goatbotv3.2 Tie
- cop7 9.35 vs 7.06 glitch v2.1 for stag hunt
- ITS CORN!🌽 THE ONLY THING TH... 9.89 vs 9.89 glitch v2.1 for stag hunt Tie
- glitch v2.1 for stag hunt 9.25 vs 9.29 detective grudger v1
- Dev defect def 5.03 vs 4.96 glitch v2.1 for stag hunt
- glitch v2.1 for stag hunt 9.89 vs 9.89 i copied srihan Tie
- Smarty Pants V1 10 vs 10 glitch v2.1 for stag hunt Tie
- Always Cooperate 10 vs 10 glitch v2.1 for stag hunt Tie
- Smarty Pants V1 10 vs 10 glitch v2.1 for stag hunt Tie
- glitch v2.1 for stag hunt 9.15 vs 9.21 IDK Bot
- glitch v2.2 for stag hunt 10 vs 10 glitch v2.1 for stag hunt Tie
- Test 10 vs 10 glitch v2.1 for stag hunt Tie
- glitch v2.1 for stag hunt 5.01 vs 5.07 Corn Farmer v2
- Swimmingbot3 7.74 vs 3.68 glitch v2.1 for stag hunt
- glitch v2.1 for stag hunt 10 vs 10 Tieseeeeeker Tie
- glitch v2.1 for stag hunt 10 vs 10 Apex Tie
- glitch v2.1 for stag hunt 10 vs 10 BIUN!!! Tie
- glitch v2.1 for stag hunt 5.98 vs 8.91 random
- glitch v2.1 for stag hunt 10 vs 10 hershey bot mentos v3 Tie
- playing.to.win 10 vs 10 glitch v2.1 for stag hunt Tie
- Defected_Boy111 10 vs 10 glitch v2.1 for stag hunt Tie
- glitch v2.1 for stag hunt 5.54 vs 9.01 evil meow
- The Ultimate Bot v3 9.87 vs 9.74 glitch v2.1 for stag hunt
- Oliver 2 10 vs 10 glitch v2.1 for stag hunt Tie
- Adaptative v3.1.1 10 vs 10 glitch v2.1 for stag hunt Tie
- NexBot VI 10 vs 10 glitch v2.1 for stag hunt Tie
- glitch v2.1 for stag hunt 9.89 vs 9.89 JustBeatIt V4 Tie
- Always cooperates 10 vs 10 glitch v2.1 for stag hunt Tie
- Bumwinnah 7.09 vs 3.85 glitch v2.1 for stag hunt
- glitch v2.1 for stag hunt 4.96 vs 5.03 JustDefunct
- Cobra 10 vs 10 glitch v2.1 for stag hunt Tie
- glitch v2.1 for stag hunt 10 vs 10 goatbotv4.1 Tie
- glitch v2.1 for stag hunt 8 vs 1 copycat
- apex predator v5 9.87 vs 9.75 glitch v2.1 for stag hunt
- JustBeatIt V4 9.9 vs 9.9 glitch v2.1 for stag hunt Tie
- evil meow v2 9.01 vs 5.54 glitch v2.1 for stag hunt
- glitch v2.1 for stag hunt 4.97 vs 5.02 All Defect
- glitch v2.1 for stag hunt 9.72 vs 9.85 ApexUltimate v4
- Opportunist v4 10 vs 10 glitch v2.1 for stag hunt Tie
Source
// Apex probe
const PROBE = "CCCCCCCCCDCC"
const EXPECTED = "CCCCDCDCDCCC"
export default function bot({ history, memory }) {
const hLen = history.length
let isapex = false
for (let i = 0; i < Math.min(hLen, EXPECTED.length); i++) {
if (history[i].you !== PROBE[i] || history[i].opponent !== EXPECTED[i]) {
isapex = false
break
} else isapex = true
}
if (isapex) {
if (hLen < PROBE.length) return [PROBE[hLen], null]
if (hLen >= 2 && history[hLen - 1].opponent === "D" && history[hLen - 2].opponent === "D") {
isapex = false
} else {
return ["C", null]
}
}
// probe 1
if (hLen === 0) return ["C", memory]
// random check
let c = 0
let d = 0
let tft = 0
let checked = 0
for (let i = 0; i < hLen; i++) {
if (history[i].opponent === "C") c++
else d++
if (i>=1) {
checked++
if (history[i].opponent === history[i-1].you) tft++
}
}
const cRate = c / hLen
const tftRate = tft / checked
if (cRate > 0.25 && cRate < 0.75 && tftRate > 0.25 && tftRate < 0.75) return ["C", memory]
// fallback
let oppDefected = false
for (let i = 0; i < hLen; i++) {
if (history[i].opponent === "D") {
oppDefected = true
break
}
}
// abuse always c
if (!oppDefected) {
let OurLastD = -1
for (let i = hLen-1; i >= 0; i--) {
if (history[i].you === "D") {
OurLastD = i
break
}
}
if (OurLastD === -1) {
return ["C", memory]
}
if (OurLastD === hLen - 1) return ["C", memory]
return ["D", memory]
}
const last = history[hLen - 1]
const previous = hLen >= 2 ? history[hLen - 2] : null
const befPrevious = hLen >= 3 ? history[hLen - 3] : null
// recovery
if (last.opponent === "D" && previous != null && previous.you === "D" && (previous.opponent === "C" || (befPrevious != null && befPrevious.opponent === "C"))) {
return ["C", memory]
}
// tit for tat
return [last.opponent, memory]
}