FAQ:
Why passwords? How do they work?
Shout out to this page for calculations. All packages have been password protected by YoYo Games as part of a security. Yet, some smart people were able to figure out how to replicate those.The password is created by grabbing the ID of the runner and it's extension, then prefixing it with
MRJA
and suffixing with PHMD
. The string's gonna look like this: MRJAID.EXTPHMD
(Replace ID and EXT with valid data), hash the result with implementation of MD5 designed specifically for YoYo passwords and then encode buffer into base64.Here's an example in JavaScript using my package - yoyo-md5:
import { yoyomd5 } from "yoyo-md5"
const ID = "abc"
const EXT = "zip"
// MRJAabcPHMD
const str = `MRJA${ID}.${EXT}PHMD`
const password = yoyomd5(str)
// Output: "92NrMoGv3KF1Eu0wIZeXoA=="
console.log(password)
What's the difference between all the runner sources?
Each one grabs runner from different source or branch of it:Main - The current branch of runners available straight from GameMaker Studio 2
Beta - Branch with less stable runners, usually with new features being earlier. Can be obtained through GameMaker Studio 2 on Windows version and are the only branch on Linux version.
Old <year> - Outdated, old runners grabbed using Web Archive. For some reason a lot of files in those branches are still kept on GM servers so you don't need to access them through archive yourself. The button for archive download is there anyways in case some don't exist. (Some might not be archived!)
Where are GameMaker Studio 1/GameMaker 8.0/etc. runners?
Since it's really difficult to find archives of such old stuff for a long time I thought it would be impossible.But... You can do it now! (partially) Go to this archive website, you should have direct download for all supported by GameMaker Studio 1.4.9999 platforms! Just download and pick which one you need the most.
For other - GMS1, GM8.0 or even older - runners you can try your luck by exploring files of old GameMaker Studio 1.4.X or GameMaker Studio 8.1.