CiCisTrinketAndBindingFramework

版本 v2.2.6·更新於 2026-09-25

Library for White Knuckle. Lets mods register custom Trinkets, Bindings, and gamemode modes. v2.2.2: Endless Parasite and SB12 Anomaly modes for Parasite, with challenges. Nebulaetrix's Mutators tempo

模組介紹 作者原文

CiCi's Trinket & Binding Framework

A library mod for White Knuckle. Lets other mods register custom Trinkets (run-start picks), Bindings (run-start picks with stronger gameplay effects), and Custom Modes (gamemode-settings toggles like vanilla Hard Mode / Iron Knuckle) so they appear in the picker and the settings panel on Fresh Game.

Nebulaetrix's Mutators are temporarily back (with their permission), since their own mod has not been updated for the current game. You will find them in the Campaign settings panel under Modded > Nebulaetrix's Mutators. They will be removed again once Nebulaetrix's mod is back up. The framework exposes the CustomModeRegistry API so any mod can add its own modes the same way.

2.2.2 adds two modes for Parasite — Endless Parasite and SB12 Anomaly — in the Parasite settings panel, plus a Challenges window on the main menu with two challenges for them.

For players

Just install it. You'll only need it if a mod you use lists this as a dependency — Mod Manager will install it automatically.

For modders

The framework exposes two independent registries:

  • TrinketRegistry — register custom Trinkets and Bindings that appear in the picker on Fresh Game.
  • CustomModeRegistry — register custom gamemode modes (toggles like vanilla Hard Mode / Iron Knuckle) that appear in the settings panel.

The two systems are unrelated — use one, the other, or both.

Setup (shared by both systems)

Reference the framework's DLL in your.csproj, then mark your plugin so BepInEx loads us first:

using BepInEx;

using TrinketAndBindingFramework;

using UnityEngine;

using System.Collections.Generic;

[BepInPlugin("com.yourmod.example", "Example Mod", "1.0.0")]

[BepInDependency(TrinketAndBindingFramework.Plugin.GUID)]

public class ExampleMod: BaseUnityPlugin

{

private void Awake()

{

// Trinket / binding / mode registration goes here.

}

}

Trinkets & Bindings (TrinketRegistry)

The picker on Fresh Game lists every registered trinket and binding. The framework handles the UI (icon, title, description tint, mutex enforcement, pip cost), unlock bypass, item granting, and leaderboard gating. You register entries once at Awake.

Register a Trinket

A Trinket is a small starter pick — usually a starter item or perk. Examples: Wall Runner (climbing axes), Sawed-Off (shotgun + shells).

TrinketRegistry.RegisterTrinket(

id: "yourmod_my_trinket", // unique string

title: "My Trinket", // shown in picker

description: "What it does in one line.",

flavorText: "Optional italic tagline under the description.",

cost: 1, // picker slot cost

icon: myIconSprite, // 32x32-ish Sprite

itemsToGrantFactory: () => new List { myItemTemplate });

All parameters except id, title, description are optional.

Register a Binding

A Binding is a run-modifier — usually changes gameplay rules and increases score. Examples: Alpine Purist (climbing tools banned, axes red & breakable), Infestation (more enemies).

TrinketRegistry.RegisterBinding(

id: "yourmod_my_binding",

title: "My Binding",

description: "Makes the run harder in some way.",

flavorText: "Optional flavor.",

cost: 1,

scoreMultiplierBonus: 0.5f, // +0.5x run score

scoreBonus: 0f, // flat bonus

icon: myIconSprite);

Same signature as RegisterTrinket — under the hood the framework just flags isBinding=true and tints the picker title differently.

Grant starter items

itemsToGrantFactory runs at run start (not at registration), so you can lazy-build your item templates without worrying about asset-manager readiness at Awake:

itemsToGrantFactory: () =>

{

try { EnsureMyItemTemplate(); } catch { }

if (MyItemTemplate == null) return new List();

return new List { MyItemTemplate, MyItemTemplate }; // 2 copies

}

The returned Item_Object instances are template prefabs — vanilla clones them for the player's bag.

Mutex groups (mutually-exclusive picks)

When two of your trinkets shouldn't both be selected (e.g. different starter weapon variants), wire them into a mutex group:

Trink

安裝與使用 安裝:按包內說明操作

  1. 解壓本站下載的壓縮包,先讀包內的 readme / 說明檔案。
  2. 多數模組依賴遊戲的模組載入器:常見做法是用社群模組管理器(如 r2modman)選中本遊戲安裝,由管理器自動處理載入器與依賴。
  3. 手動安裝時,把模組檔案放進遊戲目錄下對應的 Mod / plugins 資料夾。
  4. 啟動遊戲確認載入成功;帶「前置依賴」的模組需要把依賴一併安裝。

不同模組的安裝位置差異較大,包內說明是最可靠的依據。

前置依賴

下面這些內容需要先安裝,否則該模組不會生效:

BepInEx-BepInExPack

檔案與校驗

檔案名稱
CiCisTrinketAndBindingFramework-2.2.6.zip
檔案大小
8.4 MiB