What is a bypass?
In this project, a bypass is simply a script that is used to invoke input without being detected by the anticheat, without the window needing to be in focus.
This typically also allows the user to perform actions like type in text boxes, while notes are being played.
Developing custom bypasses
The below describes how to create custom bypasses.
Please note, however, this only serves as API documentation, and not as a tutorial on reverse engineering.
Returning the correct type
Your API must return the following type:
https://github.com/Exponential-Workload/MidiPlayer/blob/03abd0db31fa69a7c29c9a7a756e377f3dea8363/Docs/BYPASSES/CONTRIBUTING/bypass-type.d.ts#L1-L11
Locally Adding your Bypass
Bypasses are searched for on script load, so put this before your script loads:
-- Init the bypasses table
getgenv().__ADDITIONAL_BYPASSES = getgenv().__ADDITIONAL_BYPASSES or {};
-- Add your bypasses
getgenv().__ADDITIONAL_BYPASSES[69696969 --[[this would be the place or game id]]] = 'http://127.0.0.1:5555/out/script.lua'; -- this would be a URL, typically local, to the actual file. Must be queryable by game:HttpGetAsync()
Make sure your URL (in the example, http://127.0.0.1:5555/out/script.lua
) is reachable.
Contributing
Getting it added
To get it added to this repository, you have 2 options:
Open-Source Bypasses
If you want to contribute an open-source bypass of your own, you may do so by simply putting it as Fire.lua
in a new folder in here, and adding it to the below file:
https://github.com/Exponential-Workload/MidiPlayer/blob/main/src/LocateBypass.lua#L4
Finally, simply make a PR and wait for me to approve it.
Notice: You agree that these bypasses will be licensed under the AGPL-3.0-OR-LATER.
Closed-Source Bypass
If you want to contribute a closed-source bypass of your own, you may do so by either sending me the bypass, alongside the game link, on discord (Yielding#3961), or by emailing me those 2 things at pleasego@nuke.africa
I will obfuscate it and upload it here if I deem it is a high-enough-quality bypass.
Please Note: I need the entire source code in an unobfuscated manner so I can ensure it is entirely safe, and does not do things like perform transactions (or similar).
Documenting it
You can document your bypass by making a directory in the Docs/BYPASSES directory containing information about your bypasses.