github Spencer0187/Spencer-Macro-Utilities V3.3.1
Spencer Macro Utilities V3.3.1

one month ago

VERSION 3.3.1 UPDATE

Native Wayland pixel reads and absolute mouse control, safer profile persistence, and improved cross-platform text input.

This update expands native Wayland support and improves reliability across scripting, input, and saved settings.

Main Features

  • Native Wayland now supports Lua getPixelColor() and getPixelRect() through the desktop ScreenCast portal and PipeWire.
  • Added native Wayland absolute pointer positioning for Lua moveMouseAbs() through the RemoteDesktop portal.
  • Added getUnixTimestamp() to the Lua scripting API for retrieving the current Unix timestamp.
  • Linux package dependencies and setup documentation now include the requirements for Wayland ScreenCast and RemoteDesktop support.

Macros and Scripting

  • Text input now resolves the active keyboard layout on Windows, macOS, and Linux/X11, with fallback handling for unsupported layouts.
  • Chat-opening and text-based macros are more reliable on non-US keyboard layouts.
  • Windows Unicode text input now uses native Unicode keyboard events when the legacy paste path is selected.
  • Tuned precise microsecond sleeps to reduce unnecessary busy-spinning while retaining high-resolution timing.

Performance and Reliability

  • Profile saves now use atomic writes and maintain a backup copy to recover from interrupted or corrupted saves.
  • Invalid settings are rejected safely instead of overwriting the existing settings file.
  • Profile loading and switching now correctly synchronize saved UI values with the runtime values used by macros.
  • Fixed stale timing, wallhop, Press Key, Spam Key, FPS, and other settings remaining active after profile changes.
  • Settings and imported scripts are saved more reliably during shutdown, and save failures are now reported to the user.

Warning

  • Native Wayland pixel reads require PipeWire, xdg-desktop-portal, a compatible portal backend, and permission to select a monitor. The first pixel request pauses the script while permission is requested.
  • Native Wayland absolute mouse control requires separate pointer-control permission and monitor selection through the RemoteDesktop portal.
  • Wayland portals can place the pointer but cannot reveal its current global position. moveMouse() in absolute mode and moveDegrees() in absolute mode remain unavailable on native Wayland.
  • If Wayland portal support is unavailable or permission is declined, pixel and pointer operations fail with a descriptive Lua error. SMU does not fall back to an XWayland root-window read.

Warning

  • macOS packages use SMU's stable self-signed project certificate, not Apple notarization. Copy suspend.app out of the DMG, try to open it, then approve it in System Settings → Privacy & Security → Open Anyway. An app launched directly from the read-only DMG cannot replace itself.
  • Automatic Linux installation is limited to an AppImage in a writable folder. Debian, RPM, portable, and Nix users are shown the new release but must update with the same installation method they used before. AppImage and portable update checks require curl.
  • The Linux lag switch provides machine-wide hard blocking and fake lag, not Sober-process targeting; Roblox mode uses static 128.116.0.0/16 matching plus the current UDMUX and RCC server addresses read from Sober's player log. Linux fake lag needs iproute2 (tc and ip), an IFB-capable kernel, and the default fq_codel qdisc on the active interface. It refuses custom traffic-control configuration. Dynamic process targeting, disconnect prevention, and the global overlay remain Windows-only.
  • macOS does not include a lag switch. A safe implementation requires an Apple-entitled Network Extension and Developer ID distribution.
  • Native Wayland can restrict foreground detection, absolute pointer positioning, and screen pixel reads. X11 and XWayland provide the broadest Linux feature support.

The Windows release is Spencer-Macro-Utilities-3.3.1.zip. Linux is Spencer-Macro-Utilities-V3.3.1-Linux-x86_64.zip and MacOS is Spencer-Macro-Utilities-V3.3.1-macOS-universal.zip or .dmg.

Full Changelog: V3.3.0...V3.3.1

Don't miss a new Spencer-Macro-Utilities release

NewReleases is sending notifications on new releases.