Minecraft Card Battle
Turn-based card battles for one or two players, played on a 25×25 chunk map inside Minecraft — no separate game, and no client mod required beyond Forge. Face another player, or take on a villager.
How a match works
- You and your opponent — another player, or the villager — take turns on a shared 25×25 map. Each turn you may move, gather, craft, smelt, play cards and attack; the battle screen draws the whole table itself: map, hand, board, action feed and buttons.
- Gathering yields the materials of the biome you stand in. Spend a torch and you mine instead — ores, coal, gold and, yes, diamonds.
- Crafting behaves like a vanilla table with a server-authoritative cursor: left/right click, drag, shift-click piles, drag-to-distribute.
- Smelting turns N furnaces into a batch of 3N input for N fuel, and a settled product can be taken out even while the next batch is still burning.
- Combat has real depth: armour reduces damage per worn piece, and the pieces an attack wears down are exactly the pieces that reduced the damage; weapons have their own reach and damage curves.
What makes it different
- Everything is drawn in the world. The tabletop, the cards, the buttons and the animations are hand-drawn at runtime — there is no separate GUI framework to install.
- A map you can read. 53 overworld biomes collapse into 45 distinct colours, so one glance at the board tells you which biome a chunk belongs to. Modded or datapack biomes can be given exact colours in
config/cardbattle-biome-colors.json; anything unknown gets a stable colour derived from its id. - Balance lives in a text file.
config/cardbattle/config.txtis generated on first launch and holds health and hunger, action costs, armour values per piece, weapon damage by distance, gather weights, map size and turn timings.
Requirements
- Minecraft 1.20.1 with Forge 47.2.0 (any Forge 47+ build).
- Nothing else. No library dependency.
Configuration On first launch the mod writes config/cardbattle/config.txt. Delete the file to regenerate defaults; old configs keep working — new keys fall back to their defaults.
Known limits
- The battle screen is designed for the default GUI scale; at very small window sizes the table compresses and the hand scrolls rather than overlapping the map.
- Player versus player works — invite someone and you share the same table, each with your own hand, identity and turn — but it has had far less playtesting than the villager match. Please report anything odd.
- The villager opponent is a rules-driven AI rather than a second player.

