| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
24/05/2016 21:31 | |
Idee e pezzi di script in lavorazione Test da fare:
Manipolare le elezioni papali.
Metodo 1. Ratio: check alla morte del papa; se ha un tratto biografico x (e.g. EugenioIV) allora spawna subito un cardinale con un tratto biografico y (e.g. NiccoloV) e un boost di Piety in modo da farlo eleggere "truccando" le elezioni papali.
Caveat: assicurarsi che esista la fazione per la quale si spawna il cardinale (spain=Siena). Forse risolvibile con if (se esiste siena) spawn... end_if; e if (se siena è caduta) spawn_character slave .... end_if
monitor_event CeasedFactionLeader FactionType papal_states
and FactionLeaderTrait EugenioIV = 1
spawn_character spain, Niccolo, priest, age 50, x 200, y 200
console_command give_trait Niccolo NiccoloVParentucelli 1
console_command give_trait Niccolo NextPope 1
terminate_monitor
end_monitor
(da testare) [Modificato da Mylae 24/05/2016 21:46] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
|
|
| | | OFFLINE | Post: 454 | Città: PESCIA | Età: 31 | Sesso: Maschile | |
|
25/05/2016 12:59 | |
Interessante |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
25/05/2016 15:11 | |
Rovistando il forum ho trovato una piccola scoperta di Housekeeper MOLTO interessante: in determinate condizioni si può dare la missione di conquistare una città. Appare tra le missioni normali.
ratio: check all'inizio del turno x, ordine di creare una missione.
caveat: nell'avanzare del gioco la fazione x potrebbe aver già preso possesso dell'insediamento, quindi l'evento dovrà attivarsi solo se la città non sarà in nostro possesso.
monitor_event FactionTurnStart FactionIsLocal
and I_TurnNumber = 1
if not I_SettlementOwner Napoli = normans
create_mission council_take_settlement normans Napoli
end_if
terminate_monitor
end_monitor
TESTATA, FUNZIONA
[Modificato da Mylae 06/09/2017 10:30] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
25/05/2016 15:55 | |
Ribellioni e territori indipendenti Visto che determinate fazioni sono fondamentalmente delle città-stato, se al termine del turno non sono della fazione-madre (e quindi sono state conquistate da terzi o si sono ribellate) è da pensare che siano più turbolente, specialmente se non hanno una guarnigione abbastanza numerosa.
Ratio: check a fine turno se Firenze non è in mano ai fiorentini e non è sotto assedio; date queste condizioni, allora se la lealtà dell'insediamento è minore di disillusioned (scala: loyalty_revolting, loyalty_rioting, loyalty_disillusioned, loyalty_content, loyalty_happy) e se la percentuale di soldati rispetto alla popolazione è inferiore al 15%, la città si ribella.
caveat:
monitor_event FactionTurnEnd FactionIsLocal
and not I_SettlementOwner Firenze denmark
and not I_SettlementUnderSiege Firenze
if SettlementLoyaltyLevel < loyalty_disillusioned
and GarrisonSettlementRatio < 0.15
add_settlement_turmoil Firenze 50
provoke_rebellion Firenze
end_if
terminate_monitor
end_monitor
testato: non funziona. Il comando "provoke_rebellion" non è implementato.[Modificato da Mylae 12/08/2016 12:39] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
25/05/2016 17:50 | |
script semplice, basta aggiungere una serie di nomi all'expanded.txt come segue:
{Venezia_ita}Venezia
{Venezia_ger}Venedig
caveat: Il monitor è di una condizione, quindi è sempre in attivo. Se fatto per variazione e per più città potrebbe rallentare i processi.
declare_counter GermanVenice
monitor_conditions I_SettlementOwner Venezia = hre
and I_CompareCounter GermanVenice = 0
set_counter GermanVenice 1
change_settlement_name Venezia Venezia_ger
end_monitor
monitor_conditions I_SettlementOwner Venezia = venice
and I_CompareCounter GermanVenice = 1
set_counter GermanVenice 0
change_settlement_name Venezia Venezia_ita
end_monitor
TESTATO, FUNZIONA [Modificato da Mylae 06/09/2017 10:31] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
25/05/2016 18:37 | |
Condottieri e reclutamenti storici lo script è basato su quello della richiesta di crociata per edward nella campagna britannica.
Giocando con gli sforzeschi, se un personaggio (e.g. Michele Attendolo?) ha un determinato tratto (condottiere) e non è sotto assedio, ha una probabilità (30%) di ricevere un'offerta di condotta, per cui riceve un ingaggio di 5000 fiorini. Se accetta (l'AI accetta sempre) viene inviato offmap per un periodo variabile da 5 a 10 turni, durante i quali si riceve un pagamento di 1000 fiorini di mantenimento.
Nel caso in cui gli sforzeschi siano rimasti con un solo insediamento, la condotta viene richiamata dopo un turno.
monitor_event CharacterTurnStart Trait Condottiere = 1
and I_CompareCounter condotta_offered = 0
and not IsUnderSiege
generate_random_counter riposo_condotta 0 10
if I_EventCounter riposo_condotta > 7
add_events
event counter condotta_invite_accepted
event counter condotta_invite_declined
event counter condotta_time
event counter edward_death_chance
date 0
end_add_events
historic_event condotta_invite true
set_counter condotta_offered 1
if I_IsFactionAIControlled england
set_event_counter condotta_invite_accepted 1
end_if
end_if
end_monitor
monitor_conditions I_EventCounter condotta_invite_accepted = 1
send_character_off_map [label of Condottiere unit]
add_money 5000
set_counter condotta_in_corso 1
generate_random_counter condotta_time 5 10
terminate_monitor
end_monitor
monitor_event FactionTurnStart FactionType england
and I_CompareCounter condotta_in_corso = 1
inc_event_counter condotta_time 1
add_money 1000
if I_EventCounter condotta_time >= 15
set_counter condotta_ready_to_return 1
terminate_monitor
end_if
if I_NumberOfSettlements england = 1
and I_EventCounter condotta_time >= 11
set_counter condotta_ready_to_return 1
terminate_monitor
end_if
end_monitor
monitor_event CeasedFactionLeader FactionType england
and I_CompareCounter condotta_in_corso = 1
set_counter condotta_leader_dead 1
terminate_monitor
end_monitor
monitor_conditions I_CompareCounter condotta_ready_to_return = 1
generate_random_counter condotta_time 5 10
if I_EventCounter condotta_death_chance < 8
historic_event condotta_returns
if I_CompareCounter condotta_leader_dead = 1
spawn_army
faction england
character random_name, named character, x 108, y 32, label [label of Condottiere unit]
traits Condottiere 1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
[...]
end
end_if
if I_CompareCounter condotta_leader_dead = 0
spawn_army
faction england
character [condottiere_name], named character, x 108, y 32, label [label of Condottiere unit]
traits Condottiere 1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
[...]
end
end_if
end_if
if I_EventCounter condotta_death_chance >= 8
historic_event condotta_dies_on_leave
spawn_army
faction england
character random_name, named character, x 108, y 32, label [label of Condottiere unit]
traits Condottiere 1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
[...]
end
end_if
set_counter condotta_in_corso 0
terminate_monitor
end_monitor
(da testare) [Modificato da Mylae 26/05/2016 17:31] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
25/05/2016 19:17 | |
Ci sono alcune fazioni/casate che storicamente hanno provveduto armate mercenarie nel nostro periodo. Nello specifico: Montefeltro, Malatesta, Sforzeschi, Bracceschi, Gonzaga, ecc.
rivedendo la campagna nuovo mondo c'è uno script interessante, che consente alla Spagna di reclutare unità mercenarie in base alle alleanze con varie fazioni.
Si può convertire lo stesso script in uno che permetta, ad esempio, a Firenze, Milano, Venezia, Papa, Aragonesi di reclutare condotte mercenarie in base alle proprie alleanze. Lo script è semplice, e si basa sulla presenza dei counter_event per permettere, limitare o impedire il reclutamento sia nel pool delle unità mercenarie, sia in quello delle unità normali.
Il reclutamento si interrompe al rompersi dell'alleanza - sia che si sia neutrali, sia altrimenti.
monitor_event FactionTurnStart FactionType denmark
and I_EventCounter Firenze_allied_Bracceschi == 0
and DiplomaticStanceFromFaction saxons = Allied
add_events
event counter Firenze_allied_Bracceschi
date 0
end_add_events
end_monitor
monitor_event FactionTurnStart FactionType denmark
and I_EventCounter Firenze_allied_Bracceschi == 1
and DiplomaticStanceFromFaction saxons > Allied
set_event_counter Firenze_allied_Bracceschi 0
end_monitor
e in descr_mercenaries.txt
pool Bracceschi
regions [nome regione 1] [nome regione 2, etc]
unit picchieri bracceschi exp 0 cost 680 replenish 0.36 - 1.0 max 2 initial 2 religions { catholic } events { Firenze_allied_Bracceschi }
[...]
TESTATO, FUNZIONA
è preferibile che sia modificata la recrutabilità nell'EDB [Modificato da Mylae 06/09/2017 10:33] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
27/05/2016 18:49 | |
Aurea Repubblica Ambrosiana e Ducato di Milano (Sforza) Nel 1447 viene proclamata la repubblica alla morte di Filippo Maria Visconti.
Francesco Sforza viene assoldato come capitano per ricondurre all'ordine le terre ribellate (Parma, Pavia, Crema, Lodi, etc.)
Sforza si insignorisce di Pavia personalmente. L'avanzata veneziana è fermata. nel momento in cui si avventa verso Bergamo e Brescia, promessegli come bottino di guerra, Milano Ritira il suo supporto. Sforza si allea con Venezia contro Milano, marcia verso la città, Milano si allea con Venezia contro Sforza, ma questo riesce a entrare a Milano nel 1450.
Morte di Filippo Maria Visconti nel 1447
monitor_event FactionTurnStart FactionType milan
and I_TurnNumber = 1
campaign_wait 5
if I_CharacterExists FilippoMariaVisconti1
kill_character FilippoMariaVisconti1
end_if
terminate_monitor
end_monitor
Alla morte di FMV, proclamazione della Repubblica (script separato per prevenire che una morte precedente causi inconsistenze) e stemma repubblicano con la croce rossa in campo bianco; spawn dei leader repubblicani all'interno di Milano (sì, è possibile avere più leader contemporaneamente!).
monitor_event CeasedFactionLeader FactionType milan
and I_SettlementOwner Milano = milan
and FactionLeaderTrait FilippoMariaVisconti = 1
historic_event 1447_Aurea_Repubblica_Ambrosiana
set_event_counter Aurea_Repubblica_Ambrosiana 1
set_faction_banner
faction milan
banner crusading_orders
end_set_faction_banner
spawn_army
faction milan
character Giorgio Lampugnano, leader, x 57, y 53, label GiorgioLampugnano1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
end
spawn_army
faction milan
character Antonio Trivulzio, leader, x 57, y 53, label AntonioTrivulzio1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
end
spawn_army
faction milan
character Teodoro Bossi, leader, x 57, y 53, label TeodoroBossi1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
end
spawn_army
faction milan
character Innocenzo Cotta, leader, x 57, y 53, label InnocenzoCotta1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
end
spawn_army
faction milan
character Vitaliano Borromeo, leader, x 57, y 53, label VitalianoBorromeo1
unit SE Late Bodyguard exp 0 armour 0 weapon_lvl 0
end
terminate_monitor
end_monitor
Parma e Pavia proclamano l'indipendenza, Lodi e Piacenza si mettono sotto la protezione di Venezia. L'AI accetta sempre.
monitor_event FactionTurnStart FactionType venice
if I_EventCounter Aurea_Repubblica_Ambrosiana = 1
;offer to take Lodi & Piacenza
historic_event Lodi_Piacenza true factions { venice, }
if I_IsFactionAIControlled venice
set_event_counter Lodi_Piacenza_accepted 1
end_if
end_if
terminate_monitor
end_monitor
monitor_conditions I_EventCounter Lodi_Piacenza_accepted = 1
if I_SettlementOwner Lodi = venice
;; Lodi è già veneziana!
end_if
if I_SettlementOwner Lodi != venice
if not I_IsFactionAIControlled venice
;; se venezia siamo noi, c'è un comando per impossessarsi di una città se si è il local-player
end_if
if I_IsFactionAIControlled venice
;; se venezia è l'IA allora, si spawna un esercito (moors) cui è dato il comando di assaltare la città, forzando la vittoria con un auto_win per poi cedere la fazione a venezia.
end_if
end_if
TESTATO, FUNZIONA[Modificato da Mylae 06/09/2017 10:34] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 454 | Città: PESCIA | Età: 31 | Sesso: Maschile | |
|
28/05/2016 13:41 | |
Ottimo! |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
31/05/2016 12:26 | |
Il piccolo scisma d'Occidente e la Chiesa Uniate Nel 1439 venne proclamata l'unione tra la Chiesa Cattolica e quella Ortodossa con la proclamazione, nella basilica di Santa Maria del Fiore, della bolla Laetentur Coeli il 6 luglio.
I padri conciliari riuniti a Basilea avevano scomunicato il Papa Eugenio IV come eretico (25 giugno 1439) e il novembre successivo avevano eletto come antipapa Amedeo VIII di Savoia, con il nome di Felice V, dando vita al piccolo scisma d'occidente.
Nel 1442 il consigliere pontificio, ed umanista, Enea Silvio Piccolomini, futuro papa Pio II, fece pace con Eugenio[14]. Il successivo riconoscimento da parte del Papa alle pretese su Napoli di re Alfonso V di Aragona, sottrasse l'ultimo importante appoggio all'ormai diviso concilio di Basilea, e permise a Eugenio di fare un trionfale ritorno a Roma il 26 settembre 1443, dopo un esilio durato quasi dieci anni.
Riunificazione cattolica della Savoia
monitor_event FactionTurnStart FactionType russia
and I_TurnNumber = 1 ;(7 aprile 1449)
and I_EventCounter savoy_conversion_accepted = 0
historic_event russia_conversion true factions { russia, }
; AI accept
if I_IsFactionAIControlled russia
set_event_counter savoy_conversion_accepted 1
end_if
terminate_monitor
end_monitor
monitor_conditions I_EventCounter savoy_conversion_accepted = 1
set_religion russia catholic ;1 - Convert the people
change_population_religion russia catholic 75 pagan
destroy_buildings russia Christian_Church_schismatic true ;2 - Destroy the schismatic buildings
[...]
retire_characters russia priest ;3 - Disband the pagan units
historic_event savoy_converts ;notify all factions that savoy has converted and become Catholic
set_event_counter schismatic_savoy 0
terminate_monitor
end_monitor
[Modificato da Mylae 31/05/2016 13:28] _____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 646 | Città: FIRENZE | Età: 39 | Sesso: Maschile | |
|
12/08/2016 21:32 | |
uno script creato da me, testato e funzionante!
SISTEMA PRESTITI BANCARI
Questo script è un concetto di base, può essere variato nelle cifre e nelle condizioni.
condizione: nel caso in cui mi trovo con solo 5000 fiorini, mi appare a inizio turno un messaggio si/no. Se accetto mi verranno prestati 5000 fiorini, da restituire in 6 turni con un interesse complessivo del 10% (totale al termine: 5500 fiorini).
alla scadenza del prestito, viene fatta una scelta: restituire tutto (anche se si rischia di tornare in rosso!) oppure rimandare di 4 turni il pagamento di 5.500 (pagando una penale di 500 fiorini una tantum per la dilazione)
declare_counter Loan_A_offered
declare_counter Loan_A_ongoing
monitor_event FactionTurnStart FactionIsLocal
and Treasury > 0
and Treasury < 5000
and I_CompareCounter Loan_A_offered = 0
historic_event Loan_A true
set_event_counter Loan_A_offered 1
end_monitor
monitor_event EventCounter EventCounterType Loan_A_accepted == 1
historic_event Loan_A_accept
console_command add_money 5000
set_counter Loan_A_ongoing 1
set_counter Loan_A_offered 1
end_monitor
monitor_event EventCounter EventCounterType Loan_A_declined == 1
set_counter Loan_A_ongoing 0
set_counter Loan_A_offered 0
end_monitor
;;;;;;;;;;;
monitor_event FactionTurnEnd FactionIsLocal
and I_CompareCounter Loan_A_ongoing > 0
inc_counter Loan_A_ongoing 1
end_monitor
;;;;;;;;;;;
monitor_event FactionTurnStart FactionIsLocal
and I_CompareCounter Loan_A_ongoing == 6
historic_event Loan_A_restitution true
end_monitor
monitor_event EventCounter EventCounterType Loan_A_restitution_accepted == 1
console_command add_money -5500
historic_event Loan_A_restitution_accept
set_counter Loan_A_ongoing 0
set_counter Loan_A_offered 0
end_monitor
monitor_event EventCounter EventCounterType Loan_A_restitution_declined == 1
historic_event Loan_A_restitution_decline
console_command add_money -500
set_counter Loan_A_ongoing 2
end_monitor
_____________________________________________
È pericoloso porre in modo sbagliato questioni sostanzialmente giuste.
Indro Montanelli |
|
| | | OFFLINE | Post: 454 | Città: PESCIA | Età: 31 | Sesso: Maschile | |
|
06/09/2017 14:36 | |
Re: Reclutamento mercenari Mylae, 25/05/2016 19.17:
Ci sono alcune fazioni/casate che storicamente hanno provveduto armate mercenarie nel nostro periodo. Nello specifico: Montefeltro, Malatesta, Sforzeschi, Bracceschi, Gonzaga, ecc.
rivedendo la campagna nuovo mondo c'è uno script interessante, che consente alla Spagna di reclutare unità mercenarie in base alle alleanze con varie fazioni.
Si può convertire lo stesso script in uno che permetta, ad esempio, a Firenze, Milano, Venezia, Papa, Aragonesi di reclutare condotte mercenarie in base alle proprie alleanze. Lo script è semplice, e si basa sulla presenza dei counter_event per permettere, limitare o impedire il reclutamento sia nel pool delle unità mercenarie, sia in quello delle unità normali.
Il reclutamento si interrompe al rompersi dell'alleanza - sia che si sia neutrali, sia altrimenti.
monitor_event FactionTurnStart FactionType denmark
and I_EventCounter Firenze_allied_Bracceschi == 0
and DiplomaticStanceFromFaction saxons = Allied
add_events
event counter Firenze_allied_Bracceschi
date 0
end_add_events
end_monitor
monitor_event FactionTurnStart FactionType denmark
and I_EventCounter Firenze_allied_Bracceschi == 1
and DiplomaticStanceFromFaction saxons > Allied
set_event_counter Firenze_allied_Bracceschi 0
end_monitor
e in descr_mercenaries.txt
pool Bracceschi
regions [nome regione 1] [nome regione 2, etc]
unit picchieri bracceschi exp 0 cost 680 replenish 0.36 - 1.0 max 2 initial 2 religions { catholic } events { Firenze_allied_Bracceschi }
[...]
TESTATO, FUNZIONA
è preferibile che sia modificata la recrutabilità nell'EDB
Questo mi garba parecchio
|
|
|
|