Índice general Minecraft Mods y Utilidades [Guía avanzada] La magia del Keybind

[Guía avanzada] La magia del Keybind

Escribe en esta seccion para temas relacionados con mods y utilidades de Minecraft

Nota Vie, 21 Feb 2014, 03:02
MinedNugget Avatar de Usuario
Pico de Esmeralda
Pico de Esmeralda

Mensajes: 1205
Ubicación: Cerca de Barcelona
Agradecido : 79 veces Agradecimiento recibido: 74 veces
Estado del post:
-> Sección VARIABLES DEL ENTORNO en construcción
-> Lista de VARIABLES en proceso.


Imagen

Muchos conoceréis ya este fabuloso mod, que nos trae la posibilidad de establecer en una simple tecla de nuestro teclado o ratón, una secuencia que se lance directamente en el juego.

Pero... ¿conocemos todas sus posibilidades?
La respuesta es no, ya que incluso el propio creador del mod las desconoce, puesto que son literalmente infinitas.

Con esta guía pretendo acercaros un poco más a las capacidades que nos ofrece este magnífico mod, mostrando el funcionamiento de las scripts y las infinitas posibilidades que estas traen consigo.

Esto es una guía avanzada, por lo que si no has tratado nunca con el mod o simplemente lo que buscas es una darle utilidad más sencilla, te sugiero pasarte antes por el ya conocido post de LiegeMaximo (pulsando aquí) dónde nos inicia a las funciones más básicas, ya que en esta guía se van a omitir o si bien no, se van a mostrar muy por encima.

Crear scripts o macros que incumplan cualquier norma del servidor, como por ejemplo auto-minar, inundar el chat de mensajes predefinidos, sean de bienvenida o de spam, bots automáticos para obtener facilmente cualquier tipo de recurso... tendrá graves consecuencias.
Expongo esta guía para que se le dé un buen uso y nos podamos automatizar tareas que puedan resultar repetitivas y tediosas QUE NO AFECTEN AL BUEN FUNCIONAMIENTO DEL SERVIDOR.

Si alguien duda sobre si un script se puede usar o no, que lo comente en este mismo post y se dará un veredicto, el aviso queda expuesto.

Empecemos.

Imagen

El menú que trae el mod, es muy visual y simple de entender. Podemos navegar a través de él por las flechas que tenemos en la parte superior de la pantalla.
Si ya conoces el mod, puedes omitir esta sección.

Imagen

Cada una de las 3 interfaces tiene una función. Podemos distinguir entre:

KEYS (Teclas): Podemos establecer que, al pulsar una tecla o botón de ratón, suceda algo.

-> Colores en las teclas
Teclas Grises - No tienen asignada una acción.
Teclas Rojas - Ya tienen una acción asignada por Minecraft.
*Por ejemplo la E abre el inventario en el juego.
Teclas Amarillas - Ya les has asignado una acción.
Teclas Naranjas - Tienen una acción del juego y una asignada por ti.
Teclas Verdes - Tienen una acción asignada, que servirá en cualquier configuración.
*Por ejemplo, podemos tener una configuración de teclas para el servidor, y otra para jugar en Single Player. Se puede alternar entre ellas en donde pone "Config" en la parte superior del menú.

EVENTS (Eventos): Vinculamos una acción cuando se sucede otra.
*Por ejemplo, si establecemos una acción en "onLevelChange", ésta sucederá cada vez que nuestro nivel cambie.
*Hay que ir con mucho cuidado, si no sabemos lo que hacemos podemos crear repeticiones infinitas que nos expulsen del servidor cada vez que entramos.
Si se diera el caso, habría que desactivar la función eliminándola desde el menú principal del juego (fuera del servidor).


BUTTONS (Botones): Botones personalizables que lanzen acciones.
*Por ejemplo, podemos establecer botones que aparezcan cuando abrimos la ventanilla de chat, que hagan una determinada acción.

Vamos a ir entrando en más detalle en cada interfaz a lo largo del tutorial, de momento esta es una breve explicación sobre cada una de ellas. Vamos a lo que realmente importa, las mencionadas acciones.

Imagen

Para empezar, nos vamos a centrar en el interfaz "KEYS".
Para usar sus funciones, debemos pulsar encima de una tecla en el teclado virtual o bien pulsar la tecla directamente desde nuestro teclado, para establecer la acción que queremos que suceda dentro del juego.

