Moved replay-based test to have convenience import from game engine replay
authorJustin Worthe <justin@worthe-it.co.za>
Sat, 2 Jun 2018 11:09:13 +0000 (13:09 +0200)
committerJustin Worthe <justin@worthe-it.co.za>
Sat, 2 Jun 2018 11:09:13 +0000 (13:09 +0200)
144 files changed:
import-replay.sh [new file with mode: 0755]
src/engine/command.rs
src/strategy/monte_carlo.rs
tests/after_112/Round 000/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 000/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 001/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 001/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 002/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 002/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 003/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 003/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 004/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 004/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 005/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 005/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 006/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 006/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 007/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 007/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 008/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 008/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 009/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 009/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 010/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 010/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 011/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 011/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 012/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 012/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 013/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 013/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 014/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 014/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 015/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 015/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 016/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 016/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 017/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 017/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 018/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 018/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 019/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 019/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 020/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 020/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 021/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 021/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 022/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 022/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 023/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 023/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 024/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 024/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 025/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 025/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 026/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 026/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 027/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 027/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 028/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 028/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 029/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 029/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 030/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 030/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 031/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 031/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 032/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 032/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 033/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 033/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 034/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 034/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 035/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 035/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 036/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 036/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 037/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 037/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 038/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 038/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 039/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 039/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 040/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 040/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 041/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 041/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 042/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 042/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 043/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 043/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 044/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 044/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 045/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 045/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 046/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 046/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 047/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 047/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 048/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 048/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 049/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 049/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 050/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 050/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 051/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 051/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 052/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 052/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 053/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 053/PlayerCommand.txt [new file with mode: 0644]
tests/after_112/Round 054/OpponentCommand.txt [new file with mode: 0644]
tests/after_112/Round 054/PlayerCommand.txt [new file with mode: 0644]
tests/live-comparison.rs
tests/state1.json [deleted file]
tests/state10.json [deleted file]
tests/state11.json [deleted file]
tests/state12.json [deleted file]
tests/state13.json [deleted file]
tests/state14.json [deleted file]
tests/state15.json [deleted file]
tests/state16.json [deleted file]
tests/state17.json [deleted file]
tests/state18.json [deleted file]
tests/state19.json [deleted file]
tests/state2.json [deleted file]
tests/state20.json [deleted file]
tests/state21.json [deleted file]
tests/state22.json [deleted file]
tests/state23.json [deleted file]
tests/state24.json [deleted file]
tests/state25.json [deleted file]
tests/state26.json [deleted file]
tests/state27.json [deleted file]
tests/state28.json [deleted file]
tests/state29.json [deleted file]
tests/state3.json [deleted file]
tests/state30.json [deleted file]
tests/state4.json [deleted file]
tests/state5.json [deleted file]
tests/state6.json [deleted file]
tests/state7.json [deleted file]
tests/state8.json [deleted file]
tests/state9.json [deleted file]

