Skip to content

Instantly share code, notes, and snippets.

View jakeayy's full-sized avatar

Jake jakeayy

View GitHub Profile
@jakeayy
jakeayy / decodeMap.ts
Last active January 7, 2026 18:18
decode bonk.io levelData (UNFINISHED TYPES)
import LZString from "lz-string";
class ByteBuffer {
off: number = 0;
constructor(public buf: Buffer, public littleEndian: boolean) {}
readShort() {
const v = this.buf[this.littleEndian ? "readInt16LE" : "readInt16BE"](
this.off,
@jakeayy
jakeayy / bypass-isTrusted.js
Created December 31, 2025 21:25
JS hack with Proxy that overrides isTrusted's state in Element events to true
Element.prototype.addEventListener = new Proxy(
Element.prototype.addEventListener,
{
apply(target, props, args) {
const h = args[1];
args[1] = (ev) =>
h(
new Proxy(ev, {
get: (target, p) => p === "isTrusted" || target[p],
}),
@jakeayy
jakeayy / 1-PATCH-README.md
Last active January 15, 2026 19:40
(PYLANCE/C++/...) Patch Microsoft extensions not working on VSCode Forks (VSCodium / Cursor / etc.)

Patcher for Microsoft Extensions

This script works for patching any Microsoft VSCode extension so it will work on it's forks including:

  • VSCodium
  • Cursor
  • Windsurf

This discussion motivated me to make this simple script: VSCodium#1641
Currently tested only on Pylance/VSCodium but as long as it's Microsoft's extension that blocks VSCode forks, it should be fine. The code uses fairly generic patterns to ensure it's cross-compatible with other extensions than the one I tested!

@jakeayy
jakeayy / prepare_messages.js
Created October 26, 2025 21:00
Simple script for preparing "CHANNEL_ID/MESSAGE_ID" formatted file out of Discord package. Just for support removal purposes
import { readdirSync, readFileSync, writeFileSync } from "fs"
const channelIds = (() => {
const files = readdirSync("Messages", { withFileTypes: true })
.filter(x => x.isDirectory() && x.name.startsWith("c"))
return files.map(x => x.name.slice(1))
})()
const messages = channelIds.reduce((acc, id) => {
@jakeayy
jakeayy / tags-20250509.json
Last active May 9, 2025 10:54
List of captured Discord server tags 2025-05-09 (774)
[
{
"identityGuildId": "1172245377395728464",
"identityEnabled": true,
"tag": "ATL",
"badge": "73d86ffb81cdcdc4f275eaf3b82fca31"
},
{
"identityGuildId": "1369745124669653083",
"identityEnabled": true,
@jakeayy
jakeayy / hex2tmhex.js
Created March 15, 2025 10:17
hex color to tm hex color
const hexToCol = (hex) => {
hex = hex.replace(/^#/, "")
if (hex.length === 3) hex = hex.split("").map(c => c.repeat(2)).join("")
return Array.from(hex.matchAll(/[0-9a-fA-F]{2}/g)).map(m => parseInt(m[0], 16))
}
const hexToTmColor = (hex) => hexToCol(hex).map(n => Math.floor(n / 17))
const hexToTmcolorHex = (hex) => hexToTmColor(hex).map(n => n.toString(16).toUpperCase()).join("")
const hex = "#FD66CC"
const tmColor = hexToTmcolor(hex)
@jakeayy
jakeayy / friend-anyone.js
Last active July 24, 2025 22:24
Vencord snippet that adds a super power of adding anyone to friends! (VISUAL ONLY)
(() => {
const {
FluxDispatcher,
UserStore
} = Vencord.Webpack.Common
const RelationshipActions = Vencord.Webpack.findByProps("addRelationship", "removeRelationship")
RelationshipActions.addRelationship = ({ userId, type = 1 }) => {
console.log(`+ ${userId} (${type})`)
FluxDispatcher.dispatch({
@jakeayy
jakeayy / patchFromContext.js
Last active October 26, 2025 21:08
Script hooks into generic `Function.bind` function that serves purpose of binding `this` to custom value and returns the context, returning the original bind value after hit.
// Callback
const foundContext = (ctx) => {
console.log(ctx)
}
// Look for context by these keys
const searchBy = [
"chat",
"generateImage"
]
@jakeayy
jakeayy / cleanVencord.js
Created August 2, 2024 06:02
Simple script for cleaning Vencord out of old themes/configurations of nonexistant plugins
// You need to save configuration after that by for example
// force saving config to cloud or by clicking save on any
// plugin settings
Vencord.Settings.enabledThemes = []
console.log("Disabled all local themes")
const pluginsNow = Object.keys(Vencord.Plugins.plugins).map(p => p.toLowerCase())
let pc = 0
Object.keys(Vencord.Settings.plugins).forEach(p => {
if(!pluginsNow.includes(p.toLowerCase())) {
@jakeayy
jakeayy / NO-NFT-CRYPTO.css
Created June 8, 2024 21:07
Few CSS snippets for Old Twitter Layout for hiding certain content
/* Tweet */
div.tweet:has(
/* Disable tweets with crypto/nft tags */
a[href^="/search?q=%24"], a[href^="/hashtag/BTC"], a[href^="/hashtag/ETH"], a[href^="/hashtag/btc"],
a[href="/hashtag/eth"], a[href^="/hashtag/Bitcoin"], a[href^="/hashtag/Btc"], a[href="/hashtag/Eth"],
a[href^="/hashtag/Etherium"], a[href^="/hashtag/etherium"], a[href^="/hashtag/BITCOIN"], a[href^="/hashtag/ETHERIUM"],
a[href^="/hashtag/Altcoins"], a[href^="/hashtag/Altcoin"], a[href^="/hashtag/altcoins"], a[href^="/hashtag/altcoin"],
a[href="/hashtag/xrp"], a[href="/hashtag/XRP"], a[href="/hashtag/Xrp"], a[href^="/hashtag/Crypto"],
a[href^="/hashtag/crypto"], a[href^="/hashtag/CRYPTO"], a[href^="/hashtag/nft"], a[href^="/hashtag/Nft"],
a[href^="/hashtag/NFT"],