MiniGuia zMUD Comodines

En el apartado de triggers vimos como hacer que al aparecer una palabra o frase en el MUD el zMUD enviara una serie de comandos al MUD, pero hay ocasiones en las que nos interesa que el trigger reaccione a mas de una frase o a frases parecidas….o todo lo contrario, que haya excepciones a dichas frases. Aquí entra la magia de las variables (que también valdrán para los botones y las barras, pero vamos poco a poco).

Supongamos que queremos que un trigger salte en varias ocasiones, por poner un ejemplo: “una (el arma que uses) te resbala de las manos!” y “un (el enemigo que sea) te DESARMA!”, en ambos casos querrás coger el arma y blandirla, por ejemplo.

Puedes hacer 2 triggers, uno para cada frase y que los 2 hagan lo mismo, o puedes hacer un único trigger que tenga como norma: {te resbala de las manos!| te DESARMA!}.

Otro ejemplo. cuando abres algún objeto o puerta no pasa nada mas, pero cuando los desbloqueas siempre tienes que abrirlos también a continuación. si haces un trigger:

#ONINPUT {^Desbloquear (%x)} {Desbloquear %1;Abrir %1} "" {notrig}

cuando escribas desbloquear algo, enviaras al MUD desbloquear algo;abrir algo.

Esto y mucho más se hace con las wild cards, o comodines. Estas son, a grosso modo:

*
sustituye cualquier número (incluso ninguno) de caracteres o espacios en blanco.
? un solo carácter (número o letra o signo)
%d cualquier conjunto de números (0-9)
%n un numero que empieza con el signo + o -
%w cualquier numero de caracteres alfabéticos (una palabra, vamos)
%a cualquier numero de caracteres (a-z,0-9) (yo uso mas %x, pero bueno)
%s cualquier numero de espacios en blanco
%x
cualquier numero de caracteres que no sean espacios
%y lo mismo que %x pero empieza por la derecha en vez de por la izquierda
%p signos de puntuación
%q lo mismo que %p pero empieza por la derecha en vez de por la izquierda
%t
comandos de dirección
%e
el carácter ESC en ansi
[range] cualquier numero de caracteres en el rango (por ejemplo [1-5]=1 2 3 4 y 5
^ comienzo de la linea
$ final de la linea
(pattern) salva el comodín como parámetro (van del %1 hasta el %99)
~ se pone antes de los caracteres como % para que no los pille como un comodín sino como una letra normal del MUD. ( ~%x no es %x)
{val1|val2|val3|...}
cualquiera de las frases entre | (pero no puedes tener otros comodines dentro de los corchetes)
@variable
frase o numero contenido en la variable mencionada
{^valor}
cualquier cosa que no coincida con lo que pongas de valor
&nn
que coincidan exactamente nn caracteres
&VarName guarda esa sección como la variable VarName (sustituyendo el valor actual)

No os asustéis. Yo solo he usado %w, %d, %x, %s, ^, $, {|}, * y %1 %2... con esas y un poco de maña, podéis hacer cientos de combinaciones (creedme). Es importante que aprendáis a usar por lo menos las 8 que os he puesto arriba en algún caso. (recordad que podéis probar si un trigger saltaría o no escribiendo frases en su cuarta pestaña, test)

ánimo…esto es lo mas difícil de dominar, y es útil a mas no poder.

Volver al índice de la Guia

2 comentarios:

Zore dijo...

Hola, podrías pegar ejemplos de scripts?
no logré levantar las variables del prompt
%v %p y esas cosas
:D

ZarooS dijo...

Perdona la tardanza, he puesto un ejemplo en la Mini-guía. Espero que eso te ayude para ir empezando.