Herramientas de usuario

Herramientas del sitio


modding:tutoriales:crearnuevoslogros

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

modding:tutoriales:crearnuevoslogros [19/03/2010 17:10]
Davide creado
modding:tutoriales:crearnuevoslogros [26/12/2014 20:36]
Línea 1: Línea 1:
-====== Creación de nuevos Logros ====== 
-Necesitaremos tener a mano los siguientes archivos, que encontraréis en la carpeta gamedata: 
  
-  * //​configs/​gameplay///​**info_zaton.xml** 
-  * //​configs/​misc///​**achievements.ltx** 
-  * //​configs/​text/​XXX///​**st_achievement.xml** (XXX es el código de idioma - esp, eng, rus, etc.) 
-  * //​configs/​ui/​textures_descr///​**ui_actor_achivments.xml** 
-  * //​scripts///​**xr_statistic.script** 
-  * //​scripts///​**xr_conditions.script** 
-  * //​textures/​ui///​**ui_actor_achivments.dds** 
- 
-Como es lógico, necesitarás descomprimir el juego para encontrar estos archivos. //​Aclaración by Dade: el archivo //​configs/​gameplay///​**info_zaton.xml** se utiliza para mostrar de dónde se sacan los nombres de las variables.//​ 
- 
-Ahora abre el archivo //​configs/​misc///​**achievements.ltx** y añade lo siguiente al final del mismo: 
-<​code>​[sucker] ; Referencia del Logro 
-icor = ui_inGame2_lopuh ; Icono del Logro 
-hint = st_sp_achievement_22_hint ; Descripción mostrada en la PDA 
-name = st_sp_achievement_22_name ; Nombre 
-desc = st_sp_achievement_22_descr ; Descripción 
-functor = xr_statistic.sucker_functor ; Función que vamos a utilizar</​code>​ 
- 
-Ahora abre //​configs/​text/​XXX///​**st_achievement.xml** y añade al final: 
-<​code><​string id="​st_sp_achievement_22_hint">​ 
-        <​text>​No caigas en la trampa.</​text>​ 
-    </​string>​ 
-    <string id="​st_sp_achievement_22_descr">​ 
-        <​text>​Has dejado el artefacto al stalker estafador.</​text>​ 
-    </​string>​ 
-    <string id="​st_sp_achievement_22_name">​ 
-        <​text>​Bardana</​text>​ 
-    </​string></​code>​ 
- 
-Seguidamente accede a //​scripts///​**xr_statistic.script** y añade esto al final: 
-<​code>​function sucker_functor() ; Nombre de la función, el mismo que pusimos en //​functor//​. 
-    if not has_alife_info("​sucker_achievement_gained"​) then ; Se comprueba si ya has recibido este Logro. 
-        if has_alife_info("​zat_b14_give_item_stalker"​) ; Se comprueba si has dado el artefacto al stalker. 
-then 
-xr_effects.inc_faction_goodwill_to_actor(db.actor,​ nil, {"​stalker",​ 200}) ; Como recompensa, tu relación con los stalkers libres ha mejorado (podrías poner -200 si quieres que el Logro tenga efectos negativos). 
-xr_effects.inc_faction_goodwill_to_actor(db.actor,​ nil, {"​freedom",​ 200}) ; Como recompensa, la calidad de la relación que mantienes con Libertad ha aumentado 200 puntos. 
-xr_effects.inc_faction_goodwill_to_actor(db.actor,​ nil, {"​dolg",​ 200}) ; Idem con Deber. 
-xr_effects.inc_faction_goodwill_to_actor(db.actor,​ nil, {"​bandit",​ 200}) ; Idem con los Bandidos. 
-            news_manager.send_tip(db.actor,​ "​st_ach_diplomat",​ nil, "​diplomat",​ nil, nil) ; Se informa del logro vía PDA. 
-            db.actor:​give_info_portion("​sucker_achievement_gained"​) ; Muestra del logro obtenido. 
-        end 
-    end 
-    return has_alife_info("​sucker_achievement_gained"​) 
-end</​code>​ 
- 
-Toca el turno al archivo //​scripts///​**xr_conditions.script**,​ dónde tienes que encontrar: 
- 
-<​code>​friend_of_stalkers_functor = xr_statistic.friend_of_stalkers_functor</​code>​ 
- 
-Y seguidamente,​ bajo la misma, añadir ​ 
- 
-<​code>​sucker_functor = xr_statistic.sucker_functor</​code>​ 
- 
-Todo está listo, de hecho ya está todo correctamente configurado. Sin embargo, como querremos bordar el trabajo tendremos que: 
-  * Editar //​textures/​ui///​**ui_actor_achivments.dds** para incluir nuestro propio icono del Logro 
-  * Indicar en //​configs/​ui/​textures_descr///​**ui_actor_achivments.xml** la posición del icono del Logro que habremos incluído en el archivo anterior. 
modding/tutoriales/crearnuevoslogros.txt · Última modificación: 26/12/2014 20:36 (editor externo)