Dentro de cada tecla, tenemos otras 3 subsecciones, que nos permitirán configurar al milímetro las acciones que queramos.
Primero explicaré la primera y más conocida, para luego empezar lo que realmente interesa y así poder sacarle todo el jugo al mod.

Imagen

Como podéis apreciar, aparece una breve explicación sobre cada sección en el propio mod. Vamos a entrar en detalle en cada una de ellas.


NORMAL MACRO
Si escribimos una palabra, frase o comando aquí, al pulsar la tecla a la cual hemos asignado el macro, simplemente va a lanzarlo por el chat del juego.

Imagen

Esto parece muy simple, pero lo que realmente nos puede aportar algo interesante son los parámetros, que podemos combinar dentro de la acción, para conseguir hacer todo mucho más rápido.
Son una herramienta muy potente del mod, ya que nos permiten configurar un macro a tiempo real.

-> Parámetros
$$? -> Abre una caja de texto para que completes el macro.
$$[Palabra] -> Lo mismo que $$?, pero te muestra el nombre que quieras en la caja de texto.
*Por ejemplo $$[Tiempo], te indicará que en esa caja de texto debe ir una unidad de tiempo para que el macro que hayas preparado funcione.

$$i -> Abre una lista de los objetos del juego.
$$i:d -> Lo mismo que $$i, pero con este aparecen también los objetos específicos.
*Es decir, que si en la lista de objetos pulsamos la lana roja, en vez de aparecer "wool", aparecerá "wool:14"

$$d -> Lo mismo que $$i:d, pero con este en vez de lanzar un mensaje con el nombre del objeto y su especificación, sólo lanza la especificación.
*Es decir, que si en la lista de objetos pulsamos la lana roja, en vez de aparecer "wool:14", aparecerá "14"

$$f -> Abre tu lista de amigos personalizable.
$$t -> Abre tu lista de ciudades personalizable.
$$h -> Abre una lista de homes personalizable.
$$p -> Abre una lista de lugares personalizable.
$$w -> Abre una lista de warps personalizable.
$$0 hasta $$9 -> Puedes abrir hasta 10 listas de frases/palabras para incluir en la acción. Es personalizable.
*En todos los parámetros especificados como "personalizable" se deben preparar los nombres que se desea que aparezcan.

$$u -> Abre una lista de todos los usuarios conectados en el momento.
*Tiene función de autocompletado, es decir, si escribimos "Mined" va a aparecer "MinedNugget" siempre y cuando esté conectado y no haya otros nombres de usuarios que coincidan.

$$<file.txt> -> Ejecuta lo que ponga en un documento de texto (.txt), previamente preparado.
$$m -> Abre una lista de documentos de texto que tengas listos para lanzarlos.
*Ambos parámetros se usan en caso de querer usar frases largas o scripts, que sean demasiado largos y resulte incómodo escribirlo en el limitado cuadro que nos ofrecen.
*El mod trae consigo un magnífico editor de texto, que nos permitirá crear y editar archivos de texto dentro del propio juego. Se puede acceder a él desde "Edit File...".

$$k -> Abre una lista de tus resourcepacks.

$$px -> Inserta la coordenada X de uno de los lugares de tu lista en $$p.
$$py -> Inserta la coordenada Y de uno de los lugares de tu lista en $$p.
$$pz -> Inserta la coordenada Z de uno de los lugares de tu lista en $$p.
$$pn -> Inserta el nombre de uno de los lugares de tu lista en $$p.

$$! -> Al ponerlo al final de una acción, deja el texto listo en el chat, pero no lo envía.

$${ y }$$ -> Inicia el lenguaje script.
*Éste parámetro se explica al detalle en la sección "Scripts".

-> Ejemplos
Las explicaciones de texto pueden ser interpretadas por cada uno de distintas formas. A veces un ejemplo vale más que mil palabras. Es por eso que dejo varios ejemplos para que probéis vosotros mismos y podáis entender mejor la función de cada parámetro.

-> Cajas de texto y frenar el envío

Imagen

Hoy es $$[Dia]
Hoy es $$[Dia] $$!

