Evento persistente o quasi

Discussione in 'Mod e Patch' iniziata da Mikhail Mengsk, 12 Luglio 2009.

  1. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Sto studiando un evento per dare risorse ad uno stato quando viene creato. Però voglio evitare che se questo stato venisse creato due volte (per esempio annesso e poi liberato di nuovo) si riattivi l'evento.

    Se metto sleep_event nei command lo disattivo per sempre, quindi anche se ritornano le condizioni giuste (exists = KUR) non si riattiverebbe, giusto?
     
  2. Wolf

    Wolf Guest

    Ratings:
    +0
    In linea teorica dovrebbe essere così.
     
  3. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Teorie, sempre teorie :asd:
     
  4. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Non mi sono spiegato bene.

    Dunque, io voglio creare un evento che dia al Kurdistan TOT cose quando viene creato.

    Come condizione ho messo exists = KUR, così si attiva quando gli yankee creano lo stato curdo in Iraq, o chi per loro, per la prima volta.

    Domanda: che succede se io Russia o l'Iran annettono il Kurdistan e poi lo liberano come puppet?

    - Il nuovo Kurdistan non ah più i bonus che gli garantiva l'evento, ma l'evento si riattiva. Tutto bene, in questo caso. E' quello che voglio.

    - il nuovo Kurdistan ottiene ancora i benefici del vecchio evento, ma l'evento non scatta di nuovo. Può andarmi bene

    - il nuovo Kurdistan ottiene ancora i benefici del vecchio evento, e l'evento scatta di nuovo. Non va bene, perché il bonus viene raddoppiato.
     
  5. ^_AC_^

    ^_AC_^ Moderator Membro dello Staff

    Registrato:
    20 Dicembre 2006
    Messaggi:
    3.816
    Ratings:
    +1.628
    Non credo che i bonus rimangano dopo che è stato annesso, ma potrei sbagliarmi e la cosa forse dipende dai bonus.

    Cmq se metti come unica condizione exists = KUR, l'evento scatta una sola volta e poi non scatta più, anche se annesso e ricreato.
     
  6. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Ahiai, ciò è male.
     
  7. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Come potrei risolvere la situazione? Mettendolo Persistent = yes?
     
  8. ^_AC_^

    ^_AC_^ Moderator Membro dello Staff

    Registrato:
    20 Dicembre 2006
    Messaggi:
    3.816
    Ratings:
    +1.628
    Mettendo persistent = YES l'evento scatterebbe ogni volta che la nazione esiste, ovvero ogni giorno! Forse la cosa può essere risolta aggiungendo qualche local_flag, ma al momento sono troppo stanco per trovare una soluzione.

    Cmq sarebbe utile sapere il tipo di bonus che avresti intenzione di dare.
     
  9. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Creazione di due divisioni, free_tc, free_risorsevarie roba così
     
  10. Luxor

    Luxor

    Registrato:
    7 Marzo 2007
    Messaggi:
    689
    Ratings:
    +54
    Quando un evento scatta, viene scritto nel log (e nel savegame) e quindi non puo' piu' scattare una seconda volta, indipendentemente da che trigger ha.

    Un evento persistente invece non logga e quindi puo' avvenire tutte le volte che il trigger e la data lo consente. Per farlo partire solo una volta si deve usare un flag oppure un comando di sleep a se stesso. Meglio il flag in quanto questo consente di attivare/disattivare l'evento mentre dallo sleep non c'e' ritorno.
     
  11. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Mmmmh e un evento permanente, come posso fare per farlo scattare una volta all'anno?
     
  12. Luxor

    Luxor

    Registrato:
    7 Marzo 2007
    Messaggi:
    689
    Ratings:
    +54
    Devi fare un evento per ogni anno e metti nel trigger le condizioni

    year = x
    NOT = { year = x+1 }

    Ad esempio se x = 1940, la prima condizione verifica che l'anno in corso sia >= di 1940, la seconda condizione che non sia >= di 1941, quindi questo evento avverra' solo nel 1940.

    Oppure puoi giocare con le date, ma devi comunque fare un evento per ogni anno.

    EDIT : in realta' quanto detto sopra ti consente di far scattare un evento all'anno senza pero' predeterminare il giorno, che dipende dalla data e dall'offset che metti.
    Se invece non ti interessa lasciare un po' di casualita', fai un solo evento persistente con queste condizioni :

    day = x
    NOT = { day = x+1 }
    month = y
    NOT = { month = y+1 }

    In questo modo l'evento avverra' sempre il giorno x del mese y per tutti gli anni.
     
  13. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Quindi con il secondo metodo mi risparmio di dover compilare un evento per ogni anno.

    E posso anche usarlo come controllo annuale su un evento che ha come condizione exists = KUR?

    Ah altra domanda: i free-tc e bonus simili dati ad una nazione, scompaiono con la sua scomparsa dalla mappa? Se li ricreo come puppet, la nazione ha ancora quei bonus oppure devo ridarglieli?
     
  14. Luxor

    Luxor

    Registrato:
    7 Marzo 2007
    Messaggi:
    689
    Ratings:
    +54
    Si, pero' paghi con la prevedibilita' dell'evento. Dipende da cosa ti serve :)
     
  15. Mikhail Mengsk

    Mikhail Mengsk

    Registrato:
    1 Febbraio 2007
    Messaggi:
    7.448
    Località:
    Pisa
    Ratings:
    +0
    Sisi è una cosa fissa di tutti gli anni quindi è prevedibile comunque :) Riguardo ai bonus?
     
  16. Luxor

    Luxor

    Registrato:
    7 Marzo 2007
    Messaggi:
    689
    Ratings:
    +54
    Non mi ricordo. Dovresti provare e vedere.
     

Condividi questa Pagina