Red de conocimiento informático - Consumibles informáticos - Una deficiencia de las macros de lenguaje en World of Warcraft, un problema que mucha gente no puede solucionar

Una deficiencia de las macros de lenguaje en World of Warcraft, un problema que mucha gente no puede solucionar

2.0 Conocimientos básicos de macros

2.0.0 ¿Qué son las macros?

En resumen, una macro (marco) es una serie de comandos o funciones preestablecidas por Blizzard para implementar una función limitada.

Lo más poderoso es que puede realizar juicios condicionales.

******** ********** ************** *********** ** **

2.0.1 ¿Son legales las macros? ¿Se prohibirá mi cuenta si uso macros?

Presta atención a la parte roja en la respuesta 2.0.0. Dado que uso una serie de comandos o funciones preestablecidas por Blizzard, ¿sigue siendo ilegal?

******** ********** ************** *********** ** **

2.0.2 ¿Cuál es el mecanismo de ejecución de las macros?

De hecho, todas las declaraciones en la macro se ejecutan como un todo al mismo tiempo, no línea tras línea. se ejecuta tal como lo imaginamos

De hecho, no hay ninguna computadora en el mundo que pueda ejecutar todo el código en su conjunto. Incluso si se ve así, la computadora lo ejecuta en secuencia.

Lo anterior significa que la macro no esperará a que se ejecute la primera línea antes de ejecutar la segunda línea, y lo mismo ocurre entre la segunda y la tercera línea. No hay ninguna pausa en el medio, por lo que parece que se está ejecutando en su conjunto.

******** ********** ************** *********** **

2.0.3 ¿Cómo puedo hacer que mi macro diga automáticamente el nombre del objeto cuando se muestra?

Esta variable %t puede hacer que tu macro diga el nombre del objeto que seleccionaste, por ejemplo

/Saluda,%t

Cuándo Cuando elijas el jugador Fantasy Flying Invincible Piggy, usa esta macro y el resultado es

Dices: Hola, Fantasy Flying Invincible Piggy

****** ** **** ****** **************** *************

2.0.4 Macros ¿Existe un límite? a la cantidad?

Cada personaje sólo puede crear 18 marcos. Y hasta donde yo sé no puede exceder los 18.

******** ********** ************** *********** **

2.0.5 ¿Cómo seleccionar compañeros de equipo, tú mismo o el enemigo en macro?

Cada personaje de la macro tiene un nombre en clave, que se enumera a continuación:

"player" el jugador mismo

"pet" la mascota del jugador

"party1" Compañero de equipo N° 1

"party2" Compañero de equipo N° 2

......

"partypetN" Compañero de equipo N mascota (N puede ser 1, 2, 3 o 4) (recién agregada en 1.5.0, aún no está disponible en el servidor nacional)

"raidN" El enésimo compañero del equipo (N puede ser 1, 2, 3,...,40)

"raidpetN" La mascota del enésimo compañero de equipo (N puede ser 1,2,3,...,40) (recién agregada en 1.5.0, servidor nacional) Ninguno por el momento)

"target" El objetivo seleccionado

"mouseover" El objetivo que el mouse está cruzando o que acaba de cruzar

Lo siguiente Los valores solo se pueden usar para algunas ocasiones especiales:

"npc" o "NPC" El NPC con el que el jugador está interactuando

Por ejemplo, si necesitas cite el valor de salud del compañero de equipo número 2, use UnitHealth("party2 ") Eso es todo

************ ********** **** ********** ****** *******

2.0.6 ¿Cuál es el formato para escribir macros?

Puedes usar el comando proporcionado para completar una macro, como /say, /cast

Todos estos están en inglés, como los dos anteriores, puedes escribir /say, /cast

Algunos pueden abreviarse como /say o escribirse como /s

Cuando desea utilizar una función (generalmente hay un corchete después, como UnitMana()) , necesitas usar /script comienza.

Por ejemplo, para liberar una habilidad, puedes escribir /cast Power Word: Escudo (Nivel 1) también puedes escribir /script CastSpellByName("Power Word: Escudo (Nivel 1)")

********* ********** **************** *********** **

2.1~2.2 Problemas en el uso práctico

2.1.0 ¿Cómo libero hechizos en una macro?

Utiliza /cast este comando. Por ejemplo/Restauración de elenco (Nivel 1)

La forma más fácil de escribir las habilidades correctas en su macro es abrir la ventana de habilidades cuando edita una macro, luego presionar Mayús y hacer clic con el botón izquierdo en la habilidad correspondiente. Esto agregará/transmitirá automáticamente la habilidad que seleccionaste en la ventana de edición de macro

******** ********** ********* * **** *************

2.1.1 ¿Puedo usar muchas habilidades en una macro? Por ejemplo (para pastores) un MB, un Pain y luego un MF

¡No! ¡La razón es que las macros no se pueden retrasar! Pero después de lanzar un hechizo y luego lanzar otro hechizo, debes esperar a que finalice el tiempo de recuperación del arma (1,2 segundos ~ 1,5 segundos) antes de poder lanzar el segundo hechizo.

Pero aún puedes hacer cosas que no requieran espera. Por ejemplo, lanza un hechizo y luego ataca.

O usa elementos (siempre que tengan tiempos de reutilización independientes)

¡Pero aún así no puedes realizar acciones que requieran esperar entre los dos!

Por supuesto que dirás, ¿qué pasa si la primera habilidad que quiero usar es un hechizo instantáneo y no hay un tiempo de recuperación oficial?

¡Déjame decirte que el resultado es que todavía no es posible! Jaja

Apéndice:

Amplía un poco más

(1) Habilidades que activarán el tiempo de recuperación de la empresa:

Liberar un hechizo o habilidad

(2) Una habilidad que no activa el tiempo de reutilización del enemigo:

Habla en la ventana de chat

Entra en modo ataque

p>

Ordena a tu mascota que ataque

Usa un elemento

La macro solo puede hacer una cosa en la primera lista, pero puede hacer muchas cosas en la segunda lista Cosas dentro

Hay una explicación más detallada de este problema en 2.2.4

******** ********** *** ** ********* *************

2.1.2 ¿Cómo configuro una macro o un script para cuando me encuentre con alguna situación? ¿Cuándo lanzar habilidades automáticamente?

¡No puedes! No hay forma de lanzar hechizos o habilidades automáticamente en WoW en este momento. Solo puedes lanzar una habilidad cuando se activa un evento de hardware (por ejemplo, se presiona el botón del mouse o se presiona una tecla del teclado). Además, este evento de hardware debe activar un hechizo o habilidad; de lo contrario, no se puede liberar.

Puedes intentar usar CastSpellByName() para lanzar el hechizo después de un período de tiempo, pero el hechizo no se lanzará.

******** ********** ************** *********** ** **

2.1.3 ¿Puedo esperar en una macro por un corto período de tiempo y luego emitir el resto de la macro? (Y la explicación de /in)

No, es completamente imposible. Ver la explicación en 2.1.1.

Apéndice:

Pero cuando instalas cosmos (una famosa interfaz de usuario extranjera), puedes hacerlo, como

/in 5

/Di hola,

/¡Di cerdito!

Después de 5 segundos dirás "hola". Pero inmediatamente dices "cerdito".

/in no es un comando de retardo macro, simplemente te permite lanzar una habilidad después de un período de tiempo.

Desafortunadamente, no puedes usar /in para lanzar un hechizo, lanzar una habilidad o ejecutar una macro. Esto se debe a las restricciones de eventos de hardware mencionadas en 2.1.2. Por lo tanto, la función de /in es muy limitada. Sólo puedes usarlo para hablar o usar elementos, eso es todo.

La razón por la que no dije este comando al principio es porque el 99% de las veces las personas quieren hacer una pausa en la macro para poder lanzar otro hechizo en la misma macro, o cambiar de equipo. utilizar otra habilidad. ¡Incluso con el cosmos dentro, esto todavía no es factible!

******** ********** ************** *********** **

2.1.4 ¿Cómo uso una venda de primeros auxilios en una macro?

Si quieres usar una venda en ti mismo, no necesitas escribir una macro, solo úsala directamente o arrástrala a tu barra de acciones.

Si quieres hacer algo más, aquí tienes el código que necesitas

/target your name