Se puede apreciar como $$[Dia] nos abre una caja llamada "Día" para que escribamos y podamos completar el macro. De manera que si pulsamos la tecla y escribimos "sábado" en la caja, nos aparecerá el mensaje "Hoy es sábado".
Si añadimos $$! al final, sudecerá exactamente lo mismo, sólo que no se auto-enviará el mensaje al completarlo.


-> Lista de objetos, de usuarios y sucesión de parámetros

Imagen

/give $$u $$i:d $$[Cantidad]

Es una clásica automatización de un comando, con una sucesión de parámetros.
El comando original sirve para dar a un usuario ($$u), un cierto objeto ($$i:d) y una cantidad ($$[Cantidad]).
La gracia es que tienes la lista de objetos y no hay que buscar la ID ni nada, solamente pulsar una tecla e introducir las variables.

Con estos datos se pueden automatizar prácticamente todos los comandos de Minecraft.
Os sugiero indagar por los distintos parámetros para dominarlos y saber crear este tipo de bindeos rapidamente, ya que son muy útiles.

Otros ejemplos que pueden ser de mucha utilidad en el servidor, pueden ser:

!$$? -> Hablar por chat general sin tener que pulsar ! cada vez.
/msg $$u $$[Mensaje] -> Mensaje privado rapido
/r $$[Mensaje] -> Respuesta rápida
/shop $$i:d -> Buscar la gente que vende un determinado objeto
/shop @ $$u -> Entrar rápidamente a la tienda de un usuario.
/t spawn $$[Ciudad] -> Ir rápidamente al spawn de una ciudad

Muchos creíamos que éste era el límite del mod, sin embargo me temo que nos dejamos la mejor parte, y lo que puede hacernos las cosas más fáciles y automáticas, si cabe.

Vamos a empezar la verdadera guía avanzada, el scripting.


Imagen
Los scripts son la base en la que se soporta todo lo que prosigue en la guía, así que es importante comprender muy bien lo que se va a exponer en esta sección.

Principalmente lo que podemos hacer con este lenguaje es que, cuando suceda alguna cosa, podamos especificar lo que queremos que suceda a continuación.
Y diréis... vale... eso mismo puedo hacerlo con lo que ya se ha expuesto, pero no es así, porque podemos especificar más de una acción, en el tiempo que nosotros digamos, y no necesariamente cuando se pulse una tecla, o cuando nosotros demos la orden.


-> Ejemplos simples
En esta ocasión, no voy a empezar exponiendo los parámetros, sino algún ejemplo sencillo, para que se entienda bien.
Estos son ejemplos inútiles a la practica, pero que ayudarán a comprender el funcionamiento de los scripts.

-> Mensaje/Esperar/Mensaje

Imaginemos que lo que queremos es que, al pulsar una tecla, no nos lance un solo mensaje, sino que queremos que sean dos.
En ese caso queremos que entre un mensaje y otro, haya un tiempo de espera, tal que así:

Imagen

Estos dos mensajes se han escrito pulsando UNA SOLA TECLA, con el siguiente código:

Hola $${WAIT(2)}$$ ¿Qué tal estás?

Lo que éste código indica es que queremos que al pulsar una tecla diga "Hola", luego que espere 2 segundos (WAIT(2)) y finalmente que diga "¿Qué tal estás?".
Aquí es donde aparece el parámetro que antes hemos obviado, que es el $${ y }$$.
Lo que le estamos diciendo con ese parámetro es que no queremos que nos envíe el WAIT(2) directamente al chat, sino que queremos que lo interprete como un script y que cumpla la función que le hemos asignado.
WAIT es un parámetro dentro de un script, que espera durante un cierto tiempo, que puedes establecer en (2).

Entonces, todo aquello que no esté entre $${ y }$$ va a ser interpretado como chat y lo va a enviar directamente, y viceversa, si envolvemos un código con ese parámetro, lo interpretará y hará lo que nosotros le digamos.

Una vez comprendido esto, el verdadero arte de crear cosas interesantes está en combinar varios scripts para obtener un resultado.
Por ejemplo WAIT, es uno de los tantos parámetros que hay y que enumeraremos más adelante, cada uno con su función propia.


-> Mandar un mensaje al chat

Una vez entendido lo que hace un script, pongo un ejemplo de como se haría para mandar un mensaje con un script.
Aquí es donde entra en juego el parámetro ECHO.

