Medieval 2 Total War
Discussione generale sul videogioco Medieval 2 : Total War
Cattedra
Guide & Tutorial a cura dei maggiori esperti di modding
Medieval 2 Total War Cantiere
Progettazione di Mod relativi al videogame Medieval 2 Total War

 

 

Nuova Discussione
Rispondi
 
Stampa | Notifica email    
Autore

GUIDA ALLO SCRIPTING

Ultimo Aggiornamento: 28/01/2016 14:51
19/05/2012 16:51
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

i warning non sono un problema, se ci fossero errori dovrebbero apparire degli "error", quindi lo script potrebbe essere corretto, probabilmente il bottone non viene riconosciuto.

comunque non mi spiego perchè vedi i warning col log settato a error... boh!
19/05/2012 17:15
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 2.047
Registrato il: 07/11/2008
Città: PATTI
Età: 33
Principe
Se non te lo spieghi tu figurati io XD
Non ho davvero idea, ti ho copiato quello che c'era nel CFG di Bellum Crucis.

Comunque come mai non viene riconosciuto? quale altra soluzione si può usare per far partire lo script?
19/05/2012 18:12
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

Alcuni elementi ui non vengono letti dal gioco, non c'è niente da fare... puoi provare a usarne un altro, ad es. il pulsante per chiedere consigli sugli edifici\unità da costruire. Quello son sicuro che funziona, perchè abbiamo fatto uno script in BC per la visualizzazione dell'elenco dei fortini
19/05/2012 19:02
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 2.047
Registrato il: 07/11/2008
Città: PATTI
Età: 33
Principe
Re:
The Housekeeper, 19/05/2012 18.12:

Alcuni elementi ui non vengono letti dal gioco, non c'è niente da fare... puoi provare a usarne un altro, ad es. il pulsante per chiedere consigli sugli edifici\unità da costruire. Quello son sicuro che funziona, perchè abbiamo fatto uno script in BC per la visualizzazione dell'elenco dei fortini




Ma poi come si va a visualizzare i fortini? Sullo stesso insediamento possono funzionare tutti e due? se è così userò quello [SM=g27960]
20/05/2012 10:02
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

