Skip to content

Repository files navigation

Auto Clicker

Auto Clicker Preview

A high-precision, lightweight Windows desktop auto clicker written in C# using .NET 8 and WPF.

Features

  • Native Windows Mouse Injection: Built on Win32 SendInput API for low latency and reliable input.
  • High Precision Timer: Utilizes winmm.dll 1ms system timer precision and Stopwatch microsecond timing.
  • Interval Breakdown: Configure click intervals in Hours, Minutes, Seconds, and Milliseconds with automatic CPS calculation.
  • Humanized CPS Jitter: Optional Min/Max CPS range using Gaussian normal distribution to simulate natural clicking.
  • Click Options: Supports Left, Right, and Middle mouse buttons, as well as Single and Double clicks.
  • Repeat Controls: Choose between repeating until stopped manually or stopping automatically after a specified click count.
  • Cursor Positioning: Operates at the current mouse cursor location or locks to fixed screen coordinates (X/Y).
  • Hotkey Activation Modes:
    • Toggle Mode: Press hotkey once to start, press again to stop.
    • Hold Mode: Active only while holding down the hotkey.
  • System-Wide Hotkey Hook: Global low-level keyboard and mouse hooks (SetWindowsHookEx) supporting standard keys (F1-F12, letters) and mouse side buttons (Mouse 4 / Mouse 5).
  • Window Filtering: Optional filter to execute clicks only when a targeted process (e.g., Minecraft) is focused.
  • Dark Grayscale Interface: Minimalist utility UI with custom-styled dark controls (ComboBoxes, CheckBoxes, RadioButtons, Sliders, and ScrollBars).

Prerequisites

  • Windows 10 or Windows 11 (64-bit)
  • .NET 8.0 SDK or Desktop Runtime

Building and Running

Run with .NET CLI

  1. Open PowerShell or Command Prompt in the repository folder.
  2. Build and run the project:
dotnet run

Build Release Executable

To produce a standalone release build:

dotnet publish -c Release

The output executable will be located in:

bin\Release\net8.0-windows\publish\AutoClicker.exe

Project Structure

  • AutoClicker.csproj - .NET 8 project configuration file.
  • App.xaml / App.xaml.cs - WPF application resources and custom dark control templates.
  • MainWindow.xaml / MainWindow.xaml.cs - Main window XAML layout and custom caption bar logic.
  • Engine/
    • NativeMethods.cs - Win32 P/Invoke declarations for SendInput, winmm, and hook APIs.
    • ClickSettings.cs - Data model for click configuration.
    • ClickEnums.cs - Enumerations for ClickButton, ClickType, and HotkeyActivationMode.
    • IClickEngine.cs - Contract and event args for the engine.
    • ClickEngine.cs - Microsecond click loop and Box-Muller jitter calculation.
  • Input/
    • IMouseSimulator.cs / WindowsMouseSimulator.cs - Native mouse input driver.
    • IHotkeyListener.cs / GlobalHookListener.cs - Low-level keyboard and mouse hook listener.
  • Utilities/
    • WindowUtils.cs - Active window title and process checking helper.
    • RelayCommand.cs - MVVM command implementation.
  • ViewModels/
    • MainViewModel.cs - ViewModel binding UI controls to the clicking engine and hotkey listener.

License

MIT License. Free to use, modify, and distribute.

About

A high-precision, lightweight Windows desktop auto clicker written in C# using .NET 8 and WPF.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages