Ankh Heart @AnkhHeart
@resonantdrifter Eso no es posible. Tendrás que crear manualmente los eventos On Join manualmente.
Sin embargo, mi terquedad persistió y di con una forma que permitiría al usuario crear y cambiar su (y otros) propio mensaje de bienvenida personalizado a voluntad con MUY POCA CONFIGURACIÓN INICIAL. Lo siguiente es cómo creé el (casi) completamente autónomo mensaje de bienvenida personalizado creado por el usuario!
Primero y más importante, la parte más intensiva de esta configuración (especialmente si usted ya tiene un montón de seguidores o recibe un montón de seguidores diariamente) es la configuración de la lista de eventos al unirse. La lista de eventos On Join es donde le dices a Ankhbot lo que quieres que haga cuando un usuario específico entra en el chat. Esto, por desgracia, no puede ser automatizado y fue donde me colgué en mi gran esquema. Realmente quería que Ankhbot autocompilara esta lista a partir de mis seguidores actuales, pero la automatización de este sistema simplemente no es posible, por lo que tendrás que introducir manualmente una entrada para cada seguidor. Por suerte, sólo tendrás que hacerlo una vez por seguidor. Después, cada mensaje se actualizará automáticamente por sí mismo.
En el sistema On Join Event tendrás que crear una entrada para cada uno de tus seguidores vinculándola a un documento .txt que mostrará su comando al entrar en el chat.
Primero, crea una carpeta donde quieras almacenar todos los documentos .txt que creará Ankhbot. Recuerda que, aunque serán pequeños (en cuanto al tamaño de los archivos), se crearán numerosos archivos (suponiendo que tengas muchos seguidores). Una vez hecho esto, vuelve a Ankhbot y crea un comando para cada uno de tus seguidores de la siguiente manera (pista: todo permanece igual excepto el espacio de información):
UserGroup: Mantenga este «User_Specific»
Info: nombre de usuario individual del seguidor
Client Only: «False» (True significa que sólo el usuario podrá verlo)
Enabled: «True» (False, obviamente, lo desactivará para ese usuario)
Vol: Ajústalo al nivel que sea cómodo para ti y tus espectadores
Mensaje: $readline(C:\user\$user.txt)
Veamos más de cerca la ranura «Mensaje»:
$readline(C:\user\$user.txt)
El parámetro $readline() simplemente lee la primera línea de cualquier documento de texto al que se apunte. El destino se pone dentro de los paréntesis. Esta es una parte importante: nombrar el documento de texto $usuario.txt permite a Ankhbot buscar un documento .txt etiquetado con el nombre del usuario (esto se completará más adelante en este documento).
Una vez que introducimos todos los seguidores actuales hemos terminado. Sin embargo, a medida que vayamos consiguiendo más seguidores deberemos crear una nueva entrada para cada uno de ellos. Este es el mayor trabajo que tendremos que hacer en este sistema casi autónomo.
COMANDOS DEL CHAT
Ahora que tenemos el núcleo configurado, vamos a crear los comandos que permitirán a los usuarios establecer y cambiar su mensaje de bienvenida. Sólo para que estemos en la misma página, mi comando para que los seguidores creen su propio mensaje de bienvenida es !buywelcome y la moneda en mi canal es suministros.
!BUYWELCOME
Para que esto funcione debes crear primero un documento .txt con dos parámetros dentro: $removepoints(«target», «min», «max», «succeed», «fail», «forceremove») y $overwritefile(«FileLocation», «Text»). He etiquetado mi documento buywelcome.txt y lo he rellenado así:
$removepoints(«$user», «100», «100», «Los suministros de $valor han sido eliminados de tu inventario y tu mensaje de bienvenida ha sido cambiado a ‘$msg'», «¡No tienes suficientes suministros en tu inventario!», «false») $overwritefile(«C:\Ankhbot\user\$user.txt»,»$user: $msg»)
El primer parámetro – $removepoints() – hace exactamente lo que dice y elimina puntos (o moneda) del usuario que introduce el comando. En este caso elimina 100 suministros (si el usuario tiene suficientes) y devuelve un mensaje tanto si tiene como si no tiene suficientes suministros. Veamos con más detalle:
«$usuario» – conecta el parámetro $removepoints() con el usuario que introduce el comando
«min», «max» – en mi parámetro establece el pago mínimo y máximo en 100 suministros cada uno para que no varíe
«succeed» – «$value supplies blah blah blah ‘$msg'» toma la cantidad que se elimina de la moneda (100) y la muestra en el mensaje en el chat junto con el mensaje de éxito. El parámetro $msg reimprimirá el mensaje que el usuario haya establecido para que lo puedan ver. Incluí esto para que sepan que ha cambiado.
«fail» – «You do no blah blah» es el mensaje si el usuario no tiene 100 suministros (les gusta apostar)
«forceremove» – «false» permite que los usuarios no puedan comprar si no tienen suficientes suministros. Poniendo esto a «True» permitiría a los entrar en moneda negativa.
El segundo parámetro nos permite almacenar el mensaje en un documento .txt etiquetado como el nombre del usuario ($user.txt) usando el parámetro $overwritefile(«FileLocation», «Text»).
Antes de entrar en esto, quiero explicar algo. ¿Recuerdas cuando creamos la lista de eventos On Join? Creamos una carpeta para albergar todos los archivos .txt de los usuarios, pero no creamos ningún archivo de texto real. ¿Por qué? Esto asegura que cuando un usuario que no ha introducido nada como mensaje de bienvenida no recibirá uno cuando se una al chat. Echemos un vistazo más de cerca:
$overwritefile(«FileLocation») – usando $overwritefile en lugar de $savetofile el usuario puede cambiar este mensaje cuando quiera.
«text» – «$user: $msg» estos dos parámetros guardan el nombre de usuario y el mensaje que escribió para imprimirlos en pantalla ambos más tarde.
En el comando real de !buywelcome simplemente pones $readline(FileLocation) y lo apuntas hacia el documento que creaste (en mi caso, el buywelcome.txt). Eso es todo lo que necesitas hacer para que esto funcione.
!BUYOTHERWELCOME
Para crear una experiencia divertida y algo competitiva, quería permitir a mis seguidores poder crear mensajes de bienvenida para otros usuarios. Sabía que esto se parecería mucho al comando «buywelcome», pero presentaría sus propios obstáculos, ya que es un usuario el que crea un mensaje para otro. Así es como lo configuré:
Al igual que el comando anterior, se crea un documento .txt con los parámetros $removepoints(«target», «min», «max», «succeed», «fail», «forceremove») y $overwritefile(«FileLocation», «Text»). A diferencia del comando anterior, tendrás que configurarlo de forma ligeramente diferente para que funcione. Así es como se ve el mío:
$removepoints(«$usuario», «100», «100», «Los suministros de $valor han sido eliminados de tu inventario y el mensaje de bienvenida de $objetivo ha sido cambiado a ‘$msg'», «¡No tienes suficientes suministros en tu inventario!», «false») $overwritefile(«C:\NUsers\NJohninMotion\Documents\NAnkhbot\user$target.txt»,»$msg»)
El primer parámetro – $removepoints() – hace exactamente lo que dice y elimina puntos (o moneda) del usuario que introduce el comando. En este caso elimina 100 suministros (si el usuario tiene suficientes) y devuelve un mensaje tanto si tiene como si no tiene suficientes suministros. La diferencia es que introduce un objetivo para el mensaje. Veamos con más detalle:
«$usuario» – conecta el parámetro $removepoints() con el usuario que introduce el comando
«min», «max» – en mi parámetro establece el pago mínimo y máximo en 100 suministros cada uno para que no varíe
«succeed» – «$value supplies blah blah $target blah ‘$msg'» toma la cantidad que se elimina de la moneda (100) y la muestra en el mensaje del chat junto con el mensaje de éxito. El parámetro $target le dirá al sistema a quién quiere que le llegue el mensaje. El parámetro $msg reimprimirá el mensaje que el usuario haya establecido para que lo puedan ver. Incluí esto para que sepan que ha cambiado.
«fail» – «You do no blah blah» es el mensaje si el usuario no tiene 100 suministros (de nuevo, les gusta apostar)
«forceremove» – «false» permite que los usuarios no puedan comprar si no tienen suficientes suministros. Establecer esto a «True» permitiría que el ir en moneda negativa.
El segundo parámetro nos permite almacenar el mensaje en un documento .txt etiquetado como el nombre del objetivo esta vez ($target.txt) utilizando el parámetro $overwritefile(«FileLocation», «Text»). Echemos un vistazo más de cerca:
$overwritefile(«FileLocation») – al usar $overwritefile en lugar de $savetofile el usuario puede cambiar este mensaje cuando quiera.
«text» – «$target: $msg» estos dos parámetros guardan el nombre de usuario del target y el mensaje que escribieron para imprimirlos en pantalla ambos más tarde.
En el comando real de !buyotherwelcome simplemente pones $readline(FileLocation) y lo apuntas hacia el documento que creaste (en mi caso, el buyotherwelcome.txt). ¡Y eso es todo lo que tienes que hacer para que esto funcione.
!MYWELCOME
Por último, quería una forma de que mis seguidores vieran su mensaje aunque fuera después de haber entrado en el chat aunque sólo fuera por el mero hecho de querer ver que sí funcionaba. Esto es algo muy sencillo de configurar. He aquí cómo:
Crea un comando, en mi caso es !mywelcome, y pon dentro de él el parámetro $readrandline(FileLocation). Dentro simplemente lo apuntas hacia la carpeta que alberga todos los mensajes de bienvenida de los usuarios (\user\ para mí) con $user.txt al final. Por ejemplo, los míos tienen el siguiente aspecto:
$readrandline(C:\NUsuarios\NdeJoininMotion\NDocumentos\NAnkhbot\Nde usuarios$user.txt)
Eso es todo. Ahora cuando un usuario escriba el comando !mywelcome verá su propio mensaje de bienvenida.
LA MÁQUINA AUTOSUFICIENTE
Siguiendo la ruta establecida anteriormente podrás crear tu propio mensaje de bienvenida personalizado (casi) completamente autónomo creado por el usuario. Quizás algún día en el futuro, si Marcin decide seguir actualizando Ankhbot, podremos crear un sistema verdaderamente autónomo. Hasta entonces, para todos los propósitos intensivos, esto tendrá que hacer por ahora.