Fijaros lo que sucede si usamos éste nuevo parámetro combinado con el ya conocido WAIT.

Imagen

$${ECHO(Hola)}$$ $${WAIT(2)}$$ $${ECHO(¿Qué tal estás?)}$$

¿Te has fijado? Está pasando exactamente lo mismo que en el ejemplo anterior.
Bien, eso es porque ECHO(Texto) va a mandar un texto al chat, tal y como pasaría si no lo tratásemos como a un script.
El código nos dice que primero diga Hola "ECHO(Hola)", a continuación espere dos segundos "WAIT(2)" y finalmente "ECHO(¿Qué tal estás)".

Ahora bien, tener que andar escribiendo continuamente el parámetro de leer script es muy tedioso y es por eso que se puede hacer de la siguiente manera:

$${ECHO(Hola);WAIT(2);ECHO(¿Qué tal estás?)}$$

En este caso, basta con escribir una sola vez $${ y }$$ y usar el punto y coma ";" para separar las distintas acciones, y funcionará exactamente del mismo modo.


-> Mensaje visible sólo para mí

Más o menos espero que se vaya entendiendo.
Antes de listar todos los parámetros para scripts que el mod ofrece, termino con un último ejemplo, en este caso vamos a ver la diferencia entre el ECHO y el LOG.

Imagen

$${LOG(Parece que hoy no hace muy buen día.);ECHO(Parece que hoy no hace muy buen día.)}$$

Como podéis ver en la imagen, aparece en nuestro chat un mensaje azul que nos dice "Parece que hoy no hace muy buen día" y luego otro idéntico pero escrito por el chat convencional.

La diferencia entre ambos parámetros no es más que esa, el LOG sólo lo vas a ver tú en tu ventana del chat, mientras que ECHO lo va a enviar como si de un mensaje normal se tratase.

Si os fijáis cuando empezamos a hacer scripts un poco más largos, nos encontramos que es muy incómodo de hacer desde esa pequeña caja que nos ofrecen, y a parte se ve todo pegado y es bastante molesto.
Es por ese motivo que hay un editor de texto dentro del propio mod, donde podremos preparar nuestros scripts y luego vincularlos a una tecla.

Todo esto lo cubriremos en nuestra próxima sección, donde también pasaremos a enumerar la multitud de parámetros que existen dentro del lenguaje del scripting.

Todos estos ejemplos carecen de utilidad, son únicamente para que se entienda bien el funcionamiento de los scripts. Aunque ahora mismo pueda parecer inútil, os váis a sorprender de lo que se puede llegar a hacer con ellos.


Imagen
Conocido el funcionamiento y la estructura, vamos a crear cosas realmente útiles y que nos pueden servir.
Empezaremos listando todos los parámetros simples que podemos encontrar en el mod.

WAIT(Tiempo)
Como ya hemos explicado, actúa como tiempo de espera entre un script y otro.
El tiempo se puede especificar con un simple número, en cuyo caso serían segundos, también en milisegundos (100ms) o en ticks (10t)

FOV(Valor,Tiempo)
FOV es aquella opción del panel con la que podemos alternar entre una vista normal o una vista "Quake Pro". En "Valor" debemos introducir el número de FOV que queremos y en "Tiempo" el tiempo que queremos que tarde en hacer la transición.

GAMMA(Valor,Tiempo)
Funciona exactamente igual que FOV, sólo que este parámetro nos modificará nuestro brillo de pantalla.

SENSITIVITY(Valor,Tiempo)
Lo mismo que FOV y GAMMA pero modifica la sensibilidad.

VOLUME(Valor,Variable)
Exactamente lo mismo pero con el volumen general.
Lo mismo, sólo que en "Variable" podemos especificar qué volumen queremos modificar.
En caso de no especificar variable, nos estaremos refiriendo al volumen general.

Variables
RECORD -> Volumen para tocadiscos/bloque musical.
WEATHER -> Volumen del clima.
BLOCK -> Volumen de los bloques.
HOSTILE -> Volumen de las criaturas hostiles.
NEUTRAL -> Volumen de las criaturas neutrales.
PLAYER -> Volumen de los jugadores.
AMBIENT -> Volumen del ambiente/entrono.

Por ejemplo:
$${VOLUME(100,BLOCK)}$$ - Nos lleva el volumen de los bloques al 100%
$${VOLUME(100)}$$ - Nos lleva el volumen general al 100%

