Skip to content

Instantly share code, notes, and snippets.

View aaronfranke's full-sized avatar
🤖
Waiting 4 Godot

Aaron Franke aaronfranke

🤖
Waiting 4 Godot
View GitHub Profile
@aaronfranke
aaronfranke / retrozone_wicker_taur_minecraft_cpm
Last active November 6, 2023 10:52
RetroZone Wicker Taur Minecraft Model Custom Player Models
U6IBRkZGAAD6rAAA9q31WPVYAAAAAAAAAAIkACgPMgAAAAD1WPqsAAD1WAAAAAAAAAoBbh4FCgUD/wP/+AIAAAAAAAAAAAAA/HALAOju6AUKBfwBA//4Av6rAAAAAAAAAAADjgsA6O7oIw8oAAAD//VY+1cAAPYlAAAAAAAACgFcHjJQFAAAB/4KqPlX8AT6rAAAAAAAAAoAfuyCPBQeD/z4AgKq+AL9VvwBAAD1VPxwCgIsFDwUHvAE+AICqvgC/Vb8AQAACqoDjgoCLBQMMgwKqAAABVT+q/gC/qv8cAAA/HAKABHsGwoKKAAAA//2rf6rAAAAAAOOAAAAABIAEewbDDIM9VgAAAVU/gH4Av6r/HAAAAOOCgAR7BsKCigAAAP/9q3+qwAAAAADjgAAAAAUABHsGwAAAAAAAqoAAAAAAAAAAAAAAAAAAAAAAAAAKDwoAADqsP6r+qz1WPqsAAAAAAAAAAIANlAKUAAAAqoAAPVYAAD1WAAAAAAAABcAFxgc+vrIAAA6nBKm3rPes96zAAAAAAAAAQEALPr6+gAAAADtWt6z3rPeswAAAAAAABkALS0toJZkAAAAAOqw6rD4AvKuAAAAAAAAAQAtLS2M+mQAACKi+qztWt1e6rDxxgAAAAAbAQAAUFBQD/wFVO1a9Vj1WPVYBxz44gAAGwAtLS0yMhQAAAAA9Vj5V/lX/VYAAAAAAAAdATIKHh4UAAAAAPVY/AH8AfqsAAAAAAAAHQEzC2RkZBFRHU7oBvKu8q7yrgcc9VQAABsALS0tRkYUAAAAAPKu9q32rf1WAAAAAAAAIAEyADIyFAAAAADyrvlX+Vf6rAAAAAAAACABMwFQUFDwBAVU7Vr1WPVY9VgHHAccAAAbAC0tLTIyFAAAAAD1WPlX+Vf9VgAAAAAAACMAAfABHh4UAAAAAPVY/AH8AfqsAAAAAAAAIwEzC2RkZO6vHU7oBvKu8q7yrgccCqoAABsALS0tRkYUAAAAAPKu9q32rf1WAAAAAAAAJgEy
@aaronfranke
aaronfranke / prestonbess_goat_minecraft_cpm
Last active January 1, 2024 08:37
Prestonbess Goat Minecraft Model Custom Player Models
U0lQUFAAAAAAAAD1WOqw9VgAAAAAAAAAASAAUFBQAAAAAAAA9VjqsPVYAAAAAAAAAAEAAB4UAQKq9Vj3xQAA/VYAAAAAAAAAAAsBQTkeFAH1WPKu9/wAAAAA/7wAAAAAAAALAUE5HhQBAqryrvVSAAAAAAAAAAAAAAAACwFBOR4UAfVY8q71UgAAAAD/vAAAAAAAAAsBQTkoFBQAAPqs8Vn6rAAAAAAAAAAAAAALARoAFAoKAAAAAAAA/Vb/eP+8+k4AAAAAEAEcBQ8eDwgt7zjzzf4I+AIAAPVUBxwHHAsBAEUPFA8AAPgCAAD+CPqsAADxxgOOAAASAQBMDx4PAAD6rAAA/gj4AgAA5xsDjgAAEwEAUg8UDwAA+AIAAP4I+qwAAOcbA44AABQBAFkPHg8AAPqsAAD+CPgCAADnGwOOAAAVAQBfDxQPAAD4AgAA/gj6rAAA8cYAtgAAFgEAZg8eDwAA+qwAAP4I+AIAAOcbA44AABcBAGwPFA8AAPgCAAD+CPqsAADuNwOOAAAYAQBzDx4PAAD6rAAA/gj4AgAA5xsDjvjiGQEAeg8UDwAA+AIAAP4I+qwAAO43A4744hoBC3sPCg8AAAAAAAD9VgAAAAAY4wqqA44SAQBADx4P96rvOPPN/gj4AgAA9VT44vjiCwEURQ8UDwAA+AIAAP4I+qwAAPHG/HAAAB0BFEwPHg8AAPqsAAD+CPgCAADnG/xwAAAeARRSDxQPAAD4AgAA/gj6rAAA5xv8cAAAHwEUWQ8eDwAA+qwAAP4I+AIAAOcb/HAAACABFF8PFA8AAPgCAAD+CPqsAADxxv9IAAAhARRmDx4PAAD6rAAA/gj4AgAA5xv8cAAAIgEUbA8UDwAA+AIAAP4I+qwAAO43/HAAACMBFHMPHg8AAPqsAAD+CPgCAADnG/xwBxwkARR6DxQPAAD4AgAA/gj6rAAA7jf8cAccJQEeew8KDwAAAAAAAP1WAAD/vBjjEccHHB0BFEAeFAoJUvKu+qwAAP1WAAAA
@aaronfranke
aaronfranke / sashimi_avali_minecraft_cpm
Last active October 25, 2023 22:04
Sashimi Avali Minecraft Model Custom Player Models
U8kBHkYoAAD9VgAA/AHtWvgCAAAAAAAAAAIQAR5GKAAAAAAAAPwB7Vr4AgAAAAAAAAoCdgFQRigAAP1WAAD1WO1aAAAAAAAAAAAAAgENUEYoAAAAAAAA9VjtWgAAAAAAAAAADAJnDShGHgP//Vb4AgAA7VoAAAAA27oAAAACHwIoRh4BJQAA/3gAAO1aAAAAAAAAAAAOAoUCKDIAAADwBAAAAAAAAP/eAAAAAAAADgIKeigyAAAAAAAAAAAAAAD/vAAAAAAAABACCoAoMgAAAPAEAAAAAAAA/94AAAAAAAAOAh16KDIAAAAAAAAAAAAAAP+8AAAAAAAAEgIdgCgyAAAA8AQAAAAAAAD/3gAAAAAAAA4CCocoMgAAAAAAAAAAAAAA/7wAAAAAAAAUAgqNKDIAAADwBAAAAAAAAP/eAAAAAAAADgIdhygyAAAAAAAAAAAAAAD/vAAAAAAAABYCHY0oMgAAAPAEAAAAAAAA/94AAAAAAAAOAgqUKDIAAAAAAAAAAAAAAP+8AAAAAAAAGAIKmigyAAAA8AQAAAAAAAD/3gAAAAAAAA4CHZQoMgAAAAAAAAAAAAAA/7wAAAAAAAAaAh2aKDIAAADwBAAAAAAAAP/eAAAAAAAADgIKoSgyAAAAAAAAAAAAAAD/vAAAAAAAABwCCqcoMgAAAPAEAAAAAAAA/94AAAAAAAAOAh2hKDIAAAAAAAAAAAAAAP+8AAAAAAAAHgIdpygyAAAA8AQAAAAAAAD/3gAAAAAAAA4CCq4oMgAAAAAAAAAAAAAA/7wAAAAAAAAgAgq0KDIAAADwBAAAAAAAAP/eAAAAAAAADgIdrigyAAAAAAAAAAAAAAD/vAAAAAAAACICHbQUHgAAAPgCAAAAAAAA/94AAAAAAAAOAjp6FB4AAAD4AgAAAAAAAP/eAAAAAAAADgI6fxQeAAAA+AIAAAAAAAD/3gAAAAAAAA4COoQUHgAAAPgCAAAAAAAA/94AAAAAAAAOAjqJFB4AAAD4AgAAAAAAAP/e
@aaronfranke
aaronfranke / duncan_roo_minecraft_cpm
Last active February 6, 2024 20:48
Duncan Roo Minecraft Model Custom Player Models
UyxQUFAAAP1WAAD1WPVY9VgAAAAAAAAAAQAAEQoKAAAEqflX/b3+q/+8AAAAAAAACgBYLS8UBx4AAAAAAKr9Vv/e+K0AAAAAAAALAisAFA0eAAD/VgAA/Vb9VvlXAAAAAAAACwIhAA8yCgFV/AEAAAAA8q4AAAAAAAAKqgoBegAPMgr+q/wBAAD8AfKuAAAAAAAA9VQKAXoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaZFoAAB/4AAD0A/Ku9AMAAAAAAAABAUAtPDI8AAAGqQf++AL5VwAABxwAAAAAEQFoHigoKAAAAAANUvqs+qwAAAqqAAAAABIBcBYeHh4AAP6rB/78Af1WAAAKqgAAAAATAXQQFBQUAAABVQap/Vb9VgAACqoAAAAAFAF4DAoKCgAAAAAFCP6r/qsAAAccAAAAABUBciM8PDwAAA/8AAD4AvgC+AIAAAAAAAABAUAgMigyAAAFVAAA+Vf6rPlXAAAAAAAAAQFCFR4oHgAAAAAAAPwB+Vf8AQAAAAAAAAEBQwwegh4AAAAAAAD8Af1W/AEAAAAAAAACASIwAAAAAAAP/P1WAAAAAAAAAAAAAAAAAgAAAAAegh4AAAAAAAD8Af1W/AEAAAAAAAADASoQAAAAAAAP/P1WAAAAAAAAAAAAAAAAAwAAAAAeRigAAAAAAAD8Afqs+qzVVAAAAAAEARExGRlGAAAJUwFV/Kz8rPwBAAAAAAAAHgEQNShQFAAAAAAOp/qs/Kz9VuqpAAAAAB8CNBYeRigAAAAAAAD8Afqs+qzVVAAAAAAFARExGRlGAAAJUwFV/Kz8rPwBAAAAAAAAIQEQNShQFAAAAAAOp/qs/Kz9VuqpAAAAACICNBYAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAAAAAAoKCgAA/7zzxv6r/qv+qwqqAAAAACQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAAAAAAoPBQAABzH5PP6r/gH/VvHGAAAAACYIAgIAAAAAAAAAAAAA
@aaronfranke
aaronfranke / float_table_generator.py
Last active August 6, 2023 08:48
IEEE-style floating-point format table generator (Python)
# IEEE-style floating-point format table generator (Python)
# Python version: https://gist.github.com/aaronfranke/0d1217e521c4ec784d39e92b5f039115
# GDScript version: https://gist.github.com/aaronfranke/8b2c39bfbe48068c574e4daf2710c875
import copy
# SEMB values can describe any IEEE-like binary floating-point format.
sign_bit: bool = True
exponent_bits: int = 4
mantissa_bits: int = 3
## Can be set to an integer. If null, the bias will be automatically determined
@aaronfranke
aaronfranke / float_table_generator.gd
Last active August 6, 2023 08:11
IEEE-style floating-point format table generator (GDScript)
# IEEE-style floating-point format table generator (GDScript)
# Python version: https://gist.github.com/aaronfranke/0d1217e521c4ec784d39e92b5f039115
# GDScript version: https://gist.github.com/aaronfranke/8b2c39bfbe48068c574e4daf2710c875
extends Node
# SEMB values can describe any IEEE-like binary floating-point format.
var sign_bit: bool = true
var exponent_bits: int = 2
var mantissa_bits: int = 1
## Can be set to an integer. If null, the bias will be automatically determined
@aaronfranke
aaronfranke / inertia-chatgpt.md
Last active February 21, 2023 19:03
Inertia Tensor ChatGPT

