Changing leader of nation

What would you like to see in Freeciv? Do you have a good idea what should be improved or how?
Post Reply
Lachu
Elite
Posts: 472
Joined: Sat May 04, 2013 2:19 pm

Changing leader of nation

Post by Lachu »

My idea is to add supports of leaders to Freeciv like in Civilization game. Each leader will be assigned to some nation and have different effects associated with him, like increasing science, production or giving offensive/defensive bonuses. If special sever option are enabled, killing king unit won't made player lost, but will select random leader assigned to player's nation or generate leader. New leader will born in capital city. On some governments type, player will have option to change leader without revolution, but on others (like monarchy) revolution will be started if player change leader. Player can change leader until some amount of turn be played since last leader dies or be changed.

Why this idea? You can add effects to nations, but:
a) This is probably already possible
b) Historically leaders have different way to rule people
c) Player (maybe) will change gameplay style during gameplay
adamo
Posts: 35
Joined: Sun Nov 16, 2014 6:48 pm

Re: Changing leader of nation

Post by adamo »

This would be good only with the assumption, that every AI leader has already predefined factors, like aggressiveness, city improvement trends, etc.

Example: you killed rather peaceful ("civilized" in Civ1 terminology) Russian leader Tsar Nicholas II. He is replaced by Stalin, which is not that civilized. Stalin is militaristic and he tends to manage his civ in more aggressive way.
Example II: the Chinese leader, Mao, dies. He is replaced by Deng Tsiao-Ping. The Chinese civilization starts to develop economy rather that developing an army.

The problem is, the leaders should be defined by many factors, and that's the task for historicians. Sometimes it's hard to tell. Somebody might argue, that Russian leader, Peter the Great, was aggressive, some might point out, that he was trying to develop the economy. How to define Bismarck?

...unless we give the leaders random values - from a gameplay point of view that would be a good idea, but can you imagine peaceful Stalin?
gm1530
Posts: 27
Joined: Fri Mar 29, 2013 11:48 am

Re: Changing leader of nation

Post by gm1530 »

Lachu wrote:Why this idea? You can add effects to nations, but:
a) This is probably already possible
b) Historically leaders have different way to rule people
c) Player (maybe) will change gameplay style during gameplay
Nice idea. Ok. Actually Leader is a unit and you can find the unit under the file units.tilespec (?) in experimental, etc. Now, you can create as many units "leader" as you like (lua script) but... It's pointless. Maybe we can reach the same output/goal in a different manner:

(1) Maybe enable & edit the "id" or "name" for units? I.e. I create my first Falange and his name is "Falange 1" and it's possible to edit this name...
(2) Maybe create a flag "family" or "chivalry" or "genealogy" or "idontknow"...
(3) Maybe utilize the same philosophy "animal kingdom" for Leaders...
(4) Actions? Leaders?
(5) Connect traits and leaders?
(6) Expand leaders role with a new leader.h and leader.c? Because it's not a unit... neither a player.

These are... ideas.
Lachu
Elite
Posts: 472
Joined: Sat May 04, 2013 2:19 pm

Re: Changing leader of nation

Post by Lachu »

gm1530 wrote: (2) Maybe create a flag "family" or "chivalry" or "genealogy" or "idontknow"...
(3) Maybe utilize the same philosophy "animal kingdom" for Leaders...
I don't fully understand this two points. What the flags will do? What's the philosophy of "animal kingdom"? The leader unit name could be still "king".
gm1530
Posts: 27
Joined: Fri Mar 29, 2013 11:48 am

Re: Changing leader of nation

Post by gm1530 »

Lachu wrote:I don't fully understand this two points. What the flags will do?
Sorry, it's not "flags" but "fields"... but I'm very skeptical.
Lachu wrote:What's the philosophy of "animal kingdom"? The leader unit name could be still "king".
Well.. A new nation where there is a list with all the kings or leaders... but it's a little problematic and pointless. Anyway.. I think I can add the seventh point :D
  • (7) Expand nation.ruleset, now we have:

Code: Select all

