 |
|
jacobo
|
|
Another question if clause is designed such that it causes one civ do something to another civ (ex. pay tribute, transfer territory) should the clause itself do that(through the doAction method see above) so for example the clause tribute would have
void doAction(){
payerCiv.pay(recieverCiv,amount);
};
or should the the civ actually have to take the inititive and call pay itself? My feeling is the former is easier but i can imagine opposition to this so am wondering what others think?
|
|
|  |
 |
|
jacobo
|
|
For now easier is better for me?
Now some questions about aiValue(the method that returns the value to the Civ of carrying out the given clause), based on the clauses Kull outlined above.
for tribute if the A pays B one time for X dollars, and A has a dollars and B has b dollars then aiValue(A)=-X/a*100 and aiValue(B)=X/b*100,(with caps of +/-100?)
for annual tribute, with A paying B X dollars per turn and A and B bringing in a and b dollars a turn then aiValue(A)=-X/a*100 and aiValue(B)=X/b*100
All i'm asking is if this is a resonable way to calculate the aiValue of a tribute clause?
I will also need formulas for territory and tech but don't know enough to figure them out.
ps i have finished the basic code for treaties and clauses let me know if you want it.
|
|
|  |
 |
|
jacobo
|
|
one more thing...
can i send a yes/no dialog box to the player any time I need to or should I only do it at a specific time?
|
|
|  |
 |
|
jacobo
|
|
My thoughts exactly on the tribute part(I realized that a couple of hours later).
One thing i have been thinking about is how the ai should generate treaties. i'm think ing Civ A should try to maximize (t.aiValue(A)+t.aiValue(B))/pow(A,B)
where t is the treaty we are trying to optimize and pow(A,B) is how many times more powerful A is then B (could be less then 1)
The reason is that it will keep more realism in the process. Because if A and B are about the same power, this will keep(hopefully) civs from making ludicrious demands if they are evenly matched. On the other hand if A is more powerful then B, A won't care about B's feelings as much.
I my self am a bit unhappy with this proposal but currently am at a loss as to a better model.
|
|
|  |
 |
|
Kull

|
|
El Paso, TX USA
Mar 1999 time: 22:13
|
|
I'm several posts behind, so I'll try to address them all here:
I. Questions about Treaties:
I agree with Mark's responses to 1 and 2. The round of negotiations is an acceptable solution for 3. I'm mulling over some alterations, but I like the basic concept. 4 and 5 ARE difficult, if only because they could easily become so complex that you impinge on the "Fun-to-Play" factor. For example, if there's 7-30 "nations" out there, the average player does not want to engage in treaty negotiations with them every turn! Or incur some kind of "unfriendliness" penalty if he refuses to talk with them. The solution may be to think of it from the "Foreign Minister" (or "Secretary of State") viewpoint. At such a lofty eminence, he couldn't care less when some minor nation wants to curry favor, that's why he employs all those low level functionaries (ie. the AI). Let the Foreign Minister outline some broad principles (Don't start any wars, pay no bribes greater than $X, Don't give or trade the following technologies, etc.) and only contact him when nations X, Y, and Z are involved. To avoid overloading the AI, we'll need to define which combination of factors will generate a diplomatic contact between nations. I suspect most of these factors will be found within the other models (Social, Economic, Military and Governmental).
II. Treaty Responsibilities (Initiative):
A third method would be to display a list of all upcoming treaty actions and allow the player to either approve all as a group or opt to edit. (i.e. individually approve every treaty action except the payment to Slobovia.)
III. Tribute:
One comment here. In Ancient times, it was pretty much the norm for the weaker powers to pay off the stronger ones. In modern times this trend has clearly reversed (Foreign Aid, World Bank, etc.), particularly for democracies.
[This message has been edited by Kull (edited September 09, 1999).]
|
|
|  |
 |
|
jacobo
|
|
Everything above sounds resonable to me.
i have come up with a better idea for the production of treaties. The problem being in the original model there would be little difference between two sides treaties. the new one is this. A tries to
maximaze t.aiValue(A) while keeping t.aiValue(B)>t.aiValue(A)+relPow(A,B)
where t is the treaty and relPow returns the relative power of A and B form -100 to 100 in which -100 means A is way more powerful then B and 100 means B is way less powerful then B
and 0 means they are about equal.
|
|
|  |
 |
|
jacobo
|
|
Alright i have come up with an even better and simpler way to do generate treaties. Here's how it works, civ A tries to maximize t.aiValue(A) while keeping t.aiValue(B)>0. where(t is the treaty and A and B are civs).
|
|
|  |
 |