diff --git a/import-replay.sh b/import-replay.sh
new file mode 100755 (executable)
index 0000000..2a1b27e
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+set -e
+
+REPLAY_FOLDER=$1
+OUTPUT_FOLDER=$2
+
+mkdir -p $OUTPUT_FOLDER
+
+for round_folder in $REPLAY_FOLDER/*; do
+    round_name=`basename "$round_folder"`
+    mkdir -p "$OUTPUT_FOLDER/$round_name"
+
+    player_folders=( "$round_folder"/* )
+    player_folder=${player_folders[0]}
+    cp "$player_folder/JsonMap.json" "$OUTPUT_FOLDER/$round_name/state.json"
+    cp "$player_folder/PlayerCommand.txt" "$OUTPUT_FOLDER/$round_name/PlayerCommand.txt"
+    
+    opponent_folder=${player_folders[1]}
+    cp "$opponent_folder/PlayerCommand.txt" "$OUTPUT_FOLDER/$round_name/OpponentCommand.txt"
+done
index 17dbd5a..b350d65 100644 (file)
@@ -29,4 +29,11 @@ impl BuildingType {
         use self::BuildingType::*;
         [Defence, Attack, Energy]
     }
+
+    fn count() -> u8 { BuildingType::Energy as u8 + 1 }
+    pub fn from_u8(id: u8) -> Option<BuildingType> {
+        use std::mem;
+        if id < Self::count() { Some(unsafe { mem::transmute(id) }) } else { None }
+    }
+
 }
index cd4dc35..c2f3561 100644 (file)
@@ -146,8 +146,8 @@ impl CommandScore {
         self.next_seed = next_seed;
     }
 
-    fn win_ratio(&self) -> u32 {
-        self.victories * 1000 / self.attempts
+    fn win_ratio(&self) -> i32 {
+        (self.victories as i32 - self.defeats as i32) * 10000 / (self.attempts as i32)
     }
     
     fn init_command_scores(settings: &GameSettings, state: &GameState) -> Vec<CommandScore> {
diff --git a/tests/after_112/Round 000/OpponentCommand.txt b/tests/after_112/Round 000/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..7388cff
--- /dev/null
@@ -0,0 +1 @@
+4,0,2
\ No newline at end of file
diff --git a/tests/after_112/Round 000/PlayerCommand.txt b/tests/after_112/Round 000/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..ab857c9
--- /dev/null
@@ -0,0 +1 @@
+7,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 001/OpponentCommand.txt b/tests/after_112/Round 001/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 001/PlayerCommand.txt b/tests/after_112/Round 001/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 002/OpponentCommand.txt b/tests/after_112/Round 002/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 002/PlayerCommand.txt b/tests/after_112/Round 002/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 003/OpponentCommand.txt b/tests/after_112/Round 003/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..4dd67d5
--- /dev/null
@@ -0,0 +1 @@
+1,0,2
\ No newline at end of file
diff --git a/tests/after_112/Round 003/PlayerCommand.txt b/tests/after_112/Round 003/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..87d322f
--- /dev/null
@@ -0,0 +1 @@
+3,0,2
\ No newline at end of file
diff --git a/tests/after_112/Round 004/OpponentCommand.txt b/tests/after_112/Round 004/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 004/PlayerCommand.txt b/tests/after_112/Round 004/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 005/OpponentCommand.txt b/tests/after_112/Round 005/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..67f6e86
--- /dev/null
@@ -0,0 +1 @@
+7,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 005/PlayerCommand.txt b/tests/after_112/Round 005/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..e61ee5b
--- /dev/null
@@ -0,0 +1 @@
+7,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 006/OpponentCommand.txt b/tests/after_112/Round 006/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 006/PlayerCommand.txt b/tests/after_112/Round 006/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 007/OpponentCommand.txt b/tests/after_112/Round 007/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..22d278e
--- /dev/null
@@ -0,0 +1 @@
+7,2,2
\ No newline at end of file
diff --git a/tests/after_112/Round 007/PlayerCommand.txt b/tests/after_112/Round 007/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..9033ecb
--- /dev/null
@@ -0,0 +1 @@
+4,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 008/OpponentCommand.txt b/tests/after_112/Round 008/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 008/PlayerCommand.txt b/tests/after_112/Round 008/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 009/OpponentCommand.txt b/tests/after_112/Round 009/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..93ec9b2
--- /dev/null
@@ -0,0 +1 @@
+6,5,1
\ No newline at end of file
diff --git a/tests/after_112/Round 009/PlayerCommand.txt b/tests/after_112/Round 009/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..7d93635
--- /dev/null
@@ -0,0 +1 @@
+2,2,1
\ No newline at end of file
diff --git a/tests/after_112/Round 010/OpponentCommand.txt b/tests/after_112/Round 010/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..e61ee5b
--- /dev/null
@@ -0,0 +1 @@
+7,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 010/PlayerCommand.txt b/tests/after_112/Round 010/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..8a842f9
--- /dev/null
@@ -0,0 +1 @@
+4,2,2
\ No newline at end of file
diff --git a/tests/after_112/Round 011/OpponentCommand.txt b/tests/after_112/Round 011/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..f217f6d
--- /dev/null
@@ -0,0 +1 @@
+5,6,2
\ No newline at end of file
diff --git a/tests/after_112/Round 011/PlayerCommand.txt b/tests/after_112/Round 011/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 012/OpponentCommand.txt b/tests/after_112/Round 012/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 012/PlayerCommand.txt b/tests/after_112/Round 012/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..b209272
--- /dev/null
@@ -0,0 +1 @@
+1,5,1
\ No newline at end of file
diff --git a/tests/after_112/Round 013/OpponentCommand.txt b/tests/after_112/Round 013/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..8bb009c
--- /dev/null
@@ -0,0 +1 @@
+6,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 013/PlayerCommand.txt b/tests/after_112/Round 013/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..5ff9de4
--- /dev/null
@@ -0,0 +1 @@
+3,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 014/OpponentCommand.txt b/tests/after_112/Round 014/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ea08612
--- /dev/null
@@ -0,0 +1 @@
+2,0,1
\ No newline at end of file
diff --git a/tests/after_112/Round 014/PlayerCommand.txt b/tests/after_112/Round 014/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 015/OpponentCommand.txt b/tests/after_112/Round 015/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ab857c9
--- /dev/null
@@ -0,0 +1 @@
+7,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 015/PlayerCommand.txt b/tests/after_112/Round 015/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..d5cd851
--- /dev/null
@@ -0,0 +1 @@
+5,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 016/OpponentCommand.txt b/tests/after_112/Round 016/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 016/PlayerCommand.txt b/tests/after_112/Round 016/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..ea9e316
--- /dev/null
@@ -0,0 +1 @@
+6,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 017/OpponentCommand.txt b/tests/after_112/Round 017/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..d5cd851
--- /dev/null
@@ -0,0 +1 @@
+5,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 017/PlayerCommand.txt b/tests/after_112/Round 017/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 018/OpponentCommand.txt b/tests/after_112/Round 018/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ea9e316
--- /dev/null
@@ -0,0 +1 @@
+6,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 018/PlayerCommand.txt b/tests/after_112/Round 018/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..9033ecb
--- /dev/null
@@ -0,0 +1 @@
+4,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 019/OpponentCommand.txt b/tests/after_112/Round 019/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ab857c9
--- /dev/null
@@ -0,0 +1 @@
+7,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 019/PlayerCommand.txt b/tests/after_112/Round 019/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..601aa29
--- /dev/null
@@ -0,0 +1 @@
+2,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 020/OpponentCommand.txt b/tests/after_112/Round 020/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..3362217
--- /dev/null
@@ -0,0 +1 @@
+0,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 020/PlayerCommand.txt b/tests/after_112/Round 020/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 021/OpponentCommand.txt b/tests/after_112/Round 021/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..55526f5
--- /dev/null
@@ -0,0 +1 @@
+1,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 021/PlayerCommand.txt b/tests/after_112/Round 021/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..b0fd0dc
--- /dev/null
@@ -0,0 +1 @@
+0,2,2
\ No newline at end of file
diff --git a/tests/after_112/Round 022/OpponentCommand.txt b/tests/after_112/Round 022/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ea9e316
--- /dev/null
@@ -0,0 +1 @@
+6,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 022/PlayerCommand.txt b/tests/after_112/Round 022/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..c7d9109
--- /dev/null
@@ -0,0 +1 @@
+5,2,2
\ No newline at end of file
diff --git a/tests/after_112/Round 023/OpponentCommand.txt b/tests/after_112/Round 023/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..e02c049
--- /dev/null
@@ -0,0 +1 @@
+3,6,1
\ No newline at end of file
diff --git a/tests/after_112/Round 023/PlayerCommand.txt b/tests/after_112/Round 023/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bdb74d0
--- /dev/null
@@ -0,0 +1 @@
+No Command
\ No newline at end of file
diff --git a/tests/after_112/Round 024/OpponentCommand.txt b/tests/after_112/Round 024/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ab857c9
--- /dev/null
@@ -0,0 +1 @@
+7,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 024/PlayerCommand.txt b/tests/after_112/Round 024/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..3dee0c6
--- /dev/null
@@ -0,0 +1 @@
+6,3,1
\ No newline at end of file
diff --git a/tests/after_112/Round 025/OpponentCommand.txt b/tests/after_112/Round 025/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..addc906
--- /dev/null
@@ -0,0 +1 @@
+4,3,1
\ No newline at end of file
diff --git a/tests/after_112/Round 025/PlayerCommand.txt b/tests/after_112/Round 025/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..67f6e86
--- /dev/null
@@ -0,0 +1 @@
+7,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 026/OpponentCommand.txt b/tests/after_112/Round 026/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..8e935c8
--- /dev/null
@@ -0,0 +1 @@
+6,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 026/PlayerCommand.txt b/tests/after_112/Round 026/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..4a9590d
--- /dev/null
@@ -0,0 +1 @@
+0,7,2
\ No newline at end of file
diff --git a/tests/after_112/Round 027/OpponentCommand.txt b/tests/after_112/Round 027/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ea9e316
--- /dev/null
@@ -0,0 +1 @@
+6,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 027/PlayerCommand.txt b/tests/after_112/Round 027/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..8bb009c
--- /dev/null
@@ -0,0 +1 @@
+6,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 028/OpponentCommand.txt b/tests/after_112/Round 028/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ab857c9
--- /dev/null
@@ -0,0 +1 @@
+7,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 028/PlayerCommand.txt b/tests/after_112/Round 028/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..ab857c9
--- /dev/null
@@ -0,0 +1 @@
+7,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 029/OpponentCommand.txt b/tests/after_112/Round 029/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..8a6627b
--- /dev/null
@@ -0,0 +1 @@
+1,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 029/PlayerCommand.txt b/tests/after_112/Round 029/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..67f6e86
--- /dev/null
@@ -0,0 +1 @@
+7,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 030/OpponentCommand.txt b/tests/after_112/Round 030/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..3fff544
--- /dev/null
@@ -0,0 +1 @@
+4,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 030/PlayerCommand.txt b/tests/after_112/Round 030/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..bb03eca
--- /dev/null
@@ -0,0 +1 @@
+5,3,1
\ No newline at end of file
diff --git a/tests/after_112/Round 031/OpponentCommand.txt b/tests/after_112/Round 031/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..1571d81
--- /dev/null
@@ -0,0 +1 @@
+5,3,0
\ No newline at end of file
diff --git a/tests/after_112/Round 031/PlayerCommand.txt b/tests/after_112/Round 031/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..3177984
--- /dev/null
@@ -0,0 +1 @@
+2,3,1
\ No newline at end of file
diff --git a/tests/after_112/Round 032/OpponentCommand.txt b/tests/after_112/Round 032/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..4a9590d
--- /dev/null
@@ -0,0 +1 @@
+0,7,2
\ No newline at end of file
diff --git a/tests/after_112/Round 032/PlayerCommand.txt b/tests/after_112/Round 032/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..67f6e86
--- /dev/null
@@ -0,0 +1 @@
+7,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 033/OpponentCommand.txt b/tests/after_112/Round 033/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..b77a79c
--- /dev/null
@@ -0,0 +1 @@
+2,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 033/PlayerCommand.txt b/tests/after_112/Round 033/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..addc906
--- /dev/null
@@ -0,0 +1 @@
+4,3,1
\ No newline at end of file
diff --git a/tests/after_112/Round 034/OpponentCommand.txt b/tests/after_112/Round 034/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..16ddcd7
--- /dev/null
@@ -0,0 +1 @@
+7,0,1
\ No newline at end of file
diff --git a/tests/after_112/Round 034/PlayerCommand.txt b/tests/after_112/Round 034/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..3fff544
--- /dev/null
@@ -0,0 +1 @@
+4,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 035/OpponentCommand.txt b/tests/after_112/Round 035/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..674d299
--- /dev/null
@@ -0,0 +1 @@
+6,0,1
\ No newline at end of file
diff --git a/tests/after_112/Round 035/PlayerCommand.txt b/tests/after_112/Round 035/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..95a4cf3
--- /dev/null
@@ -0,0 +1 @@
+0,0,0
\ No newline at end of file
diff --git a/tests/after_112/Round 036/OpponentCommand.txt b/tests/after_112/Round 036/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..7f7238b
--- /dev/null
@@ -0,0 +1 @@
+6,3,0
\ No newline at end of file
diff --git a/tests/after_112/Round 036/PlayerCommand.txt b/tests/after_112/Round 036/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..d51905f
--- /dev/null
@@ -0,0 +1 @@
+7,0,0
\ No newline at end of file
diff --git a/tests/after_112/Round 037/OpponentCommand.txt b/tests/after_112/Round 037/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..3ca9676
--- /dev/null
@@ -0,0 +1 @@
+7,3,0
\ No newline at end of file
diff --git a/tests/after_112/Round 037/PlayerCommand.txt b/tests/after_112/Round 037/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..3ab3f32
--- /dev/null
@@ -0,0 +1 @@
+5,0,1
\ No newline at end of file
diff --git a/tests/after_112/Round 038/OpponentCommand.txt b/tests/after_112/Round 038/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..bb03eca
--- /dev/null
@@ -0,0 +1 @@
+5,3,1
\ No newline at end of file
diff --git a/tests/after_112/Round 038/PlayerCommand.txt b/tests/after_112/Round 038/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..4f716a1
--- /dev/null
@@ -0,0 +1 @@
+2,6,0
\ No newline at end of file
diff --git a/tests/after_112/Round 039/OpponentCommand.txt b/tests/after_112/Round 039/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..ea179d3
--- /dev/null
@@ -0,0 +1 @@
+3,3,1
\ No newline at end of file
diff --git a/tests/after_112/Round 039/PlayerCommand.txt b/tests/after_112/Round 039/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..5e4b046
--- /dev/null
@@ -0,0 +1 @@
+0,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 040/OpponentCommand.txt b/tests/after_112/Round 040/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..72ca43d
--- /dev/null
@@ -0,0 +1 @@
+0,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 040/PlayerCommand.txt b/tests/after_112/Round 040/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..1c0a0b0
--- /dev/null
@@ -0,0 +1 @@
+1,2,1
\ No newline at end of file
diff --git a/tests/after_112/Round 041/OpponentCommand.txt b/tests/after_112/Round 041/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..d9e32bb
--- /dev/null
@@ -0,0 +1 @@
+2,2,0
\ No newline at end of file
diff --git a/tests/after_112/Round 041/PlayerCommand.txt b/tests/after_112/Round 041/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..6643b0d
--- /dev/null
@@ -0,0 +1 @@
+5,4,1
\ No newline at end of file
diff --git a/tests/after_112/Round 042/OpponentCommand.txt b/tests/after_112/Round 042/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..239b17a
--- /dev/null
@@ -0,0 +1 @@
+1,4,2
\ No newline at end of file
diff --git a/tests/after_112/Round 042/PlayerCommand.txt b/tests/after_112/Round 042/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..7ca2987
--- /dev/null
@@ -0,0 +1 @@
+1,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 043/OpponentCommand.txt b/tests/after_112/Round 043/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..8bb009c
--- /dev/null
@@ -0,0 +1 @@
+6,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 043/PlayerCommand.txt b/tests/after_112/Round 043/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..a030ed4
--- /dev/null
@@ -0,0 +1 @@
+6,4,1
\ No newline at end of file
diff --git a/tests/after_112/Round 044/OpponentCommand.txt b/tests/after_112/Round 044/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..226a1f4
--- /dev/null
@@ -0,0 +1 @@
+2,4,0
\ No newline at end of file
diff --git a/tests/after_112/Round 044/PlayerCommand.txt b/tests/after_112/Round 044/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..b4e7071
--- /dev/null
@@ -0,0 +1 @@
+5,1,0
\ No newline at end of file
diff --git a/tests/after_112/Round 045/OpponentCommand.txt b/tests/after_112/Round 045/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..9033ecb
--- /dev/null
@@ -0,0 +1 @@
+4,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 045/PlayerCommand.txt b/tests/after_112/Round 045/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..17d7db2
--- /dev/null
@@ -0,0 +1 @@
+5,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 046/OpponentCommand.txt b/tests/after_112/Round 046/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..323dbb1
--- /dev/null
@@ -0,0 +1 @@
+7,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 046/PlayerCommand.txt b/tests/after_112/Round 046/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..3fff544
--- /dev/null
@@ -0,0 +1 @@
+4,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 047/OpponentCommand.txt b/tests/after_112/Round 047/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..49dd99d
--- /dev/null
@@ -0,0 +1 @@
+1,2,2
\ No newline at end of file
diff --git a/tests/after_112/Round 047/PlayerCommand.txt b/tests/after_112/Round 047/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..f238916
--- /dev/null
@@ -0,0 +1 @@
+2,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 048/OpponentCommand.txt b/tests/after_112/Round 048/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..f23ef17
--- /dev/null
@@ -0,0 +1 @@
+4,6,1
\ No newline at end of file
diff --git a/tests/after_112/Round 048/PlayerCommand.txt b/tests/after_112/Round 048/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..67f6e86
--- /dev/null
@@ -0,0 +1 @@
+7,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 049/OpponentCommand.txt b/tests/after_112/Round 049/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..1084f37
--- /dev/null
@@ -0,0 +1 @@
+6,6,1
\ No newline at end of file
diff --git a/tests/after_112/Round 049/PlayerCommand.txt b/tests/after_112/Round 049/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..58897af
--- /dev/null
@@ -0,0 +1 @@
+3,6,0
\ No newline at end of file
diff --git a/tests/after_112/Round 050/OpponentCommand.txt b/tests/after_112/Round 050/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..9033ecb
--- /dev/null
@@ -0,0 +1 @@
+4,5,2
\ No newline at end of file
diff --git a/tests/after_112/Round 050/PlayerCommand.txt b/tests/after_112/Round 050/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..b87efa8
--- /dev/null
@@ -0,0 +1 @@
+4,6,2
\ No newline at end of file
diff --git a/tests/after_112/Round 051/OpponentCommand.txt b/tests/after_112/Round 051/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..dd03d6a
--- /dev/null
@@ -0,0 +1 @@
+3,4,0
\ No newline at end of file
diff --git a/tests/after_112/Round 051/PlayerCommand.txt b/tests/after_112/Round 051/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..a81a341
--- /dev/null
@@ -0,0 +1 @@
+7,6,1
\ No newline at end of file
diff --git a/tests/after_112/Round 052/OpponentCommand.txt b/tests/after_112/Round 052/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..816366d
--- /dev/null
@@ -0,0 +1 @@
+0,2,0
\ No newline at end of file
diff --git a/tests/after_112/Round 052/PlayerCommand.txt b/tests/after_112/Round 052/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..ea9e316
--- /dev/null
@@ -0,0 +1 @@
+6,1,2
\ No newline at end of file
diff --git a/tests/after_112/Round 053/OpponentCommand.txt b/tests/after_112/Round 053/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..b77a79c
--- /dev/null
@@ -0,0 +1 @@
+2,3,2
\ No newline at end of file
diff --git a/tests/after_112/Round 053/PlayerCommand.txt b/tests/after_112/Round 053/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..48cfbfe
--- /dev/null
@@ -0,0 +1 @@
+7,0,2
\ No newline at end of file
diff --git a/tests/after_112/Round 054/OpponentCommand.txt b/tests/after_112/Round 054/OpponentCommand.txt
new file mode 100644 (file)
index 0000000..d5cd851
--- /dev/null
@@ -0,0 +1 @@
+5,1,1
\ No newline at end of file
diff --git a/tests/after_112/Round 054/PlayerCommand.txt b/tests/after_112/Round 054/PlayerCommand.txt
new file mode 100644 (file)
index 0000000..a7503e5
--- /dev/null
@@ -0,0 +1 @@
+7,3,1
\ No newline at end of file
index e090907..e8f2b3a 100644 (file)
@@ -3,52 +3,53 @@ extern crate zombot;
 use zombot::json;
 use zombot::engine::command::{Command, BuildingType};
 use zombot::engine::geometry::Point;
+use zombot::engine::settings::GameSettings;
 
-#[test]
-fn it_successfully_simulates_moves() {
-    let (settings, mut state) = json::read_state_from_file("tests/state0.json").expect("Failed to read state0.json");
+use std::fs::File;
+use std::io::prelude::*;
 
-    let all_commands = [
-        (Command::Build(Point::new(3,2),BuildingType::Energy), Command::Nothing),
-        (Command::Nothing, Command::Nothing),
-        (Command::Nothing, Command::Build(Point::new(4,3),BuildingType::Energy)),
-        (Command::Build(Point::new(3,1),BuildingType::Energy), Command::Nothing),
-        (Command::Nothing, Command::Nothing),
-        (Command::Build(Point::new(3,0),BuildingType::Energy),Command::Build(Point::new(6,0),BuildingType::Energy)),
-        (Command::Nothing,Command::Nothing),
-        (Command::Build(Point::new(3,3),BuildingType::Energy),Command::Build(Point::new(7,1),BuildingType::Attack)),
-        (Command::Nothing,Command::Nothing),
-        (Command::Build(Point::new(2,3),BuildingType::Attack),Command::Nothing),
-        
-        (Command::Build(Point::new(2,1),BuildingType::Energy),Command::Build(Point::new(5,3),BuildingType::Defence)),
-        (Command::Nothing,Command::Nothing),
-        (Command::Build(Point::new(1,0),BuildingType::Attack),Command::Nothing),
-        (Command::Nothing,Command::Build(Point::new(5,0),BuildingType::Defence)),
-        (Command::Build(Point::new(0,2),BuildingType::Attack),Command::Nothing),
-        (Command::Build(Point::new(3,1),BuildingType::Energy),Command::Nothing),
-        (Command::Nothing,Command::Nothing),
-        (Command::Build(Point::new(0,1),BuildingType::Attack),Command::Build(Point::new(7,2),BuildingType::Defence)),
-        (Command::Build(Point::new(2,1),BuildingType::Energy),Command::Nothing),
-        (Command::Nothing,Command::Nothing),
+#[test]
+fn it_successfully_simulates_replay() {
+    let replay_folder = "tests/after_112";
+    let (settings, mut state) = json::read_state_from_file(&format!("{}/Round 000/state.json", replay_folder)).unwrap();
+    
+    for i in 0..54 {
+        let player = read_player_command(&format!("{}/Round {:03}/PlayerCommand.txt", replay_folder, i));
+        let opponent = read_opponent_command(&format!("{}/Round {:03}/OpponentCommand.txt", replay_folder, i), &settings);
+        let (_, mut expected_state) = json::read_state_from_file(&format!("{}/Round {:03}/state.json", replay_folder, i+1)).unwrap();
         
-        (Command::Build(Point::new(0,0),BuildingType::Attack),Command::Nothing),
-        (Command::Build(Point::new(0,3),BuildingType::Attack),Command::Build(Point::new(4,1),BuildingType::Defence)),
-        (Command::Nothing,Command::Nothing),
-        (Command::Build(Point::new(1,3),BuildingType::Attack),Command::Nothing),
-        (Command::Build(Point::new(3,1),BuildingType::Energy),Command::Nothing),
-        (Command::Nothing,Command::Build(Point::new(6,1),BuildingType::Defence)),
-        (Command::Build(Point::new(2,2),BuildingType::Energy),Command::Nothing),
-        (Command::Build(Point::new(1,2),BuildingType::Energy),Command::Nothing),
-        (Command::Build(Point::new(3,1),BuildingType::Energy),Command::Build(Point::new(7,0),BuildingType::Defence)),
-        (Command::Build(Point::new(2,1),BuildingType::Energy),Command::Nothing)
-    ];
-
-    for (i, &(player, opponent)) in all_commands.iter().enumerate() {
-        let file = format!("tests/state{}.json", i+1);
         state.simulate_mut(&settings, player, opponent);
-        let (_, mut actual_state) = json::read_state_from_file(&file).unwrap();
         state.sort();
-        actual_state.sort();
-        assert_eq!(state, actual_state, "\nFailed on state {}\n", i+1);
+        expected_state.sort();
+        assert_eq!(state, expected_state, "\nFailed on state {}\n", i+1);
+    }
+}
+
+fn read_player_command(filename: &str) -> Command {
+    let mut file = File::open(filename).unwrap();
+    let mut content = String::new();
+    file.read_to_string(&mut content).unwrap();
+    if content.trim() == "No Command" {
+        Command::Nothing
+    }
+    else {
+        let mut components = content.split(',');
+        Command::Build(
+            Point::new(components.next().unwrap().trim().parse().unwrap(),
+                       components.next().unwrap().trim().parse().unwrap()
+            ),
+            BuildingType::from_u8(components.next().unwrap().trim().parse().unwrap()).unwrap()
+        )
+    }
+}
+
+fn read_opponent_command(filename: &str, settings: &GameSettings) -> Command {
+    match read_player_command(filename) {
+        Command::Nothing => Command::Nothing,
+        Command::Build(p, b) => Command::Build(Point::new(
+            settings.size.x - p.x - 1,
+            p.y
+        ), b)
     }
+    
 }
diff --git a/tests/state1.json b/tests/state1.json
deleted file mode 100644 (file)
index 164a6bd..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":1,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":5,"health":100,"hitsTaken":0,"score":6},{"playerType":"B","energy":25,"health":100,"hitsTaken":0,"score":5}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
diff --git a/tests/state10.json b/tests/state10.json
deleted file mode 100644 (file)
index 42c53c4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":10,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":23,"health":100,"hitsTaken":0,"score":118},{"playerType":"B","energy":33,"health":100,"hitsTaken":0,"score":86}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state11.json b/tests/state11.json
deleted file mode 100644 (file)
index bc3aa6a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":11,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":20,"health":100,"hitsTaken":0,"score":141},{"playerType":"B","energy":14,"health":100,"hitsTaken":0,"score":98}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":20,"constructionTimeLeft":2,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state12.json b/tests/state12.json
deleted file mode 100644 (file)
index b025cba..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":12,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":37,"health":100,"hitsTaken":0,"score":164},{"playerType":"B","energy":22,"health":100,"hitsTaken":0,"score":112}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":20,"constructionTimeLeft":1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state13.json b/tests/state13.json
deleted file mode 100644 (file)
index 4cc26c3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":13,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":24,"health":100,"hitsTaken":0,"score":182},{"playerType":"B","energy":30,"health":100,"hitsTaken":0,"score":120}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":20,"constructionTimeLeft":0,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state14.json b/tests/state14.json
deleted file mode 100644 (file)
index 1a85e19..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":14,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":41,"health":100,"hitsTaken":0,"score":199},{"playerType":"B","energy":8,"health":100,"hitsTaken":0,"score":129}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":20,"constructionTimeLeft":2,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":20,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state15.json b/tests/state15.json
deleted file mode 100644 (file)
index 3eb21c5..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":15,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":28,"health":100,"hitsTaken":0,"score":227},{"playerType":"B","energy":16,"health":100,"hitsTaken":0,"score":137}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":20,"constructionTimeLeft":1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":20,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state16.json b/tests/state16.json
deleted file mode 100644 (file)
index d05993c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":16,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":25,"health":100,"hitsTaken":0,"score":245},{"playerType":"B","energy":24,"health":100,"hitsTaken":0,"score":145}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":20,"constructionTimeLeft":0,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":1,"playerType":"B"}],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":1,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":20,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state17.json b/tests/state17.json
deleted file mode 100644 (file)
index b4824ea..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":17,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":42,"health":100,"hitsTaken":0,"score":272},{"playerType":"B","energy":32,"health":100,"hitsTaken":0,"score":159}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state18.json b/tests/state18.json
deleted file mode 100644 (file)
index c0d175c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":18,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":29,"health":100,"hitsTaken":0,"score":295},{"playerType":"B","energy":10,"health":100,"hitsTaken":0,"score":168}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":20,"constructionTimeLeft":2,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state19.json b/tests/state19.json
deleted file mode 100644 (file)
index 1e82db4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":19,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":26,"health":100,"hitsTaken":0,"score":323},{"playerType":"B","energy":18,"health":100,"hitsTaken":0,"score":176}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":1,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":20,"constructionTimeLeft":1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state2.json b/tests/state2.json
deleted file mode 100644 (file)
index 323ea8e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":2,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":13,"health":100,"hitsTaken":0,"score":14},{"playerType":"B","energy":30,"health":100,"hitsTaken":0,"score":10}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
diff --git a/tests/state20.json b/tests/state20.json
deleted file mode 100644 (file)
index 9f306c2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":20,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":43,"health":100,"hitsTaken":0,"score":345},{"playerType":"B","energy":26,"health":100,"hitsTaken":0,"score":190}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":2,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":1,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":20,"constructionTimeLeft":0,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state21.json b/tests/state21.json
deleted file mode 100644 (file)
index e75a3cc..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":21,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":30,"health":100,"hitsTaken":0,"score":373},{"playerType":"B","energy":34,"health":100,"hitsTaken":0,"score":198}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":3,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":20,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state22.json b/tests/state22.json
deleted file mode 100644 (file)
index 72bcadb..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":22,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":17,"health":100,"hitsTaken":0,"score":406},{"playerType":"B","energy":12,"health":100,"hitsTaken":0,"score":207}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":1,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":20,"constructionTimeLeft":2,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[{"damage":5,"speed":1,"x":4,"y":1,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state23.json b/tests/state23.json
deleted file mode 100644 (file)
index 6e8bb03..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":23,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":34,"health":100,"hitsTaken":0,"score":433},{"playerType":"B","energy":20,"health":100,"hitsTaken":0,"score":215}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":1,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":20,"constructionTimeLeft":1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[{"damage":5,"speed":1,"x":4,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":1,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":1,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state24.json b/tests/state24.json
deleted file mode 100644 (file)
index d4ee007..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":24,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":21,"health":100,"hitsTaken":0,"score":466},{"playerType":"B","energy":28,"health":100,"hitsTaken":0,"score":223}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":2,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":3,"y":1,"playerType":"B"}],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":20,"constructionTimeLeft":0,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":1,"playerType":"A"}],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":1,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":2,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state25.json b/tests/state25.json
deleted file mode 100644 (file)
index faaeca0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":25,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":15,"health":100,"hitsTaken":0,"score":507},{"playerType":"B","energy":36,"health":100,"hitsTaken":0,"score":237}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":20,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":2,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state26.json b/tests/state26.json
deleted file mode 100644 (file)
index 4abfc72..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":26,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":32,"health":100,"hitsTaken":0,"score":555},{"playerType":"B","energy":14,"health":100,"hitsTaken":0,"score":246}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":1,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":6,"y":1,"buildings":[{"health":20,"constructionTimeLeft":2,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":6,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":5,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state27.json b/tests/state27.json
deleted file mode 100644 (file)
index 0d36c79..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":27,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":29,"health":100,"hitsTaken":0,"score":594},{"playerType":"B","energy":22,"health":100,"hitsTaken":0,"score":259}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":1,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[{"damage":5,"speed":1,"x":4,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[{"health":20,"constructionTimeLeft":1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":6,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":1,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state28.json b/tests/state28.json
deleted file mode 100644 (file)
index 303ecbf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":28,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":26,"health":100,"hitsTaken":0,"score":622},{"playerType":"B","energy":30,"health":100,"hitsTaken":0,"score":273}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[{"health":20,"constructionTimeLeft":0,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":6,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":1,"y":2,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":1,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":2,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state29.json b/tests/state29.json
deleted file mode 100644 (file)
index c41b1fc..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":29,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":26,"health":100,"hitsTaken":0,"score":658},{"playerType":"B","energy":8,"health":100,"hitsTaken":0,"score":282}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[{"health":20,"constructionTimeLeft":2,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":1,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":15,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[{"health":20,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":6,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":1,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":2,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":2,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":2,"playerType":"A"}],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":2,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state3.json b/tests/state3.json
deleted file mode 100644 (file)
index 98bdc66..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":3,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":21,"health":100,"hitsTaken":0,"score":22},{"playerType":"B","energy":15,"health":100,"hitsTaken":0,"score":16}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
diff --git a/tests/state30.json b/tests/state30.json
deleted file mode 100644 (file)
index 5527c6d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":30,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":29,"health":100,"hitsTaken":0,"score":713},{"playerType":"B","energy":13,"health":100,"hitsTaken":0,"score":287}],"gameMap":[[{"x":0,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":0,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":1,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":2,"y":0,"playerType":"A"}],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":5,"y":0,"playerType":"A"}],"cellOwner":"B"},{"x":6,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[{"health":20,"constructionTimeLeft":1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[{"health":10,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":4,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[{"health":20,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":6,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":1,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":1,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":2,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":2,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"DEFENSE","x":7,"y":2,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":0,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":2,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":1,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":2,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[{"damage":5,"speed":1,"x":3,"y":3,"playerType":"A"}],"cellOwner":"A"},{"x":4,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":4,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":3,"playerType":"A"}],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":7,"y":3,"playerType":"A"}],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state4.json b/tests/state4.json
deleted file mode 100644 (file)
index 29f3b2c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":4,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":9,"health":100,"hitsTaken":0,"score":31},{"playerType":"B","energy":23,"health":100,"hitsTaken":0,"score":24}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
diff --git a/tests/state5.json b/tests/state5.json
deleted file mode 100644 (file)
index 02b654c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":5,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":20,"health":100,"hitsTaken":0,"score":42},{"playerType":"B","energy":31,"health":100,"hitsTaken":0,"score":32}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
diff --git a/tests/state6.json b/tests/state6.json
deleted file mode 100644 (file)
index f4b6f46..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":6,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":11,"health":100,"hitsTaken":0,"score":54},{"playerType":"B","energy":19,"health":100,"hitsTaken":0,"score":41}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state7.json b/tests/state7.json
deleted file mode 100644 (file)
index 3f27bcf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":7,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":25,"health":100,"hitsTaken":0,"score":68},{"playerType":"B","energy":30,"health":100,"hitsTaken":0,"score":52}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state8.json b/tests/state8.json
deleted file mode 100644 (file)
index d5d82ab..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":8,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":19,"health":100,"hitsTaken":0,"score":83},{"playerType":"B","energy":11,"health":100,"hitsTaken":0,"score":64}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":0,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":0,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file
diff --git a/tests/state9.json b/tests/state9.json
deleted file mode 100644 (file)
index 686a011..0000000
+++ /dev/null
@@ -1 +0,0 @@
-{"gameDetails":{"round":9,"mapWidth":8,"mapHeight":4,"roundIncomeEnergy":5,"buildingPrices":{"ENERGY":20,"ATTACK":30,"DEFENSE":30},"buildingsStats":{"ENERGY":{"health":5,"constructionTime":2,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":3,"destroyMultiplier":1,"constructionScore":1},"ATTACK":{"health":5,"constructionTime":2,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownPeriod":3,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1},"DEFENSE":{"health":20,"constructionTime":4,"price":30,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownPeriod":0,"energyGeneratedPerTurn":0,"destroyMultiplier":1,"constructionScore":1}}},"players":[{"playerType":"A","energy":36,"health":100,"hitsTaken":0,"score":100},{"playerType":"B","energy":22,"health":100,"hitsTaken":0,"score":75}],"gameMap":[[{"x":0,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":0,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":0,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":0,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":6,"y":0,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":7,"y":0,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":1,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":1,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":1,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":1,"buildings":[],"missiles":[{"damage":5,"speed":1,"x":6,"y":1,"playerType":"B"}],"cellOwner":"B"},{"x":7,"y":1,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":30,"weaponDamage":5,"weaponSpeed":1,"weaponCooldownTimeLeft":3,"weaponCooldownPeriod":3,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":0,"buildingType":"ATTACK","x":7,"y":1,"playerType":"B"}],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":2,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":2,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":2,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":5,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":2,"buildings":[],"missiles":[],"cellOwner":"B"}],[{"x":0,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":1,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":2,"y":3,"buildings":[],"missiles":[],"cellOwner":"A"},{"x":3,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":3,"y":3,"playerType":"A"}],"missiles":[],"cellOwner":"A"},{"x":4,"y":3,"buildings":[{"health":5,"constructionTimeLeft":-1,"price":20,"weaponDamage":0,"weaponSpeed":0,"weaponCooldownTimeLeft":0,"weaponCooldownPeriod":0,"destroyMultiplier":1,"constructionScore":1,"energyGeneratedPerTurn":3,"buildingType":"ENERGY","x":4,"y":3,"playerType":"B"}],"missiles":[],"cellOwner":"B"},{"x":5,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":6,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"},{"x":7,"y":3,"buildings":[],"missiles":[],"cellOwner":"B"}]]}
\ No newline at end of file