Tamaño del Texto:
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?
 

Páginas: [1]   Ir Abajo
  Imprimir  
Autor Tema: [Guía] Beta Scripting Lección I  (Leído 1386 veces)
0 Usuarios y 1 Visitante están viendo este tema.
Draxter
Moderador
Posteador de Oro
*
Desconectado Desconectado

Sexo: Masculino
Mensajes: 909
Miembro Nº: 1387



WWW

Última visita: 27 de Febrero de 2008, 12:58:13
« : 10 de Julio de 2007, 11:11:55 »

Lección I Scripting
 

Introducción:

Hola esta es la primera es la primera guía temática de scripting, a través de las siguientes guías descubrirás el por qué de un script, la utilidad del mismo y sobretodo empezar a hacer tus propias creaciones.
Para quienes no me conocen mi nombre es Draxter o Alexander y seré vuestro Tutor,trataré de hacer lo más ameno posible mi explicación,diseño y correspondientes ejemplos de manera que se sientan familiarizados con la dinámica que emplearemos
Para los que no se informan bien el por qué y el Principio findamental de un NPC o script trataré de darles el concepto básico
 
Script
Los emuladores eAthena emplean mucho el formato de texto del bloc de notas,el mismo que es usado para hacer pequeñas páginas web en formato HTML,para nuestro caso lo emplearemos en la elaboración de NPC’s y demás.Cabe de resaltar que un script bien elaborado cumple las funciones básicas del NPC,cualquier error en el será notificado por el emulador y también dentro de juego,es conocido algunos errores como syntax,parse_line,unexpected line entre otros.Es imprescindible entonces que empecemos por lo sencillo:
 

[COLOR=darkslateblue]Formato Para Novatos de Scripts[/COLOR]

Teniendo en cuenta en esta primera guía y poniendonos en el plano más sencillo un NPC se deriva a dos clases Fundamentales:
 

NPC Event y NPC Tiendas:

Event: Un NPC de Event hará cumplir las funciones de "Interactuar" con el Player quien haga el proceso,vale decir que las funciones son diversas y nuestra meta prioritaria es llegar a dominar este tipo de NPCs.Las guías estarán basadas bajo este tipo de NPCs.
 
Tiendas: Una tienda como todos bien saben es donde uno coloca los Items bajo un Precio y también se pueden vender Items sin importar que sean.
 

[COLOR=darkslateblue]Vamos Por nuestras Tiendas para Aligerar un Poco la Labor:[/COLOR]

-Mapa donde vamos a colocar Nuestro NPC,este siempre,siempre debe estar con la terminación ".gat"
prontera.gat
geffen.gat
-Coordenada X del NPC -Coordenada Y del NPC
prontera.gat,120,100
 
Algunos Detalles:
-Indicar hacia que lafo esta mirando nuestro NPC,puede ser del 1-6 aprox
-Indicar que es un NPC de Venta: shop
-Indicaremos el Nombre del NPC-Indicar el número de Sprite
 
prontera.gat,120,100,5 shop Items
 
Bueno he aqui nuestro Resultado Final un Shop en Prontera con el nombre de "Items"
Ahora para agregar nuestros cosas al shop procederemos a lo siguiente.
Primero que nada debemos conocer el número del Item
 
Para ello nos vamos a dirijir a
eAthena/db/Item.db
Bien ya que estamos aqui veremos nuestra Lista de Items que disponemos,ya hay guías acerca de como colocar Customs Items,yo tomaré ejemplos sencillos de Items que ya tenemos para nuestro
 

Ejemplo:

1807,Fist,Fist,4,53000,,650,115,,1,0,0x00008100,7,2,2,3,24,1,12,{},{},{}
1808,Fist_,Fist,4,53000,,650,115,,1,1,0x00008100,7,2,2,3,24,1,12,{},{},{}
1809,Claw,Claw,4,67000,,500,86,,1,1,0x00008100,7,2,2,3,24,1,12,{ bonus bStr,2; },{},{}
1810,Claw_,Claw,4,67000,,500,86,,1,2,0x00008100,7,2,2,3,24,1,12,{ bonus bStr,2; },{},{}
1811,Finger,Finger,4,58000,,500,97,,1,1,0x00008100,7,2,2,3,24,1,12,{},{},{}
 
Haber relajaos no vamos a usar todo esto xD
Solo necesitamos las IDs de los items vale decir 1807,1808,1809,1810,1811
Esto con el fin de establecer en Nuestro Shop el Item y el precio
 

Observad el proceso:

prontera.gat,120,100,5shopItems915,1807:500,1808:1000,1809:1500,1810:2000,1811:5000
 
Complementando Nuevamente:
prontera.gat = Mapa
120 =Coordenada X
100 = Coordenada Y
5 =Dirección del NPC
shop = Nuevamente indico sin esto jamás se dara a entender que es un shopper lo que vamos a hacer
Items = El nombre de nuestro NPC915 = Número de Sprite de nuestro NPC
 
 
Luego seguido de una "," (coma) colocamos el Item,luego ":" (dos puntos) y el precio que le colocaremos al Item seleccionado.
1807:500
 
Para establecer varios Items es necesario separarlo con una "," (coma) colocar Nuevamente el Item y el Precio
En este Caso estamos Estableciendo a esta Arma una Claw de Monk el Precio de 500 y a la otra el Precio de 1000
 
1807:500,1808:1000
Vale decir que para Crear otro Shopper se debe establecer nuevamente todo el proceso,es decir por ejemplo esto:
hugel.gat,69,143,5 shop Botas 901,2401:400,2402:4000,2403:3500
 
hugel.gat,69,140,5 shop Escudos 827,2101:500,2102:5000,2103:14000,2104:140000,2105:56000
 
 
Aqui os dejo un ejemplo que usé en mi servidor de Botitas y Escudos,fijense que cada NPC está separado del otro.

Procediendo a Mi Primer NPC en Base a Script

A la hora de crear nuestro NPC debemos darle las siguientes funciones:

geffen.gat,120,100,4 script School 129,{
Bueno explicare en términos sencillos la importancia de estas líneas dentro de nuestro script

Importancia:
-Mapa: geffen.gatIndicar el mapa siempre es prioritario en nuestro script puesto que damos a reconocer donde esta ubicando nuestro NPC

-Coordenadas 120,100,4Cuando no sabemos donde estamos dentro del juego siempre recurrimos a este comando /where algo parecido son las coordenadas indican la ubicación “exacta” de nuestro NPC a crear “120,100” y 4 viene a ser hacia que dirección estará mirando nuestro NPC en este caso podemos colocar del 1-6 aprox

-script School 129Esto indicara si es “script” o es “shopp” empezaremos por script ya que es mas relevante que un shopper,School es el nombre de tu NPC se vera dentro del juego con tal nombre y 129 es el código de sprite de tu NPC.Ahora vamos directo en si a nuestro NPCPara empezar todo NPC debemos colocar { y siempre debemos cerrar con }Ahora comenzaremos con nuestras primeras variables:
Prestad atención:
mes [School];

Definición de “mes”mes es empleado para darle un dialogo a nuestro NPC, este será visualizado en un cuadro dentro del juego propio del NPC, con ello podemos darnos una idea básica a otras funciones posteriores

Ejemplo:
mes “[School]”;
mes “Bienvenido a la guía de DivineRO”;
next;mes “[School];
mes “Espero que estes disfrutando de esta guía”;
close;
}

Se preguntaran por qué coloque School, bien les explico:Para darle un toque “estético” a nuestro NPC se suele colocar a los comentarios el nombre, dándole mayor visibilidad a los diálogo “user-Npc” se le pueden aplicar colores,eso ya explicaré más adelanteComo se darán cuenta coloqué:
 
mes “Bienvenido a la guía de DivineRO”;
Ahora creo que queda claro la función de “mes” se verá en el cuadro lo que se está diciendo

Explicando variables adicionales:

-next y close:
¿Cuando están dentro de juego Han visto el botón “next”?Pues lo mismo ocurre para pasar de un diálogo al siguiente emplearemos la variable “next”

Ejemplo ver:
next;mes “Espero que estés disfrutando de esta guía”;
Lo único que he hecho es pasar de un diálogo a otro de este modo no saturamos mucho un mismo diálogo y evitamos tener que estar bajando con el cursor dentro del juego.

-close;
Significa que allí se cierra la conversación con el NPC pero no necesariamente que se haya terminado la función del mismo, simplemente es un comando de “término de diálogo user-NPC”

Preguntas Básicas:
¿Cuándo debo tabular?
Cuando comiences tu npcgeffen.gat,120,100,4(tabulamos)script(tabulamos) School(tabulamos)129También cuando empezamos a emplear una variablemes(tabular)”Bienvenido a la guía de DivineRO”;

¿Por qué esta el ; al final de todo?Porque así terminamos una función y pasamos a otra,esto debe estar siempre o nos dara errores en nuestro emulador
 
¿Cómo sé que sprite es la correcta para mi NPC?
Actualmente tenemos este Link, con ello tendrás noción de que sprite es la adecuada para tu NPC
Link de Sprites
 
¿Dónde coloco mis creaciones?Normalmente si son nuevas vamos a:
eAthena/NPC/custom
alli dentro pegamos nuestro NPCdentro de la carpeta NPC buscamos el archivo scripts_custom
y colocamos al final:
 
npc: npc/custom/School.txtDebemos guardar nuestro NPC siempre en formato .txt y School es el nombre de tu script,he puesto ese como ejemplo.
 

Espero Que esta Leccion les resulte amena


Nos vemos en una siguiente lección


Atentamente


.::Draxter::.
« Última modificación: 10 de Julio de 2007, 11:36:09 por Draxter » En línea

"No existe manera de que me detengan"
DivineRO :: Foro :: Ragnarok Online
« : 10 de Julio de 2007, 11:11:55 »

 En línea
Páginas: [1]   Ir Arriba
  Imprimir  
 
Ir a:  

Powered by SMF 1.1.5 | SMF © 2006, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks

BlueSkies design by Bloc, editado por eves para DivineRO | XHTML | CSS

Página creada en 0.313 segundos con 24 consultas.


Google visitó por ultima vez esta pagina 03 de Julio de 2008, 03:33:41