EFD Trading Card Mod - Custom Foundry VTT trading card system
Go to file
Cal Corum 0d9ab65422 Implement Phase 3: Storage system with slot filtering
- Add StorageHelper.cs for creating filtered storage items
- Create Card Binder (9 slots) and Card Box (36 slots)
- Slots use requireTags to only accept TradingCard tagged items
- Update debug spawn (F9) to cycle through cards and storage items
- Move initialization from Start() to Awake() to fix save/load crash
- Add safety patch for missing item warnings
- Items now persist correctly across game saves

Storage items clone base item 1255 which has slot support, then
configure slots with TradingCard tag requirement.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-19 17:12:03 -06:00
.claude Add unit testing framework and refactor parsing logic 2025-11-18 19:40:43 -06:00
CardSets/ExampleSet Implement Phase 2: Core card framework with clone + reflection 2025-11-19 16:56:04 -06:00
src Implement Phase 3: Storage system with slot filtering 2025-11-19 17:12:03 -06:00
tests Add unit testing framework and refactor parsing logic 2025-11-18 19:40:43 -06:00
.gitignore Initial commit: Trading Card Mod scaffold for Escape from Duckov 2025-11-18 18:55:04 -06:00
CLAUDE.md Update CLAUDE.md for Phase 2 completion 2025-11-19 16:57:18 -06:00
deploy.sh Implement Phase 2: Core card framework with clone + reflection 2025-11-19 16:56:04 -06:00
info.ini Initial commit: Trading Card Mod scaffold for Escape from Duckov 2025-11-18 18:55:04 -06:00
README.md Initial commit: Trading Card Mod scaffold for Escape from Duckov 2025-11-18 18:55:04 -06:00
remove.sh Implement Phase 2: Core card framework with clone + reflection 2025-11-19 16:56:04 -06:00
TradingCardMod.csproj Implement Phase 2: Core card framework with clone + reflection 2025-11-19 16:56:04 -06:00
TradingCardMod.Tests.csproj Add unit testing framework and refactor parsing logic 2025-11-18 19:40:43 -06:00

Trading Card Mod for Escape from Duckov

A customizable trading card system that lets you add your own card sets to the game.

Requirements

Required Mod Dependency:

This mod requires the HarmonyLoadMod to be installed. It provides the Harmony library that many mods share to avoid version conflicts.

Installation

  1. Subscribe to HarmonyLib on Steam Workshop
  2. Build the mod (see Development section)
  3. Copy the TradingCardMod folder to your game's Duckov_Data/Mods directory
  4. Launch the game and enable both HarmonyLib and this mod in the Mods menu

Adding Card Sets

Creating a New Card Set

  1. Create a new folder in CardSets/ with your set name (e.g., CardSets/MyCards/)
  2. Create a cards.txt file in your folder
  3. Create an images/ subfolder for card artwork

Card Definition Format

Cards are defined in cards.txt using pipe-separated values:

CardName | SetName | SetNumber | ImageFile | Rarity | Weight | Value

Example:

Blue Dragon | Fantasy Set | 001 | blue_dragon.png | Ultra Rare | 0.01 | 500
Fire Sprite | Fantasy Set | 002 | fire_sprite.png | Rare | 0.01 | 100

Field Descriptions

Field Description Example
CardName Display name of the card "Blue Dragon"
SetName Name of the collection "Fantasy Set"
SetNumber Number for sorting (as integer) 001
ImageFile Image filename in images/ folder "blue_dragon.png"
Rarity Card rarity tier Common, Uncommon, Rare, Ultra Rare
Weight Physical weight in game units 0.01
Value In-game currency value 500

Image Requirements

  • Place images in your card set's images/ subfolder
  • Recommended format: PNG
  • Recommended size: 256x256 or similar aspect ratio

Comments

Lines starting with # are treated as comments and ignored:

# This is a comment
# CardName | SetName | SetNumber | ImageFile | Rarity | Weight | Value
Blue Dragon | Fantasy Set | 001 | blue_dragon.png | Ultra Rare | 0.01 | 500

Folder Structure

TradingCardMod/
├── TradingCardMod.dll
├── info.ini
├── preview.png
├── CardSets/
│   ├── ExampleSet/
│   │   ├── cards.txt
│   │   └── images/
│   │       └── (card images here)
│   └── YourCustomSet/
│       ├── cards.txt
│       └── images/
└── README.md

Development

Requirements

  • .NET SDK (for .NET Standard 2.1)
  • Escape from Duckov installed

Building

  1. Update DuckovPath in TradingCardMod.csproj to point to your game installation
  2. Build the project:
    dotnet build
    
  3. The compiled DLL will be in bin/Debug/netstandard2.1/

Linux Steam Paths

Common Steam library locations on Linux:

  • ~/.steam/steam/steamapps/common/Escape from Duckov
  • ~/.local/share/Steam/steamapps/common/Escape from Duckov

Testing

  1. Copy the build output to Duckov_Data/Mods/TradingCardMod/
  2. Launch the game through Steam
  3. Enable the mod in the Mods menu
  4. Check the game's log for [TradingCardMod] messages

Troubleshooting

"CardSets directory not found"

The mod will create this directory automatically. Add your card sets there.

Cards not appearing

  • Check that cards.txt follows the exact format (7 pipe-separated fields)
  • Ensure image files exist in the images/ subfolder
  • Check the game log for parsing errors

Build errors

  • Verify DuckovPath in the .csproj points to your actual game installation
  • Ensure you have .NET SDK installed with dotnet --version

License

This mod is provided as-is for personal use. Do not distribute copyrighted card artwork.

Credits

Built using the official Duckov modding framework.