CustomTextureReplacer

版本 v1.7.0·更新於 2025-10-23

Runtime texture, sprite, and mesh override toolkit for TCG Card Shop Simulator with live watchers, card metadata editing, and debug dumps.

模組介紹 作者原文

Custom Texture Replacer

Runtime mod for TCG Card Shop Simulator that lets you swap textures, meshes, and card metadata while the game is running. Drop files in, press a key if you want, and the game refreshes itself without a restart.

Features

  • Live texture swapping - watches every CustomTextures folder under BepInEx/plugins/ (including sibling mods) and reloads PNGs automatically.
  • Persistent sprite overrides - icons dropped into CustomTextures stay applied across atlas reloads and UI updates (store thumbnails, card icons, etc.).
  • Mesh and material overrides - point MeshOverrides.json at Unity asset bundles to replace meshes, skinned meshes, colliders, and renderer materials at runtime.
  • Mesh-aware card metadata - define card blocks inside MeshOverrides.json to rename store signage, checkout bars, price panels, and in-world props with new display names/aliases.
  • Shelf population controls - optional shelfCount clamps how many instances of a mesh stay active per shelf root to stop overfilling figurine displays.
  • Hot reloads and watchers - edits to textures, mesh overrides, or card metadata JSON are picked up immediately.
  • Configurable diagnostics - optional debug logging, suppressed Unity spam, and manual dump triggers keep runtime overhead low but give you tools when you need them.

Key Config Options (BepInEx/config/com.duckieray.cardshop.customtextures.cfg)

  • EnableAutomaticDumps - when true, texture/sprite/mesh dumps regenerate on load; otherwise use the hotkeys.
  • EnableDebugLogFile - toggle detailed logging to CustomTextureReplacer.debug.log.
  • SuppressRectTransformParentWarning - hides Unity's noisy RectTransform parent warnings (enabled by default).
  • UseReplacementNames, LogNewTextureNames, LogAssetLoads, and the mesh/card settings continue to behave as in previous releases.

Installing or Updating

  • Copy build/CustomTextureReplacer.dll to BepInEx/plugins/CustomTextureReplacer/ (or the equivalent r2modman profile directory).
  • Launch the game. Reference dumps such as TexturesList.txt and MeshesList.txt are only generated when you press the hotkeys or enable EnableAutomaticDumps.
  • Optional: set config values to control logging, dumps, or replacement name behaviour before you start playing.

Tip: close the game before swapping DLLs; Windows otherwise keeps the previous binary locked in memory.

Replacing Textures

  • Inspect TexturesList.txt (generate via F8 if needed) to find the texture name and resolution.
  • Drop a PNG with the exact texture name (case-insensitive) into any watched CustomTextures folder. Default: BepInEx/plugins/CustomTextures.
  • The mod reloads the file automatically. A CustomTextures.refresh.now trigger or the F8 key remains available for bulk refreshes.

If UseReplacementNames=true, you can bake a new display name into the filename: OriginalName-New_Display_Name.png. Underscores become spaces when no other card metadata is present.

Replacing Meshes

Mesh swapping uses Unity asset bundles (matching the game's Unity version) plus a MeshOverrides.json descriptor. Place the descriptor next to your textures or under BepInEx/plugins/CustomTextureReplacer.

{

"overrides": [

{

"target": "PiggyA_Mesh",

"bundle": "dark_knight_armored.bundle",

"meshHint": "Armored",

"materialHints": ["Body", "Head", "Pack"],

"shelfCount": 3,

"card": {

"displayName": "Armored Batman Statue",

"aliases": ["Pigni Plushie", "Pigni Plushie (12)"]

}

}

]

}

  • meshHint narrows the auto-selected mesh name (case-insensitive).
  • materialHints prioritises materials whose names contain each hint.
  • shelfCount limits active duplicates under each shelf root; omit or set -1 to keep the original layout.
  • card is optional but recommended when you need UI labels to follow the new figurine name. Aliases cover in-game variations such as Foo (6).

Newly spawned MeshFilter, SkinnedMeshRenderer, and MeshCollider components trigger the override scan immediately, so custom stock shows up on first appearance.

Editing Card Me

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

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

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

前置依賴

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

BepInEx-BepInExPack

檔案與校驗

檔案名稱
CustomTextureReplacer-1.7.0.zip
檔案大小
140.0 KiB