Data Formats
Binary-to-Text
- Base64: https://tools.ietf.org/html/rfc4648#section-4
- Crockford Base32: https://crockford.com/base32.html
Match Code
(Crockford Base32 encoded)
15 random bytes (no semantics)
Deck Code
(Crockford Base32 encoded)
Short Form
Byte 0:
- 1 bit (most significant): 0
- 5 bits: boss card index (see table below)
- 2 bits: top 2 bits of first mini-boss card index
Byte 1:
- 3 bits: bottom 3 bits of first mini-boss card index
- 5 bits: second mini-boss card index
Bytes 2, 5, 8, …:
- 6 bits: common card index
- 2 bits: top 2 bits of common card index
Bytes 3, 6, 9, …:
- 4 bits: bottom 4 bits of common card index
- 4 bits: top 4 bits of common card index
Bytes 4, 7, 10, …:
- 2 bits: bottom 2 bits of common card index
- 6 bits: common card index
Long Form
Byte 0:
- 1 bit (most significant): 1
- 7 bits: 0 (reserved)
Bytes 1, 2, 3, …:
- 8 bits: global card ID
Match Recording
(Base64 encoded)
- Byte 0: Format version number (0)
- Byte 1: Perspective player number (1 or 2)
- Bytes 2 to 17: Player 1 shared random seed
- Bytes 18 to 33: Player 2 shared random seed
- Bytes 34 to 37: Player 1 private random seed
- Bytes 38 to 41: Player 2 private random seed
- Bytes 42 to 56: Player 1 deck card indices
- Bytes 57 to 71: Player 2 deck card indices
Remaining bytes: (repeated)
- Bytes n+0 to n+7: Turn random seed
- Byte n+8: Player 1 played cards (bitfield)
- Byte n+9: Player 2 played cards (bitfield)
Custom Card
- Byte 0: Format version number (1)
- Byte 1: Global card ID to replace
- Byte 2 (most significant 4 bits): Tribe 1
- Byte 2 (least significant 4 bits): Tribe 2
- Byte 3 (most significant bit): (reserved)
- Byte 3 (bit 6): if set, and byte 4 is 0xff, custom image ID follows instead of raw PNG
- Byte 3 (bits 4-5): 0 = Attacker, 1 = Effect, 2 = Mini-Boss, 3 = Boss (this must match the original card)
- Byte 3 (least significant 4 bits): TP cost (range 0..10, 15 = infinite)
- Byte 4 (most significant 4 bits): Portrait Y coordinate
- Byte 4 (least significant 4 bits): Portrait X coordinate
- (If byte 4 is 0xff, a PNG follows the custom card.)
- Byte 5: Name length (0 for “no replacement”)
- Bytes 6 to 6+n: Name (UTF-8)
- Byte 7+n: Number of effects
- Bytes 8+n to end: (repeated) effect definition
- If Tribe 1 is 14:
- 3 bytes: RGB color
- 1 byte: Tribe 1 name length
- n bytes: Tribe 1 name
- If Tribe 2 is 14:
- 3 bytes: RGB color
- 1 byte: Tribe 2 name length
- n bytes: Tribe 2 name
Effect Definition
- Byte 0: Effect ID
For all effects:
- Amount = 0 means infinity
- If Tribe = 14, it is followed by:
- Byte (name length)
- UTF-8 bytes (name)
0: ATK (static)
- Byte 1: Amount
1: DEF (static)
- Byte 1: Amount
2: ATK (static, once per turn)
- Byte 1: Amount
3: ATK+n
- Byte 1: Amount
4: DEF+n
- Byte 1: Amount
5: Empower (card)
- Byte 1: Global Card ID
- Byte 2: Count
6: Empower (Tribe)
- Byte 1 (most significant 4 bits): (reserved)
- Byte 1 (least significant 4 bits): Tribe ID
- Byte 2: Count
7: Heal
- Byte 1: Amount
8: Lifesteal
- Byte 1: Amount
9: Numb
- Byte 1: Amount
10: Pierce
- Byte 1: Amount
11: Summon
- Byte 1: Global Card ID
12: Summon Rank
- Byte 1 (since version 1, most significant 6 bits): reserved (0)
- Byte 1 (since version 1, least significant 2 bits): 0 = attacker, 1 = effect, 2 = mini-boss, 3 = boss
13: Summon Tribe
- Byte 1 (most significant 4 bits): (reserved)
- Byte 1 (least significant 4 bits): Tribe ID
- Byte 2: Count
14: Unity
(if Tribe is (none), create a fake tribe containing only this card)
- Byte 1 (most significant 4 bits): (reserved)
- Byte 1 (least significant 4 bits): Tribe ID
- Byte 2: Amount
128: Coin
- Byte 1 (since version 1): condition flags
- Byte 2 (most significant bit): 0=heads only, 1=heads or tails
- Byte 2 (least significant 7 bits): Count minus 1
- Bytes 3 to end: (possibly repeated) Effect Definition
129: If Card
- Byte 1 (since version 1): condition flags
- Byte 2: Global Card ID
- Byte 3 (since version 1): Count
- Bytes 4 to end: Effect Definition
130: Per Card
- Byte 1 (since version 1): condition flags
- Byte 2: Global Card ID
- Bytes 3 to end: Effect Definition
131: If Tribe
- Byte 1 (since version 1): condition flags
- Byte 2 (most significant 4 bits): (reserved)
- Byte 2 (least significant 4 bits): Tribe ID
- Byte 3: Count
- Bytes 4 to end: Effect Definition
132: VS Tribe
- Byte 1 (since version 1): condition flags
- Byte 2 (most significant 4 bits): (reserved)
- Byte 2 (least significant 4 bits): Tribe ID
- Byte 3 (since version 1): Count
- Bytes 4 to end: Effect Definition
133: If Stat
- Byte 1 (since version 1): condition flags
- Byte 2 (most significant bit): 0 = ATK, 1 = DEF
- Byte 2 (least significant 7 bits): Count
- Bytes 3 to end: Effect Definition
134: Setup
- Byte 1 (since version 1): condition flags
- Bytes 2 to end: Effect Definition
135: Limit
- Byte 1 (since version 1): condition flags
- Byte 2: Count
- Bytes 3 to end: Effect Definition
136: VS Card
- Byte 1: condition flags
- Byte 2: Global Card ID
- Byte 3: Count
- Bytes 4 to end: Effect Definition
137: If Rank
- Byte 1: condition flags
- Byte 2 (most significant 6 bits): reserved (0)
- Byte 2 (least significant 2 bits): 0 = attacker, 1 = effect, 2 = mini-boss, 3 = boss
- Byte 3: Count
- Bytes 4 to end: Effect Definition
138: VS Rank
- Byte 1: condition flags
- Byte 2 (most significant 6 bits): reserved (0)
- Byte 2 (least significant 2 bits): 0 = attacker, 1 = effect, 2 = mini-boss, 3 = boss
- Byte 3: Count
- Bytes 4 to end: Effect Definition
Condition Flags
- Bits 1-7 (most significant 7 bits): reserved
- Bit 0 (least significant): invert
Appendix A: Card Indices
This section contains spoilers.
Global
- 0: Zombiant
- 1: Jellyshroom
- 2: Spider
- 3: Zasp
- 4: Cactiling
- 5: Psicorp
- 6: Thief
- 7: Bandit
- 8: Inichas
- 9: Seedling
- 14: Numbnail
- 15: Mothiva
- 16: Acornling
- 17: Weevil
- 19: Venus’ Bud
- 20: Chomper
- 21: Acolyte Aria
- 23: Kabbu
- 24: Venus’ Guardian
- 25: Wasp Trooper
- 26: Wasp Bomber
- 27: Wasp Driller
- 28: Wasp Scout
- 29: Midge
- 30: Underling
- 31: Monsieur Scarlet
- 32: Golden Seedling
- 33: Arrow Worm
- 34: Carmina
- 35: Seedling King
- 36: Broodmother
- 37: Plumpling
- 38: Flowerling
- 39: Burglar
- 40: Astotheles
- 41: Mother Chomper
- 42: Ahoneynation
- 43: Bee-Boop
- 44: Security Turret
- 45: Denmuki
- 46: Heavy Drone B-33
- 47: Mender
- 48: Abomihoney
- 49: Dune Scorpion
- 50: Tidal Wyrm
- 51: Kali
- 52: Zombee
- 53: Zombeetle
- 54: The Watcher
- 55: Peacock Spider
- 56: Bloatshroom
- 57: Krawler
- 58: Haunted Cloth
- 61: Warden
- 63: Jumping Spider
- 64: Mimic Spider
- 65: Leafbug Ninja
- 66: Leafbug Archer
- 67: Leafbug Clubber
- 68: Madesphy
- 69: The Beast
- 70: Chomper Brute
- 71: Mantidfly
- 72: General Ultimax
- 73: Wild Chomper
- 74: Cross
- 75: Poi
- 76: Primal Weevil
- 77: False Monarch
- 78: Mothfly
- 79: Mothfly Cluster
- 80: Ironnail
- 81: Belostoss
- 82: Ruffian
- 83: Water Strider
- 84: Diving Spider
- 85: Cenn
- 86: Pisci
- 87: Dead Lander α
- 88: Dead Lander β
- 89: Dead Lander γ
- 90: Wasp King
- 91: The Everlasting King
- 92: Maki
- 93: Kina
- 94: Yin
- 95: ULTIMAX Tank
- 96: Zommoth
- 97: Riz
- 98: Devourer
- 128-159: custom attacker
- 160-191: custom effect
- 192-223: custom mini-boss
- 224-255: custom boss
Boss
- 0: Spider
- 1: Venus’ Guardian
- 2: Heavy Drone B-33
- 3: The Watcher
- 4: The Beast
- 5: ULTIMAX Tank
- 6: Mother Chomper
- 7: Broodmother
- 8: Zommoth
- 9: Seedling King
- 10: Tidal Wyrm
- 11: Peacock Spider
- 12: Devourer
- 13: False Monarch
- 14: Maki
- 15: Wasp King
- 16: The Everlasting King
Mini-Boss
- 0: Ahoneynation
- 1: Acolyte Aria
- 2: Mothiva
- 3: Zasp
- 4: Astotheles
- 5: Dune Scorpion
- 6: Primal Weevil
- 7: Cross
- 8: Poi
- 9: General Ultimax
- 10: Cenn
- 11: Pisci
- 12: Monsieur Scarlet
- 13: Kabbu
- 14: Kali
- 15: Carmina
- 16: Riz
- 17: Kina
- 18: Yin
- 19: Dead Lander α
- 20: Dead Lander β
- 21: Dead Lander γ
Common
- 0: Seedling
- 1: Underling
- 2: Golden Seedling
- 3: Zombiant
- 4: Zombee
- 5: Zombeetle
- 6: Jellyshroom
- 7: Bloatshroom
- 8: Chomper
- 9: Chomper Brute
- 10: Psicorp
- 11: Arrow Worm
- 12: Thief
- 13: Bandit
- 14: Burglar
- 15: Ruffian
- 16: Security Turret
- 17: Abomihoney
- 18: Krawler
- 19: Warden
- 20: Haunted Cloth
- 21: Mantidfly
- 22: Jumping Spider
- 23: Mimic Spider
- 24: Diving Spider
- 25: Water Strider
- 26: Belostoss
- 27: Mothfly
- 28: Mothfly Cluster
- 29: Wasp Scout
- 30: Wasp Trooper
- 31: Acornling
- 32: Cactiling
- 33: Flowerling
- 34: Plumpling
- 35: Inichas
- 36: Denmuki
- 37: Madesphy
- 38: Numbnail
- 39: Ironnail
- 40: Midge
- 41: Wild Chomper
- 42: Weevil
- 43: Bee-Boop
- 44: Mender
- 45: Leafbug Ninja
- 46: Leafbug Archer
- 47: Leafbug Clubber
- 48: Wasp Bomber
- 49: Wasp Driller
- 50: Venus’ Bud
Tribe
- 0: Seedling
- 1: Wasp
- 2: Fungi
- 3: Zombie
- 4: Plant
- 5: Bug
- 6: Bot
- 7: Thug
- 8: ???
- 9: Chomper
- 10: Leafbug
- 11: Dead Lander
- 12: Mothfly
- 13: Spider
- 14: (reserved)
- 15: (none)