A downloadable tool for Windows, macOS, Linux, and Android

Achoo! v0.3

simple achievements system for Gamemaker

latest release

documentation

tutorial video



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:

  1. Download the latest release (YYMPS file).
  2. Import the file into your project.
  3. If needed, open the Config script and change settings.

To use:

  1. Set your achievements (and optionally stats) using the Achievement and Stat constructors.
    1. Set the achievement ID, name and description 
    2. Set up your callbacks to handle what happens when the user achieves (and optionally when unlocks) an achievement.
    3. After defining all your achievements/stats, save (and  load) your achievement and stat files appropriately using the Achoo save_ and load_ methods
  2. 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.


StatusReleased
CategoryTool
PlatformsWindows, macOS, Linux, Android
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
Authormanta ray
Tagsachievements, GameMaker

Download

Download
Achoo! 0.3.yymps 12 kB