Thread Tools
Old February 6, 2003, 16:05   #31
itsamic
Settler
 
Local Time: 16:16
Local Date: November 1, 2010
Join Date: Feb 2003
Posts: 19
Unfortunately I don't know much about SLIC so the question to the experts: would it be possible to define the prio for GOAL_SETTLE_LAND in strategies.txt (if this is the right switch) dynamicly, depending to the gov type and the current number of cities to prevent the AI from overgrowing?
I have the same problem on a 200x400 map and it is too easy. I've only to wait and the AI grows into self-destruction.
itsamic is offline  
Old February 6, 2003, 17:09   #32
Martin Gühmann
staff
Call to Power II Democracy GameCall to Power Democracy GameCTP2 Source Code Project
Super Moderator
 
Martin Gühmann's Avatar
 
Local Time: 17:16
Local Date: November 1, 2010
Join Date: Mar 2001
Location: Tübingen, Germany
Posts: 6,206
Quote:
Originally posted by itsamic
Unfortunately I don't know much about SLIC so the question to the experts: would it be possible to define the prio for GOAL_SETTLE_LAND in strategies.txt (if this is the right switch) dynamicly, depending to the gov type and the current number of cities to prevent the AI from overgrowing?
I have the same problem on a 200x400 map and it is too easy. I've only to wait and the AI grows into self-destruction.
Well I think the best sollution on ultra gigantic maps is to increase the city caps, that will give the AI some room and also for the human so that it is possible to achieve the bloodlust victory. Also the priorities of the goals can be changed by switshing the strategies via slic during the game. But on oversized maps as I said the real problem are the city caps.

-Martin
__________________
Civ2 military advisor: "No complaints, Sir!"
Martin Gühmann is offline  
Old February 6, 2003, 17:48   #33
Immortal Wombat
Apolytoners Hall of Fame
Prince
 
Immortal Wombat's Avatar
 
Local Time: 16:16
Local Date: November 1, 2010
Join Date: Dec 2000
Location: in perpetuity
Posts: 4,962
itsamic, the way I did it was to make a strategy which simply removed settlers from the AIs priorities altogether, and force that strategy to be adopted once they hit the city limit.
__________________
Concrete, Abstract, or Squoingy?
"I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis
Immortal Wombat is offline  
Old February 14, 2003, 20:14   #34
itsamic
Settler
 
Local Time: 16:16
Local Date: November 1, 2010
Join Date: Feb 2003
Posts: 19
I have already increased city caps, but it should be in a limit because to much cities speeds up the game too much. I'm using 22 Civs because I think a large map and many civs make the game more "realistic", there are much more interactions possible. At the moment I'm trying with the modified pop.txt but I'm not sure if entertainers will solve the problem. If a civ grows to fast at the beginning (with many smal cities) the problem still appears.
@Immortal Wombat
Would you please post the code for changing the priority according to the city limit? I know that it is the wrong way to learn the SLIC syntax but....
itsamic is offline  
Old February 15, 2003, 13:48   #35
Martin Gühmann
staff
Call to Power II Democracy GameCall to Power Democracy GameCTP2 Source Code Project
Super Moderator
 
Martin Gühmann's Avatar
 
Local Time: 17:16
Local Date: November 1, 2010
Join Date: Mar 2001
Location: Tübingen, Germany
Posts: 6,206
Increasing the city cap is needed if you increase the map size, also necessary is to modify the pollution settings.

By the way in my last test game I found an AI that was 7 cities over the city cap without any problems, they lowered the slider settings but only a few cities had minor problems of happiness of 72/71.

-Martin
__________________
Civ2 military advisor: "No complaints, Sir!"
Martin Gühmann is offline  
Old February 16, 2003, 08:32   #36
Immortal Wombat
Apolytoners Hall of Fame
Prince
 
Immortal Wombat's Avatar
 
