Skip to content

Instantly share code, notes, and snippets.

View JJL772's full-sized avatar
:trollface: :trollface: :trollface: :trollface:

Jeremy L. JJL772

:trollface: :trollface: :trollface: :trollface:
View GitHub Profile
JJL772 /
Last active December 14, 2023 05:54
Building EPICS Base + Extensions

Skipping bhc-tst-ek9000, not online

Skipping bhc-las-ek9000-01, not online

Skipping bhc-mec-ek9000-01, not online

Skipping bhc-las-crixs-inj-01, not online


Hardware version: 1027

Software version: 1.3.0

JJL772 /
Last active May 27, 2023 06:41
Building EPICS base and modules with clang



make CC=clang CCC=clang++ CMPLR_CLASS=clang

Linux mingw32 x86_64

make -j12 CROSS_COMPILER_TARGET_ARCHS+=windows-x64-mingw

JJL772 /
Created March 5, 2023 09:19
git repo migration notes

Steps for migrating Git repos (including LFS objects) to GitHub

Documents the steps taken to migrate P2CE's internal git repos to github with self-hosted LFS storage (literally just a gitlab instance lol).

Step 1: Mirror LFS Contents (Do this first!)

This is done first because LFS is entirely separate from the git repo itself. Relying on .lfsconfig makes it a bit tricky to mirror using "standard" procedures since there's typically no working tree available.

  1. Clone your repo
  2. Run git lfs fetch --all. We'll need all LFS objects here!
JJL772 / mod-config.kv3
Last active April 24, 2023 09:36
Generic mod config
- handle mounting/unmounting of addons
- download/upload of UGC files
- mounting/unmounting of games too?

Game Rules System

System that helps manage player and map specific configurations.

System Overview

  • Comprised of three layers: player, map and config. Think of this as a stack.
  • Each layer has a different priority, map being the lowest, and player being the highest. Priority determines where and which options may be overridden.
  • Since the player layer has the highest priority, it may override any map-level or config-level option, assuming that option isn't limited to a specific layer(s).
  • The config layer is intended to be used by speedrun or other gameplay altering configs. For example, you'd create a config layer for hl2 to enable suit, disable health regen, enable flashlight, etc. This layer could then be activated on map load when the player selects the hl2 campaign from the start game UI.
JJL772 / mimalloc-stub.c
Last active July 15, 2022 00:22
Tiny library to override reallocarray for valgrind
// Compile with: gcc -o -shared mimalloc-stub.c
#include <stdlib.h>
#include <stddef.h>
void* reallocarray(void* ptr, size_t nmemb, size_t size) {
return realloc(ptr, nmemb*size);
JJL772 /
Created April 19, 2022 05:38
Useful debug commands for p2ce/momentum

Debugging Commands/Cvars

Below is a useful list of debugging commands and console variables. They can be used to display material names, entity info and even visualize entity IO.

General Debugging

Name Acceptable Values Description
version Print version info to console
JJL772 / client.classes.txt
Last active March 20, 2022 00:03
Aperture desk job classes & inheritance tree for client, host and server libraries
AnimGraphUtils::CTraceFilterAnimGraphSlope: CTraceFilterSkipPlayersAndNPCsAndChildren
CAI_AbilityServices::NetworkVar_m_AbilityBeingUsed: AWS_AbilityUsageData_t
CAI_AbilityServices::NetworkVar_m_AbilityToBeUsed: AWS_AbilityUsageData_t
CAI_BaseActorVData: CAI_DefaultNPCVData
CAI_BaseNPCVData: CEntitySubclassVDataBase
CAI_DefaultNPCVData: CAI_BaseNPCVData