Ovviamente no, dovrai sacrificarlo :(
20/05/2012 18:33
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 2.047
Registrato il: 07/11/2008
Città: PATTI
Età: 33
Principe
Re:
The Housekeeper, 20/05/2012 10.02:

Ovviamente no, dovrai sacrificarlo :(




Nono allora niente, non voglio eliminarlo [SM=g27969]

Ci fosse qualche altro modo [SM=x1140417]

Altri tasti o condizioni in cui utilizzarlo?
[Modificato da Tancredi d'Altavilla 20/05/2012 18:34]
20/05/2012 19:01
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 3.228
Registrato il: 19/01/2009
Principe
Tancredi tornando al autorisoluzione, ricordo due stroghe utilizzate in un mod.

disable_ui prebattle_withdraw_button

restrict_autoresolve true

Ora non ti so dire se funzionano, ma ricordo che erano presenti in questo mod.




"Quando ti senti eccezionalmente lucido, entusiasta, forte, quando ti senti in cima al mondo, capace di spostare le montagne, connesso al tuo sogno, all ' ideale, allora sai che hai il sole in tasca" S.B.
20/05/2012 20:51
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 2.047
Registrato il: 07/11/2008
Città: PATTI
Età: 33
Principe
Re:
GlaucopideSophia1, 20/05/2012 19.01:

Tancredi tornando al autorisoluzione, ricordo due stroghe utilizzate in un mod.

disable_ui prebattle_withdraw_button

restrict_autoresolve true

Ora non ti so dire se funzionano, ma ricordo che erano presenti in questo mod.




Ok Glauco, ti ringrazio per la segnalazione [SM=g27960]
appena avrò tempo le proverò e ti farò sapere!
20/05/2012 21:11
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 2.047
Registrato il: 07/11/2008
Città: PATTI
Età: 33
Principe
House credo di aver trovato la soluzione al problema del bottone, o quanto meno che usare quello con la lente dell'insediamento è possibile!

Testo nascosto - clicca qui



Il nostro monarca nel suo mod ha usato un sistema simile, vorrei fare una cosa del genere... speriamo di riuscirci [SM=g27964]
22/05/2012 12:19
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 2.047
Registrato il: 07/11/2008
Città: PATTI
Età: 33
Principe
Glauco, finalmente sono riuscito ad attivare la risoluzione automatica [SM=g27964]

Purtropo la tua formula non funzionava, ho usato quella del twc che avevo già utilizzato, solo che prima sbagliavo su dove doveva essere scritta, infatti la scrivevo nel primo script, se la scrivo invece nel secondo script (quello che riguarda lo spawn dell'armata ribelle) funziona!
Ho scritto così:

monitor_conditions I_EventCounter General_kill_accepted = 1
and I_SettlementOwner Exeter = england
spawn_army
faction slave
character Andrea, named character, age 39, x 128, y 160
traits GoodRiskyAttacker 1
unit SE Bodyguard exp 9 armour 0 weapon_lvl 0
unit Mailed Knights exp 3 armour 0 weapon_lvl 0
unit Mailed Knights exp 3 armour 0 weapon_lvl 0
unit Norman Knights exp 6 armour 0 weapon_lvl 0
sieging
siege_settlement Andrea, Exeter, maintain
siege_settlement Andrea, Exeter, attack
select_ui_element prebattle_auto_resolve_button
simulate_mouse_click lclick_down
simulate_mouse_click lclick_up

terminate_monitor
end_monitor

Adesso quando accetto di uccidere il generale nell'historic_event appare subito il risultato della battaglia senza passare dalla schermata con i bottoni risoluzione automatica, ritirarsi e combattere [SM=g27964]

Ora manca solo il bottone per attivare lo script, fatto questo possiamo dire che è pronto [SM=x1140523] [SM=g27964]
[Modificato da Tancredi d'Altavilla 22/05/2012 12:25]
22/05/2012 13:18
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

bravo!
in effetti è vero, dimenticavo che l'oppida usa quel pulsante, e funziona eccome! quindi ti basterà dare un'occhiata a quello script
22/05/2012 13:40
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 2.047
Registrato il: 07/11/2008
Città: PATTI
Età: 33
Principe
Re:
The Housekeeper, 22/05/2012 13.18:

bravo!
in effetti è vero, dimenticavo che l'oppida usa quel pulsante, e funziona eccome! quindi ti basterà dare un'occhiata a quello script




Purtroppo non so dove andarlo a guardare non avendo i file [SM=g27969]

Tu hai il campaign_script de "il regno del sole"?
Altrimenti mi sa che dovrò scrivere a Mather per avere quello che manca, è l'unico modo. Sul forum mi pare non ci sia niente

24/05/2012 19:26
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 439
Registrato il: 24/06/2011
Città: CHIERI
Età: 34
Cavaliere
Re: Re:
The Housekeeper, 11/05/2012 09.16:




Per la prima richiesta, puoi usare questo trigger:

Trigger xxx
WhenToTest CharacterTurnEnd
Condition IsGeneral
and InEnemyLands
and IsRegionOneOf IDnumber Paris_Province
and I_SettlementOwner Paris = france
Affects yyy 1 Chance 100

Al posto di xxx metti il titolo del trigger (qualsiasi), al posto di yyy metti il tratto che vuoi assegnare, al posto di IDnumber metti il numero della regione, lo puoi ricavare in game col "show_cursorstat" tramite console, puntando il cursore sulla regione.

Dovrai replicare questo trigger per tutte le regioni, ricordandoti ogni volta di cambiare il titolo xxx.



Ciao sono fermo al palo, cerco di spiegare la mia idea in modo da rendere chiaro cosa voglio fare :

Si creano degli ancillari che rappresentano famigliari dei monarchi ( chiamiamoli in generale Persona_Cara, max 1 o 2 per fazione) una volta creati questi ancillari possono essere conquistati dal giocatore conquistando insediamenti o uccidendo generali nemici che li detengono, l'ancillare non ha nessun effetto sui generali ma trasferito ai diplomatici dovrebbe permettere la forzatura della diplomazia simulando la possibilità di "ricattare" la fazione che li ha persi ( ancillare persona_cara dei francesi permette di “ricattare” i francesi.)
In questo momento sono fermo al seguente problema : ritenevo di poter far passare l'ancillare dal generale che l'ha conquistato al diplomatico che lo utilizzerà utilizzando il comando I_CharacterTypeNearCharacterType che dovrebbe avere come effetto la perdità dell'ancillare al generale e l'aquisto al diplomatico in teoria tutto bene, ma pensando di fare 1 o 2 ancillari per fazione come faccio a far si che il diplomatico aquisisca proprio l'ancillare che ha il generale ? ( proprio il francese piuttosto che l'inglese ? ) inizialmente pensavo di far si che se la transizione avveniva sul territorio francese allora lo "scambio" riguardava gli ancillari francesi ma non mi sembra fattibile perchè devo fornire una valanga di informazioni se non voglio legarmi solo alle regioni inziali del gioco , ora ho visto che house proponeva per altri scopi l'utilizzo del comando “HighestAttAdjacentChar” allora mi è venuto in mente che potrei collegare all'ancillare Persona_Cara dei francesi un tratto con stesso nome che dia al generale 11 di Trading e poi inserire nel campaign_script i comandi per far si che se un diplomatico si avvicina ad un generale con Trading 11 prende l'ancillare “Persona cara dei francesi” mentre il generale lo perde
In queto modo legando il valore del tratto all'ancillare posso diversificare ipotesi :

trading 11 = persona cara dei Francesi
trading 12 = persona cara dei Tedeschi
trading 13 = persona cara degli Inglesi
Sul docudemon trading lo dà valido sicuramente fino a 20
inoltre le informazioni da fornire non dovrebbero essere enormi mi sembra due per ancillare ( una per la perdita del generale, l'altro per l'aquisto del diplomatico)

Cosa dite di puo' fare ? Vedete degli intoppi ? se vi sembra fattibile provo a creare il tutto, mi rimane poi solo la parte di forzatura della diplomazia

[SM=g27965]





[Modificato da MuzioScevola99 24/05/2012 19:28]

Dura la volontà, ferma la fede.

"Nel mondo effimero e leggero coerenza è spesso cambiar pensiero"
25/05/2012 09:32
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

Re: Re:
Tancredi d'Altavilla, 22/05/2012 13.40:




Purtroppo non so dove andarlo a guardare non avendo i file [SM=g27969]

Tu hai il campaign_script de "il regno del sole"?
Altrimenti mi sa che dovrò scrivere a Mather per avere quello che manca, è l'unico modo. Sul forum mi pare non ci sia niente





sul TWC puoi scaricarlo da qualche parte, si chiama oppida mod, fatto da Alpaca se ricordo bene
25/05/2012 09:41
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

Re: Re: Re:
MuzioScevola99, 24/05/2012 19.26:



Ciao sono fermo al palo, cerco di spiegare la mia idea in modo da rendere chiaro cosa voglio fare :

Si creano degli ancillari che rappresentano famigliari dei monarchi ( chiamiamoli in generale Persona_Cara, max 1 o 2 per fazione) una volta creati questi ancillari possono essere conquistati dal giocatore conquistando insediamenti o uccidendo generali nemici che li detengono, l'ancillare non ha nessun effetto sui generali ma trasferito ai diplomatici dovrebbe permettere la forzatura della diplomazia simulando la possibilità di "ricattare" la fazione che li ha persi ( ancillare persona_cara dei francesi permette di “ricattare” i francesi.)
In questo momento sono fermo al seguente problema : ritenevo di poter far passare l'ancillare dal generale che l'ha conquistato al diplomatico che lo utilizzerà utilizzando il comando I_CharacterTypeNearCharacterType che dovrebbe avere come effetto la perdità dell'ancillare al generale e l'aquisto al diplomatico in teoria tutto bene, ma pensando di fare 1 o 2 ancillari per fazione come faccio a far si che il diplomatico aquisisca proprio l'ancillare che ha il generale ? ( proprio il francese piuttosto che l'inglese ? ) inizialmente pensavo di far si che se la transizione avveniva sul territorio francese allora lo "scambio" riguardava gli ancillari francesi ma non mi sembra fattibile perchè devo fornire una valanga di informazioni se non voglio legarmi solo alle regioni inziali del gioco , ora ho visto che house proponeva per altri scopi l'utilizzo del comando “HighestAttAdjacentChar” allora mi è venuto in mente che potrei collegare all'ancillare Persona_Cara dei francesi un tratto con stesso nome che dia al generale 11 di Trading e poi inserire nel campaign_script i comandi per far si che se un diplomatico si avvicina ad un generale con Trading 11 prende l'ancillare “Persona cara dei francesi” mentre il generale lo perde
In queto modo legando il valore del tratto all'ancillare posso diversificare ipotesi :

trading 11 = persona cara dei Francesi
trading 12 = persona cara dei Tedeschi
trading 13 = persona cara degli Inglesi
Sul docudemon trading lo dà valido sicuramente fino a 20
inoltre le informazioni da fornire non dovrebbero essere enormi mi sembra due per ancillare ( una per la perdita del generale, l'altro per l'aquisto del diplomatico)

Cosa dite di puo' fare ? Vedete degli intoppi ? se vi sembra fattibile provo a creare il tutto, mi rimane poi solo la parte di forzatura della diplomazia

[SM=g27965]










Si può fare senza problemi.
Prendi come modello i tratti con relativi trigger di BC, per ciò che riguarda gli eruditi (tratti "buonmaestro" applicato all'erudito, e di conseguenza "habuonmaestro" applicato al corrispondente generale). Basterà invertire il meccanismo (nel tuo caso infatti si passa dal generale all'agente) ma il criterio è lo stesso.
[SM=g27960]




26/05/2012 01:13
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 42
Registrato il: 12/09/2011
Città: CASAGIOVE
Età: 34
Contadino
Ciao
ho provato ad inserire alcuni script nel campaign nella mod che sto preparando. Nessuno di essi funziona, tanto che mi viene il dubbio che per qualche motivo sconosciuto essi siano disabilitati.
Alla fine ho provato ad inserire unicamente uno script semplicissimo di prova:

script

monitor_conditions I_TurnNumber = 2

add_money aztecs 500000
terminate_monitor
end_monitor

end_script

ma neanche questo funziona.
Potreste cortesemente darmi una mano???
26/05/2012 07:58
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 439
Registrato il: 24/06/2011
Città: CHIERI
Età: 34
Cavaliere
Re: Re: Re: Re:
The Housekeeper, 25/05/2012 09.41:



Si può fare senza problemi.
Prendi come modello i tratti con relativi trigger di BC, per ciò che riguarda gli eruditi ......... [SM=g27960]





YUPPIIII !!!!!! grazie house sia santificato il tuo nome anzi "moddificato" !!!! mi metto subito al lavoro per una prova. [SM=g27962] [SM=g27963] [SM=g27964]

Dura la volontà, ferma la fede.

"Nel mondo effimero e leggero coerenza è spesso cambiar pensiero"
26/05/2012 10:42
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

Re:
Alfredo_89, 26/05/2012 01.13:

Ciao
ho provato ad inserire alcuni script nel campaign nella mod che sto preparando. Nessuno di essi funziona, tanto che mi viene il dubbio che per qualche motivo sconosciuto essi siano disabilitati.
Alla fine ho provato ad inserire unicamente uno script semplicissimo di prova:

script

monitor_conditions I_TurnNumber = 2

add_money aztecs 500000
terminate_monitor
end_monitor

end_script

ma neanche questo funziona.
Potreste cortesemente darmi una mano???



lo script è corretto, il log dice niente?
magari metti un wait_monitors prima di end_script.

ricorda che il truno 2 è in effetti il terzo (quando parte la campagna si gioca il turno zero)

p.s.
controllate sempre il log!!! perchè non lo fa mai nessuno? [SM=g27982]

26/05/2012 11:31
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 439
Registrato il: 24/06/2011
Città: CHIERI
Età: 34
Cavaliere
Re: Re:
The Housekeeper, 26/05/2012 10.42:



controllate sempre il log!!! perchè non lo fa mai nessuno? [SM=g27982]





Hem... io non lo faccio perche non so cos'è !! o meglio ho capito che è un file che trasmette una serie di informazioni in caso di errori ma non saprei dove trovarlo

Dura la volontà, ferma la fede.

"Nel mondo effimero e leggero coerenza è spesso cambiar pensiero"
26/05/2012 12:53
 
Email
 
Scheda Utente
 
Modifica
 
Cancella
 
Quota
OFFLINE
Post: 21.194
Registrato il: 10/02/2007
Principe

è un file chiamato system.log, lo trovi nella cartella logs della tua mod
se non c'è, devi controllare il file cfg, in cui puoi specificare il percorso in cui apparirà il log, e anche il livello del log (error o trace, per il campaign_script è sufficiente error)
Nuova Discussione
Rispondi

Feed | Forum | Album | Utenti | Cerca | Login | Registrati | Amministra
Crea forum gratis, gestisci la tua comunità! Iscriviti a FreeForumZone
FreeForumZone [v.6.1] - Leggendo la pagina si accettano regolamento e privacy
Tutti gli orari sono GMT+01:00. Adesso sono le 12:35. Versione: Stampabile | Mobile
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com