/script UseContainerItem(Bag#, Item #);

/script TargetLastEnemy();

bag# (0-4):

Es el número de la mochila (Bolsa)

La columna de la mochila es 4, 3, 2, 1, 0 de derecha a izquierda

Artículo # (1-16)

El número de cuadrícula depende del tamaño de su bolso Generalmente de izquierda a derecha, de arriba a abajo (línea por línea), por ejemplo

Bolsa de 6 celdas

____1 2

3 4 5 6<. /p> p>

Bolsa de 16 rejillas

1 2 3 4

5 6 7 8

9......

********* ********** **************** *********** *

2.1.5 ¿Puedo lanzar un hechizo de mejora a mis compañeros de equipo sin perder mi objetivo actual?

Sí,,,,

Solo haz esto:

/Lanzar Palabra de poder: Escudo (Nivel 1)

/objetivo de compañero de equipo nombre

Cuando lanzas un hechizo de mejora sin seleccionar un objetivo amistoso, esta habilidad entrará en modo de selección (nota el cambio del cursor)

El siguiente comando seleccionado (/objetivo) ( ya sea escribiendo código o presionando una tecla) indica a quién se lanza esta habilidad.

¡Pero eso no cambiará tus objetivos!

Usa otro método para lograr:

/nombre del compañero de equipo objetivo

/lanzar Power Word: Escudo (nivel 1)

/script LastTarget()

Cambiará tu objetivo, entrará en modo de ataque automático y hará que los ladrones pierdan sus puntos de habilidad

********* *** **** *** **************** *************

2.1.6 ¿Cómo cambia un ladrón entre dos ¿Armas de mano? ¿Como cambiar de daga/daga a espada/martillo?

Aquí está mi macro (cambiar la daga/daga en la mano por la espada/martillo en la mochila)

Por supuesto, siempre y cuando sea un arma de una mano, se puede cambiar, es solo una posición. El problema es que todo lo que hacemos es tomar un objeto de un lugar e intercambiar lugares con otro objeto desconocido, sin importar su tipo.

Aquí se utilizan dos comandos:

1. PickupInventoryItem(xx) [un arma desde la posición de arma de mano principal y la posición de arma de mano de desgracia]

2 . PickupContainerItem(x, y) [La diferencia con lo anterior es que se saca de la mochila]

Explicación de parámetros:

1.

[x completa 16 para representar la posición del arma de la mano principal y 17 representa la posición del arma de la mano secundaria]

2. PickupContainerItem(x, y)

[x. es el número de la mochila. y representa el número de cuadrícula. Al escribir diferentes valores de x, y, puedes representar diferentes elementos.

]

Para conocer la relación específica entre posición y número, consulte la explicación en 2.1.4

Macro:

/script PickupInventoryItem(16);

/script PickupContainerItem(0, 1);

/script PickupInventoryItem(17);

/script PickupContainerItem(0, 2);

¡Disfruta! (2.2.5 tiene otro ejemplo del uso de estas dos funciones)

******* ********** ********** * **** *************

2.1.7 Cómo hacer que mi mascota ataque al objetivo seleccionado en una macro

Por favor use lo siguiente código:

/script PetAttack();

********* ********** ********** ** **** *************

2.1.8 ¿Puedo crear una macro para usar un arma con la mano izquierda?

¡Sí!

/script UseInventoryItem(GetInventorySlotInfo("SecondaryHandSlot"));

Este código activará tu arma secundaria equipada

***** ** * *********** ************** *************

2.1.9 Cómo seleccionar el compañero de equipo 1 o el compañero de equipo 5 en una macro

/el grupo objetivo 1 seleccionará el compañero de equipo número 1, el grupo 2 seleccionará el compañero de equipo número 2, hasta que 5

el grupo 1 sea el código del compañero de equipo 1 nombre, se puede usar en cualquier otro comando que desee seleccionar compañero de equipo No. 1

********* ********** ***** *** ****** *************

2.2.1 Cómo hacer referencia a varios atributos del objetivo en una macro, como salud y maná, género, nivel , etc.,,,,

Valor de salud objetivo (HP) UnitHealth("unit")

Valor de salud máximo objetivo UnitHealthMax("unit")

UnitMana("unit") El valor de maná del objetivo (mana)

UnitSex("unit") Muestra el sexo del objetivo (Sex)

UnitLevel("unit") Muestra el sexo del objetivo Nivel (LV)

Para conocer el valor de la unidad, consulte 2.0.4

Para obtener más funciones, consulte /World_of_Warcraft_API

**** **** ********** ************** *************

2.2. 2 ¿Cómo puedo ayudar? ¿Mi mascota me está atacando?

Puedes escribir una macro como esta para ayudar a tu mascota

/script AssistUnit("pet");

Esto bloqueará el estado actual de tu mascota. Objetivo bloqueado. Si su mascota no está fijada en nada, esta macro no hará nada.

Si tu mascota muere, recibirás el mensaje "Necesito un objetivo".

No me gusta escuchar a la computadora regañarme con esta frase, así que una ligeramente sucinta. es...

/script if UnitExists("pet") then AssistUnit("pet");

Se corrigió el defecto anterior, cuando Si tu mascota muere mientras usas el macro, no recibirás ese mensaje.

******** ********** ************** *********** ** **

2.2.3 ¿Cómo ayudo a mis compañeros de equipo a atacar o seleccionarme a mí mismo?

/script AssistUnit("party2");

Esto ayudará al compañero número 2 del equipo a atacar. Si no estás en el equipo recibirás un mensaje "Necesito un objetivo"

/script AssistUnit("Little Pig");

Este marco ayudará a un jugador llamado Little Cerdo Si no existe una persona como Xiaozhu,

/script TargetUnit("player");

Esta macro la elegirá usted mismo. Esto es útil cuando quieres lanzarte un hechizo a ti mismo.

******** ********** ************** *********** **

2.2.4 ¿Puedo usar Marco para cambiar de la postura A a la postura B, usar las habilidades de la postura B y luego volver a la postura A?

¡Por supuesto que no!

¡Lo he dicho muchas veces, lo diré otra vez!

"Presiona un botón y usa una habilidad" ¡Esta es una regla inquebrantable!

¡La violación de esta regla es una función de complemento!

Si te pillan infringiendo las reglas, se te BAN ACC (cuenta prohibida).

¡Tu macro no funciona porque no debería hacerlo!

El cliente puede muy bien detener algunas violaciones de las regulaciones.

El /in proporcionado por cosmos no viola las regulaciones porque no puede usarse para retrasar la liberación de una habilidad.

En cuanto a las tres posturas del guerrero, el cambio de postura es instantáneo, pero hay un tiempo de recuperación del arma de 1 segundo.

No puedes usar una tecla para activar dos habilidades.

Hay más explicaciones sobre este tema en 2.1.1

******** ********** ****** * ******* *************

2.2.5 ¿Cómo cambiar el equipo en tu cuerpo?

Escribí un marco que me permite cambiarme de zapatos.

Tengo dos pares de zapatos, uno para acelerar mi caminata y otro para pelear.

El código es así:

/script PickupInventoryItem(8);

/script PickupContainerItem(4,7);

/ script UseContainerItem(4,13);

El primer comando, PickupInventoryItem(N), ubicará un lugar en la barra de equipo de tu personaje donde necesitas cambiar de equipo (implementado según el valor de N Especifica diferente posiciones). El 8 usado en el ejemplo le dirá a la computadora que lo que quiero cambiar es el equipo del pie.

La segunda línea usa PickupContainerItem().

Esto activa el elemento que se cambiará en la mochila (en mi ejemplo, es el equipo en 4 y 13. En este ejemplo, se cambiará con el equipo especificado por PickupInevtoryItem(8) en la primera línea de la macro.

(Para conocer el número de la mochila, consulte 2.1.4)

La última oración usa algo en la posición (4,13) en mi mochila. (Nota de Camus: esta persona dijo que era para montar el caballo)

Se puede usar una macro para cambiar las herraduras y luego montar el caballo. Si se usa una vez cuando no se monta, las herraduras se volverán a cambiar.

Algunas notas:

(1) Debes colocar el objeto que deseas cambiar en una determinada posición de la mochila con mucha precisión y no puedes moverlo; de lo contrario, esta macro lo hará. no ser ejecutado.

(2) Cuando hables con un NPC que vende cosas, te desmontarás automáticamente y lo harás con tus botas de aceleración. En otras palabras, cuando uses esta macro nuevamente, serás montado con tus botas de combate puestas, pero no es tan malo como parece. Puedes usar esta macro nuevamente mientras estás montado y volver a cambiar. el caballo cuando montas el caballo) O también puedes usar esta macro una vez mientras corres, porque no montarás el caballo mientras corres y volverás al estado inicial.

2.1.6 tiene un ejemplo del uso de estas dos funciones.