Skip to content

Instantly share code, notes, and snippets.

View index.md

Overview

I've been digging around in the extracted audio files for Borderlands 3, with an eye to figuring out what songs aren't present in the official soundtracks, and putting together some extra playlists for my own purposes. Specifically, practically none of the songs with lyrics (generally from "real" bands instead of hired composers) appear on the soundtracks, which means that none of the Crimson Radio tracks are on there, or the intro cinematic song by The Heavy, or any of the songs that pop up in the credits. Also missing are a few in-game tracks like the electroswing track in VR-0N1CA's construction area, Ellie's "Project DD" playlist in Neon Arterial,

View investigate.txt
Horizon changes on 2020-10-15:
Increased weapon damage
Increased reload speed
- SparkPatchEntry1603 (regular hotfix)
Increased damage dealt from the Singularity
- SparkPatchEntry1605 (regular hotfix)
Hotfix which increases damage, I think: SparkPatchEntry1604
View info.txt
Found by HackerSmacker:
https://github.com/EpicGames/UnrealEngine/blob/f8f4b403eb682ffc055613c7caf9d2ba5df7f319/Engine/Source/Editor/KismetCompiler/Private/KismetCompilerVMBackend.cpp#L2160
^ the meat of the processing apparently happens in there.
This header looks like it's got the opcodes in it:
https://github.com/EpicGames/UnrealEngine/blob/f8f4b403eb682ffc055613c7caf9d2ba5df7f319/Engine/Source/Runtime/CoreUObject/Public/UObject/Script.h
View bl3kill.py
#!/usr/bin/env python
# vim: set expandtab tabstop=4 shiftwidth=4:
import os
import time
import psutil
import signal
def find_main_pid():
"""
View b3hm.sh
#!/bin/bash
# vim: set expandtab tabstop=4 shiftwidth=4:
# Wine Prefix
export WINEPREFIX="/games/bl3_steam/games/steamapps/compatdata/397540/pfx"
# Proton Root
export PROTONDIST="/games/bl3_steam/root/compatibilitytools.d/Proton-5.21-GE-1/dist"
# Other vars (WINEESYNC may or may not be required; FREETYPE_PROPERTIES might just be on my system)
View usr_not_rpm_installed.py
#!/usr/bin/env python
# vim: set expandtab tabstop=4 shiftwidth=4:
from __future__ import print_function
import os
import sys
import subprocess
rpmd_files = set()
print('Getting list of installed RPMs...', file=sys.stderr)
View Table_Artifact_Abilities2.json
[
{
"export_type": "DataTable",
"_apoc_data_ver": 21,
"_jwp_is_asset": true,
"_jwp_object_name": "Table_Artifact_Abilities2",
"LOOT_LootExpander_Cash": {
"export_type": "RowStruct",
"Multiplier": {
"BaseValueConstant": 0.008333,
View sunshine_freenode_net.crt
-----BEGIN CERTIFICATE-----
MIIInDCCB4SgAwIBAgISA6oWyAkv69Rfsgb5Vd1KRXLyMA0GCSqGSIb3DQEBCwUA
MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD
EwJSMzAeFw0yMTA3MDYxNjAyMzJaFw0yMTEwMDQxNjAyMzFaMCAxHjAcBgNVBAMT
FXN1bnNoaW5lLmZyZWVub2RlLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBAPdASaTT/BQrA/FBnn4z5vTARTNxSRHc0Hpm0q5D+3cfTZ1FwaH+VLSz
JmO6B1/NEB7T7ZkM2GvyUF12PQ9DFqeXquJHSX9Zh0j8bIswH2slYFS9ZTSGvzyl
Gp9w7N7kfv6VNDtYS6IGtqlVXhm79cjl/s9SoYMC6t5vdoKIDSsEc5KRmk5XkeLY
DKdu4JIpu4vXTGv7eN+Ptx1panKaZIbrf5gsf5GL0PuTic5l/LinRjG01NJUtidD
NOe+FMRhN+8rVL8kHv5y6m+n5PEdqtLKPR+7BdeR5kcwTdtbpeMcS5ediL2T68gC
View WE_HUD_StatusEffect_Terror_Lp_High_Play.json
[
{
"export_type": "WwiseEvent",
"_apoc_data_ver": 21,
"_jwp_export_idx": 1,
"_jwp_is_asset": true,
"_jwp_object_name": "WE_HUD_StatusEffect_Terror_Lp_High_Play",
"RequiredBank": [
"WwiseBank_HUD_BloodyHarvest",
"/Game/PatchDLC/BloodyHarvest/Audio/SoundBanks/BloodyHarvest/WwiseBank_HUD_BloodyHarvest"
View codes.txt
pre-compression:
{"v":1,"p":[[0,1,2,3,4,5],[6,7,8,9,10,11,12,13,14,15],[16,17,18,19,20,21],[22,23,24,25,26,27],[28]],"l":[[3,2,1,0],[0,1],[0,1,1],[0,2],[0,1,2],[0,1,1,2],[0,2,2],[0,3],[0,1,3],[0,1,2,3],[4]],"s":[[10,9,8,7,6,5],[4,0.4,0.4,3,2.25,1.625],[6,0.6,0.6,5,2.875,1.9375],[8,0.8,0.8,7.5,3.5,2.25],[15,1,1,10,4.125,2.5625],[30,1.2,1.2,13,4.75,2.875],[45,1.4,1.4,16,5.375,3.1875],[60,1.6,1.6,19,6,3.5],[80,1.8,1.8,22,6.625,3.8125],[100,2,2,25,7.25,4.125],[100,1,1,12.5,7.25,4.125]]}
(470 chars)
"v" should be fine in 8 bits
"p" values can fit into 5 bits (max. is 29), would need an additional 5-bit length field
"l" values could fit into 4 bits, would need an additional 4-bit length field
"s" values would have to be 32-bit floats, alas. no length fields needed; just 11*6