What a run looks like
- From the lobby, it walks to the event and joins.
- While the start vote is up, it reads which map it's on, picks that map's config, lines up the camera, teleports back to spawn and walks to your saved spot. Only then does it vote to start.
- It places and upgrades your team, step by step, and votes on every card screen.
- At the end it records the win or loss and the pearls you earned, posts them to Discord, goes back to the lobby and joins again.
Joining
With Join with Find Match on (Settings > Summer Event), it joins public matchmaking and waits in the queue. With it off, it uses Play Here: it opens a portal and starts it straight away, so you play alone unless someone joins first.
If it's been in the queue for 10 minutes without a match, it leaves and joins again.
A config for each map
The event map changes regularly, so lunaMacro works out which map it's on from the shape of the path on the minimap, falling back to the map name when the match loads. Then it plays the config you made for that map.
- Set each config's Stage in Run options to its map.
- Keep your event configs in a pack, and start the run from that pack, so it only swaps between those configs.
- Turn on Use one config on every map if you'd rather play the same config everywhere.
Card votes
Every few waves the game offers three cards, and lunaMacro votes for one. Set how in Settings > Cards:
| Mode | How it picks |
|---|---|
| Follow my order | Votes the card highest in your list. Drag the cards into the order you want. |
| Most pearls | Reads the SummerPearl bonus off each card and votes the biggest, using your order to break ties. A card that raises the secret drop chance always wins. |
Cards dragged into the Avoid list are only voted when nothing else is left. Buffs help your units; challenges make the stage harder but pay extra SummerPearls.

Weather cards
Every match has a weather, and some card screens offer that weather's own cards. Each weather has its own order in Settings > Cards:
| Weather | Buffs | Challenges |
|---|---|---|
| Rainy | Mud, Rain Barrel | Washout, Flash Flood, Torrent |
| Windy | Kite Strings, Grounded | Crosswind, Cyclone, Gale |
| Blizzard | Ice Breaker, Frostbite, Bonfire | Permafrost, Hailstorm, Whiteout |
| Sandstorm | Clear Skies, Sandblast, Buried Treasure | Sand Armor, Haboob, Dust Devil |
| Magical | Mana Surge, Dispel, Leyline | Arcane Ward, Mana Shield, Arcane Storm |
| Flooded | Low Tide, Salvage | Rising Tide, Tsunami, Tidal Surge |
| Starfall | Wishing Star, Stardust | Starforged, Cosmic Rays, Doomsday |
| Inferno | Not seen yet: voted by colour, buffs above challenges. | |
| Stormy | Not seen yet: voted by colour, buffs above challenges. | |
Anti leech
The game pairs players who deal little or no damage with other idle players. When a map has no config, lunaMacro normally sits that match out, which can count against you.
Turn on Anti leech in Settings > Summer Event and, on a map with no config, it instead:
- finds where the enemies come in, from the path on the minimap, and walks there;
- places your team around that spot, farms first, keeping the nearest spots for your damage units;
- keeps upgrading every unit whenever there's yen for it, until they're all maxed.
Discord gets a message each time it happens, so you know which maps still need a config.
Results and pearls
After every match, lunaMacro reads the result and the SummerPearls you earned. The Play page shows your session score and pearls for the run, the session and all time, and the same go to Discord if you've set up a webhook.
