aboutsummaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fl.fischer@fau.de>2021-02-28 17:01:38 +0100
committerFlorian Fischer <florian.fl.fischer@fau.de>2021-02-28 17:01:38 +0100
commit0692ccd33afc4fdd80550e9979b824c1c25e973b (patch)
tree8cf46b780af060d9fd6cf5a089729a9491eaa1c7 /data
parent5074205584de432892de5b0543b64efde4ddd6e3 (diff)
downloadmuhqs-game-0692ccd33afc4fdd80550e9979b824c1c25e973b.tar.gz
muhqs-game-0692ccd33afc4fdd80550e9979b824c1c25e973b.zip
rework how cards are defined and generated
Card definitions are now stored in data/cards/ in a subdirectory for each set as YAML files. YAML is still human readable but stricter and better to handle in code than ini. The latex filesystem layout resembles the card definition layout and is created by the Makefile from the YAML card definitions and must not be regenerated each time by hand.
Diffstat (limited to 'data')
-rw-r--r--data/base.ini148
-rw-r--r--data/cards/base/advisor.yml7
-rw-r--r--data/cards/base/archer.yml7
-rw-r--r--data/cards/base/cavalry.yml7
-rw-r--r--data/cards/base/cavalry_archer.yml7
-rw-r--r--data/cards/base/fighter.yml8
-rw-r--r--data/cards/base/great_sword.yml6
-rw-r--r--data/cards/base/knight.yml8
-rw-r--r--data/cards/base/misinformation.yml5
-rw-r--r--data/cards/base/missionary.yml7
-rw-r--r--data/cards/base/palisade.yml5
-rw-r--r--data/cards/base/pikeman.yml8
-rw-r--r--data/cards/base/pioneer.yml7
-rw-r--r--data/cards/base/recruit.yml7
-rw-r--r--data/cards/base/recruiter.yml9
-rw-r--r--data/cards/base/shield.yml6
-rw-r--r--data/cards/base/sword.yml6
-rw-r--r--data/cards/base/tax_collector.yml7
-rw-r--r--data/cards/base/tower_shield.yml6
-rw-r--r--data/cards/base/wormtongue.yml10
-rw-r--r--data/cards/equipments/armor.yml6
-rw-r--r--data/cards/equipments/banner.yml5
-rw-r--r--data/cards/equipments/cloak.yml6
-rw-r--r--data/cards/equipments/gear.yml6
-rw-r--r--data/cards/equipments/mace.yml6
-rw-r--r--data/cards/equipments/plate_armor.yml6
-rw-r--r--data/cards/equipments/poisoned_dagger.yml6
-rw-r--r--data/cards/equipments/reclaim!.yml5
-rw-r--r--data/cards/equipments/relic.yml5
-rw-r--r--data/cards/equipments/shatter!.yml5
-rw-r--r--data/cards/equipments/smith.yml11
-rw-r--r--data/cards/equipments/spear.yml6
-rw-r--r--data/cards/kraken/angry_squid.yml8
-rw-r--r--data/cards/kraken/chachalot.yml9
-rw-r--r--data/cards/kraken/clownfish.yml8
-rw-r--r--data/cards/kraken/dolphin.yml8
-rw-r--r--data/cards/kraken/frost_pylon.yml5
-rw-r--r--data/cards/kraken/gigantic_hail.yml4
-rw-r--r--data/cards/kraken/ice_berg.yml4
-rw-r--r--data/cards/kraken/sailfish.yml8
-rw-r--r--data/cards/kraken/suprise.yml4
-rw-r--r--data/cards/kraken/tentacle_slap.yml4
-rw-r--r--data/cards/kraken/the_kraken.yml4
-rw-r--r--data/cards/kraken/tides_change.yml4
-rw-r--r--data/cards/kraken/unholy_cannonball.yml6
-rw-r--r--data/cards/magic/action!.yml5
-rw-r--r--data/cards/magic/appear!.yml5
-rw-r--r--data/cards/magic/attack!.yml5
-rw-r--r--data/cards/magic/catalyst.yml5
-rw-r--r--data/cards/magic/clone!.yml5
-rw-r--r--data/cards/magic/defense!.yml5
-rw-r--r--data/cards/magic/die!.yml5
-rw-r--r--data/cards/magic/heal!.yml5
-rw-r--r--data/cards/magic/isolate!.yml5
-rw-r--r--data/cards/magic/mine!.yml5
-rw-r--r--data/cards/magic/more!.yml5
-rw-r--r--data/cards/magic/no!.yml5
-rw-r--r--data/cards/magic/pierce!.yml5
-rw-r--r--data/cards/magic/ritual!.yml5
-rw-r--r--data/cards/magic/rush!.yml5
-rw-r--r--data/cards/magic/select!.yml5
-rw-r--r--data/cards/magic/shroud!.yml5
-rw-r--r--data/cards/magic/stumble!.yml5
-rw-r--r--data/cards/magic/switch!.yml5
-rw-r--r--data/cards/magic/transmute!.yml5
-rw-r--r--data/cards/misc/farmer.yml6
-rw-r--r--data/cards/misc/king.yml8
-rw-r--r--data/cards/misc/stick_of_victory.yml5
-rw-r--r--data/cards/nautics/barge.yml7
-rw-r--r--data/cards/nautics/captain.yml8
-rw-r--r--data/cards/nautics/fish_trap.yml5
-rw-r--r--data/cards/nautics/fisher.yml8
-rw-r--r--data/cards/nautics/galley.yml8
-rw-r--r--data/cards/nautics/sailor.yml7
-rw-r--r--data/equipments.ini80
-rw-r--r--data/kraken.ini80
-rw-r--r--data/magic.ini119
-rw-r--r--data/misc.ini21
-rw-r--r--data/nautics.ini47
79 files changed, 444 insertions, 495 deletions
diff --git a/data/base.ini b/data/base.ini
deleted file mode 100644
index 2ab76973..00000000
--- a/data/base.ini
+++ /dev/null
@@ -1,148 +0,0 @@
-[Sword]
-type = equipment
-buy = 5
-play = 2
-durability = 3
-effect = Equipped unit gains +1 Melee Damage
-
-[Great Sword]
-type = equipment
-buy = 10
-play = 4
-durability = 3
-effect = Equipped unit gains +2 Melee Damage
-
-[Shield]
-type = equipment
-buy = 5
-play = 1
-durability = 3
-effect = Equipped unit gains +1 Health
-
-[Tower Shield]
-type = equipment
-buy = 7
-play = 2
-durability = 3
-effect = Equipped unit has +2 Health
-
-[Archer]
-type = unit
-attack = 1 Range 2
-health = 2
-movement = 2
-buy = 5
-upkeep = 1
-
-[Knight]
-type = unit
-attack = 2
-health = 2
-movement = 2
-buy = 7
-upkeep = 2
-effect = + 1 Armor
-
-[Fighter]
-type = unit
-attack = 1
-health = 2
-movement = 2
-buy = 7
-upkeep = 1
-effect = One additional attack action
-
-[Pikeman]
-type = unit
-attack = 1
-health = 2
-movement = 1
-buy = 5
-upkeep = 1
-effect = Range 2 against Units with Movement >= 3
-
-[Cavalry]
-type = unit
-attack = 2
-health = 1
-movement = 3
-buy = 5
-upkeep = 2
-
-[Tax Collector]
-type = unit
-health = 1
-movement = 2
-buy = 5
-upkeep = 1
-full_action = Get 2 additional Ressource
-
-[Pioneer]
-type = unit
-health = 5
-movement = 2
-buy = 7
-upkeep = 1
-full_action = Neutralize adjacent tile or Artifact
-
-[Recruiter]
-type = unit
-attack = 1
-health = 2
-movement = 2
-buy = 10
-upkeep = 1
-effect = Allow Units to be played in Range 1
-full_action = Create Recruit token on adjacent tile
-
-[Recruit]
-type = unit
-token = true
-attack = 1
-health = 1
-movement = 1
-upkeep = 0
-
-[Missionary]
-type = unit
-health = 1
-movement = 2
-buy = 10
-upkeep = 2
-full_action = Put two faith counters on target Unit. If there are more faith counters than the units buying cost you control target unit
-
-[Advisor]
-type = unit
-health = 1
-movement = 2
-buy = 10
-upkeep = 2
-full_action = Draw 1 card. You may exile 1 card from your hand
-
-[Wormtongue]
-type = unit
-health = 1
-movement = 2
-buy = 10
-upkeep = 2
-full_action = 3: Add a Misinformation token to an opponents pile
-
-[Misinformation]
-token = true
-type = spell
-effect = Exile this card
-play = 5
-
-[Cavl. Archer]
-type = unit
-attack = 1 Range 2
-health = 1
-movement = 3
-buy = 10
-upkeep = 2
-
-[Palisade]
-type = artifact
-buy = 7
-play = 3
-effect = Solid 6
diff --git a/data/cards/base/advisor.yml b/data/cards/base/advisor.yml
new file mode 100644
index 00000000..b22f6781
--- /dev/null
+++ b/data/cards/base/advisor.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Advisor
+health: 1
+movement: 2
+buy: 10
+upkeep: 2
+full_action: Draw 1 card. You may exile 1 card from your hand
diff --git a/data/cards/base/archer.yml b/data/cards/base/archer.yml
new file mode 100644
index 00000000..eb7553c5
--- /dev/null
+++ b/data/cards/base/archer.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Archer
+attack: 1 Range 2
+health: 2
+movement: 2
+buy: 5
+upkeep: 1
diff --git a/data/cards/base/cavalry.yml b/data/cards/base/cavalry.yml
new file mode 100644
index 00000000..574026e3
--- /dev/null
+++ b/data/cards/base/cavalry.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Cavalry
+attack: 2
+health: 1
+movement: 3
+buy: 5
+upkeep: 2
diff --git a/data/cards/base/cavalry_archer.yml b/data/cards/base/cavalry_archer.yml
new file mode 100644
index 00000000..f5da0265
--- /dev/null
+++ b/data/cards/base/cavalry_archer.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Cavalry Archer
+attack: 1 Range 2
+health: 1
+movement: 3
+buy: 10
+upkeep: 2
diff --git a/data/cards/base/fighter.yml b/data/cards/base/fighter.yml
new file mode 100644
index 00000000..113f69ff
--- /dev/null
+++ b/data/cards/base/fighter.yml
@@ -0,0 +1,8 @@
+type: unit
+name: Fighter
+attack: 1
+health: 2
+movement: 2
+buy: 7
+upkeep: 1
+effect: One additional attack action
diff --git a/data/cards/base/great_sword.yml b/data/cards/base/great_sword.yml
new file mode 100644
index 00000000..40542ed2
--- /dev/null
+++ b/data/cards/base/great_sword.yml
@@ -0,0 +1,6 @@
+type: equipment
+name: Great Sword
+buy: 10
+play: 4
+durability: 3
+effect: Equipped unit gains +2 Melee Damage
diff --git a/data/cards/base/knight.yml b/data/cards/base/knight.yml
new file mode 100644
index 00000000..f8d7bdd1
--- /dev/null
+++ b/data/cards/base/knight.yml
@@ -0,0 +1,8 @@
+type: unit
+name: Knight
+attack: 2
+health: 2
+movement: 2
+buy: 7
+upkeep: 2
+effect: + 1 Armor
diff --git a/data/cards/base/misinformation.yml b/data/cards/base/misinformation.yml
new file mode 100644
index 00000000..08e22fe3
--- /dev/null
+++ b/data/cards/base/misinformation.yml
@@ -0,0 +1,5 @@
+type: spell
+name: Misinformation
+token: true
+effect: Exile this card
+play: 5
diff --git a/data/cards/base/missionary.yml b/data/cards/base/missionary.yml
new file mode 100644
index 00000000..77fbb694
--- /dev/null
+++ b/data/cards/base/missionary.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Missionary
+health: 1
+movement: 2
+buy: 10
+upkeep: 2
+full_action: Put two faith counters on target Unit. If there are more faith counters than the units buying cost you control target unit
diff --git a/data/cards/base/palisade.yml b/data/cards/base/palisade.yml
new file mode 100644
index 00000000..de0d8c2c
--- /dev/null
+++ b/data/cards/base/palisade.yml
@@ -0,0 +1,5 @@
+type: artifact
+name: Palisade
+buy: 7
+play: 3
+effect: Solid 6
diff --git a/data/cards/base/pikeman.yml b/data/cards/base/pikeman.yml
new file mode 100644
index 00000000..766a8ff4
--- /dev/null
+++ b/data/cards/base/pikeman.yml
@@ -0,0 +1,8 @@
+type: unit
+name: Pikeman
+attack: 1
+health: 2
+movement: 1
+buy: 5
+upkeep: 1
+effect: Range 2 against Units with Movement >= 3
diff --git a/data/cards/base/pioneer.yml b/data/cards/base/pioneer.yml
new file mode 100644
index 00000000..3e1315a1
--- /dev/null
+++ b/data/cards/base/pioneer.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Pioneer
+health: 5
+movement: 2
+buy: 7
+upkeep: 1
+full_action: Neutralize adjacent tile or Artifact
diff --git a/data/cards/base/recruit.yml b/data/cards/base/recruit.yml
new file mode 100644
index 00000000..99ab85fa
--- /dev/null
+++ b/data/cards/base/recruit.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Recruit
+token: true
+attack: 1
+health: 1
+movement: 1
+upkeep: 0
diff --git a/data/cards/base/recruiter.yml b/data/cards/base/recruiter.yml
new file mode 100644
index 00000000..3dc62fbb
--- /dev/null
+++ b/data/cards/base/recruiter.yml
@@ -0,0 +1,9 @@
+type: unit
+name: Recruiter
+attack: 1
+health: 2
+movement: 2
+buy: 10
+upkeep: 1
+effect: Allow Units to be played in Range 1
+full_action: Create Recruit token on adjacent tile
diff --git a/data/cards/base/shield.yml b/data/cards/base/shield.yml
new file mode 100644
index 00000000..3ca09d6b
--- /dev/null
+++ b/data/cards/base/shield.yml
@@ -0,0 +1,6 @@
+type: equipment
+name: Shield
+buy: 5
+play: 1
+durability: 3
+effect: Equipped unit gains +1 Health
diff --git a/data/cards/base/sword.yml b/data/cards/base/sword.yml
new file mode 100644
index 00000000..b5875ec7
--- /dev/null
+++ b/data/cards/base/sword.yml
@@ -0,0 +1,6 @@
+type: equipment
+name: Sword
+buy: 5
+play: 2
+durability: 3
+effect: Equipped unit gains +1 Melee Damage
diff --git a/data/cards/base/tax_collector.yml b/data/cards/base/tax_collector.yml
new file mode 100644
index 00000000..47e46c27
--- /dev/null
+++ b/data/cards/base/tax_collector.yml
@@ -0,0 +1,7 @@
+type: unit
+name: Tax Collector
+health: 1
+movement: 2
+buy: 5
+upkeep: 1
+full_action: Get 2 additional Ressource
diff --git a/data/cards/base/tower_shield.yml b/data/cards/base/tower_shield.yml
new file mode 100644
index 00000000..d5d31ffa
--- /dev/null
+++ b/data/cards/base/tower_shield.yml
@@ -0,0 +1,6 @@
+type: equipment
+name: Tower Shield
+buy: 7
+play: 2
+durability: 3
+effect: Equipped unit has +2 Health
diff --git a/data/cards/base/wormtongue.yml b/data/cards/base/wormtongue.yml
new file mode 100644
index 00000000..73207ec5
--- /dev/null
+++ b/data/cards/base/wormtongue.yml
@@ -0,0 +1,10 @@
+type: unit
+name: Wormtongue
+health: 1
+movement: 2
+buy: 10
+upkeep: 2
+full_action:
+ cost: 3
+ effect: Add a Misinformation token to an opponents pile
+latex_full_action: "\\faRedo, 3: Add a Misinformation token to an opponents pile"
diff --git a/data/cards/equipments/armor.yml b/data/cards/equipments/armor.yml
new file mode 100644
index 00000000..c7ebb3c2
--- /dev/null
+++ b/data/cards/equipments/armor.yml
@@ -0,0 +1,6 @@
+name: Armor
+type: equipment
+buy: 7
+play: 2
+durability: 3
+effect: Equipped unit gains + 1 Armor
diff --git a/data/cards/equipments/banner.yml b/data/cards/equipments/banner.yml
new file mode 100644
index 00000000..57a6c976
--- /dev/null
+++ b/data/cards/equipments/banner.yml
@@ -0,0 +1,5 @@
+name: Banner
+type: artifact
+play: 7
+buy: 2
+effect: Units you control in range 1 gain +1 attack damage and +1 movement
diff --git a/data/cards/equipments/cloak.yml b/data/cards/equipments/cloak.yml
new file mode 100644
index 00000000..df3f605f
--- /dev/null
+++ b/data/cards/equipments/cloak.yml
@@ -0,0 +1,6 @@
+name: Cloak
+type: equipment
+play: 7
+buy: 3
+durability: 2
+effect: Equipped unit gains shroud (can't be targeted)
diff --git a/data/cards/equipments/gear.yml b/data/cards/equipments/gear.yml
new file mode 100644
index 00000000..e344779b
--- /dev/null
+++ b/data/cards/equipments/gear.yml
@@ -0,0 +1,6 @@
+name: Gear
+type: equipment
+play: 3
+buy: 2
+durability: 3
+effect: Equipped unit gain +1 movement
diff --git a/data/cards/equipments/mace.yml b/data/cards/equipments/mace.yml
new file mode 100644
index 00000000..1d52190e
--- /dev/null
+++ b/data/cards/equipments/mace.yml
@@ -0,0 +1,6 @@
+name: Mace
+type: equipment
+play: 6
+buy: 2
+durability: 3
+effect: Equipped unit afflicts Paralysis when dealing damage in melee combat
diff --git a/data/cards/equipments/plate_armor.yml b/data/cards/equipments/plate_armor.yml
new file mode 100644
index 00000000..df37de72
--- /dev/null
+++ b/data/cards/equipments/plate_armor.yml
@@ -0,0 +1,6 @@
+name: Plate Armor
+type: equipment
+buy: 8
+play: 3
+durability: 1
+effect: Equipped unit has +2 Armor and -2 Movement
diff --git a/data/cards/equipments/poisoned_dagger.yml b/data/cards/equipments/poisoned_dagger.yml
new file mode 100644
index 00000000..03ea2ee5
--- /dev/null
+++ b/data/cards/equipments/poisoned_dagger.yml
@@ -0,0 +1,6 @@
+name: Poisoned Dagger
+type: equipment
+play: 7
+buy: 3
+durability: 2
+effect: Equipped unit deals damage as poison counters in melee combat
diff --git a/data/cards/equipments/reclaim!.yml b/data/cards/equipments/reclaim!.yml
new file mode 100644
index 00000000..d264c7ad
--- /dev/null
+++ b/data/cards/equipments/reclaim!.yml
@@ -0,0 +1,5 @@
+name: Reclaim!
+type: spell
+buy: 5
+play: X
+effect: Teleport target Artifact you own with Playcost X to a free spawn tile of yours.
diff --git a/data/cards/equipments/relic.yml b/data/cards/equipments/relic.yml
new file mode 100644
index 00000000..8adfa12a
--- /dev/null
+++ b/data/cards/equipments/relic.yml
@@ -0,0 +1,5 @@
+name: Relic
+type: artifact
+play: 7
+buy: 3
+effect: In your upkeep the player controlling the most units in range 1 gains 1 resource. On ties all tied players gain 1 resource.
diff --git a/data/cards/equipments/shatter!.yml b/data/cards/equipments/shatter!.yml
new file mode 100644
index 00000000..90e7f570
--- /dev/null
+++ b/data/cards/equipments/shatter!.yml
@@ -0,0 +1,5 @@
+name: Shatter!
+type: spell
+buy: 5
+play: X
+effect: Destroy target artifact with buy = X
diff --git a/data/cards/equipments/smith.yml b/data/cards/equipments/smith.yml
new file mode 100644
index 00000000..1d3d55cf
--- /dev/null
+++ b/data/cards/equipments/smith.yml
@@ -0,0 +1,11 @@
+name: Smith
+type: unit
+buy: 10
+upkeep: 2
+health: 1
+movement: 2
+full_action:
+ cost: X
+ effect: Create Copy of artifact with buy cost = X in range 1 on empty tile in range 1
+
+latex_full_action: "\\faRedo, X: Create Copy of artifact with buy cost = X in range 1 on empty tile in range 1"
diff --git a/data/cards/equipments/spear.yml b/data/cards/equipments/spear.yml
new file mode 100644
index 00000000..4a7bc13c
--- /dev/null
+++ b/data/cards/equipments/spear.yml
@@ -0,0 +1,6 @@
+name: Spear
+type: equipment
+play: 7
+buy: 2
+durability: 3
+effect: Equipped unit gains +1 Attack and Range 2 against unit with M >= 3
diff --git a/data/cards/kraken/angry_squid.yml b/data/cards/kraken/angry_squid.yml
new file mode 100644
index 00000000..ac948323
--- /dev/null
+++ b/data/cards/kraken/angry_squid.yml
@@ -0,0 +1,8 @@
+name: Angry Squid
+type: unit
+ai: Aggressive
+attack: 1 Range 2
+health: 1
+movement: 2 swimming
+buy: 7
+upkeep: 2
diff --git a/data/cards/kraken/chachalot.yml b/data/cards/kraken/chachalot.yml
new file mode 100644
index 00000000..ed45f7d2
--- /dev/null
+++ b/data/cards/kraken/chachalot.yml
@@ -0,0 +1,9 @@
+name: Chachalot
+type: unit
+ai: Wandering
+attack: 2
+health: 2
+movement: 2 swimming
+buy: 10
+upkeep: 2
+effect: + 1 Armor
diff --git a/data/cards/kraken/clownfish.yml b/data/cards/kraken/clownfish.yml
new file mode 100644
index 00000000..1762a848
--- /dev/null
+++ b/data/cards/kraken/clownfish.yml
@@ -0,0 +1,8 @@
+name: Clownfish
+type: unit
+ai: Shy
+health: 1
+movement: 2 swimming
+buy: 10
+upkeep: 2
+full_action: Get 4 additional Ressource
diff --git a/data/cards/kraken/dolphin.yml b/data/cards/kraken/dolphin.yml
new file mode 100644
index 00000000..f9a0c26c
--- /dev/null
+++ b/data/cards/kraken/dolphin.yml
@@ -0,0 +1,8 @@
+name: Dolphin
+type: unit
+ai: Supportive
+health: 2
+movement: 2
+buy: 7
+upkeep: 1
+full_action: Give random Unit in range 1 random buff
diff --git a/data/cards/kraken/frost_pylon.yml b/data/cards/kraken/frost_pylon.yml
new file mode 100644
index 00000000..70ba8d0f
--- /dev/null
+++ b/data/cards/kraken/frost_pylon.yml
@@ -0,0 +1,5 @@
+name: Frost Pylon
+type: artifact
+buy: 5
+effect: Enemy units in range 1 can't activate abilities except full_Action(put a crack counter on Frost Pylon). If there are three or more crack counter on Frost Pylon destroy it. Frost Pylon can be played next to a random enemy unit
+latex_effect: "Enemy units in range 1 can't activate abilities except: \\enquote{~\\faRedo: put a crack counter on Frost Pylon}. \\\\ \\vspace{0.3cm} If there are three or more crack counter on Frost Pylon destroy it. Frost Pylon can be played next to a random enemy unit"
diff --git a/data/cards/kraken/gigantic_hail.yml b/data/cards/kraken/gigantic_hail.yml
new file mode 100644
index 00000000..d25433f2
--- /dev/null
+++ b/data/cards/kraken/gigantic_hail.yml
@@ -0,0 +1,4 @@
+name: Gigantic Hail
+type: spell
+play: 3
+effect: Place an Ice Berg token on a random empty tile
diff --git a/data/cards/kraken/ice_berg.yml b/data/cards/kraken/ice_berg.yml
new file mode 100644
index 00000000..02f9e53e
--- /dev/null
+++ b/data/cards/kraken/ice_berg.yml
@@ -0,0 +1,4 @@
+name: Ice Berg
+type: artifact
+token: true
+effect: Solid 3
diff --git a/data/cards/kraken/sailfish.yml b/data/cards/kraken/sailfish.yml
new file mode 100644
index 00000000..baf03f16
--- /dev/null
+++ b/data/cards/kraken/sailfish.yml
@@ -0,0 +1,8 @@
+name: Sailfish
+type: unit
+ai: Aggressive
+attack: 1
+health: 1
+movement: 3
+buy: 7
+upkeep: 1
diff --git a/data/cards/kraken/suprise.yml b/data/cards/kraken/suprise.yml
new file mode 100644
index 00000000..68701310
--- /dev/null
+++ b/data/cards/kraken/suprise.yml
@@ -0,0 +1,4 @@
+name: Suprise
+type: spell
+play: 1
+effect: Place the next Unit played this turn next to a random enemy Unit
diff --git a/data/cards/kraken/tentacle_slap.yml b/data/cards/kraken/tentacle_slap.yml
new file mode 100644
index 00000000..c4a7d5f4
--- /dev/null
+++ b/data/cards/kraken/tentacle_slap.yml
@@ -0,0 +1,4 @@
+name: Tentacle Slap
+type: spell
+play: 3
+effect: Each player discards their hand
diff --git a/data/cards/kraken/the_kraken.yml b/data/cards/kraken/the_kraken.yml
new file mode 100644
index 00000000..096446ba
--- /dev/null
+++ b/data/cards/kraken/the_kraken.yml
@@ -0,0 +1,4 @@
+name: The Kraken
+type: unit
+health: 5
+attack: 1
diff --git a/data/cards/kraken/tides_change.yml b/data/cards/kraken/tides_change.yml
new file mode 100644
index 00000000..1da2aa38
--- /dev/null
+++ b/data/cards/kraken/tides_change.yml
@@ -0,0 +1,4 @@
+name: Tides Change
+type: spell
+play: 5
+effect: Redistribute all store cards
diff --git a/data/cards/kraken/unholy_cannonball.yml b/data/cards/kraken/unholy_cannonball.yml
new file mode 100644
index 00000000..39618ebe
--- /dev/null
+++ b/data/cards/kraken/unholy_cannonball.yml
@@ -0,0 +1,6 @@
+name: Unholy Cannonball
+type: spell
+play: 5
+effect: If no enemy Units are in range 2 of The Kraken gain 5 ressource and draw a card. Otherwise put a fear counter on all enemy Units in range 2 of The Kraken
+
+effect: If no enemy Units are in range~2 of The Kraken gain 5~ressource and draw a card. \\ \vspace{0.3cm} Otherwise put a fear counter on all enemy Units in range~2 of The Kraken
diff --git a/data/cards/magic/action!.yml b/data/cards/magic/action!.yml
new file mode 100644
index 00000000..940e4553
--- /dev/null
+++ b/data/cards/magic/action!.yml
@@ -0,0 +1,5 @@
+name: Action!
+type: spell
+buy: 5
+play: 2
+effect: Move or attack with one unit
diff --git a/data/cards/magic/appear!.yml b/data/cards/magic/appear!.yml
new file mode 100644
index 00000000..4a23d982
--- /dev/null
+++ b/data/cards/magic/appear!.yml
@@ -0,0 +1,5 @@
+name: Appear!
+type: spell
+buy: 7
+play: 3X
+effect: Play one unit costing X on any free tile
diff --git a/data/cards/magic/attack!.yml b/data/cards/magic/attack!.yml
new file mode 100644
index 00000000..044bb1f9
--- /dev/null
+++ b/data/cards/magic/attack!.yml
@@ -0,0 +1,5 @@
+name: Attack!
+type: spell
+buy: 5
+play: 2
+effect: Distribute 2 times "+1 Attack this turn" on up to two units
diff --git a/data/cards/magic/catalyst.yml b/data/cards/magic/catalyst.yml
new file mode 100644
index 00000000..7a038280
--- /dev/null
+++ b/data/cards/magic/catalyst.yml
@@ -0,0 +1,5 @@
+name: catalyst
+type: artifact
+buy: 3
+play: 5
+effect: Spells any player controlling the most units in range 1 playes cost one less resource
diff --git a/data/cards/magic/clone!.yml b/data/cards/magic/clone!.yml
new file mode 100644
index 00000000..f5da8f1f
--- /dev/null
+++ b/data/cards/magic/clone!.yml
@@ -0,0 +1,5 @@
+name: Clone!
+type: spell
+buy: 7
+play: 3
+effect: Copy the next card you play. You may choose new targets. If you copy a permanent place a token copy of the parmanent in range 1 of the original
diff --git a/data/cards/magic/defense!.yml b/data/cards/magic/defense!.yml
new file mode 100644
index 00000000..38fae437
--- /dev/null
+++ b/data/cards/magic/defense!.yml
@@ -0,0 +1,5 @@
+name: Defense!
+type: spell
+buy: 5
+play: 3
+effect: Two units gain +1 Armor until end of turn
diff --git a/data/cards/magic/die!.yml b/data/cards/magic/die!.yml
new file mode 100644
index 00000000..f8b13155
--- /dev/null
+++ b/data/cards/magic/die!.yml
@@ -0,0 +1,5 @@
+name: Die!
+type: spell
+buy: 10
+play: 6
+effect: Destroy target Unit
diff --git a/data/cards/magic/heal!.yml b/data/cards/magic/heal!.yml
new file mode 100644
index 00000000..cd8af15d
--- /dev/null
+++ b/data/cards/magic/heal!.yml
@@ -0,0 +1,5 @@
+name: Heal!
+type: spell
+buy: 5
+play: 2
+effect: Target unit gains 1 Health or remove all Poison counters from it
diff --git a/data/cards/magic/isolate!.yml b/data/cards/magic/isolate!.yml
new file mode 100644
index 00000000..6c969c2c
--- /dev/null
+++ b/data/cards/magic/isolate!.yml
@@ -0,0 +1,5 @@
+name: Isolate!
+type: spell
+buy: 5
+play: 2
+effect: Target unit can not receive or deal damage this turn
diff --git a/data/cards/magic/mine!.yml b/data/cards/magic/mine!.yml
new file mode 100644
index 00000000..17571785
--- /dev/null
+++ b/data/cards/magic/mine!.yml
@@ -0,0 +1,5 @@
+name: Mine!
+type: spell
+buy: 5
+play: 2
+effect: Steal 2 resource from opponent
diff --git a/data/cards/magic/more!.yml b/data/cards/magic/more!.yml
new file mode 100644
index 00000000..d2bcfbe8
--- /dev/null
+++ b/data/cards/magic/more!.yml
@@ -0,0 +1,5 @@
+name: More!
+type: spell
+buy: 5
+play: 2
+effect: Draw two cards
diff --git a/data/cards/magic/no!.yml b/data/cards/magic/no!.yml
new file mode 100644
index 00000000..f5485b70
--- /dev/null
+++ b/data/cards/magic/no!.yml
@@ -0,0 +1,5 @@
+name: No!
+type: spell
+buy: 5
+play: 2
+effect: Counter target spell
diff --git a/data/cards/magic/pierce!.yml b/data/cards/magic/pierce!.yml
new file mode 100644
index 00000000..8dfd4628
--- /dev/null
+++ b/data/cards/magic/pierce!.yml
@@ -0,0 +1,5 @@
+name: Pierce!
+type: spell
+buy: 5
+play: 1X
+effect: Ignore X Armor of target unit this turn
diff --git a/data/cards/magic/ritual!.yml b/data/cards/magic/ritual!.yml
new file mode 100644
index 00000000..e317faab
--- /dev/null
+++ b/data/cards/magic/ritual!.yml
@@ -0,0 +1,5 @@
+name: Ritual!
+type: spell
+buy: 7
+play: 1
+effect: Gain 3 Ressource
diff --git a/data/cards/magic/rush!.yml b/data/cards/magic/rush!.yml
new file mode 100644
index 00000000..84439b30
--- /dev/null
+++ b/data/cards/magic/rush!.yml
@@ -0,0 +1,5 @@
+name: Rush!
+type: spell
+buy: 5
+play: 2
+effect: Distribute 2 times "+ 2 Movement this turn" on up to two units
diff --git a/data/cards/magic/select!.yml b/data/cards/magic/select!.yml
new file mode 100644
index 00000000..154f840a
--- /dev/null
+++ b/data/cards/magic/select!.yml
@@ -0,0 +1,5 @@
+name: Select!
+type: spell
+buy: 7
+play: 1
+effect: Draw 1. You may exile a card from your hand
diff --git a/data/cards/magic/shroud!.yml b/data/cards/magic/shroud!.yml
new file mode 100644
index 00000000..1a1309fa
--- /dev/null
+++ b/data/cards/magic/shroud!.yml
@@ -0,0 +1,5 @@
+name: Shroud!
+type: spell
+buy: 5
+play: 2
+effect: Target unit can not be targeted this turn
diff --git a/data/cards/magic/stumble!.yml b/data/cards/magic/stumble!.yml
new file mode 100644
index 00000000..b384854a
--- /dev/null
+++ b/data/cards/magic/stumble!.yml
@@ -0,0 +1,5 @@
+name: Stumble!
+type: spell
+buy: 5
+play: 2
+effect: Target unit can not move or attack this turn
diff --git a/data/cards/magic/switch!.yml b/data/cards/magic/switch!.yml
new file mode 100644
index 00000000..a93f29f1
--- /dev/null
+++ b/data/cards/magic/switch!.yml
@@ -0,0 +1,5 @@
+name: Switch!
+type: spell
+buy: 5
+play: 2
+effect: Switch the positions of two permanents you control
diff --git a/data/cards/magic/transmute!.yml b/data/cards/magic/transmute!.yml
new file mode 100644
index 00000000..6686b091
--- /dev/null
+++ b/data/cards/magic/transmute!.yml
@@ -0,0 +1,5 @@
+name: Transmute!
+type: spell
+buy: 5
+play: 5
+effect: Put one card from your store into your hand. Exile this card
diff --git a/data/cards/misc/farmer.yml b/data/cards/misc/farmer.yml
new file mode 100644
index 00000000..18c0a372
--- /dev/null
+++ b/data/cards/misc/farmer.yml
@@ -0,0 +1,6 @@
+name: Farmer
+type: unit
+attack: 1
+health: 1
+movement: 1
+upkeep: 1
diff --git a/data/cards/misc/king.yml b/data/cards/misc/king.yml
new file mode 100644
index 00000000..a4e7632e
--- /dev/null
+++ b/data/cards/misc/king.yml
@@ -0,0 +1,8 @@
+name: King
+token: true
+type: unit
+effect: "5 Resource: +shroud until end of turn. \\ Protection from Die!"
+upkeep: 0
+attack: 1
+health: 5
+movement: 1
diff --git a/data/cards/misc/stick_of_victory.yml b/data/cards/misc/stick_of_victory.yml
new file mode 100644
index 00000000..629b4b42
--- /dev/null
+++ b/data/cards/misc/stick_of_victory.yml
@@ -0,0 +1,5 @@
+name: Stick of Victory
+type: equipment
+token: true
+durability: infinite
+effect: The controller of the equipped unit increases its victory count by 1 in their upkeep
diff --git a/data/cards/nautics/barge.yml b/data/cards/nautics/barge.yml
new file mode 100644
index 00000000..20e26015
--- /dev/null
+++ b/data/cards/nautics/barge.yml
@@ -0,0 +1,7 @@
+name: Barge
+type: unit
+health: 3
+movement: 3 swimming
+buy: 5
+upkeep: 1
+effect: Crew 6
diff --git a/data/cards/nautics/captain.yml b/data/cards/nautics/captain.yml
new file mode 100644
index 00000000..fbab764f
--- /dev/null
+++ b/data/cards/nautics/captain.yml
@@ -0,0 +1,8 @@
+name: Captain
+type: unit
+health: 1
+movement: 1
+attack: 1
+buy: 7
+upkeep: 2
+effect: Other units in the same pile have no upkeep cost
diff --git a/data/cards/nautics/fish_trap.yml b/data/cards/nautics/fish_trap.yml
new file mode 100644
index 00000000..c7082093
--- /dev/null
+++ b/data/cards/nautics/fish_trap.yml
@@ -0,0 +1,5 @@
+name: Fish Trap
+type: artifact
+token: true
+effect: Adjacent Fisher have full_action(Gain 2 Resource)
+latex_effect: "Adjacent Fisher have \\\\ \\enquote{~\\faRedo: Gain 2 Resource}"
diff --git a/data/cards/nautics/fisher.yml b/data/cards/nautics/fisher.yml
new file mode 100644
index 00000000..9708fc67
--- /dev/null
+++ b/data/cards/nautics/fisher.yml
@@ -0,0 +1,8 @@
+name: Fisher
+type: unit
+health: 2
+movement: 2 swimming
+buy: 5
+upkeep: 1
+effect: Crew 2
+full_action: Create fish trap token on adjacent water tile
diff --git a/data/cards/nautics/galley.yml b/data/cards/nautics/galley.yml
new file mode 100644
index 00000000..c7da7c63
--- /dev/null
+++ b/data/cards/nautics/galley.yml
@@ -0,0 +1,8 @@
+name: Galley
+type: unit
+health: 4
+attack: 1 range 2
+movement: 3 swimming
+buy: 7
+upkeep: 1
+effect: Crew 3
diff --git a/data/cards/nautics/sailor.yml b/data/cards/nautics/sailor.yml
new file mode 100644
index 00000000..96c95b03
--- /dev/null
+++ b/data/cards/nautics/sailor.yml
@@ -0,0 +1,7 @@
+name: Sailor
+type: unit
+health: 1
+movement: 1
+attack: 1
+upkeep: 1
+effect: A crewed unit gets +1 movement while swimming
diff --git a/data/equipments.ini b/data/equipments.ini
deleted file mode 100644
index 81599d01..00000000
--- a/data/equipments.ini
+++ /dev/null
@@ -1,80 +0,0 @@
-[Armor]
-type = equipment
-buy = 7
-play = 2
-durability = 3
-effect = Equipped unit gains + 1 Armor
-
-[Relic]
-type = artifact
-play = 7
-buy = 3
-effect = In your upkeep the player controlling the most units in range 1 gains 1 resource. On ties all tied players gain 1 resource.
-
-[Banner]
-type = artifact
-play = 7
-buy = 2
-effect = Units you control in range 1 gain +1 attack damage and +1 movement
-
-[Gear]
-type = equipment
-play = 3
-buy = 2
-durability = 3
-effect = Equipped unit gain +1 movement
-
-[Poisoned Dagger]
-type = equipment
-play = 7
-buy = 3
-durability = 2
-effect = Equipped unit deals damage as poison counters in melee combat
-
-[Mace]
-type = equipment
-play = 6
-buy = 2
-durability = 3
-effect = Equipped unit afflicts Paralysis when dealing damage in melee combat
-
-[Plate Armor]
-type = equipment
-buy = 8
-play = 3
-durability = 1
-effect = Equipped unit has +2 Armor and -2 Movement
-
-[Cloak]
-type = equipment
-play = 7
-buy = 3
-durability = 2
-effect = Equipped unit gains shroud (can't be targeted)
-
-[Spear]
-type = equipment
-play = 7
-buy = 2
-durability = 3
-effect = Equipped unit gains +1 Attack and Range 2 against unit with M >= 3
-
-[Smith]
-type = unit
-buy = 10
-upkeep = 2
-health = 1
-movement = 2
-full_action = Pay X: Create Copy of artifact with buy cost = X in range 1 on empty tile in range 1
-
-[Shatter!]
-type = spell
-buy = 5
-play = X
-effect = Destroy target artifact with buy = X
-
-[Reclaim!]
-type = spell
-buy = 5
-play = X
-effect = Teleport target Artifact you own with Playcost X to a free spawn tile of yours.
diff --git a/data/kraken.ini b/data/kraken.ini
deleted file mode 100644
index 4fdf6ab4..00000000
--- a/data/kraken.ini
+++ /dev/null
@@ -1,80 +0,0 @@
-[The Kraken]
-type = unit
-health = 5
-attack = 1
-
-[Frost Pylon]
-type = artifact
-buy = 5
-effect = Enemy units in range 1 can't activate abilities except: "\\faRedo: put a crack counter on Frost Pylon". If there are three or more crack counter on Frost Pylon destroy it. Frots Pylon can be played next to a random enemy unit.
-
-[Ice Berg]
-type = artifact
-play = 3
-effect = Solid 3
-
-[Clownfish]
-type = unit
-ai = Shy
-health = 1
-movement = 2 swimming
-buy = 10
-upkeep = 2
-full_action = Get 4 additional Ressource
-
-[Angry Squid]
-type = unit
-ai = Aggressive
-attack = 1 Range 2
-health = 1
-movement = 2 swimming
-buy = 7
-upkeep = 2
-
-[Chachalot]
-type = unit
-ai = Wandering
-attack = 2
-health = 2
-movement = 2 swimming
-buy = 10
-upkeep = 2
-effect = + 1 Armor
-
-[Sailfish]
-type = unit
-ai = Aggressive
-attack = 1
-health = 1
-movement = 3
-buy = 7
-upkeep = 1
-
-[Dolphin]
-type = unit
-ai = Supportive
-health = 2
-movement = 2
-buy = 7
-upkeep = 1
-full_action = Give random Unit in range 1 random buff
-
-[Tentacle Slap]
-type = spell
-play = 3
-effect = Each player discards their hand
-
-[Tides Change]
-type = spell
-play = 5
-effect = Redistribute all store cards
-
-[Suprise]
-type = spell
-play = 1
-effect = Place the next Unit played this turn next to a random enemy Unit
-
-[Unholy Cannonball]
-type = spell
-play = 5
-effect = If no enemy Units are in range 2 of The Kraken gains 5 ressource and draws a card. \\ Otherwise put a fear counter on all enemy Units in range 2
diff --git a/data/magic.ini b/data/magic.ini
deleted file mode 100644
index 0d569601..00000000
--- a/data/magic.ini
+++ /dev/null
@@ -1,119 +0,0 @@
-[Defense!]
-type = spell
-buy = 5
-play = 3
-effect = Two units gain +1 Armor until end of turn
-
-[Heal!]
-type = spell
-buy = 5
-play = 2
-effect = Target unit gains 1 Health or remove all Poison counters from it
-
-[Rush!]
-type = spell
-buy = 5
-play = 2
-effect = Distribute 2 times "+ 2 Movement this turn" on up to two units
-
-[Attack!]
-type = spell
-buy = 5
-play = 2
-effect = Distribute 2 times "+1 Attack this turn" on up to two units
-
-[Action!]
-type = spell
-buy = 5
-play = 2
-effect = Move or attack with one unit
-
-[Stumble!]
-type = spell
-buy = 5
-play = 2
-effect = Target unit can not move or attack this turn
-
-[More!]
-type = spell
-buy = 5
-play = 2
-effect = Draw two cards
-
-[Select!]
-type = spell
-buy = 7
-play = 1
-effect = Draw 1. You may exile a card from your hand
-
-[Die!]
-type = spell
-buy = 10
-play = 6
-effect = Destroy target Unit
-
-[Clone!]
-type = spell
-buy = 7
-play = 3
-effect = Copy the next card you play. You may choose new targets. If you copy a permanent place a token copy of the parmanent in range 1 of the original
-
-[No!]
-type = spell
-buy = 5
-play = 2
-effect = Counter target spell
-
-[Mine!]
-type = spell
-buy = 5
-play = 2
-effect = Steal 2 resource from opponent
-
-[Isolate!]
-type = spell
-buy = 5
-play = 2
-effect = Target unit can not receive or deal damage this turn
-
-[Shroud!]
-type = spell
-buy = 5
-play = 2
-effect = Target unit can not be targeted this turn
-
-[Pierce!]
-type = spell
-buy = 5
-play = 1X
-effect = Ignore X Armor of target unit this turn
-
-[Ritual!]
-type = spell
-buy = 7
-play = 1
-effect = Gain 3 Ressource
-
-[Switch!]
-type = spell
-buy = 5
-play = 2
-effect = Switch the positions of two permanents you control
-
-[Transmute!]
-type = spell
-buy = 5
-play = 5
-effect = Put one card from your store into your hand. Exile this card
-
-[Appear!]
-type = spell
-buy = 7
-play = 3X
-effect = Play one unit costing X on any free tile
-
-[catalyst]
-type = artifact
-buy = 3
-play = 5
-effect = Spells any player controlling the most units in range 1 playes cost one less resource
diff --git a/data/misc.ini b/data/misc.ini
deleted file mode 100644
index a1ab9e19..00000000
--- a/data/misc.ini
+++ /dev/null
@@ -1,21 +0,0 @@
-[King]
-token = true
-type = unit
-effect = 5 Resource: +shroud until end of turn. \\ Protection from Die!
-upkeep = 0
-attack = 1
-health = 5
-movement = 1
-
-[Farmer]
-type = unit
-attack = 1
-health = 1
-movement = 1
-upkeep = 1
-
-[Stick of Victory]
-type = equipment
-token = true
-durability = infinite
-effect = The controller of the equipped unit increases its victory count by 1 in their upkeep
diff --git a/data/nautics.ini b/data/nautics.ini
deleted file mode 100644
index 48865938..00000000
--- a/data/nautics.ini
+++ /dev/null
@@ -1,47 +0,0 @@
-[Fisher]
-type = unit
-health = 2
-movement = 2 swimming
-buy = 5
-upkeep = 1
-effect = Crew 2
-full_action = Create fish trap token on adjacent water tile
-
-[Fish Trap]
-type = artifact
-token = true
-effect = Adjacent Fisher have \\ \faRedo: Gain 2 Resource
-
-[Sailor]
-type = unit
-health = 1
-movement = 1
-attack = 1
-upkeep = 1
-effect = A crewed unit gets +1 movement while swimming
-
-[Captain]
-type = unit
-health = 1
-movement = 1
-attack = 1
-buy = 7
-upkeep = 2
-effect = Other units in the same pile have no upkeep cost
-
-[Barge]
-type = unit
-health = 3
-movement = 3 swimming
-buy = 5
-upkeep = 1
-effect = Crew 6
-
-[Galley]
-type = unit
-health = 4
-attack = 1 range 2
-movement = 3 swimming
-buy = 7
-upkeep = 1
-effect = Crew 3