MUSIC(Valor)
Exactamente lo mismo pero con la música.

FOG(Valor)
Exactamente lo mismo pero con la distancia de renderizado de chunks.

GUI(Argumento)
Abre el panel que le indiquemos en "Argumento".

Argumentos
CHAT -> Activa el chat. Sería lo mismo que pulsar "T" en el juego.
MENU -> Activa el menú. Sería lo mismo que pulsar "ESC" en el juego.
INVENTORY -> Activa el inventario. Sería lo mismo que pulsar "E" en el juego.
OPTIONS -> Activa las opciones. Sería lo mismo que pulsar "Opciones" en el menú.
VIDEO -> Activa los ajustes de vídeo. Sería lo mismo que pulsar "Ajustes de vídeo" en las opciones.
CONTROLS -> Activa los controles. Sería lo mismo que pulsar "Controles" en las opciones.

CONFIG(Nombre)
Carga una de las configuraciones que tengamos preparadas del Keybind.
En caso de querer volver a la que viene por defecto, hay que especificar "" en el nombre.

Por ejemplo:
$${CONFIG(MundoMinecraft)}$$ - Nos activa la configuración del Keybind llamada "MundoMinecraft".
$${CONFIG("")}$$ - Nos activa la configuración del Keybind por defecto.

DISCONECT()
Te desconecta del servidor en que estés jugando. Este parámetro no requiere argumentos.

Por ejemplo:
$${ECHO("Adiós, hasta mañana");WAIT(5);DISCONECT()}$$ - Dice adios por el chat, espera 5 segundos y luego te desconecta. Todo en una tecla.

KEY(Acción)
Actúa de forma muy parecida al GUI, sólo que en este caso podemos especificar acciones, tales como atacar, usar...

Acciones
INVENTORY -> Activa el inventario. Sería lo mismo que pulsar "E" en el juego.
DROP -> Activa el dropeo. Sería lo mismo que pulsar "Q" con un objeto en la mano.
CHAT -> Activa el chat. Sería lo mismo que pulsar "T" en el juego.
ATTACK -> Activa el ataque. Sería lo mismo que pulsar "Click Izquierdo" para golpear algo.
USE -> Activa el uso. Sería lo mismo que pulsar "Click Derecho" en una mesa de crafteo, por ejemplo.
PICK -> Activa el copiar objeto. Sería lo mismo que pulsar "Click Rueda del ratón" cuando estás en creativo.
SCREENSHOT -> Activa el captura de pantalla. Sería lo mismo que pulsar "F2" para sacar una captura.
SMOOTHCAMERA -> Activa la cámara cinemática. Sería lo mismo que pulsar "F8" para cámara cinemática.

KEYDOWN(Acción)
Es lo mismo que el KEY, pero lo que hace esto es mantener pulsada la acción que le indiquemos.

Acciones
FORWARD -> Mantendría pulsada la acción de caminar adelante.
BACK -> Mantendría pulsada la acción de caminar atrás.
LEFT -> Mantendría pulsada la acción de caminar hacia la izquierda.
RIGHT -> Mantendría pulsada la acción de caminar hacia la derecha.
JUMP -> Mantendría pulsada la acción de saltar.
SNEAK -> Mantendría pulsada la acción de agacharse.
PLAYERLIST -> Mantendría pulsada la acción de abrir la lista de usuarios.
SPRINT -> Mantendría pulsada la acción de esprintar.

KEYUP(Acción)
Es lo mismo que el KEYUP, pero lo que hace esto es parar la acción que le habíamos indicado.

TOGGLEKEY(Acción)
Invierte el estado de KEYUP o KEYDOWN
Si una tecla está en un estado, la vuelve al otro.

Por ejemplo:
$${KEYDOWN(FORWARD);WAIT(10);KEYUP(FORWARD)}$$ - Nuestro personaje caminaría durante 10 segundos y luego pararía solo.
$${KEYDOWN(FORWARD);WAIT(10);TOGGLEKEY(FORWARD)}$$ - Haría exactamente lo mismo.

ECHO(Texto)
Lanza un mensaje al chat del juego, visible para todos. Explicado en la sección anterior.

