So one existing issue is that bots like “count”
function count(t)
local r,p,s=0,0,0
local function f(x)
if x==0 then r=r+1 elseif x==1 then p=p+1 else s=s+1 end
end
for i=1,#t do f(t[i])end
return function()
if #t~=0 then f(t[#t])else return math.random(3)-1 end
if r>p and r>s then return 1
elseif p>s and p>r then return 2
elseif s>p and s>r then return 0
elseif p>s and p==r then return math.random(2)-1
elseif s>r and s==p then return math.random(2)
elseif r>p and r==s then return(math.random(2)+1)%3
else return math.random(3)-1
end
end
end
have that bit of memory going on that gets reset every time the main function is called, which is every time there is a new server. Not only new servers, but any time two different servers simulate games between it and another bot, say one server plays a batch of games and then a different server does and then the first one does again, it will have different things going on in that area. This bot “count” re-simulates every game from the start when it’s called (which would be impractical and laggy for advanced bots), but that still doesn’t solve the issue of its r,p,s variables saying different things between servers. I’m not sure what to do about that, or what even can be done.