Skip to content

Instantly share code, notes, and snippets.

public class BubblePatch(MethodBase target, HarmonyMethod Patch, HarmonyPatchType patchType)
{
private BubblePatch(MethodBase target, Type patcher, string name, HarmonyPatchType patchType) : this(target, new HarmonyMethod(patcher, name), patchType) { }
private BubblePatch(MethodBase target, Action patchDelegate, HarmonyPatchType patchType) : this(target, new HarmonyMethod(patchDelegate), patchType) { }
public bool IsPatched = false;
public static BubblePatch FirstConstructor(Type target, Type patcher, HarmonyPatchType patchType)
{
return new BubblePatch(target.GetConstructors().First(), patcher, "_ctor", patchType);
@factubsio
factubsio / test.md
Last active January 10, 2026 14:43

Install vscode: https://code.visualstudio.com/download

Run vscode

Press ctrl-shift-p type Install from VSIX press Enter -> select the bubblemod-vscode-0.0.1.vsix you downloaded

**Important: ** File -> Open Folder... (you can create a new folder, but make sure a folder is opened!)

Press ctrl-shift-p type start a mod

blueprint Truenamer extends BlueprintCharacterClass {
LocalizedName: "Truenamer"
LocalizedDescription:
"A truenamer's source of power is his encyclopedic knowledge of the First Language also known as Truespeech."
"Containing all things and concepts that have and will ever be,"
"perfect knowledge of Truespeech would effectively mean perfect control over the universe itself."
"Though it is quite impossible for the limited mind of a mortal humanoid to fathom the entirety of the First Language,"
"there are those who devote their lives to learning even the tiniest fragment of what it has to offer and are capable"
"of shifting the universe by reciting dozens of words and phrases on a daily basis."
@factubsio
factubsio / truenamer.ts
Created January 5, 2026 19:10
truenamer3
blueprint Truenamer extends BlueprintCharacterClass {
LocalizedName: "Truenamer"
LocalizedDescription:
"A truenamer's source of power is his encyclopedic knowledge of the First Language also known as Truespeech."
"Containing all things and concepts that have and will ever be,"
"perfect knowledge of Truespeech would effectively mean perfect control over the universe itself."
"Though it is quite impossible for the limited mind of a mortal humanoid to fathom the entirety of the First Language,"
"there are those who devote their lives to learning even the tiniest fragment of what it has to offer and are capable"
"of shifting the universe by reciting dozens of words and phrases on a daily basis."
@factubsio
factubsio / truenamer.ts
Created January 3, 2026 22:29
triuenamer2
blueprint Truenamer extends BlueprintCharacterClass {
LocalizedName: "Truenamer"
LocalizedDescription:
"A truenamer's source of power is his encyclopedic knowledge of the First Language also known as Truespeech."
"Containing all things and concepts that have and will ever be,"
"perfect knowledge of Truespeech would effectively mean perfect control over the universe itself."
"Though it is quite impossible for the limited mind of a mortal humanoid to fathom the entirety of the First Language,"
"there are those who devote their lives to learning even the tiniest fragment of what it has to offer and are capable"
"of shifting the universe by reciting dozens of words and phrases on a daily basis."
@factubsio
factubsio / parser.ts
Created January 3, 2026 00:13
bubble lang parser at somew version
import { isFeatureDefNode, isPropertyNode } from './ast-utils';
import {
Token,
TokenType,
AstNode,
BlueprintNode,
PropertyNode,
PrimitiveLiteralNode,
AstKind,
BodyStatement,
@factubsio
factubsio / truernamer.cs
Created January 2, 2026 16:59
truenamer?
blueprint Truenamer extends BlueprintCharacterClass {
LocalizedName: "Truenamer"
LocalizedDescription: "A truenamer's source of power is his encyclopedic knowledge of the First Language, also known as Truespeech. Containing all things and concepts that have and will ever be, perfect knowledge of Truespeech would effectively mean perfect control over the universe itself. Though it is quite impossible for the limited mind of a mortal humanoid to fathom the entirety of the First Language, there are those who devote their lives to learning even the tiniest fragment of what it has to offer and are capable of shifting the universe by reciting dozens of words and phrases on a daily basis. A truenamer exercises his power over Truespeech through the use of recitations. Recitations resemble spells and represent knowledge of hundreds of variations of a core concept within the Language.\nThrough precise knowledge of his surroundings and the vocabulary used to describe the current state of the local area, a truena
const vbar = '│';
const hbar = '─';
const cross = '┼';
const v_and_r = '├';
const v_and_l = '┤';
const d_and_h = '┬';
const u_and_h = '┴';
const d_and_r = '┌';
const d_and_l = '┐';
const u_and_r = '└';
using BubbleRaces.Config;
using BubbleRaces.Extensions;
using BubbleRaces.Utilities;
using HarmonyLib;
using Kingmaker;
using Kingmaker.Blueprints;
using Kingmaker.Blueprints.Area;
using Kingmaker.Blueprints.CharGen;
using Kingmaker.Blueprints.Classes;
using Kingmaker.Blueprints.Classes.Selection;
using BubbleRaces.Config;
using BubbleRaces.Extensions;
using BubbleRaces.Utilities;
using HarmonyLib;
using Kingmaker;
using Kingmaker.Blueprints;
using Kingmaker.Blueprints.Area;
using Kingmaker.Blueprints.CharGen;
using Kingmaker.Blueprints.Classes;
using Kingmaker.Blueprints.Classes.Selection;