Scripted Commands

Sistema de scripting avanzado para comandos dinámicos e inteligentes

¿Qué son los Scripted Commands?

Los Scripted Commands son comandos avanzados que te permiten crear lógica personalizada usando un lenguaje de scripting simple pero poderoso. A diferencia de los comandos personalizados básicos que solo responden con texto estático, los comandos con script pueden:

Generar Valores Aleatorios

Dados, números de suerte, opciones aleatorias y más

Lógica Condicional

Respuestas diferentes según condiciones múltiples

Variables y Contadores

Almacenar valores y contar usos del comando

Operaciones Matemáticas

Sumar, restar y comparar números

Información del Sistema

Acceso a datos del usuario, canal, juego y más

Múltiples Mensajes

Enviar varios mensajes según la lógica

Sintaxis del Lenguaje

set Asignación de Variables

Define una variable con un valor

set nombre = "Juan" set numero = 42 set dado = roll(1, 6)
when/then/end Condicionales

Ejecuta código solo si se cumple una condición

when $(numero) > 50 then send "Número alto" end
send Enviar Mensajes

Envía un mensaje al chat

send "Hola mundo" send "Usuario: $(user)" send "Resultado: $(numero)"
Importante: Para múltiples condiciones, usa varios bloques when/then/end independientes. Cada when evalúa su condición por separado.

Funciones Disponibles

roll(min, max) Aleatorio

Genera un número aleatorio entre min y max (inclusivo)

Parámetros:
  • min - Número mínimo
  • max - Número máximo
Ejemplos:
set dado = roll(1, 6) set suerte = roll(1, 100) set moneda = roll(0, 1)
Casos de uso:
  • Tirar dados virtuales
  • Porcentajes de suerte
  • Decisiones aleatorias (0 o 1 = no/sí)
pick("opción1, opción2, ...") Selección

Selecciona aleatoriamente una opción de una lista separada por comas

Parámetros:
  • opciones - String con opciones separadas por comas
Ejemplos:
set comida = pick("pizza, tacos, sushi") set color = pick("rojo, azul, verde, amarillo") set respuesta = pick("sí, no, tal vez")
Casos de uso:
  • Decisiones del chat
  • Recomendaciones aleatorias
  • Mini juegos de elección
count() Contador

Incrementa y retorna un contador (persistente entre ejecuciones)

Variantes:
  • count() - Contador del comando actual
  • count("nombre") - Contador personalizado
Ejemplos:
set usos = count() set muertes = count("deaths") set victorias = count("wins")
Casos de uso:
  • Contar usos del comando
  • Estadísticas de stream (muertes, victorias)
  • Trackers personalizados

Variables del Sistema

Variables especiales que proporcionan información del contexto actual:

$(user)

Usuario que ejecutó el comando

$(channel)

Canal donde se ejecutó el comando

$(game)

Juego/categoría actual del stream

$(uptime)

Tiempo que lleva el stream en vivo

$(ruser)

Usuario aleatorio del chat

$(touser)

Usuario mencionado con @ en el comando

Operadores

Comparación

== Igual a
!= Diferente de
> Mayor que
< Menor que
>= Mayor o igual
<= Menor o igual

Aritméticos

+ Suma
- Resta

Ejemplos Prácticos

Ejemplos Básicos

Comando de Dado Simple

Fácil

Un comando básico que simula tirar un dado de 6 caras

set resultado = roll(1, 6)
send "🎲 $(user) tiró el dado y sacó: $(resultado)"
Crear con: !crear !dado set resultado = roll(1, 6) send "🎲 $(user) tiró el dado y sacó: $(resultado)"

Selector de Opciones

Fácil

Elige aleatoriamente entre varias opciones

set opciones = "pizza, tacos, sushi, hamburguesa"
set elegido = pick($(opciones))
send "🍕 Para $(user) recomiendo: $(elegido)"

Contador de Usos

Fácil

Cuenta cuántas veces se ha usado el comando

set usos = count()
send "📊 Este comando se ha usado $(usos) veces"

Ejemplos Intermedios

Dados con Lógica Condicional

Medio

Tirar dos dados y mostrar mensaje especial si saca dobles

set dado1 = roll(1, 6)
set dado2 = roll(1, 6)
set suma = $(dado1) + $(dado2)

when $(dado1) == $(dado2) then
    send "🎲🎲 DOBLES! $(user) sacó $(dado1) y $(dado2) = $(suma)"
end

when $(dado1) != $(dado2) then
    send "🎲 $(user) sacó $(dado1) y $(dado2) = $(suma) puntos"
end

Sistema de Suerte con Múltiples Rangos

Medio

Genera porcentaje de suerte con diferentes respuestas según el rango

set suerte = roll(1, 100)

when $(suerte) >= 90 then
    send "⭐ LEGENDARIA! $(user) tiene $(suerte)%"
end

when $(suerte) >= 70 then
    send "🔥 Buena suerte: $(user) tiene $(suerte)%"
end

when $(suerte) >= 50 then
    send "👍 Suerte normal: $(user) tiene $(suerte)%"
end

when $(suerte) < 50 then
    send "😅 Mala suerte: $(user) tiene $(suerte)%"
end
Nota: Solo se ejecuta el PRIMER when que sea verdadero. Los demás se omiten.

Ejemplo Avanzado

Comando Completo con Múltiples Características

Avanzado

Comando que combina variables del sistema, funciones, contadores y múltiples condiciones

set usuario = $(user)
set juego = $(game)
set contador = count()
set suerte = roll(1, 100)
set dado1 = roll(1, 6)
set dado2 = roll(1, 6)
set suma = $(dado1) + $(dado2)

when $(contador) == 1 then
    send "🎉 Primera vez de $(usuario)!"
end

when $(suerte) >= 90 then
    send "⭐ ÉPICO! $(usuario) tiene $(suerte)% en $(juego)"
end

when $(suerte) >= 60 then
    send "😊 $(usuario) tiene buena suerte: $(suerte)%"
end

when $(suerte) < 60 then
    send "😅 $(usuario) tiene $(suerte)% de suerte"
end

when $(suma) == 12 then
    send "🎲 DOBLE SEIS! Puntuación perfecta"
end

when $(suma) < 12 then
    send "🎲 Dados: $(dado1) + $(dado2) = $(suma)"
end

send "📊 Total de usos: $(contador)"

Cómo Crear Comandos con Script

1

Escribe tu Script

Usa la sintaxis de scripting para crear la lógica de tu comando

El sistema detecta automáticamente si un comando usa scripting por las palabras clave: set, when, then, send, roll(), pick(), count()
2

Usa el Comando !crear

Crea el comando normalmente con !crear - el script se detectará automáticamente

!crear !micomando set x = roll(1, 100) send "Resultado: $(x)"
3

Validación Automática

El sistema valida la sintaxis antes de crear el comando

  • Si la sintaxis es correcta, el comando se crea
  • Si hay errores, recibirás un mensaje con la línea del error

Mejores Prácticas

Usa Nombres Descriptivos

Nombra tus variables de forma clara: set suerte = roll(1, 100) es mejor que set x = roll(1, 100)

Prueba con Casos Simples Primero

Empieza con scripts simples y ve añadiendo complejidad gradualmente

Cierra Siempre los Bloques When

Cada when debe terminar con end. Usa múltiples bloques when independientes para diferentes condiciones.

Combina Funciones

Puedes combinar múltiples funciones: pick() para opciones, roll() para suerte, count() para estadísticas

¿Listo para crear comandos con script?

Conecta tu cuenta de Twitch para acceder al editor de scripts y crear comandos avanzados

Conectar con Twitch