leaders = {
 "name", "sex"
 "Louis J. Robichaud", "Male"
Mabye we can add...

Code: Select all

leaders = {
 "name", "sex", "birth", "father", "mother", "idontknow", "trait"
 "Louis J. Robichaud", "Male", "5 (turn)", "alpha", "beta", "idontknow", "expansionist"
I've searched "leader_count" and "leader_is_male" in the source code and I've found (packets.def):

Code: Select all

UINT8 leader_count;
STRING leader_name[MAX_NUM_LEADERS:leader_count][MAX_LEN_NAME];
BOOL leader_is_male[MAX_NUM_LEADERS:leader_count];
You can see; STRING -> leader's name; BOOL -> is male / not female... It's very interesting.

"Birth" is the turn, when the leader/king/idontknow appears.
"Father" is another leader
"Mother" is another leader
"idontknow"... have you suggestions or advices?

Now the problem is... It's correct a unit leader? Because a single unit hasn't sex attributes, ok, it's funny... but true.
gm1530
Posts: 27
Joined: Fri Mar 29, 2013 11:48 am

Re: Changing leader of nation

Post by gm1530 »

Yesterday I was thinking about the code... and..

My first thought was about "genealogy", the requirements (father and mother). This system is very similar to "tech tree"; father is "req1" so mother is "req2". About the code it's a "copy with edit" from techtree. Now... I don't know if it's more easy create "leader.c/h" pages or... to edit simply nationrandom.ruleset. It's a very hard work (waste time) insert in every nation new fields for leaders. Maybe it's better separate... but I don't know if it's useful or not.

Why "tech tree" concept? Only because I find very funny a new screen family tree. If not... I think it's necessary a check in the code, so you can find and validate your father and your mother. About "birth"... no idea... About the traits, there is a possibility to connect traits.h/c and nation.c/h, etc.

My second thought was about "unit sex" or "sex unit" (so we can increase our position in google :D ). It's useful or not? My first reply was pointless, but... I think it's interesting the concept of "unit name", where I can edit the name.

My third thought was insert an id before the name in nationrandom.ruleset. So you can have:

Code: Select all

leaders = {
"id", "name", "sex", "birth", "father", "mother", "idontknow", "trait"
"05062015", "Louis J. Robichaud", "Male", "5 (turn)", "alpha", "beta", "idontknow", "expansionist"
I don't know if my "thought" is correct, but potentially we could create a bond between "leader" and "unit".
Lachu
Elite
Posts: 472
Joined: Sat May 04, 2013 2:19 pm

Re: Changing leader of nation

Post by Lachu »

I don't understand, why you like to provide information about mother/father. What about Democracy and presidents?
gm1530
Posts: 27
Joined: Fri Mar 29, 2013 11:48 am

Re: Changing leader of nation

Post by gm1530 »

Lachu wrote:I don't understand, why you like to provide information about mother/father. What about Democracy and presidents?
Well... It's true, but it's very difficult that you begin with democracy. Anyway you can choose the leader in democracy; it's different for monarchy, etc. I think that if we provide all details and informations, we can create a system complicated and strategic. It's not compulsory, it's only complete.

Can you imagine this system? Theoretically, we could manipulate character informations and maybe remove the indications (leaders) from all nationrandom.ruleset file; we can gain space and reduce the amount of informations. Obviously only if the leaders list is separated and indipendent.

If leaders.ruleset is indipendent, we have to add "nations" field.

Code: Select all

leaders = {
"id", "name", "sex", "nation", "birth", "father", "mother", "idontknow", "trait"
"05062015", "Voltaire", "Male", "France", "5 (turn)", "alpha", "beta", "idontknow", "expansionist"
User avatar
GriffonSpade
Elite
Posts: 578
Joined: Mon Apr 29, 2013 4:41 pm

Re: Changing leader of nation

Post by GriffonSpade »

A few problems with your suggestion:
1) Turns are 50 years at the start. Leaders would be replaced /every turn/. This could cause the AI to behave schizophrenically.
2) You're overcomplicating it. Why do we need to know parents, etc.? Just randomly pick a name from the leader list every number of years as is appropriate to the government and calendar, and append a roman numeral to the end as appropriate if they're not the first.

However, having your leaders have defined characteristics gets woolly when you're not even using the original set anymore. Maybe it could be justified as a title chosen to reflect the original leader's characteristics or something.

While I don't think it's a particularly useful idea for normal games, it sounds like it would be useful in a scenario. For example, if you made a World War II scenario, it might start at the end of World War I and the leaders of countries would change from peacable leaders to warmongers, causing them to attack others.


While it seems like a marginal thing, I wouldn't object to a 'label' that we could put on a unit. It probably wouldn't be something displayed normally, only by the owner when the unit is selected. It might make it easier to keep track of units you have doing certain things by naming them.
Lachu
Elite
Posts: 472
Joined: Sat May 04, 2013 2:19 pm

Re: Changing leader of nation

Post by Lachu »

One more idea. Under democracy player can change leader without cost, but under monarchy changing leader will cause anarchy.
Post Reply