Aller au contenu

Messages recommandés

Bonjour, bonsoir,

je suis actuellement en train d'essayer de créer un mod concernant les colonies dans Europa Universalis IV. J'aimerais créer un event qui permettrait d'empêcher une nation coloniale de coloniser des provinces en dehors de sa région coloniale, cependant je ne vois pas comment détecter si ces nations coloniales possèdent des provinces en dehors de leur région coloniale. J'en suis resté à ça...

trigger = {
        was_player = no
        is_colonial_nation = yes
        any_owned_province = {
            NOT = {
                colonial_region = ???
            }
        }
    }

 

Toute aide serait la bienvenue et merci d'avance, bonne soirée.

Partager ce message


Lien à poster
Partager sur d’autres sites

En effet, il y a une condition pour les régions coloniales de ce nom :

colonial_region =

 

Il faut donc vérifier si la province est dans la même région coloniale que la nation coloniale.

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 4 minutes, GamingActivity a dit :

Oui, je vois un peu près comment le faire pour chaque nation coloniale une par une mais j'aimerais faire un event général et là je suis perdu...

Suffit de faire pour chaque région coloniale une par une, non ? La capitale de la nation coloniale sera toujours dans la région coloniale correspondante. 

Partager ce message


Lien à poster
Partager sur d’autres sites

Modder est toujours très long.

 

Tu as ce lien pour t'aider : https://forum.paradoxplaza.com/forum/index.php?threads/list-of-effects-modifiers-scopes-triggers-and-localization-strings-oh-my.722090/

 

Il répertorie tous les codes possibles, que ce soit des modificateurs, des conditions ou des effets.

Partager ce message


Lien à poster
Partager sur d’autres sites

Comme toujours j'ai en quelque sorte trouvé en cherchant (recherche de mods steam qui fonctionnent de manière assez similaires et en explorant leurs mods), et voici ce que j'ai trouvé :

every_owned_province = {
                limit = {
                    province_is_in_wrong_cr = yes
                }
}

 

province_is_in_wrong_cr = {
    OR = { 
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_alaska }
            }
            NOT = { colonial_region = colonial_alaska }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_canada }
            }
            NOT = { colonial_region = colonial_canada }
        }

etc...

Partager ce message


Lien à poster
Partager sur d’autres sites

ça y est je crois que je viens de comprendre ce que tu veux faire ^^ (en fait j'avais pas percuté sur le terme de "nation coloniale", pour moi on parlait de la métropole...) ! 

 

Tu donnes simplement un flag à cette province identifiée : 

set_province_flag = province_hors_zone

 

Ensuite tu crées un autre event (country_event) avec pour condition (trigger) :

any_subject_country = {
                any_owned_province = {
                    has_province_flag = province_hors_zone
                }
            }

= "Possède un sujet qui possède cette province"

 

Et en effet (effect) :

every_subject_country = {
    every_province = {
        limit = {
            has_province_flag = province_hors_zone
        }
        cede_province = ROOT
    }
}

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci tu me sauves la vie ! ;) 

Pour être sûr : 

every_subject_country = {     every_province = {         limit = {             has_province_flag = province_hors_zone         }         cede_province = ROOT     } }

le ROOT c'est forcément le grand pays qui colonise ou je dois déclencher l'event à ce dernier pour que ça fonctionne ?

Partager ce message


Lien à poster
Partager sur d’autres sites

le ROOT c'est le pays qui est concerné par l'Event. Donc celui qui a pour condition

any_subject_country = {                 any_owned_province = {                     has_province_flag = province_hors_zone                 }             }

Partager ce message


Lien à poster
Partager sur d’autres sites

Et si ça ne te dérange pas, est-ce que tu pourrais me dire si c'est correct ?

 

#Colonial Mod events
namespace = colonial_mod_events

province_event = {
    id = colonial_mod_events.1
    title = "colonial_mod_events.EVTNAME1"
    desc = "colonial_mod_events.EVTDESC1"
    picture = CITY_VIEW_eventPicture
    
    hidden = yes
    
    trigger = {
        was_player = no
        is_colonial_nation = yes
        province_is_in_wrong_cr = yes
    }
    
    immediate = {
        every_owned_province = {
            limit = {
                province_is_in_wrong_cr = yes
            }
            set_province_flag = province_is_in_wrong_cr
        }
    }
}

country_event = {
    id = colonial_mod_events.2
    title = "colonial_mod_events.EVTNAME2"
    desc = "colonial_mod_events.EVTDESC2"
    picture = CITY_VIEW_eventPicture
    
    hidden = yes
    
    trigger = {
        any_subject_country = {
            any_owned_province = {
                has_province_flag = province_is_in_wrong_cr
            }
        }
    }
    
    immediate = {
        every_subject_country = {
            every_province = {
                limit = {
                    has_province_flag = province_is_in_wrong_cr
                }
                cede_province = ROOT
            }
        }
    }
}

Partager ce message


