Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2003:
[Freeciv-Dev] (PR#6268) RFC: Clustering in Civil War
Home

[Freeciv-Dev] (PR#6268) RFC: Clustering in Civil War

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: cameron@xxxxxxxxxx
Subject: [Freeciv-Dev] (PR#6268) RFC: Clustering in Civil War
From: "John Wheeler" <jdwheeler42@xxxxxxxxx>
Date: Wed, 24 Sep 2003 18:03:11 -0700
Reply-to: rt@xxxxxxxxxxxxxx

[cameron - Wed Sep 24 15:06:52 2003]:
> * What features should be used to determine membership in the
> cluster? I currently use only Euclidean distance, but other things
> might be important: continent number, courthouses, wonders,
> happiness, etc.

Here's an algorithm that makes more sense to me:
0. Put the governement into anarchy. (I'm not sure about this.)
1. Find the happiest city in the nation.  Make it the new capital
(building the Palace if savepalace==1).
2. Find the unhappiest city in the nation.  Make it the capital of the
rebels.
3. For each city, decide whether the city would be happier with original
country or the rebels.

Since under anarchy, corruption (and thus usually happiness) depends on
distance to the capital, this should give greater continuity of the
pieces.  Also, if the original country has a palace and the rebels
don't, this should make the rebels smaller, too.

What would make it even more interesting, after nationality is
implemented, would be if unhappy citizens and (say) 1/2 of content
citizens became rebels, and the rest (including specialists) remained
loyal.  (Of course, this would not apply to other nationalities in the
city.)  Cities where rebels outnumber loyalists would become rebel
cities.  And, if city workers could freely leave cities (as is part of
PR#6159), have some of the workers who are of opposite nationality of
the city they're in would spontaneously become refugees and head toward
the nearest city of the same nationality (that is accessible via goto).

-- 

++JohnWheeler


[Prev in Thread] Current Thread [Next in Thread]