Well I kind of know now but... There is a large module script that controls everything that happens in a round of my game. When choosing a map it always chooses #1 or #2 and never changes. How can I fix this?
GameController.Intermission = function(roundEnd)
-- unnecessary code removed
-- Choose map
local map = GameController.ChooseMap()
GameController.BeginGame()
end
GameController.ChooseMap = function()
math.randomseed(tick())
local number = math.random(3)
return number
end
-- more functions later
Thanks!

2 comments
Wow that worked. But shouldn't it still work even if I set it multiple times? Odd but correct answer I guess :D
No. If you set it multiple times, you're actually just messing with how Lua handles things internally and making sure that it doesn't do its job properly.