This Aim Trainer is a lightweight Python-based application designed to help users enhance their mouse accuracy and reflexes. The game features a growing target that the player must hit before it grows too large, with performance statistics tracked and saved for post-game review.
- Dynamic Target: A target appears on the screen, growing gradually in size. The player's goal is to click it before it exceeds the maximum size.
- Scoring System: Tracks the player's hits and clicks to calculate accuracy and total score.
- Game Over Mechanism: The game ends if the target exceeds its maximum size, displaying a "Game Over" message.
- High-Performance: Runs at 144 FPS for smooth gameplay.
- Score Saving: Automatically saves the player's session details to a text file, including score, clicks, accuracy, and timestamp.
- Reset Mechanism: Automatically resets the game after 3 seconds of the "Game Over" screen.
To run the Aim Trainer, you need:
- Python 3.8 or newer.
- The
pygame
library installed. Install it using:pip install pygame
-
Launch the application by running the Python script:
python aim_trainer.py
-
Optional: If you want to create an executable (
.exe
) file:- Install PyInstaller:
pip install pyinstaller
- Build the executable using PyInstaller:
pyinstaller --add-data "imgs/icon.jpg;imgs" --hidden-import=pygame --windowed --onefile aim_trainer.py
- Install PyInstaller:
-
Prebuilt Executable: Alternatively, download the prebuilt
.exe
file from the Releases section of this project. -
A red target will appear on a gray background. Click on the target to score points before it grows too large.
-
Each successful hit will increase your score and spawn a new target with a random size and position.
-
If the target grows beyond its maximum size, the game ends.
- Mouse Click: Hit the target to score points.
- Close Window: Quit the game.
- Score: Total successful hits.
- Clicks: Number of clicks made during the session.
- Accuracy: Calculated as: [ ext{Accuracy (%)} = \left( rac{ ext{Score}}{ ext{Clicks}} ight) imes 100 ]
- Saved Details: Includes the date, score, number of clicks, and accuracy percentage.
- Dynamic Target Behavior: The target grows at a steady rate (
growthspeed
) and resets upon successful hits. - Game Over Logic: Triggered when the target exceeds its maximum size, with a timed reset.
- Score Saving: Ensures the session data is saved even if the player quits mid-game.
- Target Growth Speed: Modify the
growthspeed
variable to adjust difficulty. - Maximum Target Size: Change the
maxballsize
variable for game balancing. - Window Size: Update the resolution in the
pygame.display.set_mode
function for different screen sizes.
- Missing
pygame
Library: Install it withpip install pygame
. - Game Runs Slowly: Lower the frame rate (
clock.tick
) or close other applications to free resources. - Score Not Saving: Ensure the script has write permissions in the current directory.
Enjoy improving your aim and reflexes with this Aim Trainer!