[{"data":1,"prerenderedAt":1144},["ShallowReactive",2],{"docs-navigation":3,"discord-invite":321,"\u002Fdocs\u002Ffeatures\u002Fmacro-variables\u002F":375,"\u002Fdocs\u002Ffeatures\u002Fmacro-variables\u002F-surround":1139},[4],{"title":5,"path":6,"stem":7,"children":8},"Docs","\u002Fdocs","docs",[9,13,45,170,285],{"title":10,"path":6,"stem":11,"icon":12},"Documentation","docs\u002Findex","i-lucide-house",{"title":14,"icon":15,"path":16,"stem":17,"children":18,"page":44},"Getting Started","i-lucide-rocket","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",[19,24,29,34,39],{"title":20,"path":21,"stem":22,"icon":23},"Client access","\u002Fdocs\u002Fgetting-started\u002Fclient-access","docs\u002F1.getting-started\u002F1.client-access","i-lucide-check",{"title":25,"path":26,"stem":27,"icon":28},"Add a server","\u002Fdocs\u002Fgetting-started\u002Fadd-a-server","docs\u002F1.getting-started\u002F2.add-a-server","i-lucide-globe",{"title":30,"path":31,"stem":32,"icon":33},"Add your accounts","\u002Fdocs\u002Fgetting-started\u002Fadd-your-accounts","docs\u002F1.getting-started\u002F3.add-your-accounts","i-lucide-user-plus",{"title":35,"path":36,"stem":37,"icon":38},"Connect to a server","\u002Fdocs\u002Fgetting-started\u002Fconnect-to-a-server","docs\u002F1.getting-started\u002F4.connect-to-a-server","i-lucide-plug",{"title":40,"path":41,"stem":42,"icon":43},"Fix connection problems","\u002Fdocs\u002Fgetting-started\u002Ffix-connection-problems","docs\u002F1.getting-started\u002F5.fix-connection-problems","i-lucide-wrench",false,{"title":46,"icon":47,"path":48,"stem":49,"children":50,"page":44},"Features","i-lucide-book-open","\u002Fdocs\u002Ffeatures","docs\u002F2.features",[51,56,61,66,71,76,81,86,91,96,101,106,111,116,121,126,131,136,141,146,151,156,161,166],{"title":52,"path":53,"stem":54,"icon":55},"Anti-AFK","\u002Fdocs\u002Ffeatures\u002Fanti-afk","docs\u002F2.features\u002F01.anti-afk","i-lucide-activity",{"title":57,"path":58,"stem":59,"icon":60},"Chat and spam","\u002Fdocs\u002Ffeatures\u002Fchat-and-spam","docs\u002F2.features\u002F02.chat-and-spam","i-lucide-message-square",{"title":62,"path":63,"stem":64,"icon":65},"Movement","\u002Fdocs\u002Ffeatures\u002Fmovement","docs\u002F2.features\u002F03.movement","i-lucide-move",{"title":67,"path":68,"stem":69,"icon":70},"Pathfinding and waypoints","\u002Fdocs\u002Ffeatures\u002Fpathfinding","docs\u002F2.features\u002F04.pathfinding","i-lucide-footprints",{"title":72,"path":73,"stem":74,"icon":75},"Auto eat","\u002Fdocs\u002Ffeatures\u002Fauto-eat","docs\u002F2.features\u002F05.auto-eat","i-lucide-utensils",{"title":77,"path":78,"stem":79,"icon":80},"Inventory","\u002Fdocs\u002Ffeatures\u002Finventory","docs\u002F2.features\u002F06.inventory","i-lucide-box",{"title":82,"path":83,"stem":84,"icon":85},"POV","\u002Fdocs\u002Ffeatures\u002Fpov","docs\u002F2.features\u002F07.pov","i-lucide-eye",{"title":87,"path":88,"stem":89,"icon":90},"Save builds as schematics","\u002Fdocs\u002Ffeatures\u002Fschematics","docs\u002F2.features\u002F08.schematics","i-lucide-blocks",{"title":92,"path":93,"stem":94,"icon":95},"Proxies","\u002Fdocs\u002Ffeatures\u002Fproxies","docs\u002F2.features\u002F09.proxies","i-lucide-wifi",{"title":97,"path":98,"stem":99,"icon":100},"Macros","\u002Fdocs\u002Ffeatures\u002Fmacros","docs\u002F2.features\u002F10.macros","i-lucide-zap",{"title":102,"path":103,"stem":104,"icon":105},"Running macros","\u002Fdocs\u002Ffeatures\u002Frunning-macros","docs\u002F2.features\u002F11.running-macros","i-lucide-play",{"title":107,"path":108,"stem":109,"icon":110},"Macro variables","\u002Fdocs\u002Ffeatures\u002Fmacro-variables","docs\u002F2.features\u002F12.macro-variables","i-lucide-variable",{"title":112,"path":113,"stem":114,"icon":115},"Macro library and sharing","\u002Fdocs\u002Ffeatures\u002Fmacro-library","docs\u002F2.features\u002F13.macro-library","i-lucide-library",{"title":117,"path":118,"stem":119,"icon":120},"Discord webhooks","\u002Fdocs\u002Ffeatures\u002Fdiscord-webhooks","docs\u002F2.features\u002F14.discord-webhooks","i-lucide-webhook",{"title":122,"path":123,"stem":124,"icon":125},"Push notifications","\u002Fdocs\u002Ffeatures\u002Fpush-notifications","docs\u002F2.features\u002F15.push-notifications","i-lucide-bell-ring",{"title":127,"path":128,"stem":129,"icon":130},"Server profile settings","\u002Fdocs\u002Ffeatures\u002Fserver-settings","docs\u002F2.features\u002F16.server-settings","i-lucide-settings",{"title":132,"path":133,"stem":134,"icon":135},"Play from your Minecraft client","\u002Fdocs\u002Ffeatures\u002Fplay-from-minecraft","docs\u002F2.features\u002F17.play-from-minecraft","i-lucide-gamepad-2",{"title":137,"path":138,"stem":139,"icon":140},"Waypoints","\u002Fdocs\u002Ffeatures\u002Fwaypoints","docs\u002F2.features\u002F18.waypoints","i-lucide-map-pin",{"title":142,"path":143,"stem":144,"icon":145},"Villager trading","\u002Fdocs\u002Ffeatures\u002Fvillager-trading","docs\u002F2.features\u002F19.villager-trading","i-lucide-arrow-right-left",{"title":147,"path":148,"stem":149,"icon":150},"Map, tracers and zoom","\u002Fdocs\u002Ffeatures\u002Fmap-tracers-and-zoom","docs\u002F2.features\u002F20.map-tracers-and-zoom","i-lucide-map",{"title":152,"path":153,"stem":154,"icon":155},"Skins and capes","\u002Fdocs\u002Ffeatures\u002Fskins-and-capes","docs\u002F2.features\u002F21.skins-and-capes","i-lucide-shirt",{"title":157,"path":158,"stem":159,"icon":160},"Streamer mode","\u002Fdocs\u002Ffeatures\u002Fstreamer-mode","docs\u002F2.features\u002F22.streamer-mode","i-lucide-video",{"title":162,"path":163,"stem":164,"icon":165},"Ready-made server setups","\u002Fdocs\u002Ffeatures\u002Fready-made-setups","docs\u002F2.features\u002F23.ready-made-setups","i-lucide-wand-sparkles",{"title":167,"path":168,"stem":169,"icon":150},"Minimap","\u002Fdocs\u002Ffeatures\u002Fminimap","docs\u002F2.features\u002F24.minimap",{"title":171,"icon":172,"path":173,"stem":174,"children":175,"page":44},"FAQ","i-lucide-help-circle","\u002Fdocs\u002Ffaq","docs\u002F3.faq",[176,181,186,191,196,201,206,211,216,221,226,230,235,240,245,250,255,260,265,270,275,280],{"title":177,"path":178,"stem":179,"icon":180},"VPN blocks","\u002Fdocs\u002Ffaq\u002Fvpn-blocks","docs\u002F3.faq\u002F01.vpn-blocks","i-lucide-shield-alert",{"title":182,"path":183,"stem":184,"icon":185},"What are bot physics?","\u002Fdocs\u002Ffaq\u002Fwhat-are-bot-physics","docs\u002F3.faq\u002F02.what-are-bot-physics","i-lucide-atom",{"title":187,"path":188,"stem":189,"icon":190},"Can I AFK with my computer turned off?","\u002Fdocs\u002Ffaq\u002Fafk-with-computer-off","docs\u002F3.faq\u002F03.afk-with-computer-off","i-lucide-power-off",{"title":192,"path":193,"stem":194,"icon":195},"How do I AFK in singleplayer?","\u002Fdocs\u002Ffaq\u002Fafk-in-singleplayer","docs\u002F3.faq\u002F04.afk-in-singleplayer","i-lucide-user",{"title":197,"path":198,"stem":199,"icon":200},"How do I get shards on DonutSMP?","\u002Fdocs\u002Ffaq\u002Fshards-on-donutsmp","docs\u002F3.faq\u002F05.shards-on-donutsmp","i-lucide-gem",{"title":202,"path":203,"stem":204,"icon":205},"What are the best settings?","\u002Fdocs\u002Ffaq\u002Fbest-settings","docs\u002F3.faq\u002F06.best-settings","i-lucide-sliders",{"title":207,"path":208,"stem":209,"icon":210},"How do I manage my plan?","\u002Fdocs\u002Ffaq\u002Fmanage-my-plan","docs\u002F3.faq\u002F07.manage-my-plan","i-lucide-credit-card",{"title":212,"path":213,"stem":214,"icon":215},"Is AFK Console Client safe?","\u002Fdocs\u002Ffaq\u002Fis-afk-console-client-safe","docs\u002F3.faq\u002F08.is-afk-console-client-safe","i-lucide-shield-check",{"title":217,"path":218,"stem":219,"icon":220},"Does MinecraftAFK support Bedrock?","\u002Fdocs\u002Ffaq\u002Fbedrock-support","docs\u002F3.faq\u002F09.bedrock-support","i-lucide-square-stack",{"title":222,"path":223,"stem":224,"icon":225},"Link your Discord account","\u002Fdocs\u002Ffaq\u002Flink-discord","docs\u002F3.faq\u002F10.link-discord","i-lucide-link",{"title":227,"path":228,"stem":229,"icon":215},"Minehut captcha bypass","\u002Fdocs\u002Ffaq\u002Fminehut-captcha-bypass","docs\u002F3.faq\u002F11.minehut-captcha-bypass",{"title":231,"path":232,"stem":233,"icon":234},"How do I get stars on HugoSMP?","\u002Fdocs\u002Ffaq\u002Fstars-on-hugosmp","docs\u002F3.faq\u002F12.stars-on-hugosmp","i-lucide-star",{"title":236,"path":237,"stem":238,"icon":239},"Can I get banned for only AFKing?","\u002Fdocs\u002Ffaq\u002Fafk-only-bans","docs\u002F3.faq\u002F13.afk-only-bans","i-lucide-gavel",{"title":241,"path":242,"stem":243,"icon":244},"Paying with SEPA Direct Debit","\u002Fdocs\u002Ffaq\u002Fsepa-direct-debit","docs\u002F3.faq\u002F14.sepa-direct-debit","i-lucide-landmark",{"title":246,"path":247,"stem":248,"icon":249},"Which Minecraft versions are supported?","\u002Fdocs\u002Ffaq\u002Fsupported-versions","docs\u002F3.faq\u002F15.supported-versions","i-lucide-history",{"title":251,"path":252,"stem":253,"icon":254},"Local client or web client?","\u002Fdocs\u002Ffaq\u002Flocal-vs-web-client","docs\u002F3.faq\u002F16.local-vs-web-client","i-lucide-monitor",{"title":256,"path":257,"stem":258,"icon":259},"What does each plan include?","\u002Fdocs\u002Ffaq\u002Fplans-and-limits","docs\u002F3.faq\u002F17.plans-and-limits","i-lucide-layers",{"title":261,"path":262,"stem":263,"icon":264},"How do payments and renewals work?","\u002Fdocs\u002Ffaq\u002Fpayments-and-renewals","docs\u002F3.faq\u002F18.payments-and-renewals","i-lucide-receipt",{"title":266,"path":267,"stem":268,"icon":269},"How do gift codes work?","\u002Fdocs\u002Ffaq\u002Fgifts","docs\u002F3.faq\u002F19.gifts","i-lucide-gift",{"title":271,"path":272,"stem":273,"icon":274},"How does the referral program work?","\u002Fdocs\u002Ffaq\u002Freferral-program","docs\u002F3.faq\u002F20.referral-program","i-lucide-handshake",{"title":276,"path":277,"stem":278,"icon":279},"How do I change my account settings?","\u002Fdocs\u002Ffaq\u002Faccount-settings","docs\u002F3.faq\u002F21.account-settings","i-lucide-user-cog",{"title":281,"path":282,"stem":283,"icon":284},"How do I get support?","\u002Fdocs\u002Ffaq\u002Fget-support","docs\u002F3.faq\u002F22.get-support","i-lucide-headset",{"title":286,"icon":287,"path":288,"stem":289,"children":290,"page":44},"Use cases","i-lucide-lightbulb","\u002Fdocs\u002Fuse-cases","docs\u002F4.use-cases",[291,296,301,306,311,316],{"title":292,"path":293,"stem":294,"icon":295},"Mob grinding","\u002Fdocs\u002Fuse-cases\u002Fmob-grinding","docs\u002F4.use-cases\u002F1.mob-grinding","i-lucide-sword",{"title":297,"path":298,"stem":299,"icon":300},"Auto sell","\u002Fdocs\u002Fuse-cases\u002Fauto-sell","docs\u002F4.use-cases\u002F2.auto-sell","i-lucide-coins",{"title":302,"path":303,"stem":304,"icon":305},"Spawner protection","\u002Fdocs\u002Fuse-cases\u002Fspawner-protection","docs\u002F4.use-cases\u002F3.spawner-protection","i-lucide-shield-x",{"title":307,"path":308,"stem":309,"icon":310},"PvP","\u002Fdocs\u002Fuse-cases\u002Fpvp","docs\u002F4.use-cases\u002F4.pvp","i-lucide-swords",{"title":312,"path":313,"stem":314,"icon":315},"Mining","\u002Fdocs\u002Fuse-cases\u002Fmining","docs\u002F4.use-cases\u002F5.mining","i-lucide-pickaxe",{"title":317,"path":318,"stem":319,"icon":320},"AFK fishing","\u002Fdocs\u002Fuse-cases\u002Fafk-fishing","docs\u002F4.use-cases\u002F6.afk-fishing","i-lucide-fish",{"guild":322,"approximate_member_count":373,"approximate_presence_count":374},{"id":323,"name":324,"splash":325,"banner":326,"description":327,"icon":328,"features":329,"verification_level":368,"vanity_url_code":369,"nsfw_level":370,"nsfw":44,"premium_subscription_count":371,"premium_tier":372},"1001858472234725396","AFK Console Client","50f7271c361cc129a2dcd341a56d0d80","a9802d55c61087c76f100d75fdbf7ad2","AFK 24\u002F7 from any device including your phone!","1d7903bbcf179a16da420719114adfa8",[330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367],"CONVERSATIONS_EXTRACTION_PROCESSING","DISCOVERABLE","GUILD_TAGS","PREVIEW_ENABLED","AUDIO_BITRATE_256_KBPS","COMMUNITY","ANIMATED_BANNER","VIDEO_QUALITY_720_60FPS","TIERLESS_BOOSTING_SYSTEM_MESSAGE","AUDIO_BITRATE_384_KBPS","TIERLESS_BOOSTING","REPORT_TO_MOD_SURVEY","AGE_VERIFICATION_LARGE_GUILD","INVITE_SPLASH","ROLE_ICONS","AUDIO_BITRATE_128_KBPS","BANNER","ANIMATED_ICON","AUTO_MODERATION","MAX_FILE_SIZE_100_MB","STAGE_CHANNEL_VIEWERS_50","CREATOR_ACCEPTED_NEW_TERMS","CONSIDERED_EXTERNALLY_DISCOVERABLE","CHANNEL_ICON_EMOJIS_GENERATED","ENABLED_DISCOVERABLE_BEFORE","VIDEO_BITRATE_ENHANCED","MAX_FILE_SIZE_50_MB","BYPASS_SLOWMODE_PERMISSION_MIGRATION_COMPLETE","GUILD_WEB_PAGE_VANITY_URL","NEWS","PIN_PERMISSION_MIGRATION_COMPLETE","SOUNDBOARD","GUILD_ONBOARDING_EVER_ENABLED","VIDEO_QUALITY_1080_60FPS","ENHANCED_ROLE_COLORS","STAGE_CHANNEL_VIEWERS_300","STAGE_CHANNEL_VIEWERS_150","VANITY_URL",2,"afkcc",0,20,3,30277,5241,{"id":376,"title":107,"body":377,"description":1130,"extension":1131,"head":1132,"links":1132,"meta":1133,"navigation":1134,"path":108,"schemaOrg":1132,"seo":1135,"sitemap":1137,"stem":109,"__hash__":1138},"docs\u002Fdocs\u002F2.features\u002F12.macro-variables.md",{"type":378,"value":379,"toc":1116},"minimark",[380,409,422,426,429,445,448,453,456,510,521,537,541,552,555,565,568,572,581,585,591,595,602,620,624,631,644,666,672,682,742,746,752,856,865,869,894,947,954,960,963,969,1010,1017,1023,1031,1034,1054,1057,1060,1066,1072,1079,1082,1109],[381,382,383,384,389,390,394,395,399,400,403,404,408],"p",{},"A variable is a value a ",[385,386,388],"a",{"href":387},"\u002Fdocs\u002Ffeatures\u002Fmacros\u002F","macro"," remembers while it runs: the cheapest listing on an auction page, the number in a ",[391,392,393],"code",{},"\u002Fbalance"," reply, how many times the bot has died. A ",[396,397,398],"strong",{},"Set variable"," step stores one, ",[391,401,402],{},"{name}"," writes it into a chat message or a webhook, and an If or a loop compares it. A ",[385,405,407],{"href":406},"\u002Fdocs\u002Ffeatures\u002Fmacros\u002F#for-each","For each"," loop fills one too, with the player, block, entity, item or value it is on.",[381,410,411,412,416,417,421],{},"Variables need ",[385,413,415],{"href":414},"\u002Fweb\u002F","Tier 3",", like every Logic step. Each account running a macro has its own, and they start empty every time the macro runs, unless a step ",[385,418,420],{"href":419},"#keeping-a-value-between-runs","keeps them"," for the next run.",[423,424,398],"h2",{"id":425},"set-variable",[381,427,428],{},"Set variable is in the step picker's Logic group. Every Set variable step has two fields:",[430,431,432,439],"ul",{},[433,434,435,438],"li",{},[396,436,437],{},"Call it"," is the variable's name: letters, numbers and underscores only, starting with a letter, up to 32 characters. Capitals turn into lower case as you type. A name that breaks the rule turns the card grey, and the step will not run.",[433,440,441,444],{},[396,442,443],{},"Set it to"," is where the value comes from, one of the five sources below.",[381,446,447],{},"Setting a name that already holds a value replaces it, so a later step can count up a variable an earlier one started.",[449,450,452],"h3",{"id":451},"something-on-the-open-screen","Something on the open screen",[381,454,455],{},"Reads the items in an open container and in the bot's own inventory, and keeps one of them: the cheapest listing on an auction page, the shop offer that pays the most.",[430,457,458,476,497],{},[433,459,460,463,464,467,468,471,472,475],{},[396,461,462],{},"Look for"," sets how an item is matched: ",[396,465,466],{},"A specific item"," by its id, ",[396,469,470],{},"An item by name"," or ",[396,473,474],{},"An item by lore",", with the id or the text in the box beneath.",[433,477,478,481,482,471,485,488,489,492,493,496],{},[396,479,480],{},"Take the"," sets which match wins: ",[396,483,484],{},"Lowest number",[396,486,487],{},"Highest number",", read from the tooltip line named under ",[396,490,491],{},"Rank by the line containing",", or ",[396,494,495],{},"The first one found",", which needs no line.",[433,498,499,502,503,471,506,509],{},[396,500,501],{},"Only items where"," narrows the matches first, with up to three rows: a tooltip line containing some text, ",[396,504,505],{},"is at least",[396,507,508],{},"is at most",", and a number. \"Only items where Self Destruct is at least 6h\" keeps the listings with six hours or more left on them.",[381,511,512,513,516,517,520],{},"Text matches part of a line, capitals are ignored and colour codes are stripped, so ",[391,514,515],{},"$"," finds ",[391,518,519],{},"$ 24M",". Shorthand like 24M and 1.5k, and durations like 7h 21m, are read as the numbers they stand for. An item whose tooltip has no line you ask about is not a match at all. Containers are searched before the bot's own inventory.",[381,522,523,524,528,529,532,533,536],{},"The variable remembers where the item was as well as its number. A ",[385,525,527],{"href":526},"\u002Fdocs\u002Ffeatures\u002Fmacros\u002F#use-gui","Use GUI"," step set to ",[396,530,531],{},"An item I found earlier",", with the variable's name under ",[396,534,535],{},"The variable that found it",", clicks that exact item. It checks the item is still in its slot first, and skips the step if it is not, so a menu that has changed pages costs a missed click rather than the wrong purchase.",[449,538,540],{"id":539},"the-chat-message-that-started-this-macro","The chat message that started this macro",[381,542,543,544,547,548,551],{},"Keeps a chat line. ",[396,545,546],{},"The number in it",", the default, stores the first number in the line, so \"player paid you 5 gems\" is 5 and \"$ 24M\" is 24000000; a line with no number in it clears the variable instead. ",[396,549,550],{},"The whole message"," stores the line as text, with its formatting stripped.",[381,553,554],{},"On a Chat message macro, the line is the one that started it, or the most recent one a Wait for step has caught since. On any other event it is the most recent line caught by a Wait for step aimed at a chat message, which is how a macro asks a question and reads the answer:",[556,557,562],"pre",{"className":558,"code":560,"language":561},[559],"language-text","Timer, every hour\n1. Chat              \u002Fbalance\n2. Wait for          a chat message containing \"Balance\"\n3. Set variable      balance = the number in the chat message\n","text",[391,563,560],{"__ignoreMap":564},"",[381,566,567],{},"A macro with neither has no line to read, so the step clears the variable every time it runs, and its panel says so.",[449,569,571],{"id":570},"a-value-i-type","A value I type",[381,573,574,577,578,580],{},[396,575,576],{},"Value"," is stored as typed. Anything that reads as a number is stored as one, so 20M, 1.5k and 6h can all be compared later, and anything else is kept as text. Other variables can go in it as ",[391,579,402],{},".",[449,582,584],{"id":583},"maths-on-other-variables","Maths on other variables",[381,586,587,588,590],{},"Two sides and an operator: add, subtract, multiply or divide. Each side is a number you type, or another variable as ",[391,589,402],{}," on its own in the box. It is one operation per step, so (a + b) \u002F c is two steps: add the two into one variable, then divide it in the next.",[449,592,594],{"id":593},"every-accounts-shared-value","Every account's shared value",[381,596,597,598,580],{},"Combines what this macro's accounts have shared, into a total, an average, the lowest, the highest or a count. See ",[385,599,601],{"href":600},"#totals-across-your-accounts","Totals across your accounts",[381,603,604,605,608,609,612,613,616,617,619],{},"Under the source sit two boxes: ",[396,606,607],{},"Keep between runs",", on every source (",[385,610,611],{"href":419},"Keeping a value between runs","), and ",[396,614,615],{},"Share with my other accounts",", on every source but Every account's shared value (",[385,618,601],{"href":600},").",[423,621,623],{"id":622},"writing-a-variable-into-a-message","Writing a variable into a message",[381,625,626,627,630],{},"Type the name in braces, ",[391,628,629],{},"{best}",", and the bot puts the value in when the step runs. Braces work anywhere text goes out or is typed in as a value:",[430,632,633,636,639],{},[433,634,635],{},"a Chat step's message,",[433,637,638],{},"a Discord webhook or Notify my devices message,",[433,640,641,643],{},[396,642,576],{}," on a Set variable step, and each line of a For each list.",[381,645,646,647,649,650,652,653,655,656,658,659,662,663,580],{},"The number boxes take a variable only on its own, as ",[391,648,402],{}," with nothing around it: both sides of a Maths step, a check's ",[396,651,576],{},", and the number on an ",[396,654,501],{}," row. The boxes that can only ever hold a variable take its name bare, without braces: ",[396,657,535],{}," on Use GUI, ",[396,660,661],{},"The variable to look at"," on Look at variable, and a check's ",[396,664,665],{},"Variable",[381,667,668,669,671],{},"The builder checks every name you use. A ",[391,670,402],{}," that nothing in the macro sets would only ever find nothing, so the header says \"A step reads {name} that nothing in this macro sets\", and the macro will not save until you fix the spelling, add the step that sets it, or drag the step off the flow. It checks that something in the macro sets the name, not that it is set first: a step that runs before any Set variable has finds the variable empty, unless it was kept from the last run.",[381,673,674,675,678,679,580],{},"That check reads every lower-case word in braces as a variable, including one you meant as plain text. To send a brace as it is, double the opening one: ",[391,676,677],{},"{{hello}"," goes out as ",[391,680,681],{},"{hello}",[381,683,684,685,689,690,693,694,693,697,693,700,693,703,693,706,693,709,693,712,693,715,693,718,693,721,693,724,693,727,730,731,734,735,738,739,741],{},"In a Discord webhook or a Notify my devices message, the event's own ",[385,686,688],{"href":687},"\u002Fdocs\u002Ffeatures\u002Fdiscord-webhooks\u002F#placeholders","placeholders"," come first: ",[391,691,692],{},"{account}",", ",[391,695,696],{},"{event}",[391,698,699],{},"{server}",[391,701,702],{},"{from}",[391,704,705],{},"{to}",[391,707,708],{},"{coords}",[391,710,711],{},"{dimension}",[391,713,714],{},"{health}",[391,716,717],{},"{message}",[391,719,720],{},"{entity}",[391,722,723],{},"{item}",[391,725,726],{},"{reason}",[391,728,729],{},"{block}"," and ",[391,732,733],{},"{sound}"," always mean the event's value there, even when a variable of the same name is set. Give your variables other names, ",[391,736,737],{},"{price}"," rather than ",[391,740,723],{},". A Chat step has no placeholders, so there every name in braces is a variable.",[423,743,745],{"id":744},"values-from-a-for-each","Values from a For each",[381,747,748,749,751],{},"A ",[385,750,407],{"href":406}," loop sets its variable afresh on every pass, and what the variable holds depends on what the loop goes through:",[753,754,755,774],"table",{},[756,757,758],"thead",{},[759,760,761,765,768,771],"tr",{},[762,763,764],"th",{},"Goes through",[762,766,767],{},"Called, to begin with",[762,769,770],{},"In a message",[762,772,773],{},"Also used by",[775,776,777,794,810,825,841],"tbody",{},[759,778,779,783,788,791],{},[780,781,782],"td",{},"Player online",[780,784,785],{},[391,786,787],{},"{player}",[780,789,790],{},"The player's name",[780,792,793],{},"A check",[759,795,796,799,804,807],{},[780,797,798],{},"Block nearby",[780,800,801],{},[391,802,803],{},"{spot}",[780,805,806],{},"The block's coordinates",[780,808,809],{},"Look at variable",[759,811,812,815,820,823],{},[780,813,814],{},"Entity nearby",[780,816,817],{},[391,818,819],{},"{target}",[780,821,822],{},"The player's name, or the mob's type",[780,824,809],{},[759,826,827,830,835,838],{},[780,828,829],{},"Item in the open GUI or inventory",[780,831,832],{},[391,833,834],{},"{stack}",[780,836,837],{},"The item's name",[780,839,840],{},"Use GUI's An item I found earlier, a check",[759,842,843,846,851,854],{},[780,844,845],{},"Value in a list I type",[780,847,848],{},[391,849,850],{},"{value}",[780,852,853],{},"The line",[780,855,793],{},[381,857,858,859,861,862,864],{},"Rename it under ",[396,860,437],{},", by the same rules as a Set variable name, and keep clear of the placeholder names above. ",[396,863,809],{}," turns the bot to the block or entity the loop is on; aimed at a variable that holds a name or an item, it has nothing to turn to and is skipped, and so is an entity that has gone.",[423,866,868],{"id":867},"checking-a-variable","Checking a variable",[381,870,871,872,875,876,879,880,471,883,886,887,889,890,893],{},"Pick ",[396,873,874],{},"A variable"," under ",[396,877,878],{},"Checks whether"," in an If, or in a Repeat set to ",[396,881,882],{},"While a check passes",[396,884,885],{},"Until a check passes",". Put the variable's name under ",[396,888,665],{},", without braces, then pick under ",[396,891,892],{},"Is",":",[753,895,896,905],{},[756,897,898],{},[759,899,900,902],{},[762,901,892],{},[762,903,904],{},"Passes when the variable",[775,906,907,915,923,931,939],{},[759,908,909,912],{},[780,910,911],{},"has a value",[780,913,914],{},"holds anything at all",[759,916,917,920],{},[780,918,919],{},"at most, at least",[780,921,922],{},"is a number no more than, or no less than, the value",[759,924,925,928],{},[780,926,927],{},"under, over",[780,929,930],{},"is a number below, or above, the value",[759,932,933,936],{},[780,934,935],{},"exactly, anything but",[780,937,938],{},"is the value, or is not",[759,940,941,944],{},[780,942,943],{},"text containing",[780,945,946],{},"contains the value as text",[381,948,949,950,953],{},"The value is typed, and 20M, 6h and 1.5k compare as the numbers they stand for, or it names another variable as ",[391,951,952],{},"{other}",". The card reads the check back as a sentence: \"If best is at most 20M\".",[381,955,956,959],{},[396,957,958],{},"Has a value"," is how you ask whether a search found anything. A search that matched nothing leaves the variable empty, which is not the same as finding something worth nothing, and this check tells the two apart. There is no \"has no value\": put the steps for an empty variable on the If's No branch instead, the way every check is turned round.",[423,961,601],{"id":962},"totals-across-your-accounts",[381,964,965,966,968],{},"A variable belongs to one account: each account running a macro has its own. To add the same value up across all of them, such as every account's ",[391,967,393],{},", use two Set variable steps.",[970,971,972,978],"ol",{},[433,973,974,975,977],{},"On the step that reads each account's own value, tick ",[396,976,615],{},". Every account keeps its latest value where the macro's other accounts can see it, and the step still sets its own variable as before.",[433,979,980,981,875,983,985,986,989,990,693,993,693,996,693,999,471,1002,1005,1006,1009],{},"On a later Set variable step, pick ",[396,982,594],{},[396,984,443],{},". Under ",[396,987,988],{},"Take",", pick ",[396,991,992],{},"The total",[396,994,995],{},"The average",[396,997,998],{},"The lowest",[396,1000,1001],{},"The highest",[396,1003,1004],{},"The count"," (of accounts that have one), and name the shared variable under ",[396,1007,1008],{},"Of the shared variable",". With only one variable shared in the macro, it is filled in for you.",[381,1011,1012,1013,1016],{},"The second step puts the answer in a variable of its own, so ",[391,1014,1015],{},"{total}"," works anywhere a variable does: a Discord webhook, Notify my devices, a chat message or an If.",[556,1018,1021],{"className":1019,"code":1020,"language":561},[559],"Timer, every hour\n1. Chat              \u002Fbalance\n2. Wait for          a chat message containing \"Balance\"\n3. Set variable      balance = the number in the chat message, shared\n4. Wait              10 seconds\n5. Set variable      total = the total of the shared balance\n6. One at a time     Only the first account runs them\n7.   Discord webhook All accounts: {total}\n8. End one at a time\n",[391,1022,1020],{"__ignoreMap":564},[381,1024,1025,1026,1030],{},"The Wait in step 4 matters. Accounts on one timer start together but get their replies at their own pace, so the wait gives every account time to share its balance before any of them adds up. The ",[385,1027,1029],{"href":1028},"\u002Fdocs\u002Ffeatures\u002Fmacros\u002F#one-at-a-time","One at a time"," region then posts the total once rather than once per account.",[381,1032,1033],{},"Who counts:",[430,1035,1036,1039,1042,1045,1051],{},[433,1037,1038],{},"Every account this macro runs on, including the one adding up.",[433,1040,1041],{},"An account that is offline counts with the last value it shared, and so does one whose reply had no number in it this time.",[433,1043,1044],{},"An account you take off the macro stops counting straight away.",[433,1046,1047,1048,1050],{},"An account whose shared value is text rather than a number counts towards ",[396,1049,1004],{},", and not towards the other four.",[433,1052,1053],{},"With nothing shared yet, the total, average, lowest and highest are left empty rather than 0, so an If can tell \"no account has reported\" from \"they have nothing\". The count is 0.",[381,1055,1056],{},"Shared values belong to the macro: another macro sharing a variable of the same name keeps its own. The builder will not save a step that combines a variable nothing in its macro shares, because that total could only ever be empty.",[423,1058,611],{"id":1059},"keeping-a-value-between-runs",[381,1061,1062,1063,1065],{},"A variable normally starts empty every time a macro runs. Tick ",[396,1064,607],{}," on a Set variable step and it carries over instead: each account starts its next run with the value the last run left it. That is how a macro counts across runs, or remembers the balance it saw an hour ago.",[556,1067,1070],{"className":1068,"code":1069,"language":561},[559],"Death\n1. If                deaths has a value\n   No branch:\n2.   Set variable    deaths = 0\n3. End if\n4. Set variable      deaths = {deaths} + 1, kept between runs\n5. Discord webhook   {account} has died {deaths} times\n",[391,1071,1069],{"__ignoreMap":564},[381,1073,1074,1075,1078],{},"The first run finds ",[391,1076,1077],{},"{deaths}"," empty, so the If takes its No branch and step 2 starts the count at 0. Every run after that starts with the count the last one saved, so the If takes its Yes branch, which has nothing on it, and step 4 adds one.",[381,1080,1081],{},"How it works:",[430,1083,1084,1091,1100,1103,1106],{},[433,1085,1086,1087,1090],{},"Each account keeps its own value, for this macro only. To add the values up across your accounts, ",[385,1088,1089],{"href":600},"share them"," as well.",[433,1092,1093,1094,1096,1097,1099],{},"Keeping belongs to the variable, not to one step: once any step for ",[391,1095,1077],{}," has the box ticked, every Set variable step for ",[391,1098,1077],{}," saves what it sets, and the box shows ticked on all of them. Untick it on any of them to stop keeping it.",[433,1101,1102],{},"A step that finds nothing, such as a chat message with no number in it, clears the variable for the next run too.",[433,1104,1105],{},"Numbers and text are kept. An item found on an open screen is kept as its name and number, so the next run cannot click it.",[433,1107,1108],{},"Values carry over through reconnects, restarts and edits to the macro, and come along if you change what starts the macro.",[381,1110,1111,1112,1115],{},"Once the macro has been saved and has run, the box lists what each account holds now and when it last changed. ",[396,1113,1114],{},"Reset"," forgets the value on every account, so each one starts its next run without it. Unticking the box and saving forgets it too. Deleting the macro deletes its kept values.",{"title":564,"searchDepth":368,"depth":368,"links":1117},[1118,1125,1126,1127,1128,1129],{"id":425,"depth":368,"text":398,"children":1119},[1120,1121,1122,1123,1124],{"id":451,"depth":372,"text":452},{"id":539,"depth":372,"text":540},{"id":570,"depth":372,"text":571},{"id":583,"depth":372,"text":584},{"id":593,"depth":372,"text":594},{"id":622,"depth":368,"text":623},{"id":744,"depth":368,"text":745},{"id":867,"depth":368,"text":868},{"id":962,"depth":368,"text":601},{"id":1059,"depth":368,"text":611},"Make a MinecraftAFK macro remember values: read a price off a menu or a number from chat, write it into messages, compare it, keep it or total it.","md",null,{},{"icon":110},{"title":1136,"description":1130},"Remember values in your macros",{"loc":108},"m5ZCi46RwJpGDDX4P5i9HeJUNSo_Uqc0tvnRNBsrIBc",[1140,1142],{"title":102,"path":103,"stem":104,"description":1141,"icon":105,"children":-1},"Run, pause and order your macros, stay inside your plan's macro limit, stand a macro down with stop conditions, and read what went wrong in its logs.",{"title":112,"path":113,"stem":114,"description":1143,"icon":115,"children":-1},"Add ready-made macros from MinecraftAFK and other players, publish your own to the community, and send a macro to a friend with a private link.",1793484078532]