I am building a turn based multiplayer simulation game that at the end of each turn takes all of the users inputs/actions then compiles all the data and interactions returning the result of the previous decisions made. My problem is how to scale this out. How do games like civ handle the computation of the game each turn without massive overheads on server computation? My game in specific has an economy with many different factors and values which all interact with each other and can trigger events based on random numbers and thresholds. I need to find a way to handle all of the computation without offloading it all to a server dramatically increasing costs.