Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Flyingbacen/Sols-Biome-Randomizer-Macro/llms.txt

Use this file to discover all available pages before exploring further.

The macro presents a small GUI window as soon as it launches. Built with AutoHotkey v2’s Gui class, the window gives you a live view of each item’s cooldown countdown, a status indicator for the scheduler, controls to set the target Roblox window, and buttons to force or toggle each automation action. All controls are visible in a single compact panel — no tabs or sub-menus.
The macro saves every setting back to settings.ini automatically when the GUI is closed — either by clicking the window’s X button or by pressing F12. You do not need to manually save anything.
If you use an item manually in-game before the scheduler would have triggered it, press the corresponding Force button immediately afterward. This resets that item’s timer so the scheduler won’t try to use it again right away, avoiding an unwanted double-use.

Status Labels

These three read-only text labels sit at the top of the GUI and refresh every second via a recurring 1 000 ms timer.
Displays the time remaining until the macro will next use the Biome Randomizer item.
Displayed valueMeaning
MM:SS (e.g. 35:47)Cooldown in progress; seconds remaining shown as minutes and seconds
ReadyCooldown has elapsed; item will be used on the next scheduler tick
DisabledBiomeRandomizerEnabled is false; the item will not be used until re-enabled
The underlying cooldown duration is controlled by BiomeRandomizerCooldownMinutes in settings.ini (default: 35.2 minutes).
Displays the time remaining until the macro will next use the Strange Controller item. Behaves identically to the Biome Randomizer label.
Displayed valueMeaning
MM:SSCooldown in progress
ReadyWill be used on the next scheduler tick
DisabledStrangeControllerEnabled is false
The underlying cooldown duration is controlled by StrangeControllerCooldownMinutes in settings.ini (default: 20.2 minutes).
Displays the time remaining until the macro performs its next AFK action (sending Space, E, and F keypresses, followed by a click at the Eden dialogue position).
Displayed valueMeaning
MM:SSTime until the next AFK action fires
ReadyAFK interval has elapsed; action will run on the next scheduler tick
The interval is set by AFKIntervalMinutes in settings.ini (default: 10 minutes). The AFK action always takes priority in the scheduler — if it is due at the same time as an item use, the AFK action runs first.
Shows whether the automation scheduler is currently active.
Displayed valueMeaning
Status: stoppedScheduler is paused; no automated actions will occur
Status: runningScheduler is active and checking cooldowns every second
This label is updated by the Toggle Active button.

AFK Target Controls

These controls let you tell the macro which window to send keystrokes and clicks to.
A single-line edit field that shows the current target window identifier. The value can be either:
  • A numeric HWND (e.g. 2689318) — set automatically when you use the Ctrl+Click button
  • A window title substring (e.g. Roblox) — matched against open windows using AutoHotkey’s WinExist() function
The field refreshes every second from the internal TargetWindow variable. You can type directly into it and then press Apply text as HWND/title to apply the change.
; Default value loaded from memory (not stored in settings.ini)
TargetWindow := "Roblox"
Reads whatever is currently typed in the AFK target text field and sets it as TargetWindow. A Windows tray notification confirms the new target:
Target set to: <value>
Use this when you want to target a window by title substring (e.g. Roblox) or when you have pasted a known HWND manually.
Waits for you to hold Ctrl and click on any open window, then captures that window’s HWND and sets it as the target. A tray tip appears confirming both the HWND and the window’s title:
Target window HWND: <hwnd> with window title: <title>
After capturing, the macro GUI is brought back into focus automatically.This method is more reliable than title-matching when other windows might contain the word “Roblox” (e.g. a browser tab open to the Roblox website), because HWNDs are unique per window instance.How to use it:
  1. Click the Ctrl+Click = active window button in the GUI.
  2. Hold Ctrl on your keyboard.
  3. While holding Ctrl, click anywhere inside the Roblox window.
  4. Release — the tray tip confirms the captured target.

Action Buttons

Starts or stops the automation scheduler.
  • When the scheduler is stopped, clicking this button calls SetTimer(Scheduler, 1000) and updates the status label to Status: running.
  • When the scheduler is running, clicking this button calls SetTimer(Scheduler, 0) to cancel it and updates the status label to Status: stopped.
The scheduler checks cooldowns every 1 000 ms and uses items or performs AFK actions as needed.
Immediately executes the AFK action sequence regardless of the current timer, then resets the AFK countdown as if the action had just fired on schedule.The AFK sequence consists of:
  1. Activating the target window
  2. Sending {Space 3}, {e 3}, {f 3} keypresses
  3. Moving the mouse to the Eden dialogue position (778, 912) and clicking
  4. Returning the mouse to its original position and reactivating the previously active window
Use this if you need to manually confirm an in-game dialogue or reset your AFK timer at an arbitrary time.
Immediately calls UseItem("Biome Randomizer") and, if the item is successfully used, resets the Biome Randomizer cooldown timer to the current moment.If the item is not found in the inventory slot (OCR returns no match), the timer is not reset — the label will continue counting down from wherever it was.
Flips the BiomeRandomizerEnabled flag between true and false.
  • When disabled, the scheduler skips Biome Randomizer entirely and the status label shows Biome Randomizer: Disabled.
  • When re-enabled, the countdown resumes from where the internal timer left off.
The flag is saved to settings.ini as BiomeRandomizerEnabled when the macro exits.
Immediately calls UseItem("Strange Controller") and, if successful, resets the Strange Controller cooldown timer to the current moment.Behaves identically to Force Biome Use but for the Strange Controller item.
Flips the StrangeControllerEnabled flag between true and false.
  • When disabled, the scheduler skips Strange Controller and the status label shows Strange Controller: Disabled.
  • The flag is saved to settings.ini as StrangeControllerEnabled on exit.

Keyboard Shortcuts

KeyAction
F12Immediately exits the application. The OnExit handler fires first, writing all current settings back to settings.ini before ExitApp() is called. This shortcut is exempt from AHK’s Suspend state (#SuspendExempt true) and will always work regardless of whether the scheduler is running.

Build docs developers (and LLMs) love