Cuestión: Añadir nuevas banderas
Dificultad: Media
-Comparto un pequeño tutorial de como añadir nuevas banderas para que estén disponibles para nuestros nuevos señores feudales. Este tutorial no trata sobre como modificar las texturas de las banderas existentes, esa cuestión ya la aborda otro tutorial disponible en el foro y escrito por SirSowort99.
Por otro lado este tutorial no abarca el tema en su totalidad, ya que si tu propósito es crear banderas para nuevos reyes y reinos los pasos a seguir son ligeramente diferentes y no están explicados aquí, pero si entiendes el tutorial seguro que puedes hacer este último paso tu solito. De todos modos si tengo tiempo espero poder reescribir el tutorial para completarlo.
-El tutorial está extraído de un MP que le escribí a el Xabeo de la Cova cuando me pidió ayuda sobre el tema y decidí compartirlo por si alguien más se encontraba en la misma situación. Como he dicho anteriormente espero no solo completarlo más adelante sino también explicarlo con más detalle y darle una estructura de tutorial y no de mensaje.
Preambulo: Supongamos que has creado nuevos señores (más de los que posee un reino por defecto). Si no tienes en cuenta el añadirle nuevas banderas, cuando estés jugando una partida el resultado será que esos nuevos señores repiten las banderas o no tienen ninguna por el hecho de que se agotaron en el juego, entonces lo que haremos será crear nuevas banderas para que estén disponibles y el juego las reparta.
Tutorial:
Dificultad: Media
-Comparto un pequeño tutorial de como añadir nuevas banderas para que estén disponibles para nuestros nuevos señores feudales. Este tutorial no trata sobre como modificar las texturas de las banderas existentes, esa cuestión ya la aborda otro tutorial disponible en el foro y escrito por SirSowort99.
Por otro lado este tutorial no abarca el tema en su totalidad, ya que si tu propósito es crear banderas para nuevos reyes y reinos los pasos a seguir son ligeramente diferentes y no están explicados aquí, pero si entiendes el tutorial seguro que puedes hacer este último paso tu solito. De todos modos si tengo tiempo espero poder reescribir el tutorial para completarlo.
-El tutorial está extraído de un MP que le escribí a el Xabeo de la Cova cuando me pidió ayuda sobre el tema y decidí compartirlo por si alguien más se encontraba en la misma situación. Como he dicho anteriormente espero no solo completarlo más adelante sino también explicarlo con más detalle y darle una estructura de tutorial y no de mensaje.
Preambulo: Supongamos que has creado nuevos señores (más de los que posee un reino por defecto). Si no tienes en cuenta el añadirle nuevas banderas, cuando estés jugando una partida el resultado será que esos nuevos señores repiten las banderas o no tienen ninguna por el hecho de que se agotaron en el juego, entonces lo que haremos será crear nuevas banderas para que estén disponibles y el juego las reparta.
Tutorial:
- Pasos:
MP de JBJ a el Xabeo de la Cova:
""Nunca probé a incluir nuevas banderas, pero le eché un vistazo y deduje lo siguiente. Ojo! creo que es así, pero no estoy seguro, habría que hacer algunas pruebas.
Cada señor del juego necesita 3 formas diferentes de su bandera.
- Un icono en el mapa con la bandera
- Un escudo de armas con su bandera
- Un estandarte con su bandera.
Por lo cual los pasos serian los siguientes:
1º Diseñar las texturas .dds de las nuevas banderas.
Copia una de las texturas 'banners...dds' la diseñas como quieras y la guardas con otro nombre. Por ejemplo 'banner_mod1.dds'
2º Diseñar las mallas .obj del icono del mapa y el escudo de armas y el estandarte.
-En el juego los iconos de banderas están en el archivo 'map_flag.brf' exportas una malla 'map_flag_....obj', le pones la textura creada en el paso anterior, le pones un nuevo nombre, por ejemplo 'mod_map_flag_1.obj' y lo importas en un nuevo .brf que llamaremos por ejemplo 'banners_mod.brf'.
-En el juego los iconos de escudo de armas y estandartes están en 'banners.brf' de nuevo exportas una malla 'banner_....obj' (estandarte) y una malla 'arms_....obj' (escudo de armas) le colocas la textura del paso 1 y lo importas al .brf que creamos anteriormente 'banners_mod.brf' con los nombres por ejemplo 'mod_banner_1.obj' y 'mod_arms_1.obj' para el estandarte y el escudo respectivamente.
3º Crear los objetos icono, escudo de armas y estandarte en el module system.
-El icono se define en 'module_maps_icons.py'. Tras la línea ("banner_135",0,"map_flag_f10", banner_scale,0), colocas tu nuevo icono haciendo referencia a tu malla creada anteriormente.
-El estandarte se define en 'module_meshes.py'. Tras la línea ("banner_g10", 0, "banner_f10", 0, 0, 0, -90, 0, 0, 1, 1, 1), colocas tu nuevo estandarte haciendo referencia a la malla correspondiente.
-El escudo de armas se define en 'module_meshes.py'. Tras la línea ("arms_g10", 0, "banner_f10", 0, 0, 0, -90, 0, 0, 1, 1, 1), colocas tu nuevo escudo refiriendo tu malla. (Supongo que puedes ahorrarte el hacer el .obj del estandarte o el escudo de armas, solo haces uno y es en el 'module_meshes.py' donde creas los dos)
4º Debemos indicar que el estandarte está disponible para colocarlo en el castillo del lord (y en los objetos heráldicos creo). Vamos a 'module_scene_props.py', a la línea ("banner_g10", 0, "banner_f10", "0", []), y seguidamente añadimos nuestro estandarte.
5º Creo que no es necesario tocar el 'module_script.py' que es donde se debe encontrar el código de asignación de banderas a los señores. Eso debería hacerse automáticamente, pero lo que si deberemos hacer es indicarle a ese código que ahora tiene disponible las nuevas banderas creadas por nosotros. Para ello vamos a 'module_constant.py' a al línea # Banner constants, entre esa línea y esta otra que se encuentra más abajo # Some constants for merchant invenotries, se encuentran todas las constantes que hacen referencia a las banderas, debemos tocas las siguientes:
banner_meshes_end_minus_one = "mesh_banner_f21" #Aquí colocas el último mesh (estandarte) credo por ti.
arms_meshes_end_minus_one = "mesh_arms_f21" #Aquí colocas el último mesh (escudo de armas) credo por ti.
banner_map_icons_end_minus_one = "icon_banner_136" #Aquí colocas el último icono de bandera del mapa credo por ti.
banner_scene_props_end_minus_one = "spr_banner_f21" #Aquí colocas el último objeto scene_props creado por ti.
Creo que con eso estarán disponibles nuevas banderas y que el juego las repartirá aleatoriamente a los lores.
Observa que en el archivo 'module_constant.py' hay otras constantes que hacen referencia a las banderas, creo que no son necesarias para lo que estamos haciendo, sin embargo ten en cuenta que en el juego original las banderas khergitas y sarranies son un tanto especiales ya que su uso está restringido solo a los señores de su cultura. Por ello observa estas líneas:
khergit_banners_begin_offset = 63
khergit_banners_end_offset = 84
sarranid_banners_begin_offset = 105
sarranid_banners_end_offset = 125
banners_end_offset = 136
Lo que indican es que las banderas khergitas son aquellas que se encuentran entre las posiciones 63 y 84 de todas las banderas definidas y las sarranies aquellas entre el número 105 y 125, ahora deberás cambiar esos números para indicar cuales son las nuevas. Supongo que deberás ponerte a contarlas. La última línea parece indicar la cantidad total de banderas, supongo que deberás sumarle a ese número la cantidad de nuevas banderas incluidas por ti.""
- Resultado:
MP de Xabeo a JBJ
""exito!!! sisisi solo con seguir esos pasos funciona""