
Random Card Rewards Mod - English Introduction
Overview
Random Card Rewards is a versatile Minecraft mod that adds a card-based reward system. Players can draw random cards from customizable pools to receive effects, items, or execute commands. Entirely data-driven and reload-friendly, it integrates seamlessly with datapacks and KubeJS.
🔧 Key Features
Interactive Card Selection
- Open a reward interface:
/randomcardrewards rewards <pool> <count> <player> - List all card pools:
/randomcardrewards list_pools
- Open a reward interface:
Fully Data-Driven
- Cards and pools defined via JSON in
data/randomcardrewards/recipes. - Supports
/reloadfor instant updates. - Uses Minecraft's recipe system for automatic client sync.
- Cards and pools defined via JSON in
Customizable Card Types
- Effects (e.g., Strength, Speed)
- Items (with adjustable quantities)
- Commands (execute any command)
- None (blank cards)
For Modpack Creators
- KubeJS Integration: Dynamically generate pools and reward players.
- Events: Hook into
CardInvokeEvent.Pre/Postto customize logic. - Datagen Support: Auto-generate assets via
RCRRecipeProvider.java.
📝 JSON Configuration Examples
1. Add a Card
{
"type": "randomcardrewards:card",
"content": {
"type": "effect", // effect/item/command/none
"content": "minecraft:strength", // Effect/Item ID or command
"i1": 10, // Amplifier (effect) or item count
"i2": 1000 // Duration (ticks)
},
"id": "yourmod:fire_resistance",
"meta": {
"nameKey": "card.fire_resistance.name", // Localization key
"descriptionKey": "card.fire_resistance.desc",
"texture": "yourmod:textures/cards/fire_resistance.png"
}
}
2. Create a Card Pool
{
"type": "randomcardrewards:card_pool",
"id": "yourmod:nether_pool",
"pool": [
"yourmod:fire_resistance",
"yourmod:blaze_powder",
"yourmod:ghast_tear"
]
}
⚡ KubeJS Integration
Dynamically reward players:
// Create & reward a temporary card pool
const poolid = RandomCardRewardsAPI.createTmpCardPoolFromPoolRandomly("nether_pool", 5);
RandomCardRewardsAPI.rewardPlayerTmpPool(player, poolid, true); // Auto-remove pool after use
🎮 Events for Developers
RCREvents.cardInvokePre: Cancel before a card activates.RCREvents.cardInvokePost: Trigger actions after card use.
Access card data (RCRCard) and the player.
Data Structure
Cards include:
id(ResourceLocation)- Localization keys (
nameKey,descriptionKey) texturepathcontent(type, effect/item/command, and parametersi1/i2)
Perfect For
- Custom minigames 🎮
- RPG quest rewards 🏆
- Server events 🎉
- Modpack progression systems ⚙️
GitHub Source | Requires Forge
Allow using in modpacks.

