GameMaker (2.0 - 2.2.x)
Icon

Fingerprint

SilbinaryWolf

You must be logged in to obtain assets

Description

Fingerprint GML

A simple script for fingerprinting a user in Game Maker Studio. My use case is to fuzzily identify different devices / users coming from the same IP address when they connect to my server.

Inspired by https://github.com/Valve/fingerprintjs2.

How it works

The fingerprint is calculated by writing the following to a buffer and retrieving an MD5 hash.

  • Operating System
  • Browser
  • Display Width / Height
  • Are Shaders Supported?
  • Timezone
  • Gamepad Count (+ count of connected gamepads)

On Windows-only, the following environment variables are used:

  • Username
  • Computer Name
  • Number of Processors
  • CPU Architecture, identifier, level and revision

Quick start

  • Import the fingerprint_md5.gml script into your project.
  • Call "fingerprint_md5()" to get a fingerprint of the user.

Requirements

  • Game Maker Studio 2 (Untested in GMS1)

Contributing

If you have ideas on how to improve the fingerprinting, either with a better hash function or by utilizing more feature detection functions in Game Maker Studio, please post an issue or submit a pull request on Github: https://github.com/silbinarywolf/fingerprint-gml.

Alternatively, you can post on the forum topic here: https://forum.yoyogames.com/index.php?threads/free-fingerprint.44167/

Ideally this script would have better fingerprinting by being able to utilize RAM information, GPU information and CPU information such as core count / GHZ / cache sizes. Unfortunately, I haven't found any such scripts / functions in the Game Maker Studio 2 documentation.

End User Licence Agreement (EULA).

Age Rating: None

Version

GMS2 - Version 1.1.0. Published March 12, 2018

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait