Achoo!
A downloadable tool for Windows, macOS, Linux, and Android
Achoo! v0.3
simple achievements system for Gamemaker
Intro
Achoo! is a basic achievements and stats library for Gamemaker, wtih the following features:
- Independent GML library - no need to depend on Steam or hosted services to run achievements
- Simple, straightforward, non bloated
- Set up achievements in one line of code!
- Persist your achievements on file, or even store on/retrieve them from your remote server!
- Handle and persist game stats and use them for more complex achievements (e.g. total zombies killed, total runs...). Storage is encrypted by default to prevent user tinkering.
- Set up hidden achievements and even locked achievements - with a separate unlocking condition!
- Non-forcing UI - you have total control (and responsibility) over what to do / how to render achievement popups or actions
- Full documentation with examples and tutorial video
- Cross-platform - pure GML, tested in Windows/HTML/Linux
- Free and open source (FOSS)
Installation and Usage
Achoo! requires Gamemaker 2023.8+.
To include:
- Download the latest release (YYMPS file).
- Import the file into your project.
- If needed, open the Config script and change settings.
To use:
- Set your achievements (and optionally stats) using the Achievement and Stat constructors.
- Set the achievement ID, name and description
- Set up your callbacks to handle what happens when the user achieves (and optionally when unlocks) an achievement.
- After defining all your achievements/stats, save (and load) your achievement and stat files appropriately using the Achoo save_ and load_ methods
- If needed, manage your defined achievements and stats using the Achoo object.
FAQ
- Q: What is the license?
- A: MIT License - basically do whatever you please, and I'm not accountable for any loss/damage
- Q: How many achievements and stats can I have?
- A: Potentially unlimited!
- Q: Is the encryption military-grade?
- A: Uhh no, not even close. It uses a fairly simple shift cypher with a macro user-defined shift value. However it should be more than enough to deter the vast majority of players from tinkering with it.
- Q: Why does my game not display a popup when the user completes an achievement?
- A: You have to handle that yourself, by setting the on_achieve callback (for instance, create an object that functions as the popup). Same goes with the unlocking.
- Q: Where are the achievements/stats files located?
- A: You need to save them yourself (see documentation) so you choose where. When not specifying/using sandboxed mode, they will be saved in the %LOCALAPPDATA%\<YourGame> directory.
- Q: The program is giving me an exception that says it cannot correctly parse the achievement/stat data! What happened?
- A: The most likely cause is that you modified the encryption shift value in Config, but you already had achievement/stat files stored. Only change the shift value in development and if you are OK with having all your players delete their achievements/stats files.
Download
Download
Achoo! 0.3.yymps 12 kB