Skip to content

Instantly share code, notes, and snippets.

View BenjaminUrquhart's full-sized avatar
💭
I'm always busy :)

Benjamin Urquhart BenjaminUrquhart

💭
I'm always busy :)
View GitHub Profile
@BenjaminUrquhart
BenjaminUrquhart / Always Maraca.user.js
Last active September 15, 2022 08:29
Always Maraca
// ==UserScript==
// @name Always Maraca
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Always get the maraca dog on Deltarune's 404 page
// @author Benjamin Urquhart
// @match *://deltarune.com/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=deltarune.com
// @grant none
// ==/UserScript==
@BenjaminUrquhart
BenjaminUrquhart / GMInvoke.cpp
Created January 27, 2022 03:24
Source to the GMInvoke GMS extension to comply with GPL3
#include <Windows.h>
#include <iostream>
#include <string>
#define func extern "C" __declspec(dllexport)
// Some boilerplate code
// Taken from https://github.com/Archie-osu/YYToolkit
#define TRoutine void*
@BenjaminUrquhart
BenjaminUrquhart / RPGDump.java
Created March 3, 2021 04:21
Small program to deobfuscate assets from RPG Maker games. Requires org.json.
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.file.Files;
import java.util.ArrayList;
import java.util.Arrays;
# Usage: python add.py
# Enter a positive number via standard input
# It will print the number plus one
class Incrementer:
n = 0
def __init__(self, n =0):
self.n = n
@BenjaminUrquhart
BenjaminUrquhart / BadJSON.java
Last active February 13, 2019 22:46
JSON parser for r/badcode
import java.util.HashMap;
import java.util.Arrays;
public class BadJSON {
public static HashMap<String, Object> parseJSON(String s) {
String toParse = new String();
for(char character : s.toCharArray()) toParse = toParse + (character == 10 ? new String() : new String(new char[]{character}));
HashMap<String, Object> out = new HashMap<String, Object>();
if(toParse.charAt(0) != '{' || toParse.charAt(toParse.length() - 1) != '}') return out;
@BenjaminUrquhart
BenjaminUrquhart / BFJ.java
Last active February 15, 2019 02:31
BrainF interpreter in Java
package net.benjaminurquhart.bfj;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import javax.script.ScriptException;
public class BFJ {
@BenjaminUrquhart
BenjaminUrquhart / STDIOPlus.java
Last active January 10, 2019 14:46
Adds date/time to standard output/error in Java
package net.benjaminurquhart.stdout;
import java.io.PrintStream;
import java.time.OffsetDateTime;
import java.util.Locale;
// yes yes I know there's no input for I here.
public class STDIOPlus extends PrintStream{
private static boolean enabled;
// Do NOT mess around with the stdout or stderr variables unless you want to risk breaking disable()
@BenjaminUrquhart
BenjaminUrquhart / Extractor.java
Last active January 3, 2019 19:13
Extracts the ogg files from the vvvvvvmusic.vvv file. Basically a Java clone of https://gist.github.com/lukegb/1169265
import java.io.File;
import java.io.FileInputStream;
import java.nio.file.Files;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Extractor {
public static int find(byte[] bytes, byte[] toFind, int start) {
import os
import sys
import traceback
mediaDir = "/media/"
def strip(string):
toRemove = ["'","/"," "]
stripped = ""
for i in string:
if i in toRemove:
stripped = stripped + "\ ".replace(" ","")