Aaron Franke

I am working on a standard for specifying parameters for rigid body physics. This standard needs to support multiple physics engines. I already have parameters for the body's mass, linear velocity, and angular velocity. I need to add a new parameter for the inertia tensor, which describes the body's resistance to be rotated in different directions. The problem is that some physics engines implement the inertia tensor as a 3x3 matrix, and some physics engines implement inertia as a Vector3. I am thinking that I should specify the parameter as a 3x3 matrix, and include algorithms to convert to and from Vector3 inertia to support those physics engines that use Vector3 inertia. What is the formula to do this? Also, can you evaluate if my approach is portable?

ChatGPT

Your approach of specifying the inertia tensor as a 3x3 matrix and including algorithms to convert to and from Vector3 inertia is a good way to handle the variability in how different physics engines implement inertia. To convert be

@aaronfranke
aaronfranke / godot-marshalls-simplification-proposal.cpp
Last active April 14, 2022 03:34
Godot Marshalls Simplification Proposal
// Here are three of the cases:
case Variant::VECTOR2: {
Vector2 val;
if (type & ENCODE_FLAG_64) {
ERR_FAIL_COND_V((size_t)len < sizeof(double) * 2, ERR_INVALID_DATA);
val.x = decode_double(&buf[0]);
val.y = decode_double(&buf[sizeof(double)]);
if (r_len) {
@aaronfranke
aaronfranke / convert-to-godot4.sh
Last active April 2, 2024 16:20
This script bulk-renames many things in Godot 3 projects to hopefully make it easier to convert them to Godot 4.
#!/usr/bin/env bash
# This script bulk-renames many things in Godot 3 projects to hopefully
# make it easier to convert them to Godot 4. The goal is to do as much
# replacing as possible here so that the diffs Godot produces are smaller.
set -uo pipefail
IFS=$'\n\t'
# Loops through all text files tracked by Git.
@aaronfranke
aaronfranke / SteamSystemInformationAaronFranke.txt
Created May 7, 2019 02:53
Steam System Information Aaron Franke
* System information from steam (`Steam` -> `Help` -> `System Information`) in a [gist](https://gist.github.com/):
Computer Information:
Manufacturer: Unknown
Model: Unknown
Form Factor: Desktop
No Touch Input Detected
Processor Information:
CPU Vendor: GenuineIntel