Lien à poster
Partager sur d’autres sites

Le Trigger n'est pas bon : was_player = no et is_colonial_nation = yes sont des codes de pays et pas de province.

 

T'es sûr que ça existe ce truc : province_is_in_wrong_cr = yes ? je n'ai jamais vu ça nulle part. Si ça existe, alors essayes ça :

 


country_event = {
    id = colonial_mod_events.1
    title = "colonial_mod_events.EVTNAME1"
    desc = "colonial_mod_events.EVTDESC1"
    picture = CITY_VIEW_eventPicture
    
    hidden = yes
    
    trigger = {
        was_player = no
        is_colonial_nation = yes
        any_owned_province = {
            province_is_in_wrong_cr = yes
        }
    }
    
    mean_time_to_happen = {
        days = 1
    }
    
    option = {
        name = "colonial_mod_events.EVTOPTA1"
        every_owned_province = {
            limit = {
                province_is_in_wrong_cr = yes
            }
            set_province_flag = province_is_in_wrong_cr
        }
    }
}
country_event = {
    id = colonial_mod_events.2
    title = "colonial_mod_events.EVTNAME2"
    desc = "colonial_mod_events.EVTDESC2"
    picture = CITY_VIEW_eventPicture
    
    hidden = yes
    
    trigger = {
        any_subject_country = {
            any_owned_province = {
                has_province_flag = province_is_in_wrong_cr
            }
        }
    }
    
    mean_time_to_happen = {
        days = 1
    }
    
    option = {
        name = "colonial_mod_events.EVTOPTA2"
        every_subject_country = {
            every_province = {
                limit = {
                    has_province_flag = province_is_in_wrong_cr
                }
                cede_province = ROOT
            }
        }
    }
}

 

J'ai pas testé.

Partager ce message


Lien à poster
Partager sur d’autres sites

Je vais regarder, merci beacoup !

A propos de province_is_in_wrong_cr, je l'ai découvert en téléchargeant des mods qui ressemblaient vaguement à ce que je voulait faire pour voir comment faire :

province_is_in_wrong_cr = {
    OR = { 
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_alaska }
            }
            NOT = { colonial_region = colonial_alaska }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_canada }
            }
            NOT = { colonial_region = colonial_canada }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_eastern_america }
            }
            NOT = { colonial_region = colonial_eastern_america }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_lousiana }
            }
            NOT = { colonial_region = colonial_lousiana }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_california }
            }
            NOT = { colonial_region = colonial_california }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_mexico }
            }
            NOT = { colonial_region = colonial_mexico }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_the_carribean }
            }
            NOT = { colonial_region = colonial_the_carribean }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_colombia }
            }
            NOT = { colonial_region = colonial_colombia }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_peru }
            }
            NOT = { colonial_region = colonial_peru }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_la_plata }
            }
            NOT = { colonial_region = colonial_la_plata }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_brazil }
            }
            NOT = { colonial_region = colonial_brazil }
        }
        AND = {
            owner = {
                capital_scope = { colonial_region = colonial_oceania }
            }
            NOT = { colonial_region = colonial_oceania }
        }
    }
}

Partager ce message


Lien à poster
Partager sur d’autres sites

Sinon, est-ce que tu as une idée pour déclencher l'event 1 (qui vérifie les provinces "légitimes) de manières ce que les provinces soient détectées mais sans faire laguer le jeu ?

 

Edit : Je viens de tester le mod, j'ai fais quelques modifications pour le bien du test mais il y a un problème dans le trigger de l'event 1 :

trigger = {
        province_is_in_wrong_cr = yes
    }

le jeu ne reconnait pas cette syntaxe (même si province_is_in_wrong_cr = yes fonctionne, j'ai testé), il doit y avoir une manière de vérifier un scripted_triggers.

Modifié par GamingActivity

Partager ce message


Lien à poster
Partager sur d’autres sites

Il me semblait bien que ça n'existait pas. C'est un code pour autre chose que les Events, en tout cas ce n'est pas un trigger.

 

Un Event se déclenche tout seul si toutes les conditions sont réunies et que sa fréquence d'apparition est courte, comme là :

 mean_time_to_happen = {         days = 1     }

 

Bon du coup, si tu veux éviter de faire un Event par région coloniale, tu dois remplacer le "province_is_in_wrong_cr" par le code que tu viens de poster au-dessus... 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 9 heures, GamingActivity a dit :

Edit : Je viens de tester le mod, j'ai fais quelques modifications pour le bien du test mais il y a un problème dans le trigger de l'event 1 :

trigger = {
        province_is_in_wrong_cr = yes
    }

le jeu ne reconnait pas cette syntaxe (même si province_is_in_wrong_cr = yes fonctionne, j'ai testé), il doit y avoir une manière de vérifier un scripted_triggers.

Il faut d'abord le définir dans le dossier common\scripted_triggers pour que le jeu puisse le reconnaître.  

Modifié par Loup

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant


  • En ligne récemment   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

×