OmegaTitForTat
Created 9/10/2026
Active
Credit: Slany & Kienreich Builds on TitForTat Maintains a randomness score, and when it exceeds a threshold switches to an AlwaysDefect strategy Maintains a deadlock score, and when it exceeds a threshold cooperates for one turn and resets the deadlock score
Avg score
8.561
Wins
761
Losses
2350
Win rate
8.2%
Total battles: 9322
Score history
Avg: 8.561
Recent battles
- OmegaTitForTat 5.33 vs 5.37 AaravC Bot 1
- OmegaTitForTat 5.15 vs 5.21 cop5
- OmegaTitForTat 9.91 vs 9.91 The Detective (#4) Tie
- Opportunist 5.16 vs 5.57 OmegaTitForTat
- OmegaTitForTat 10 vs 10 Bumwinnah4 Tie
- defector 5.03 vs 4.96 OmegaTitForTat
- OmegaTitForTat 9.29 vs 9.18 A Rational Individual
- MoveStealer v2 10 vs 10 OmegaTitForTat Tie
- NexBot III 10 vs 10 OmegaTitForTat Tie
- glitch v2.2 for stag hunt 10 vs 10 OmegaTitForTat Tie
- OmegaTitForTat 10 vs 10 Czechias imperium Tie
- OmegaTitForTat 9.42 vs 9.49 Wikipedia
- Defected_Boy111 10 vs 10 OmegaTitForTat Tie
- OmegaTitForTat 10 vs 10 Cobra Tie
- MoveStealer V3.6 10 vs 10 OmegaTitForTat Tie
- Opportunist v3 5.72 vs 5.65 OmegaTitForTat
- Abdullah Ezzat 9.91 vs 9.91 OmegaTitForTat Tie
- NexBot V 10 vs 10 OmegaTitForTat Tie
- Pls work! 10 vs 10 OmegaTitForTat Tie
- OmegaTitForTat 10 vs 10 Adaptative v3.1.1 Tie
- Mark3 Test 5.38 vs 5.31 OmegaTitForTat
- Swimmingbot2 7.55 vs 7.55 OmegaTitForTat Tie
- OmegaTitForTat 10 vs 10 generous tft Tie
- OmegaTitForTat 10 vs 10 crownbotv3 Tie
- Smarty Pants V1 10 vs 10 OmegaTitForTat Tie
- OmegaTitForTat 10 vs 10 MoveStealer v2 Tie
- OmegaTitForTat 4.97 vs 5.02 Test123
- OmegaTitForTat 10 vs 10 Agnes-distill-Tachyon-v3 Tie
- something 9.9 vs 9.9 OmegaTitForTat Tie
- mahoraga v2 5.03 vs 4.97 OmegaTitForTat
- cop until 2 defect 10 vs 10 OmegaTitForTat Tie
- OmegaTitForTat 9.9 vs 9.9 Agnes-distill-Tachyon-v2 Tie
- OmegaTitForTat 8.57 vs 8.57 Castifier 2.0v Tie
- BeeBot2 9.78 vs 9.72 OmegaTitForTat
- OmegaTitForTat 10 vs 10 Czechias imperium Tie
- tit for tat 10 vs 10 OmegaTitForTat Tie
- FlippityFloppity v3 3.28 vs 6.4 OmegaTitForTat
- OmegaTitForTat 10 vs 10 NexBot III Tie
- evil meow v2 9.92 vs 9.92 OmegaTitForTat Tie
- OmegaTitForTat 10 vs 10 NexBot III Tie
- OmegaTitForTat 9.92 vs 9.92 ApexUltimate v3 Tie
- Agnes-distill-Tachyon-v3 10 vs 10 OmegaTitForTat Tie
- OmegaTitForTat 9.89 vs 9.89 evil meow Tie
- goatbotv3.2 10 vs 10 OmegaTitForTat Tie
- OmegaTitForTat 9.89 vs 9.89 JustBeatIt V4 Tie
- OmegaTitForTat 9.89 vs 9.89 JustBeatIt V5 Tie
- OmegaTitForTat 10 vs 10 Tuff8 Tie
- OmegaTitForTat 9.88 vs 9.88 RanBot3004 Tie
- OmegaTitForTat 4.96 vs 5.03 mahad kay
- OmegaTitForTat 9.92 vs 9.92 WILLIAM SMITH Tie
Source
/* OmegaTitForTat (Credit: Slany & Kienreich)
Builds on TitForTat
Maintains a randomness score, and when it exceeds a threshold switches to an AlwaysDefect strategy
Maintains a deadlock score, and when it exceeds a threshold cooperates for one turn and resets the deadlock score
*/
const RANDOM_THRESHOLD = 10;
const DEADLOCK_THRESHOLD = 4;
export default function bot({ history, memory }) {
if (history.length === 0) {
return ["C", {randomness: 0, deadlock: 0, triggered: false}];
} else if (memory.triggered) {
return ["D", memory];
}
let randomness = memory.randomness;
let deadlock = memory.deadlock;
let lastRound = history.at(-1);
if (history.length > 1) {
if (history.at(-2).opponent != lastRound.opponent) {
randomness += 1;
}
}
if (lastRound.opponent != lastRound.you) {
randomness += 1;
deadlock += 1;
} else if (lastRound.you === "C") {
randomness = Math.max(randomness - 1, 0);
deadlock = 0;
} else {
deadlock = 0;
}
if (deadlock > DEADLOCK_THRESHOLD) {
return ["C", {randomness: randomness, deadlock: 0, triggered: false}];
} else if (randomness > RANDOM_THRESHOLD) {
return ["D", {randomness: randomness, deadlock: deadlock, triggered: true}];
} else {
return [lastRound.opponent, {randomness: randomness, deadlock: deadlock, triggered: false}];
}
}
export let botName = "OmegaTitForTat";