Simple Trigger Help



  • @redrum
    Thanks. I think I can deal with it for now, setting only a number of essential triggered changes to depict the era and including whatever players are needed in each case.



  • @Name Yes, all powers start at neutral, with alliances set with triggers.

    Here is the code

          <attachment name="relationshipTypeAttachment" attachTo="War" javaClass="games.strategy.triplea.attachments.RelationshipTypeAttachment" type="relationship">
          <option name="archeType" value="war"/>
          <option name="isDefaultWarPosition" value="true"/>
        </attachment>
        <attachment name="relationshipTypeAttachment" attachTo="Allied" javaClass="games.strategy.triplea.attachments.RelationshipTypeAttachment" type="relationship">
          <option name="archeType" value="allied"/>
          <option name="alliancesCanChainTogether" value="true"/>
        </attachment>
        <attachment name="relationshipTypeAttachment" attachTo="Neutrality" javaClass="games.strategy.triplea.attachments.RelationshipTypeAttachment" type="relationship">
          <option name="archeType" value="neutral"/>
        </attachment>
    <attachment name="conditionAttachmentTurn1" attachTo="A" 
    javaClass="games.strategy.triplea.attachments.RulesAttachment"  type="player"><option name="rounds"  value="1"/></attachment>
    
    <attachment name="triggerAttachmentJapanToA" attachTo="Japanese" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Japanese:A:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:2"/>
          <option name="when"  value="before:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentJapanToB" attachTo="Japanese" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Japanese:B:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:1"/>
          <option name="when"  value="after:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentGermansToA" attachTo="Germans" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Germans:A:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:2"/>
          <option name="when"  value="before:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentGermansToB" attachTo="Germans" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Germans:B:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:1"/>
          <option name="when"  value="after:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentItaliansToA" attachTo="Italians" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Italians:A:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:2"/>
          <option name="when"  value="before:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentItaliansToB" attachTo="Italians" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Italians:B:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:1"/>
          <option name="when"  value="after:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentChineseToA" attachTo="Chinese" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Chinese:A:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:2"/>
          <option name="when"  value="before:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentChineseToB" attachTo="Chinese" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Chinese:B:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:1"/>
          <option name="when"  value="after:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentAmericansToA" attachTo="Americans" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Americans:A:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:2"/>
          <option name="when"  value="before:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentAmericansToB" attachTo="Americans" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="Americans:B:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:1"/>
          <option name="when"  value="after:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentBritishToA" attachTo="British" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="British:A:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:2"/>
          <option name="when"  value="before:ABidPlace"/>
        </attachment>
    <attachment name="triggerAttachmentBritishToB" attachTo="British" javaClass="games.strategy.triplea.attachments.TriggerAttachment" type="player">
          <option name="conditions" value="conditionAttachmentTurn1"/>
          <option name="relationshipChange" value="British:B:Neutrality:Allied"/>
          <option name="uses" value="1"/>
          <option name="chance" value="1:1"/>
          <option name="when"  value="after:ABidPlace"/>
        </attachment>
    
    

    Each power has 50% of joining alliance A, and a 50% of joining alliance B.

    Note that alliances chain together not wars. Declaring war on a member of an alliance does not put you at war with the rest. However allying with another country gives you identical diplomatic relationships (for the peace and war archetypes).



  • @RogerCooper Thanks, I'll consider it when I get more deeply into how to handle diplomacy.

    Btw does this format work with trigger notifications? or only with political actions?

    Social_War=<body>Blah Blah!</body>
    Social_War.NOTIFICATION_SUCCESS=<body>Aetolia is now Allied with Sparta against Macedon!</body>
    Social_War.OTHER_NOTIFICATION_SUCCESS=<body>Aetolia is now Allied with Sparta against Macedon!</body>
    Social_War.NOTIFICATION_FAILURE=<body>Aetolia is not yet Allied with Sparta against Macedon!</body>
    Social_War.OTHER_NOTIFICATION_FAILURE=<body>Aetolia is not yet Allied with Sparta against Macedon!</body>
    

    I can't seem to get it replace things like:

    Trigger Rolling is a Failure! (Rolled at 3 out of 6 Result: 4  for Social War)
    

  • Moderators Admin

    @Name Yeah, as far as I know, the success/failure notifications are manageable only from the user side. If so, I certainly believe this is unpolished, as it should be up to the mapmaker to decide if to show them or not, at least as default (for example, there is no point showing a success notification if that also triggers a custom notification, explaining the matter).



  • @Cernel Makes sense. Anyway I'll refrain from using chances and make all diplomacy conditions more linear for now until I have implemented all my players.


  • Moderators Admin

    @Name It's unpolished, but not a big deal. Users will just have to disable showing all trigger chance rolls. Of course, I'm sure most users will not realize they can, at least not very soon. So, yeah... You can open a feature request, I suppose.

    A problem with having many trigger chances (talking about having tens of them) is that, playing live, they cause a considerable delay (I guess because the rolls have to be sent to all participants each time). Try War of the Relics, if you want.



  • @Cernel I see, but that was actually the secondary reason for avoiding chances. My main concern is messing up alliances if some triggers don't succeed before others. So I'll keep it simple (at least for now).



  • so was the whole point of this thread to get the couple trolls with many accounts to make a really really pointless and waste of time super complicated thread about Triggers and call it "simple Trigger" help?

    I just wondered for what mod/map is this for?



  • @Captain-Crunch No it just started as the title describes and due to many factors got carried away at times. It's for this map https://forums.triplea-game.org/topic/1726/ancient-empires-222-bc (in early development).



  • @Captain-Crunch
    LoL now I'm a troll... 😉 👍

    Cheers...


  • Moderators Admin

    @wc_sumpton I always thought you smelled trollish 🙂



  • @RogerCooper TripleA has 2 different systems for defining the relationships between powers. They can be designated using the "Alliance" property or by using diplomatic relationships. Alliances are set at the beginning of the game and can't be changed. Diplomatic relationships can be hard to track, especially if there are random elements with powers that can be on different sides.

    It would be useful if there was a way to combine these systems. A setAlliance trigger would be handy. An inAlliance condition would also be useful.


  • Moderators Admin

    @RogerCooper Alliances just automatically generate the implied set of relationships, unless you cover all of them directly, defining a full set with "relationshipInitialize". Alliances and relationships are not two systems to do the same thing. The Alliance is the side that may win the game together, all the power of a same Alliance winning, or not, at the same time (each power being its own alliance only if it is a FFA). The relationships are merely what is going on at the moment between two specific powers. The fact that the Alliance generates a full set of relationships is just an unnecessary aid. Also the fact that such relationships are generated so that two powers are allied, if part of the same alliance, and at war, if not, is just a standard. The two things are not mandatory. For example, you could make a WW2 game in which Russians and British are in separate Alliances, if they are meant to win separately (either one or the other wins, not both), while having them allied with each other for the entire game. Of course, in a case like this, you should take care to define victory conditions in a way that you won't end in an unwinnable scenario, since none of these two "allied" Alliances can take territories from the other one. The only thing that the Alliance are really for are victory conditions and statistic totals (the players tab), the fact that they also generate a set of relationships, if you don't provide it, is just an aid for map makers, based on the fact that, normally, you are always allied within the alliance and always at war without (but nobody bars you from making a game in which all powers of the same Alliance are at war with each other and allied with the other ones; you just need to be very creative with victory conditions, on how such a game is supposed to be played and won).

    Of course, the number of Alliances also normally gives the minimum number of players (persons) needed to play the game.



  • @all ok glad you mentioned what mod/map this is for ... we been getting lots of threads and questions for questionable "projects" and had you mentioned at the start your mod/map then I would not have wondered!

    Plus your title "simple Trigger help" also got me suspicious.

    Sure call me the forum nerd that likes to keep the trolls in check ... if a guy who was on his student council and quarterbacked his highschool and football teams and played Can-Am baseball 10 years is a nerd 😜


Log in to reply