efd-trading-card-base/README.md
Cal Corum 9704516dd7 Initial commit: Trading Card Mod scaffold for Escape from Duckov
Set up project structure with:
- .NET Standard 2.1 project targeting Duckov modding API
- ModBehaviour entry point with card set loading system
- Harmony patching infrastructure (depends on HarmonyLoadMod)
- Pipe-separated card definition format for user-generated content
- Example card set and documentation

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 18:55:04 -06:00

137 lines
3.9 KiB
Markdown

# 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:**
- [HarmonyLib (HarmonyLoadMod)](https://steamcommunity.com/sharedfiles/filedetails/?id=3589088839) - Subscribe on Steam Workshop
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](https://steamcommunity.com/sharedfiles/filedetails/?id=3589088839) 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:
```bash
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.