|
alms66
|
|
Louisiana
Oct 1999 time: 23:13
|
|
Just an idea on one type of treaty I'd like to see in Clash, is a type of International Waters treaty. If we have a city radius kind of thing on the map , by signing this treaty both civs would agree not to violate the others' waters where the radius crossed into the water.
Another type could be a Stand-down treaty where both civs would agree not to build military for x number of turns.
[This message has been edited by Toubabo_Koomi (edited October 24, 1999).]
|
|
|  |
 |
|
roquijad
|
|
Santiago
Nov 1999 time: 05:13
|
|
Hi there.
I'm excited about this Clash project and i'll be posting frequently.
I've three commnets:
1) Have you thought of how are you going to meassure how good a proposed treaty is? I mean for AI civs. It seems to me a really tough work, specially if you're considering mix treaties with peace, territory exchanging, tech exch. and so on.
2) In civ2 you can be over-ruled by the senate in democracy. Since you want something similar in Clash but you don't want(I hope) a stupid random number to decide this, it'd be nice to incorporate into diplomacy the rulers efforts to convence the senate. I think it'd be fun to negotiate with
the senate such issues and other topics not related with war. I'm not sure if this should be treated within the diplomatic model or inside the social model.
3) Treaties could also include:
-the possibility of closing/opening the nations resources for foreign investment and extraction(different from trade).
-Migration agreements
-Military inspection, like US over Iraq.
-Mutual investments, like international roads/railroads connections, common ports,
plague control, pollution control, etc
-Mutual tech development.
That's for now.
Rodrigo
|
|
|  |
 |
|  |
 |
|
Darren_McGuicken
|
|
Hello people,
Looks like I'm the new coder for the Diplomacy model, so I thought I'd better show my face (easier said than done in ASCII...)!
I'm still picking through the diplo package source trying to get up to speed on vaguely how things stand at the minute, so don't expect too much yet in the way of insightful comments 
One thing, which could already have been covered to death, re: some of Toubabo Koomi & roquijad's ideas -
What scope is there for maintaining agreed international law in Clash at the minute?
In the modern era diplomacy eventually becomes less a question of large-scale peace/war between major Civs as pushing politcal boundaries.
ie. Once an actual alliance/treaty with a Civ/multiple Civs has been signed, can you cheat them in some non-trivial, unscrupulous fashion (I'm thinking more within economic boundaries than military - maybe I should go read up on the econ. model)?
I know Mark answered some points about the consequences of actually breaking treaties, what about political actions within them?
Indeed, what form could those actions take? What form do possible retaliations take? Do we have some equivalent of European Courts overseeing 'fairplay' amongst allies?
Do we have/do we want(can we code!) machinations between more powerful players in an alliance against the weaker member states? The equivalent of friendly demands for tribute (eg. 'You violated fishing rights in our waters, we demand compensation'), without breaking off the treaty?
Or is this just overcomplex, unworkable tat? 
|
|
|  |
 |
|
Darren_McGuicken
|
|
Sure, setting up some reputation variables shouldn't be too difficult (for the actual Diplomacy bit, anyway)...
To get this going, I've started an extremely crude trust model - adding a couple of new public methods to the Diplomacy source:
getTrustworthiness(Civ otherCiv) will return the float ourTrustworthiness, depreciated according to the wars started/insults to other Civs.
Whenever a Civ does something particularly good or bad, the method setCurrReputation(short modifier) sets ourTrustworthiness += modifier(positive or negative as appropriate).
I've also added setNewReputation(short newReputation) to set ourTrustworthiness = newReputation in case we ever need to completely wipe the slate clean for a particular Civ.
It'd probably be worth overloading these methods to deal with details eg. a getTrustworthiness(Civ otherCiv, Civ ourCiv) to see specifically what relations are like between two Civilizations, rather than some global value - fr'instance France's reputation dips everso if it's dealing with the UK, while its 'Rest Of The World' value remains unchanged 
Bear in mind, this was knocked up in a couple of minutes so its flaws are glaring!
Some other points we should probably debate on this -
Will the raw reputation info be used directly by the AI/Player? Also, I'm assuming the the model responsible for the damaging/positive action makes the appropriate change to Diplomacy, but are there any solid ideas on how this is implemented?
What will count as a reputation-damaging insult?
Will insults be permanent? Or (my preference) will I set up some kind of memoryLength variable to show how long a Civ holds a grudge? If so, it'd probably mean keeping track of what actions happened and when (do we have a history model? It'd be nice as a user perk too - the option to see a timeline track our Civ across the ages, with details of pacts signed, wars started...). If so, should Civs have different memoryLengths depending on their character?
|
|
|  |
 |
