Skip to content

Instantly share code, notes, and snippets.

@SmashingQuasar
SmashingQuasar / gist:2fa26df23234166fd714840d84839445
Last active June 10, 2026 20:38
Project Remnants manual installation guide
# Manual installation
## Windows
This mod is NOT compatible with ZombieBuddy. Trying to run both at once will crash the game. Don't do it. Look at me. Don't.
You need to copy a certain number of files from the ProjectZomboid game directory for this mod to function.
1) Go to Steam, right clcick on the game, go to "Manage" > "Browse Local Files".
#!/bin/bash
set -euo pipefail
FILE_PATH="$(realpath $BASH_SOURCE)"
CURRENT_DIR="$(dirname $FILE_PATH)"
cd $CURRENT_DIR;
echo "Removing Jest and it's dependencies"
@SmashingQuasar
SmashingQuasar / evaluate.ts
Created September 28, 2022 16:00
Deep object evaluation with by-value method comparison (TypeScript)
function evaluate(
objectA: Record<number | string | symbol, unknown>,
objectB: Record<number | string | symbol, unknown>,
): boolean {
const keysA: Array<number | string | symbol> = Object.keys(objectA);
const keysB: Array<number | string | symbol> = Object.keys(objectB);
if (keysA.length !== keysB.length) {
return false;
@SmashingQuasar
SmashingQuasar / evaluate.ts
Created September 28, 2022 15:46
Deep object evaluation (TypeScript)
function evaluate(
objectA: Record<number | string | symbol, unknown>,
objectB: Record<number | string | symbol, unknown>,
): boolean {
const keysA: Array<number | string | symbol> = Object.keys(objectA);
const keysB: Array<number | string | symbol> = Object.keys(objectB);
if (keysA.length !== keysB.length) {
return false;
}