LOG(Texto)
Lanza un mensaje al chat del juego, sólo visible por tí. Explicado en la sección anterior.
Este parámetro admite códigos de color, es decir que si añadimos &[Código] en el texto cambiará de color del texto o de la palabra que le precede.

INVENTORYDOWN(Número)
Mueve el cursor del inventario, tantos espacios como le indiquemos hacia la derecha.

INVENTORYUP(Número)
Mueve el cursor del inventario, tantos espacios como le indiquemos hacia la izquierda.

PICK(Objeto)
Mueve el cursor del inventario, hasta donde se encuentre el objeto especificado.
"Objeto" debe ser especificado con el nombre del mismo. Por ejemplo el lingote de oro, sería gold_ingot.

Por ejemplo:

Imagen

$${PICK(diamond_pickaxe)}$$ - Escogería de todos los espacios, el que tiene el pico de diamante.

SLOT(Número (1-9))
Mueve el cursor del inventario, hasta el espacio del inventario especificado en "Número".
El valor "Número" debe ser entre 1 y 9.

SPRINT()
Inicia el modo esprintar en el personaje, siempre que éste esté en situación de hacerlo. Este parámetro no requiere argumentos.

UNSPRINT()
Para el modo esprintar en el personaje. Este parámetro no requiere argumentos.

TYPE(Tecla)
Pulsa una tecla como se tú mismo lo hicieses.

