(svn r24) Fix: competitors are starting more real
authortruelight
Wed, 11 Aug 2004 22:30:29 +0000
changeset 23 324407ad61da
parent 22 fe6f35cc987b
child 24 5c611497f25a
(svn r24) Fix: competitors are starting more real
players.c
--- a/players.c	Wed Aug 11 22:07:08 2004 +0000
+++ b/players.c	Wed Aug 11 22:30:29 2004 +0000
@@ -492,10 +492,8 @@
 
 void StartupPlayers()
 {
-	uint32 r;
-	
-	r = Random();
-	_next_competitor_start = (byte)r + _opt.diff.competitor_start_time * 6882 + 1;
+	// The AI starts like in the setting with +2 month max
+	_next_competitor_start = _opt.diff.competitor_start_time * 90 * 74 + RandomRange(60 * 74) + 1;
 }
 
 static void MaybeStartNewPlayer()
@@ -510,10 +508,11 @@
 			n++;
 
 	// when there's a lot of computers in game, the probability that a new one starts is lower
-	if (n < (uint)_opt.diff.max_no_competitors && n < RandomRange(_opt.diff.max_no_competitors))
+	if (n < (uint)_opt.diff.max_no_competitors && n < RandomRange(_opt.diff.max_no_competitors + 2))
 		DoStartupNewPlayer(true);
 	
-	_next_competitor_start = RandomRange(19980) + 11100;
+	// The next AI starts like the difficulty setting said, with +2 month max
+	_next_competitor_start = _opt.diff.competitor_start_time * 90 * 74 + RandomRange(60 * 74) + 1;
 }
 
 void InitializePlayers()