Local Time: 16:16
Local Date: November 1, 2010
Join Date: Dec 2000
Location: in perpetuity
Posts: 4,962
Quote:
Originally posted by itsamic
@Immortal Wombat
Would you please post the code for changing the priority according to the city limit? I know that it is the wrong way to learn the SLIC syntax but....
I'm afraid my modem's bust so I can't post from home, where the files are... I'll try to respond when I get a new modem.
__________________
Concrete, Abstract, or Squoingy?
"I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis
Immortal Wombat is offline  
Old February 17, 2003, 07:54   #37
itsamic
Settler
 
Local Time: 16:16
Local Date: November 1, 2010
Join Date: Feb 2003
Posts: 19
I have already increased city cap and pollution settings. Additionally I gave water filter the ability to decrease pollution, reduced the probability to find settlers and citys in the huts, increased the min distance between cities and the nice factor for founding new cities. Currently I'm testing these settings. I think this will keep me busy for a week or so, so far it looks fine.
The next I want is to stretch the time line and the tech tree and after this it could be necessary again to steer the growing of the AI.
itsamic is offline  
Old April 27, 2003, 14:59   #38
Immortal Wombat
Apolytoners Hall of Fame
Prince
 
Immortal Wombat's Avatar
 
Local Time: 16:16
Local Date: November 1, 2010
Join Date: Dec 2000
Location: in perpetuity
Posts: 4,962
oops, forgot about this...

Actually, it seems I lied. What I did was to stop the AI building settlers when it hadn't built a city for 'a long time', and had a certain number of cities already. I don't know if this is needed, but it saves the AI hauling a whole load of settlers around a map that's already fully settled.

It's quite simple actually:

Code:
// In strategies.txt
STRATEGY_ENOUGH_OF_THE_SETTLERS {
    SettlerUnitsCount       0
}
STRATEGY_ALMOST_ENOUGH_OF_THE_SETTLERS {
    SettlerUnitsCount       1
}

// In a SLIC file

int_t	CityCountdown[];
HandleEvent(BeginTurn) 'settler_watcher' pre{
	if(g.year <=  1){
                           for(i=0;i < preference("NumPlayers"); i = i + 1){
                                 CityCountdown[player[i]] = 0
                           }
                }
	CityCountdown[player[0]] = CityCountdown[player[0]] + 1;
	if(CityCountdown[player[0]] >= 200 && player[0].cities >=15){
		SetStrategicState(player[0], StrategyDB(STRATEGY_ENOUGH_OF_THE_SETTLERS_ALREADY));
	} elseif(CityCountdown[player[0]] >= 100 && player[0].cities >=15){
		SetStrategicState(player[0], StrategyDB(STRATEGY_ALMOST_ENOUGH_OF_THE_SETTLERS_ALREADY)); 
               }
}

HandleEvent(CreateCity) 'reset_city_watch' pre{
	int_t	tmpPlayer;
	tmpPlayer = player[0];
	CityCountdown[tmpPlayer] = 0;
}
If you have Dale's WhatGovAmI? code installed and running in the mod, it wouldn't be too difficult to make it check for city limits.

Code:
// assuming GOVT_WhatGovtAmI array is set up.

HandleEvent(BeginTurn) 'check_city_limits' pre{
int_t   maxCities;
   government[0]=GOVT_WhatGovtAmI[player[0].owner];
   maxCities=GovernmentDB(government[0].type).TooManyCitiesThreshold;
    if(PlayerCityCount(player[0].owner) >= maxCities){
                  SetStrategicState(player[0], StrategyDB(STRATEGY_ENOUGH_OF_THE_SETTLERS_ALREADY));
   }
}
Or something.
Untried, untested, don't sue me, hate me, or trust me ever again if it all goes pear-shaped.
__________________
Concrete, Abstract, or Squoingy?
"I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis
Immortal Wombat is offline  
 

Bookmarks

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -4. The time now is 11:16.


Design by Vjacheslav Trushkin, color scheme by ColorizeIt!.
Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Apolyton Civilization Site | Copyright © The Apolyton Team