Tras estar buscando como un loco por el module system conseguí encontrar como hacer esto en mi mod, os lo comparto por si alguien esta en las mismas que yo , si queréis añadir algo hacedlo.
aquí veremos como habilitar o deshabilitar un pueblo/castillo/ciudad para que aparezca o desaparezca del mapa ingame mediante un trigger de tiempo.
-------------------------------------------
primero un ejemplo para un pueblo nuevo: module_parties.py
si buscamos village_110 nos saldrán un montón en linea, después del ultimo añadimos:
("village_115","PRUEBAS", icon_village_snow_a|pf_village|pf_disabled, no_menu, pt_none, fac_neutral,0,ai_bhvr_hold,0,(99.4246,90.5008),[], 170),
esto creara un pueblo llamado PRUEBAS en la zona nevada de Rivacheg a la derecha. pero sera invisible y no interaccionable por el jugador debido a la flag: pf_disabled.
NOTA: Este pueblo es de pruebas no tiene calles ni nada para eso deberíais mirar primero el tutorial de creación de ciudades y pueblos.
Despues en Module_Triggers.py:
debajo de :
# Refresh Horse sellers
(0.0, 0, 168.0, [],
[
(call_script, "script_refresh_center_stables"),
]),
se pondria vuestro trigger, este es un ejemplo:
# Pruebas de re activacion de ciudad/pueblo/castillo con pf_disabled
(24, 0, ti_once, [], [(party_set_flags, "p_village_115", pf_disabled, 0)]),
os explico:
24 seria las horas que quereis que pase desde el inicio de la partida para que se rehabilite el pueblo
0 seria cuanto tarda el pueblo en rehabilitarse cuando se cumplen las condiciones aparte de las horas,en este caso esta vacio [], si ponemos 1 tardara 25(24+1)horas en este ejemplo.
ti_once solo se activara una vez.
[] <- aquí irían las condiciones adicionales mencionadas anteriormente . si lo dejáis vacio solo tomara el tiempo en consideración.
(party_set_flags, "p_village_115", pf_disabled, 0) ->bueno esto habla por si mismo, pero si no sabéis lo que hace es quitar la flag pf_disabled que pusimos al pueblo 115 en module_parties, lo cual lo vuelve visible y usable otra vez. si lo cambiamos a pf_disabled, 1, añadirá esta flag al pueblo/castillo/ciudad y lo deshabilitara en caso de no tenerlo.
con esto, si entramos en el juego empezamos una partida nueva y esperamos 24 horas, debería aparecer el nuevo pueblo en el mapa a la derecha de Rivacheg en la nieve.
OJO! si deshabilitais esta ciudad/castillo sigue contando para la IA y las facciones , los reyes y señores se meterán dentro como si existiera y saldrán cuando quieran como hacen normalmente y contara para destruir facciones, si queréis que esa facción se pueda destruir deberéis habilitar de nuevo en otro trigger ese castillo o ciudad. (no se si esto se puede arreglar de alguna manera)
He probado también con este método intentar deshabilitar parties_templates spawneadas con el método explicado por NeoDrako aqui: https://www.caballerosdecalradia.net/t2143-tutorial-crear-nuevos-grupos-de-bandidos-con-module_system
sin exito con lo cual parece que solo funciona con parties creadas en module_Parties.py y no templates.
Edit:
Para deshabilitar Templates(party_templates.py) spawnedas por el metodo de Neodrako usad:
(24, 0, ti_once, [], [(disable_party, "pt_vuestra_template")]), desactivar
y
(24, 0, ti_once, [], [(enable_party, "pt_vuestra_template")]), activar
aquí veremos como habilitar o deshabilitar un pueblo/castillo/ciudad para que aparezca o desaparezca del mapa ingame mediante un trigger de tiempo.
-------------------------------------------
primero un ejemplo para un pueblo nuevo: module_parties.py
si buscamos village_110 nos saldrán un montón en linea, después del ultimo añadimos:
("village_115","PRUEBAS", icon_village_snow_a|pf_village|pf_disabled, no_menu, pt_none, fac_neutral,0,ai_bhvr_hold,0,(99.4246,90.5008),[], 170),
esto creara un pueblo llamado PRUEBAS en la zona nevada de Rivacheg a la derecha. pero sera invisible y no interaccionable por el jugador debido a la flag: pf_disabled.
NOTA: Este pueblo es de pruebas no tiene calles ni nada para eso deberíais mirar primero el tutorial de creación de ciudades y pueblos.
Despues en Module_Triggers.py:
debajo de :
# Refresh Horse sellers
(0.0, 0, 168.0, [],
[
(call_script, "script_refresh_center_stables"),
]),
se pondria vuestro trigger, este es un ejemplo:
# Pruebas de re activacion de ciudad/pueblo/castillo con pf_disabled
(24, 0, ti_once, [], [(party_set_flags, "p_village_115", pf_disabled, 0)]),
os explico:
24 seria las horas que quereis que pase desde el inicio de la partida para que se rehabilite el pueblo
0 seria cuanto tarda el pueblo en rehabilitarse cuando se cumplen las condiciones aparte de las horas,en este caso esta vacio [], si ponemos 1 tardara 25(24+1)horas en este ejemplo.
ti_once solo se activara una vez.
[] <- aquí irían las condiciones adicionales mencionadas anteriormente . si lo dejáis vacio solo tomara el tiempo en consideración.
(party_set_flags, "p_village_115", pf_disabled, 0) ->bueno esto habla por si mismo, pero si no sabéis lo que hace es quitar la flag pf_disabled que pusimos al pueblo 115 en module_parties, lo cual lo vuelve visible y usable otra vez. si lo cambiamos a pf_disabled, 1, añadirá esta flag al pueblo/castillo/ciudad y lo deshabilitara en caso de no tenerlo.
con esto, si entramos en el juego empezamos una partida nueva y esperamos 24 horas, debería aparecer el nuevo pueblo en el mapa a la derecha de Rivacheg en la nieve.
OJO! si deshabilitais esta ciudad/castillo sigue contando para la IA y las facciones , los reyes y señores se meterán dentro como si existiera y saldrán cuando quieran como hacen normalmente y contara para destruir facciones, si queréis que esa facción se pueda destruir deberéis habilitar de nuevo en otro trigger ese castillo o ciudad. (no se si esto se puede arreglar de alguna manera)
He probado también con este método intentar deshabilitar parties_templates spawneadas con el método explicado por NeoDrako aqui: https://www.caballerosdecalradia.net/t2143-tutorial-crear-nuevos-grupos-de-bandidos-con-module_system
sin exito con lo cual parece que solo funciona con parties creadas en module_Parties.py y no templates.
Edit:
Para deshabilitar Templates(party_templates.py) spawnedas por el metodo de Neodrako usad:
(24, 0, ti_once, [], [(disable_party, "pt_vuestra_template")]), desactivar
y
(24, 0, ti_once, [], [(enable_party, "pt_vuestra_template")]), activar
Última edición por asierus24 el Dom Sep 10, 2017 8:10 pm, editado 1 vez