Herramientas de usuario

Herramientas del sitio


modding:tutoriales:crearnuevpnj

Diferencias

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

Enlace a la vista de comparación

modding:tutoriales:crearnuevpnj [19/03/2010 20:31]
81.35.207.232
modding:tutoriales:crearnuevpnj [26/12/2014 20:36]
Línea 1: Línea 1:
-====== Creación de PNJs ====== 
-Para llevar a cabo este tutorial, necesitaremos los siguientes archivos: 
  
-  * //​config/​creatures///​**spawn_section.ltx** 
-  * //​config/​gameplay///​**character_desc_XXX.xml** (dónde XXX es la Ubicación en la que vamos a hacer respawnear el NPC, en este caso //escape// que es el Cordón) 
-  * //​config/​gameplay///​**npc_profile.xml** 
-  * //​script///​**escape_dialog.script** 
- 
-Antes de hacer nada, necesitaremos las coordenadas en las que hacer respawnear nuestro PNJ. Puedes usar las que prefieras, pero en este tutorial utilizaremos los siguientes datos: 
-  * X: -218.20 (Posición en el Eje X) 
-  * Y: -20.2 (Posición en el Eje Y) 
-  * Z: -145.63 (Posición en el Eje Z) 
-  * LVID: 35362 (Level Vertex ID - Referencia dentro de la Ubicación) 
-  * GVID: 47 (Game Vertex ID - Referencia dentro el Mapa Global del juego) 
- 
-En la carpeta //​gamedata/​scripts//​ crea un archivo llamado **mi_spawn.script**,​ y dentro del mismo añade: 
- 
-<​code>​function my_npc_spawn() ​ -- Nombre de la Función 
-      alife():​create("​my_npc",​vector():​set(-218.20,​-20.2,​-145.63),​35362,​47) -- Creamos un PNJ específico (my_npc) en las coordenadas que habíamos establecido 
-end</​code>​ 
- 
-Abrimos ahora //​config/​gameplay///​**npc_profile.xml** y añadimos al final: 
- 
-<​code><​character id="​my_npc">​ 
-      <​class>​my_npc</​class> ​     
-      <​specific_character>​my_npc</​specific_character>​ 
-</​character></​code>​ 
- 
-Necesitamos '​decirle'​ al juego que como implementar todo lo que hemos hecho, así que vamos al archivo //​config/​creatures///​**spawn_section.ltx** y le añadimos: 
- 
-<​code>​[my_npc]:​stalker 
-$spawn = "​respawn\my_npc"​ 
-character_profile = my_npc 
-spec_rank = regular 
-community = stalker</​code>​ 
- 
-Ahora toca darle identidad a este nuevo PNJ, por lo que abrimos //​config/​gameplay///​**character_desc_XXX.xml** (en este caso sería **character_desc_escape.xml**) y añadimos al final: 
- 
-<​code><​specific_character id="​my_npc"​ team_default = "​1"> ​     
-      <​name>​Pepito</​name>​ <!-- Nombre --> 
-      <​icon>​ui_npc_u_stalker_bandit_3</​icon>​ <!-- Icono --> 
-      <​bio>​esc_wolf_bio</​bio>​ <!-- Biografía-->​ 
-      <​class>​my_npc</​class>​ <!-- Clase --> 
-      <​community>​stalker</​community>​ <!-- Facción --> 
-      <​terrain_sect>​stalker_terrain</​terrain_sect>​ 
-      <​rank>​333</​rank>​ <!-- Rango --> 
-      <​reputation>​0</​reputation> ​ <!-- Reputación --> 
-      <money min="​200"​ max="​2000"​ infinitive="​1"/>​ <!-- Dinero --> 
-      <​snd_config>​characters_voice\human_01\stalker\</​snd_config>​ <!-- Carpeta de las Voces --> 
-      <​crouch_type>​-1</​crouch_type>​ 
-      <​visual>​actors\bandit\stalker_bandit_3</​visual>​ <!-- Modelo --> 
-      <​supplies>​ [spawn] \n 
-        wpn_groza \n <!-- Arma que posee --> 
-        ammo_9x39_pab9 \n  <!-- Balas para usar con el arma --> 
-#include "​gameplay\character_items.xml"​ \n <!-- Objetos que puede tener el PNJ de forma aleatoria --> 
-#include "​gameplay\character_food.xml"​ <!-- Comida que puede tener el PNJ de forma aleatoria --> 
-      </​supplies>​ 
-#include "​gameplay\character_criticals_3.xml"​ <!-- Tipos de daño --> 
-#include "​gameplay\character_dialogs.xml"<​!-- Esquema de Diálogos --> 
-</​specific_character></​code>​ 
- 
-Es hora de hacer que nuestra creación vea la luz del Sol y perezca dolorosamente en la Zona. Para ello abrimos //​script///​**escape_dialog.script** y buscamos //function give_wounded_flash(first_speaker,​ second_speaker)//​. Inmediatamente después de esa línea agregamos: 
-<​code>​my_spawn.my_npc_spawn()</​code>​ 
- 
-¡Qué os divirtáis poblando la Zona con vuestras creaciones! 
modding/tutoriales/crearnuevpnj.txt · Última modificación: 26/12/2014 20:36 (editor externo)