Por ejemplo:
$${(TYPE(B)}$$ - Sería lo mismo que si tú pulsas la tecla "B" del teclado.

PLACESIGN(Línea1,línea2,línea3,línea4)
Pone carteles con el texto que le indiques automáticamente.
Linea 1, linea 2, linea 3, y linea 4, hacen referencia a los 4 espacios que tenemos para escribir en un cartel.

Por ejemplo:

Imagen

$${PLACESIGN(MUA,JAJAJA,JAJA,JAJA)}$$ - Coloca automáticamente un cartel, siempre que se tenga en el inventario.

RESOURCEPACKS(Pack de texturas)
Cambia el pack de texturas y pone el que indiques en "Pack de texturas".
En caso de dejar vacío el espacio, se establece el pack default.
Para especificar un pack de texturas, bastará con introducir una palabra clave que haya en el archivo del pack que tenemos instalado.

Por ejemplo:
$${(RESOURCEPACKS()}$$ - Establece el pack de texturas original.
$${(RESOURCEPACKS(Sphax)}$$ - Establece el pack de texturas que contenga en su nombre esa palabra clave.

INC(Contador,Número)
Incrementa un contador en el número especificado.
Esta función se detallará más adelante.

DEC(Contador,Número)
Reduce un contador en el número especificado.
Esta función se detallará más adelante.

LOOK(Dirección, Tiempo)
Hace que tu personaje mire a una dirección especificada.
En "Tiempo" podemos especificar cuanto tiempo queremos que tarde en cambiar la dirección a la que estamos mirando.
En caso de no poner tiempo, lo hará inmediatamente.

Direcciones
NORTH -> Apunta al norte.
SOUTH -> Apunta al sur.
EAST -> Apunta al este.
WEST -> Apunta al oeste.
NEAR -> Apunta a la dirección más cercana.

Por ejemplo:

Imagen

$${LOOK(NORTH)}$$ - Apunta automáticamente al norte.

RESPAWN()
Te respawnea si mueres. Este parámetro no requiere argumentos.

Por ejemplo:
$${(ECHO("/suicide");WAIT(2);RESPAWN()}$$ - Este script te obligaría a suicidarte, luego pasados 2 segundos te respawnea automáticamente.

PLAYSOUND(Sonido)
Reproduce un sonido, audible sólo por tí.
En "Sonido" debemos introducir el formato carpeta.sonido.
Podemos ver todos los sonidos disponibles en la dirección ".minecraft\assets\virtual\legacy\sounds"

Por ejemplo:
${{PLAYSOUND(note.pling) - Reproduce el sonido "pling.ogg" que hay dentro de la carpeta "note" en nuestros sonidos de Minecraft

CRAFT(Objeto,Cantidad,Lanzar)
Craftea un objeto automáticamente.
En "Objeto" hay que escribir el nombre del objeto, por ejemplo "Bloque de Hierro" sería "iron_block".
En "Cantidad" hay que escribir la cantidad de objetos que quieres craftear.
"Lanzar" se usa para indicar si se quiera lanzar el objeto al suelo una vez crafteado. Si se especifica "true" lo va a lanzar, mientras que si no se especifica no lo lanza.

Por ejemplo:

Imagen

$${CRAFT(tnt,20)}$$ - Craftea 20 unidades de TNT.
$${CRAFT(tnt,20,true)}$$ - Craftea 20 unidades de TNT, y al acabar lanza los objetos al suelo.

CHATCLEAR()
Limpia el chat. Este parámetro no requiere argumentos.

SETRES(Anchura,Altura)
Modifica el tamaño de la ventana del juego.
Los argumentos "Anchura" y "Altura" deben darse en números y hacen referencia a los píxeles.

SETLABEL(Nombre del botón,Texto)
Modifica el texto de un botón determinado.
Más información sobre botones en la sección "Botones".

Por ejemplo:

Imagen

$${SETLABEL(PRUEBA,Adios)}$$ - Modifica el botón "PRUEBA", poniéndole el texto "Adios".

SETSLOTITEM(Objeto,Slot,Número)
Te pone un "Número" determinado de un "Objeto" en el "Slot" de tu inventario que especifiques.
Funciona [b]únicamente
cuando estás en modo creativo.

Por ejemplo:
$${SETSLOTITEM($$i:d,5,64)}$$ - Te da 64 unidades de TNT y lo coloca en el slot 5 de tu inventario.

SLOTCLICK(Slot,Click Derecho o Izquierdo)
Simula un click en un slot de tu inventario. En "Slot" de sebe especificar un número que hará referencia al espacio de tu inventario que deseas seleccionar.
En "Click derecho o izquierdo" se debe poner "r" o "l" dependiendo si se desea aplicar click derecho o izquiero, respectivamente.
Si se añade el argumento "true" al final, simula un SHIFT+CLICK.

Por ejemplo:
$${SLOTCLICK(5,r)}$$ - Simula un click derecho en el espacio 5.
$${SLOTCLICK(4,l,true)}$$ - Simula un SHIFT+CLICK izquierdo en el espacio 4.

CHATVISIBLE(true/false)
Nos oculta/muestra el chat. Si se especifica "true" como argumento, lo muestra y viceversa.
En caso de no especificar argumento, colocará el chat como visible si éste no lo está y viceversa.


Imagen
Ahora ya entendemos las bases del scripting y tenemos una suculenta lista de utilidades.
Todavía quedan por listar las más avanzadas, que se hará más adelante con su correspondiente explicación, pero antes vamos a introducir las variables del entorno y a exponer sus utilidades.

¿Qué son las variables del entorno?
Son parámetros que nos darán una información a tiempo real de lo que está sucediendo en el juego.
El formato es %VARIABLE%, donde en "VARIABLE" debemos especificar lo que nos interesa que nos muestre.

Entonces, definidas las variables, vamos a poner ejemplos sobre como usarlo y que se puede hacer con esto.


-> Ejemplos simples

-> Variable %LEVEL%

Una de las variables que encontraremos en la lista es, por ejemplo, %LEVEL%.
Ésta nos detectará el nivel en el que estamos.
Pongamos un ejemplo:

Imagen

$${(LOG(Mi nivel es %LEVEL%)}$$

Recordemos la función de LOG.

LOG(Texto)
Lanza un mensaje al chat del juego, sólo visible por tí. Explicado en la sección anterior.
Este parámetro admite códigos de color, es decir que si añadimos &[Código] en el texto cambiará de color del texto o de la palabra que le precede.

Como se puede ver en la imagen, al añadir este comando a una tecla y pulsarla, nos aparece un mensaje sólo visible para nosotros donde nos indica el nivel exacto que tenemos en el momento en que pulsamos la tecla.

De manera que si introducimos una variable del entorno dentro de un script, va a leer lo que esté sucediendo en ese mismo instante dentro del juego..
En este caso el script nos ha sustituido %LEVEL% por el nivel actual que tenemos, que es 23.

Si en vez de usar LOG, hubiéramos usado ECHO, se habría enviado como si de un mensaje normal de chat escrito por ti se tratara.


-> Variables %XPOS%. %YPOS%, %ZPOS%

Otro ejemplo de unas de las variables de la lista pueden ser %XPOS%, %YPOS% Y %ZPOS%, cuya función es detectar las coordenadas en las que nos encontramos.

Por ejemplo:

$${LOG(Coordenadas: %XPOS%x, %YPOS%y, %ZPOS%z)}$$

Este ejemplo nos mostraría un mensaje con las coordenadas en las que nos encontramos en ese preciso instante, tal que así:
Coordenadas: 250x, 65y, 1900z

Recordemos que se pueden modificar los colores que queremos que aparezcan en los mensajes de LOG, este sería un ejemplo modificando los colores:

$${LOG(Coordenadas: &4%XPOS%&bx, &4%YPOS%&by, &4%ZPOS%&bz)}$$

Así es como lo veríamos en este caso:

Coordenadas: 250x, 65y, 1900z

Recordemos que "&4" es el código para el color rojo y "&b" para el color aqua.


-> Lista de variables
Conocida la función de las variables del entorno, vamos a listar todas las que el nos nos trae consigo.

[LISTA DE VARIABLES DEL ENTORNO EN CONSTRUCCIÓN]


[POST EN CONSTRUCCIÓN]
MinedNugget escribió:
Finalmente me he decidido a empezar ésta nueva guía sobre el mod Macro/Keybind.
Hasta hace pocos días desconocía el potencial de este mod pese a llevar usándolo durante mucho tiempo.
He estado investigando y entrando en las profundidades del mod para descubrir cosas realmente impresionantes.
Es por eso que estoy terminando de preparar ésta guía en la que quiero compartir todo éso con vosotros. Espero que sirva y espero tenerla prácticamente terminada a finales de la semana que viene.
La voy a ir publicando por partes, ya que va para largo y le voy a tener que dedicar bastantes horas, haciéndolo algo tedioso de ir editando fuera del editor del foro.
Por supuesta cualquier aportación o sugerencia será bien recibida.


Desarrollador del mod: Mumfrey
Enlace al post oficial
¿Tienes alguna duda sobre el servidor?
Pásate por [FAQ] La guía del novato, una guía que te explicará el funcionamiento del servidor y como saber moverte por él, de la forma más simplificada y clara posible.

VGV_328 Pico de hierro
Pico de hierro

Mensajes: 125
Ubicación: España, Cataluña
Agradecido : 3 veces Agradecimiento recibido: 0 vez
Ya había un post tipo así hablando de sus características, pero cuanto mas mejor.

Había cosas que no sabia, muy buen aporte. :o

CastorJuan Pico de hierro
Pico de hierro

Mensajes: 225
Agradecido : 35 veces Agradecimiento recibido: 55 veces
wauu mined, esto es increíble. Gente como tu es la que hace mas grande este server, te felicito.

sabia de la existencia del $$ pero no del $$i, $$u, etc. Ahora me pondré a probar (fuera del server por si acaso xD)

animo a la gente a que ponga por aquí que bindeos tiene y en que teclas. Seguro que aprendemos todos un poco.

Gracias MinedNugget.

MinedNugget Avatar de Usuario
Pico de Esmeralda
Pico de Esmeralda

Mensajes: 1205
Ubicación: Cerca de Barcelona
Agradecido : 79 veces Agradecimiento recibido: 74 veces
La guía va tomando forma, poco a poco iré destapando todas las funciones y ejemplos prácticos de lo que se puede llegar a hacer.

Avanzo un bindeo increible que seguramente os gustará.

$${CRAFT($$i,$$[Cantidad])}$$

Al asignarlo en una tecla y pulsarla con una mesa de crafteo enfrente craftea automáticamente un objeto, sin necesidad de introducir los objetos en la mesa, todo automático. Además se puede escoger la cantidad de objetos que quieres craftear.
Lo único que se debe tener es los objetos necesarios para el crafteo en el inventario ¿No es impresionante?

Si queréis aprender hacer más cosas como esta no le quitéis ojo a la guía, lo mejor viene al final :D
Si alguien tiene problemas con algún bindeo o no entiende algo, que lo comente, a ver si entre todos lo podemos resolver.

Un saludo.
¿Tienes alguna duda sobre el servidor?
Pásate por [FAQ] La guía del novato, una guía que te explicará el funcionamiento del servidor y como saber moverte por él, de la forma más simplificada y clara posible.


Volver a Mods y Utilidades