Matt Wheeler :: smol.py

This bot has played 550 games (161 wins / 16 draws / 373 losses).

Play against this bot as X or as O.

These bots have done best aganist smol.py...

Bot P W D L Points Size From beginner One hit wonder Goldfish
Jon Bannister : : anybot_r282.py (v5) 10 10 0 0 10 974 False False True
Robert Seaman : : not_minimax.py (v25) 10 10 0 0 10 3501 False False True
Séverin Hatt : : romuald_no_last_check.py (v1) 10 10 0 0 10 1598 False False True
Robert Howlett : : smart11.py (v1) 10 9 0 1 8 191 False False True
Jordan Banting : : trololololol.py (v1) 10 9 0 1 8 402 False False True

...and these bots have done worst

Bot P W D L Points Size From beginner One hit wonder Goldfish
house : : centrist.py 10 1 0 9 -8 None None None None
Peter Inglesby : : random.py 10 1 0 9 -8 26 False True True
James Campbell : : horrible.py (v4) 10 0 0 10 -10 246 False False True
Ronan Murphy : : loser.py 10 0 0 10 -10 105 False False True
Luke Spademan : : lossingbot.py (v3) 10 0 0 10 -10 129 False False True

All standings against smol.py

The code

      
from random import choice

from botany_connectfour.game import check_winner


def get_next_move(board):
    available = []
    for i, col in enumerate(board):
        if '.' in col:
            row = col.index('.')
            available.append(i)
            for token in 'XO':
                col[row] = token
                if check_winner(board):
                    return i

    return choice(available)