|
Glak
|
|
starting wars with non allies should not at all decrease trustworthyness. It should increase perceivedAgressiveness or something like that for all entities with an treaty level equal to or lower than the country attacked. For example I have no treaty with countryA, so the rating is something like 0. I am trustworthy so I have like 100%. I attack countryA and my trust doesn't go down, after all I never said I wouldn't kill them. CountryB is my ally so they don't get scared of me. CountryC and I don't get along too well, perhaps we have a -2 rating. They see my agressiveness go up and start thinking about how they are probably on my list of people to destroy. CountryC will now recalculate its stance towards me since one if its values that keeps track of me has changed. CountryB will only react if other values change, perhaps my power level. Then it might come to my aid. Otherwise it won't really think anything about the war, unless perhaps it has postive or negative relations with CountryA.
But basically I think it is a very bad system if war in general lowers your trust. Your trust should drop based on how much you guys are supposedly friends. People who are friends to all can't be trusted. Countries that are always neutral can't be relied on to help in a fight while those that always jump to your side in battle have the highest trustyworthiness.
|
|
|  |
 |
|
Paul Crocker
|
|
Slidell, LA, USA
Jul 1999 time: 05:13
|
|
LGJ: I agree that what you suggest is usually the case (ie forgetting past grievances), but there are certain instances where cultures/civs just inherently distrust one another. The Arab-Israeli conflict is one example, as are some of the African tribal wars. Certain Native American tribes had long-term rivalries with their neighbors, as did some European countries (England-France and later France-Germany). The current situation in Kosovo is a wonderful example of centuries of distrust - despite successful (?) unification under a single flag.
A lot of these problems stemmed from ideological differences (religous and/or political), so this may tie in with the social-political models. One interesting point I'd like to make is this: Historically, no 2 democracies have ever gone to war with one another. This pertains to democracies/republics in practice as well as name, so this discounts countries like the GDR and PRC. In essence, any country that allows broad freedom of expression and power stemming from the people will find it very difficult to wage a large scale war against a similar country, despite how serious their grievances. Short wars against perceived non-democratic agressors (eg UN vs Iraq) are tolerated, as are some long term wars (WWII), but they require an enormous effort to get the people behind the gov't. It took years to get the US into WWII - even though the Axis were obviously agressive AND untrustworthy. Therefore, form of government should also be a factor in determining diplomatic status. It should be nearly impossible for two modern democracies to go to war in Clash (unless we seriously bend the rules for gameplay).
|
|
|  |
 |
|
Glak
|
|
I still think that trust and wars between enemies are completely unrelated issues. France and England did fight a lot in the olden days but did they mistrust each other? I don't know my history that well but I don't really see any reason for them not to trust each other. They just fought because they had no reason to be friends.
Now that I think about it, how important is trust? I doubt all that many countries trust America, seeing how fickle our foreign policy is. Yet people want to be out allies because we are so big and rich compared to the rest of the world. Perhaps trust would be used to evaluate treaties. If someone's trust is at 60% and his treaty is worth 50 treaty points then the value of that treaty would be 30. So countries would naturally value treaties with trustworthy countries more.
|
|
|  |
 |
|
Paul Crocker
|
|
Slidell, LA, USA
Jul 1999 time: 05:13
|
|
Glak: I agree that wars and trust are not always related, but they often are. The Cold War was largely waged because of mistrust (by BOTH sides). Detente allowed for the exchange of knowledge between the "warring" parties, thereby dissolving a lot of this mistrust. The loss of the source of antagonism along with increased economic hardships in the East Bloc countries precipitated the end of that war. Britain and France often DID mistrust each other. Napolean had a horrible reputation for breaking treaties, and Britain was infamous for their colonial expansion. You probably ARE right that many nations mistrust the US, but I doubt that any democratic state would even want a war with the US, much less be able to generate support for it at home. Some nations that DO mistrust the US DO go to war with the US (again the Cold War is the best example). The "war" in Kosovo is largely caused by mistrust between the Serbs and ethinic Albanians. The mistrust is partially caused by cultural/religious differences, but it's still mistrust - not just a desire to go to war.
|
|
|  |
All times are GMT. The time now is 05:13. Apolyton Time is 00:13. |
top of page
|
|
|
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is ON
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|