Announcement

Collapse
No announcement yet.

Diplomacy Model v1.1

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #46
    Hi Rodrigo:

    A hearty official welcome to the forum.

    The treaty AI will be tough. (But fun for a weird twisted AI junkie like me ) It will involve
    1) how much a side thinks they can gain from continuing the current diplomatic state, be it war or whatever
    2) how much it values territory gains versus particular techs, etc.
    3) and a bunch more.
    There's a crude outline of my hierarchical AI idea, that discusses some of these things, on my web page.

    I like your comment #2. Why don't you post it in the government thread, where I think it better belongs.

    Your suggestions in #3 are interesting, but may be too complicated even for Clash! Kull, what do you think?
    Project Lead for The Clash of Civilizations
    A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
    Check it out at the Clash Web Site and Forum right here at Apolyton!

    Comment


    • #47
      I guess Kull doesn't come here very often....

      Comment


      • #48
        roquijad: "Come here much?" LOL, well not lately. All my Clash energies have been devoted to the Web Site, and now that we're on Apolyton I can take a deep breath and look at some of the other activities. Especially this one, since it has my name on it!

        Mark has answered 1 & 2, so I'll comment on number three where you made five suggestions:

        - Migration sounds like something we're handling in the Social model. There may be some Diplomacy triggers associated with that, but none I'm aware of.

        - Military Inspections (or at least the knowledge gained therefrom) are addressed in sections III.7. and III.9. A situation where a hostile state "voluntarily" gives you access to their military data is not something we cover. And it may not be common enough in history to be worth modeling.

        - Resource Nationalization or Exploitation strike me as being very complicated inter-state relationships. It's possible that Mark addresses them in the Economic model, and if so a link to diplomacy should be doable. Desirable is another question!

        - Mutual Investment and Mutual Tech Development may be feasible, since we're looking at coding Mutual Support in the Military model. So my guess is that we might be able to use the same code. If it's not too difficult to implement, these would be nice added features for an alliance.
        To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

        From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

        Comment


        • #49
          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?

          Comment


          • #50
            Darren:

            Thanks for taking this on!

            Wow, those are some rarefied diplomatic points. My rule in diplomacy is whatever you can get away with is legal. That pertains to the modern world too IMO. Breaking a treaty in Any way only has negative effects on reputation, and those effects caused by others who don't like what you did.

            World courts and such could probably be created in Clash, but I have no idea what constraints they'd operate under.

            I think your final point is just one more variation on the standard threat, which we Do need IMO.

            Mark
            Project Lead for The Clash of Civilizations
            A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
            Check it out at the Clash Web Site and Forum right here at Apolyton!

            Comment


            • #51
              Coding update

              Actually, I don't have anything interesting to say yet, but I thought I'd let you people know I wasn't just sitting here scratching my backside

              The code for the diplomacy model is now going through its first revision since demo3.

              At the minute I'm just doing mindless(?) techie stuff - adding getters & setters to replace those public variables; source reorganisation, including use of some new private methods to improve code readibility/save some redundancy; moving to java2 list models over StupidLists.

              After that, my main goal is obviously to get as much of the current diplomacy model working as quickly as possible, so my first priority is to finish-up and debug the code Jacobo had well advanced/nearly-there, like treaties & clauses.

              When that's all done (no idea how long it'll take at the moment), I'll eventually post some sort of list of what the diplo package now supports for the benefit of the AI coders (or insatiably curious ).

              Has anyone any really strong feelings about what they'd like to see working first? I'm quite happy to go off on a completely different tangent if anybody thinks I'm overlooking something major.

              Comment


              • #52
                Hi Darren:

                Hooray for the non-backside-scratchers!

                One thing we could effectively use soon is a way to keep track of reputation. To some civs their reputation will mean a great deal, to others not much. Certainly someone making a deal with them wants to know which camp they're in ;-) We need a way to keep track of both Specific shafts, and general (dis)honorable behavior. Once a good trusting relationship is established that opens the road to military alliances where units are lent and such.

                That's all I've got for now...

                Mark
                Project Lead for The Clash of Civilizations
                A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                Check it out at the Clash Web Site and Forum right here at Apolyton!

                Comment


                • #53
                  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?

                  Comment


                  • #54
                    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.

                    Comment


                    • #55
                      Agree with the general tack, including Glak's comments. Reputation is multi-faceted (Trustworthiness, Aggressiveness, etc. ; we need a specific set) and each will have a general component, and also ones for each bipolar relationship.

                      There will be history kept track of. I have ideas for how to implement this vis-a-vis diplomatic relations. I'll try to write them up soon.
                      Project Lead for The Clash of Civilizations
                      A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                      Check it out at the Clash Web Site and Forum right here at Apolyton!

                      Comment


                      • #56
                        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.

                        Comment


                        • #57
                          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.
                          Paul

                          Comment


                          • #58
                            First off having the diff. Idealogies could be what sets the anti status up and continuing to do so would be like continually attacking them so in that respect it shouldn't be too hard to address my concerns with urs.
                            Which Love Hina Girl Are You?
                            Mitsumi Otohime
                            Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

                            Comment


                            • #59
                              I think it should over time slowly go towards 0 for every civ, reguardless of alliances because unless a civ routinely does something that might change that chances are people will either forget or look on it as simply part of history and not consider it part of the current admin.
                              Which Love Hina Girl Are You?
                              Mitsumi Otohime
                              Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

                              Comment


                              • #60
                                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).
                                Paul

                                Comment

                                Working...
                                X