aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fl.fischer@fau.de>2021-02-20 16:03:34 +0100
committerFlorian Fischer <florian.fl.fischer@fau.de>2021-02-20 16:03:34 +0100
commit2c4eb9c160a6d36a7263366fca2bcd872029f771 (patch)
tree8bea6a60b0d3bb7c1cfc96c3696b50d9b15c3ca6
parentfa125970ba64a1485fabb59d7e1e6a99ecd68810 (diff)
downloadmuhqs-game-2c4eb9c160a6d36a7263366fca2bcd872029f771.tar.gz
muhqs-game-2c4eb9c160a6d36a7263366fca2bcd872029f771.zip
add english maps and ai rules
-rw-r--r--rules/en/ai.md63
-rw-r--r--rules/en/maps.md46
2 files changed, 109 insertions, 0 deletions
diff --git a/rules/en/ai.md b/rules/en/ai.md
new file mode 100644
index 00000000..8ae75108
--- /dev/null
+++ b/rules/en/ai.md
@@ -0,0 +1,63 @@
+# AI
+
+## Concepts
+
+* The algorithms for the AIs should be as simple as possible
+* They must be executable by human players with normal game materials
+* They should not take much time
+* Players want to play the game not execute the AI
+* Decision making should most of the time rely on RNG
+* We do not specify how the players implement their randomness
+
+## Units
+
+To execute a units AI the players follow the introductions in the AI logic
+in descending order.
+If no further steps can be executed the unit gets tapped.
+
+Any ambiguity is decided at random (multiple units in attack range, multiple most distant tiles, ...).
+### Aggressive
+ 1. If enemy Unit in attack Range then
+ attack enemy Unit in Range
+ 2. While move action available do
+ move towards nearest enemy unit
+ if attack action avail then proceed at 1.
+
+### Shy
+ 1. If not in the attack Range of an enemy Unit then
+ activate full action if available
+ 2. If move action available then
+ move to most distant point from all enemy units
+ 3. If enemy Unit in attack Range then
+ attack enemy Unit in Range
+
+### Wandering X
+ 1. If enemy unit in Range X then
+ execute aggressive AI
+ 2. If move action available then
+ move to random tile in movement Range
+ proceed at 1.
+
+### Supportive
+ 1. Use full action if possible
+ 2. move towards nearest allied Unit
+ 3. If enemy Unit in attack Range
+ attack enemy Unit in Range
+
+## The Kraken
+
+Instructions for the opponent player in "The Kraken" game mode.
+
+### Turn structure
+ 0. (Shuffle discard pile into empty deck)
+ 1. Get #players * 5 Resource
+ 2. Upkeep:
+ 2.1 While sum of upkeep cost bigger than available resource
+ destroy random unit
+ 2.2 Pay all upkeep cost
+ 3. Actions:
+ 3.1 Draw a card
+ 3.2 If the card is playable then
+ play the card
+ proceed at 3.1
+ 4. Discard the unused card
diff --git a/rules/en/maps.md b/rules/en/maps.md
new file mode 100644
index 00000000..5cda9e73
--- /dev/null
+++ b/rules/en/maps.md
@@ -0,0 +1,46 @@
+% muhq's game common map tiles
+
+# Common tiles
+
+## House
+
+* A small structural building.
+* **Units** on this tile can't be attacked from ranges > 1
+
+## Tower
+
+* A military building for area control.
+* **Units** with attack range X > 1 have attack range X + 1
+
+## Farm field
+
+* A generating resource through agriculture
+* A **Farmer** standing on a **Farm field** has full-action: gain 3 resource
+
+## Spawns
+
+* A tactical military location
+* Spawns are owned by a single player
+* Player can play permanents on a spawn they own
+
+## Harbor
+
+* A place where swimming stuff is build
+* Harbors are owned by a single player
+* Player can play swimming permanents on deep water tiles in range 1
+
+## Street
+
+* Routes for faster movement
+* A **unit** on a street has an additional move action which must result on a connected street in its movement range
+* Street are connected if they are adjacent
+
+## Deep Water
+
+* Oceans, Lakes, big rivers or canal
+* Only **unit** with swimming can be placed on deep water
+
+## Water
+
+* Water that is passable by a person
+* **Unit** must end their movement on the first water tile they enter