Spring is a dynamic macro-creating program. Contrasted to other macro-creating software, Spring focuses on minimizing the overhead of creating macros and playing them back by using a single key for all actions. Whilst other more comprehensive macro software focuses on the number of features available as well as features to create macros, store macros and load them, Spring considers macros to be expendable and only captures keyboard and mouse actions.
The name spring is an allegorical reference to a physical spring that is charged by exerting force and then discharges itself when the force is removed. The similarity with Spring comes from its mode of operation where the user first creates the combo via a button press and then presses the button again letting the spring discharge.
Features
One single button operation: long-press, select repeats, charge, discharge and then toggle between charge and discharge or long-press to load the spring again.
Only portable and self-contained distribution: the configuration is stored within the program directory and the combos may be stored wherever the user chooses to export them.
Ability to select either mouse, keyboard or both for recording macros.
In-game DirectX overlay with customizable colors, custom placement relative to the game window screen and allowing the selection of combo repeats and displaying the current working status.
The ability to export combos and then to import them at a later time based on files.
The ability to change and edit the combos using an editor built into Spring.
Various tools to edit the recorded combo without having to write code within the editor.
The ability to speed or slow down the current combo dynamically without having to recreate the entire combo - also bindable to keys such that the user can easily slow or speed up the combos.
Configurable amount of repeats via the settings.
Video tutorial and built-in documentation.
Mostly transparent to anti-cheat software since Spring works between the driver layer and the applications such that there is no interference with the game itself.
A "fuzz" feature that allows Spring users to randomize the pause between key presses with the purpose of evading keyboard scans performed by some game servers.
Limitations
Games must be ran in Maximized Fullscreen mode or in Windowed mode because games tend to grab the entire Windows desktop.
Mouse movement in games will be hectic but the mouse recording can be switched off.
Video Examples
Example
Description
ReSharper for Visual Studio does not have an option to automatically fix all code suggestions. In this example, Spring is used to convert all the code automatically to use object initializers by automating ReSharper.
Using Spring as anti-AFK during AFK farming in Warframe.
Warframe does not have the ability to batch-build items such that a player would have to sit through entire minute-long builds of various items. Spring can automate this allowing the player to go AFK whilst items are being built.
Spring Workflow
Once a key has been bound using the key binding button, recording and playing a macro follows the steps, in order:
long press the bound key to select the number of repeats (displayed on Spring itself and via the DirectX overlay),
release when the number of repeats is displayed,
perform some keyboard or mouse actions,
short press the bound key to start playback.
Spring now plays back all the keyboard and mouse actions until either:
short press the bound macro key to stop playback
long press the bound macro key to start recording, go to the first step