Craftlandia Macro: Entenda Como Funciona

1

Os Macros são um assunto polêmico nos jogos on-line, pois alguns consideram trapaça e outros afirmam que são apenas uma maneira de automatizar tarefas maçantes e repetitivas. Excetuando-se essa polêmica uma coisa é verdadeira: os macros são bastantes úteis e no caso do servidor Craftlandia são legalizados, desde que não sejam usados de maneira a lesionar outros jogadores.

O macro em si é um código com uma pseudo-linguagem de programação através do qual podemos executar ações. Por exemplo, se você escreve em um macro “DISCONNECT()” e o ativa apertando um botão do teclado (o que no jargão chamamos de Bind, ou seja, relacionar botões a coisas, podendo ser um código de macro ou só uma frase), na hora que o código for executado ele lhe desconectará do jogo.

A Utilidade Do Uso De Macros No Minecraft Online

Você pode estar confuso e se perguntando: então qual a utilidade “legal” disso no Minecraft? Mas antes de responder fica a dica, para usar qualquer macro você vai precisar ativar o mod de macro, para isso da uma lida no nosso guia, ta bem fácil de seguir.

2

Digamos que você quer aumentar o nível da sua habilidade espadas, como já deve saber a habilidade ganha experiência com o uso. Então você cria um macro específico para ficar ativando o golpe de espada constantemente em um local de respawn de monstros, assim a habilidade de um modo robótico vai sendo upada. Porém esse código que descrevi seria muito primitivo, o ideal seria criar um código que além de matar os monstros ainda reparasse as espadas e guardasse os loots em baús! E existe isso, basta procurar com calma que vai achar tais códigos disponíveis para todos e repito, é legalizado no Craftlandia.

Craftlandia Macro: Alguns Exemplos De Sintaxe E Comandos

Esse pseudo-código pode também chamado de sintaxe, e na verdade se trata apenas dos comandos pré-definidos através do qual podemos configurar ações. Vou listar aqui alguns comandos de sintaxe extraído do Fórum do Craftlandia:

CRAFT
CRAFT(<item[:damage]>,[amount],[throw],[verbose])
Descrição: Cria uma lista de itens para serem craftados.

CRAFTANDWAIT
CRAFTANDWAIT(<item[:id]>,[amount],[throw],[verbose])
Descrição: Cria uma lista de itens para serem craftados e aguarda por um tempo pré-definido.

DISCONNECT
DISCONNECT()
Descrição: Desconecta do jogo ou servidor.

GETID
GETID(<x>,<y>,<z>,<#idvar>,[#datavar])
Descrição: Obtém a ID e opcionalmente os valores de dados de um bloco em uma coordenada específica no mundo.

GETIDREL
GETIDREL(<xoffset>,<yoffset>,<zoffset>,<#idvar>,[#datavar])
Descrição: Obtém a ID e opcionalmente os valores de dados de um bloco em uma determinada coordenada relativa ao jogador.

GETITEMINFO
GETITEMINFO(<item[:damage]>,<&namevar>,[#maxstacksize],[&type],[#dropid])
Descrição: Obtém o nome e outras informações de um item, retorna o valor "None" caso o item seja inválido.

GETSLOT
GETSLOT(<item[:damage]>,<#idvar>,[startfromslotid])
Descrição: Obtém a id de um slot que contenha um item compatível, retorna -1 se não for encontrado.

GETSLOTITEM
GETSLOTITEM(<slotid>,<#idvar>,[#stacksizevar],[#datavar])
Descrição: Obtém informações sobre o item em um determinado slot.

INVENTORYDOWN
INVENTORYDOWN([amount])
Descrição: Desce uma específica quantia de slots na hotbar

INVENTORYUP
INVENTORYUP([amount])
Descrição: Sobe uma específica quantia de slots na hotbar

LOOK
LOOK(<yaw>,[pitch],[time])
Descrição: Faz o player olhar para uma direção específica, use ângulos prefixos com + ou - para movimentos relativos.

LOOKS
LOOKS(<yaw>,[pitch],[time])
Descrição: Vira o player suavemente para uma direção específica, use ângulos prefixos com + ou - para movimentos relativos.

PICK
PICK(<item[:damage]>,[item[:damage]],...)
Descrição: Seleciona a id de um item se o mesmo estiver na hotbar, especifique outros itens a serem apanhados de acordo com sua preferência.

PLACESIGN
PLACESIGN([line1],[line2],[line3],[line4],[showgui])
Descrição: Coloca uma placa com o texto designado (se você tiver um)

PLAYSOUND
PLAYSOUND(<sound>)
Descrição: Reproduz um som

RESPAWN
RESPAWN()
Descrição: Ressuscita um player caso ele tenha morrido.

SETSLOTITEM
SETSLOTITEM([item[:damage]],[slot],[amount])
Descrição: Apenas para o modo criativo, seleciona um conteúdo em um slot na hot bar.

SLOT
SLOT(<slot>)
Descrição: Seleciona um slot pré-definido na hot bar.

SLOTCLICK
SLOTCLICK(<slot>,[button],[shift])
Descrição: Simula o clique em um determinado slot na interface atual, é possível utilizar RMB e shiftkey

SPRINT
SPRINT()
Descrição: Faz o player correr se tiver estamina suficiente (comida)

UNSPRINT
UNSPRINT()
Descrição: Faz com que o player pare de correr.

KEY
KEY(<bind>)
Descrição: Ativa uma determinar tecla de atalho 1 vez.

KEYDOWN
KEYDOWN(<bind>)
Descrição: Define o estado de uma tecla de atalho para "pressionada", funciona apenas com atalhos pressionáveis.

KEYUP
KEYUP(<bind>)
Descrição: Define o estado de uma tecla de atalho para "sem pressionamento", funciona apenas com atalhos pressionáveis.

TOGGLEKEY
TOGGLEKEY(<bind>)
Descrição: Alterna o estado de uma tecla de atalho, funciona apenas com atalhos pressionáveis.

PRESS
PRESS(<lwjgl_name>)
Descrição: Realiza a função manual de uma determinada tecla.

TYPE
TYPE(<text>)
Descrição: Realiza a função manual de uma determinada tecla em sequências.

ASSIGN
<var> = <value>
Descrição: Função interna.

BREAK
BREAK
Descrição: Interrompe uma função interna que esteja sendo executada continuamente.

CALCYAWTO
CALCYAWTO(<xpos>,<zpos>,[#yaw],[#distance])
Descrição: Calcula o ângulo preciso de uma determinada coordenada.

DEC
DEC(<#var>,[amount])
Description: Decrements the specified counter by 1 or by the specified amount
Descrição: Desconta uma específica contagem por 1 ou por um outro valor.

DO
DO([count])
Description: Begins a loop, specify a number of loops to limit the loop count
Descrição: Inicia um loop, é possível definir um valor para o limite de loop.

ECHO
ECHO(<text>)
Description: Sends the specified message as a chat packet
Descrição: Envia uma mensagem no chat do jogo.

ELSE
ELSE
Description: ELSE clause
Descrição: (SE NÃO) <condição>

ELSEIF
ELSEIF(<condition>)
Description: ELSEIF clause
Descrição: (SE NÃO FOR) <condição>

ENDIF
ENDIF
Description: ENDIF clause
Descrição: (FIM DO MÉTODO IF) <condição>

EXEC
EXEC(<file.txt>,[taskname],[params],...)
Description: Creates a task by running the specified script file
Descrição: Cria uma tarefa para executar determinado arquivo de script.

FOR
FOR(<#var>,<start>,<end>)
Description: Begins a FOR->NEXT loop using the specified var as a loop counter, #var can be used inside the loop
Descrição: Inicia um FOR->NEXT utilizando uma específica variável como loop em contagem, #var pode ser usada dentro do loop.

FOREACH
FOREACH(<iterator>)
Description: Runs a loop over the specified iterator
Descrição: Executa um loop em um iterator.

IF
IF(<condition>)
Description: IF clause
Descrição: (SE) <condição>

IFBEGINSWITH
IFBEGINSWITH(<haystack>,<needle>)
Description: IFBEGINSWITH clause
Descrição: (SE INICIAR COM) <condição>

IFCONTAINS
IFCONTAINS(<haystack>,<needle>)
Description: IFCONTAINS clause
Descrição: (SE CONTER) <condição>

IFENDSWITH
IFENDSWITH(<haystack>,<needle>)
Description: IFENDSWITH clause
Descrição: (SE TERMINAR COM) <condição>

IFMATCHES
IFMATCHES(<subject>,<pattern>,[&target],[group])
Description: IFMATCHES clause
Descrição: (SE CORRESPONDER) <condição>

IIF
IIF(<condition>,<truetext>,[falsetext])
Description: Inline IF statement, sends truetext as a chat message if condition succeeds, or sends falsetext if not
Descrição: Utiliza a função IF em uma linha, envia um texto (True/Verdadeiro) se a condição obtiver sucesso, ou envia um (False/Falso) caso não obtenha.

INC
INC(<#var>,[amount])
Description: Increments the specified counter by 1 or by the specified amount
Descrição: Incrementa uma determinada contagem, em 1 ou por outro valor determinado.

LOG
LOG(<text>)
Description: Outputs the specified text into the local chat stream
Descrição: Retorna um determinado texto no chat local.

LOGTO
LOGTO(<target>,<text>)
Description: Outputs the specified text into the specified target, target can be a text file name or the name of a textarea
Descrição: Retorna um determinado texto em um local/alvo, o local/alvo pode ser um arquivo de texto ou uma área de texto.

LOOP
LOOP
Description: Ends a loop that was started with DO
Descrição: Finaliza um loop que foi iniciado com DO.

MATCH
MATCH(<subject>,<pattern>,[&target],[group],[default])
Description: Runs a regular expression match on the subject and puts the result in &target
Descrição: Inicia a expressão regular de comparação em um assunto e coloca o resultado em &alvo/local.

NEXT
NEXT
Description: Completes a FOR->NEXT loop
Descrição: Completa um loop do tipo FOR->NEXT.

PROMPT
PROMPT(<&target>,<paramstring>,[prompt],[override],[default])
Descrição: Displays a prompt (or prompts) by parsing the params in paramstring

RAMDOM
RANDOM(<#target>,[max],[min])
Descrição: Assigns a random number between min and max to target

REPLACE
REPLACE(<&subject>,<search>,[replace])
Descrição: Replace all occurrences of search with replace in &subject

SET
SET(<target>,[value])
Descrição: Sets the value of target to value (or TRUE if value is omitted)

SETLABEL
SETLABEL(<labelname>,<text>,[binding])
Descrição: Sets the text (and optionally binding) of the specified label

SQRT
SQRT(<value>,[#outvar])
Descrição: Calculate the square root of value and store it in #outvar

STOP
STOP([id])
Descrição: Stops the current macro, or macros matching the specified ID

STRIP
STRIP(<&target>,<text>)
Descrição: Strips all formatting codes from the specified text and assigns the result to &target

TOGGLE
TOGGLE([flag])
Descrição: Toggles the specified boolean flag's value

UNSET
UNSET(<flag>)
Descrição: Un-sets the specified variable

UNTIL
UNTIL(<condition>)
Descrição: Completes a loop started with DO but exits the loop if condition is met

WAIT
WAIT(<time>)
Descrição: Pauses the script for the time specified, suffix "ms" for a wait in milliseconds or "t" to wait in ticks

WHILE
WHILE(<condition>)
Descrição: Completes a loop started with DO but exits the loop if condition is not met

ARRAYSIZE
ARRAYSIZE(<array>,<outvar>)
Descrição: Stores the size of the specified array in outvar

INDEXOF
INDEXOF(<array>,<outvar>,<searchfor>)
Descrição:Gets the first index of searchfor in array and stores it in outvar, returns -1 on failure

POP
POP(<array>,<outvar>)
Descrição: Removes the last entry from the tail of array and stores it in outvar

PUSH
PUSH(<array>,<value>)
Descrição: Appends value to the end of array

PUT
PUT(<array>,<value>)
Descrição: Inserts value at the first empty point in array

CONFIG
CONFIG(<configname>)
Descrição: Switch to the specified configuration

IMPORT
IMPORT(<configname>)
Descrição: Overlay the specified configuration

UNIMPORT
UNIMPORT()
Descrição: Remove the specified configuration overlay if active

BIND
BIND(<bind>,<keycode>)
Descrição: Set the specified key binding to the specified key code

CHATHEIGHT
CHATHEIGHT(<value>,[time])
Descrição: Set height of the Minecraft chat whilst ingame 20-180

CHATHEIGHTFOCUSED
CHATHEIGHTFOCUSED(<value>,[time])
Descrição: Set height of the Minecraft chat whilst in the chat GUI 20-180

CHATOPACITY
CHATOPACITY(<value>,[time])
Descrição: Set opacity of the Minecraft chat 0-100

CHATSCALE
CHATSCALE(<value>,[time])
Descrição: Set scale of the Minecraft chat 0-100

CHATVISIBLE
CHATVISIBLE(<value>)
Descrição: Set visibility of minecraft chat

CHATWIDTH
CHATWIDTH(<value>,[time])
Descrição: Set width of the Minecraft chat 40-320

FOG
FOG([value])
Descrição: Toggles render distance, or optionally specify render distance

FOV
FOV(<value>,[time])
Descrição: Sets the FOV angle in degrees, specifying time causes the value to change smoothly

GAMMA
GAMMA(<value>,[time])
Descrição: Sets the brightness value (percent), specifying time causes the value to change smoothly

MUSIC
MUSIC(<value>,[time])
Descrição: Sets the music volume, specifying time causes the value to change smoothly

RESOURCEPACK
RESOURCEPACK([pattern])
Descrição: Sets the resource pack to the pack matching pattern

SENSITIVITY
SENSITIVITY(<value>,[time])
Descrição: Sets the mouse sensitivity (between 0 and 200), specifying time causes the value to change smoothly

SETRES
SETRES(<width>,<height>)
Descrição: Sets the size of the minecraft game window

TEXTUREPACK
TEXTUREPACK([pattern])
Descrição: Sets the resource pack to the pack matching pattern

VOLUME
VOLUME(<value>,[time])
Descrição: Sets the sound volume, specifying time causes the value to change smoothly

ACHIEVEMENTGET
ACHIEVEMENTGET(<text>,[itemid[:damage]])
Descrição: Displays the "achievment get" popup with a custom message

BINDGUI
BINDGUI(<slot>,<screen>)
Descrição: Binds the specified custom screen to the slot specified

CLEARCHAT
CLEARCHAT()
Descrição: Clears the current chat stream

GUI
GUI([name])
Descrição: Show (or hide) a gui screen

SHOWGUI
SHOWGUI(<screen>,[esc_screen])
Descrição: Show a custom gui screen

STORE
STORE(<type>,[name])
Descrição: Store a value into a list using the current environment

STOREOVER
STOREOVER(<type>,[name])
Descrição: Store a value into a list using the current environment and overwrite it if exists

TIME
TIME(<&target>,[format])
Descrição: Stores the current time and date into &target, optionally using format specified

É importante ter alguma noção de programação para se dar bem com macros, mas nada te impede de garimpar alguns scripts prontos na internet. E se precisar de mais dicas sobre a nosso amado jogo de construção não deixe de conferir os inúmeros guias e tutoriais que temos na seção de Minecraft e também na de Craftlandia.

! Seja o primeiro a comentar!

Escreva O Seu Comentário!

Ficou com alguma dúvida?
Tem uma crítica construitiva ou uma sugestão maneira?
Escreva ai embaixo, mas não maltrate o português, por favor!