label="2S – Basiliskenhöhlen Runde 28"
version="1.6.2"
completion="running"
campaign_type="multiplayer"
difficulty="NORMAL"
random_seed="30374"
random_calls="0"
next_underlying_unit_id="755"
end_text_duration="0"
[variables]
[/variables]
[replay]
	[command]
		[start]
		[/start]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="gl & hf"
			side="1"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="u2"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="satHyre has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="klein_atuin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="4"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="10556"
		[/random]
		[random]
			value="6845"
		[/random]
		[random]
			value="27277"
		[/random]
		[random]
			value="15382"
		[/random]
		[random]
			value="15042"
		[/random]
		[random]
			value="597"
		[/random]
		[random]
			value="18569"
		[/random]
		[random]
			value="10260"
		[/random]
		[random]
			value="6190"
		[/random]
		[random]
			value="27682"
		[/random]
		[random]
			value="21034"
		[/random]
		[random]
			value="20055"
		[/random]
		[random]
			value="4917"
		[/random]
		[random]
			value="3034"
		[/random]
		[random]
			value="12769"
			[results]
				checksum="FIxBwyUzhyBkwVHKQOq5AMPytSNtRJzMRsDuHBtnQvBFyQAVsL8qJTmQQNRqrWuTuTxCUEQDPxfDLuyOdqNHp2JuaZJrXGikJwc0bkdie+c.P93obZj,mcpd3b,IXl32"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="4"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="14988"
		[/random]
		[random]
			value="26070"
		[/random]
		[random]
			value="15323"
		[/random]
		[random]
			value="24917"
		[/random]
		[random]
			value="11449"
		[/random]
		[random]
			value="16325"
		[/random]
		[random]
			value="27878"
		[/random]
		[random]
			value="8419"
		[/random]
		[random]
			value="18497"
		[/random]
		[random]
			value="26585"
		[/random]
		[random]
			value="26855"
		[/random]
		[random]
			value="9069"
		[/random]
		[random]
			value="25403"
		[/random]
		[random]
			value="7260"
		[/random]
		[random]
			value="29515"
			[results]
				checksum="FTxBwyUzhyBkwVHKQOq5AMPytSNtRJzMRsDuHBtnQvBFyQAVsL8qJTmQQNRqrWuTuTxCUFIDPxfDLuyOdqNHp2JuaZMrXGikJwc0bkdie+c.P93obZj,mcol3b,IXl32"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="gracz has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="4"
			x="19"
			y="5"
		[/recruit]
		[random]
			value="31521"
		[/random]
		[random]
			value="11729"
		[/random]
		[random]
			value="8658"
		[/random]
		[random]
			value="25677"
		[/random]
		[random]
			value="14676"
		[/random]
		[random]
			value="15624"
		[/random]
		[random]
			value="24839"
		[/random]
		[random]
			value="361"
		[/random]
		[random]
			value="28178"
		[/random]
		[random]
			value="9686"
		[/random]
		[random]
			value="4027"
		[/random]
		[random]
			value="16171"
		[/random]
		[random]
			value="18287"
		[/random]
		[random]
			value="4377"
		[/random]
		[random]
			value="23085"
			[results]
				checksum="uyqNVzDO<ExdHrVAAKrGB6qDQPwqLuEDUSNIMADRBGxxpOFSryqC1rOBpDQNRqrWuTuTxCUFJDPxfDLuyOdqNHp2JuaZMrXGikJwc0bkdib+c.P93obZj,mcok3b,IXl"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="5"
			x="23"
			y="5"
		[/recruit]
		[random]
			value="6504"
		[/random]
		[random]
			value="22063"
		[/random]
		[random]
			value="29049"
		[/random]
		[random]
			value="25645"
		[/random]
		[random]
			value="21005"
		[/random]
		[random]
			value="15206"
		[/random]
		[random]
			value="6044"
		[/random]
		[random]
			value="26282"
		[/random]
		[random]
			value="2337"
		[/random]
		[random]
			value="706"
		[/random]
		[random]
			value="764"
		[/random]
		[random]
			value="19047"
		[/random]
		[random]
			value="11661"
		[/random]
		[random]
			value="25306"
		[/random]
		[random]
			value="17896"
			[results]
				checksum="8ax-d6b6xp8sjgga3aP72g3e+iBm.jefmffY-+6<ip3<5-4egW6m2lahna90i9fl5a1hh7oj8-<F->mkj.91>I6ygXo9WjoolcACZdd9b,<-lvi-OF>N69sv8joLJwPp"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="zedahu has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="20"
			y="4"
		[/recruit]
		[random]
			value="26334"
		[/random]
		[random]
			value="27546"
		[/random]
		[random]
			value="1871"
		[/random]
		[random]
			value="12776"
		[/random]
		[random]
			value="1701"
		[/random]
		[random]
			value="25026"
		[/random]
		[random]
			value="32668"
		[/random]
		[random]
			value="9964"
		[/random]
		[random]
			value="17172"
		[/random]
		[random]
			value="14916"
		[/random]
		[random]
			value="11242"
		[/random]
		[random]
			value="25286"
		[/random]
		[random]
			value="9845"
		[/random]
		[random]
			value="16273"
		[/random]
		[random]
			value="12532"
			[results]
				checksum="86Wmq3.,tb9Th9Xh+8Om3eb898egWbi26k39>2dlaZge0f-9iPif8c7h8k-+v7e7e8fh1b<i8Sem73jI-oaGeRO,h0ybO20xxhh6<5-i30KE4<Yfd6-cbeMq5.ql>pFA"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="22"
			y="4"
		[/recruit]
		[random]
			value="18163"
		[/random]
		[random]
			value="16926"
		[/random]
		[random]
			value="26827"
		[/random]
		[random]
			value="16998"
		[/random]
		[random]
			value="18978"
		[/random]
		[random]
			value="15605"
		[/random]
		[random]
			value="12123"
		[/random]
		[random]
			value="31931"
		[/random]
		[random]
			value="22359"
		[/random]
		[random]
			value="11774"
		[/random]
		[random]
			value="10886"
		[/random]
		[random]
			value="22444"
		[/random]
		[random]
			value="15215"
		[/random]
		[random]
			value="5172"
		[/random]
		[random]
			value="27816"
			[results]
				checksum="c4jbeoBjPXdN9277b82>Vg,h+ld6d5,0c<W-1<71YYc5-d+8873Gj8ibkh8k-+v7e7e8fh18<i8Sem73jI-oaGeRO,h>ybO20xxhh6<5,n30KE4<Yfd6-cbePq5.ql>p"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="21,20,19,18,17"
			y="4,4,4,3,3"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[recruit]
			value="5"
			x="22"
			y="20"
		[/recruit]
		[random]
			value="17189"
		[/random]
		[random]
			value="11114"
		[/random]
		[random]
			value="21697"
		[/random]
		[random]
			value="17015"
		[/random]
		[random]
			value="19342"
		[/random]
		[random]
			value="19280"
		[/random]
		[random]
			value="1512"
		[/random]
		[random]
			value="18357"
		[/random]
		[random]
			value="4093"
		[/random]
		[random]
			value="9930"
		[/random]
		[random]
			value="2404"
		[/random]
		[random]
			value="19138"
		[/random]
		[random]
			value="28825"
		[/random]
		[random]
			value="4338"
		[/random]
		[random]
			value="19257"
			[results]
				checksum="tjfpy96<OvHAptMKQ0oOBBSqwDYSGUuIaHzsLFtQzOWOCBvyFBUsQPVHTIwPFmPFBqCnEs<sBULDPTGRPzPuVKDJsNyMIp,RFNPGrGqf<xPrTryODoP.K+zDJqnmswJI"
			[/results]
		[/random]
	[/command]
	[command]
		[recruit]
			value="2"
			x="24"
			y="19"
		[/recruit]
		[random]
			value="24282"
		[/random]
		[random]
			value="31052"
		[/random]
		[random]
			value="18163"
		[/random]
		[random]
			value="7096"
		[/random]
		[random]
			value="26161"
		[/random]
		[random]
			value="26267"
		[/random]
		[random]
			value="22349"
		[/random]
		[random]
			value="15128"
		[/random]
		[random]
			value="2817"
		[/random]
		[random]
			value="4762"
		[/random]
		[random]
			value="6716"
		[/random]
		[random]
			value="23232"
		[/random]
		[random]
			value="15082"
		[/random]
		[random]
			value="32127"
		[/random]
		[random]
			value="29687"
			[results]
				checksum="9CIQwCrz6RyeTTICy,HrVEsv8xKMwFuxzJDqOwQmKzmtMTEzPv,zPSmuOMoJAyLuJqKyRzLtHrjyLNtqqmLt5eGFJBAwBICTrpKGHCIsunwtguIWcfGAO<cOO98<20k3"
			[/results]
		[/random]
	[/command]
	[command]
		[recruit]
			value="2"
			x="18"
			y="19"
		[/recruit]
		[random]
			value="29078"
		[/random]
		[random]
			value="20175"
		[/random]
		[random]
			value="16677"
		[/random]
		[random]
			value="20820"
		[/random]
		[random]
			value="7074"
		[/random]
		[random]
			value="31444"
		[/random]
		[random]
			value="22233"
		[/random]
		[random]
			value="31273"
		[/random]
		[random]
			value="15758"
		[/random]
		[random]
			value="12558"
		[/random]
		[random]
			value="3187"
		[/random]
		[random]
			value="19401"
		[/random]
		[random]
			value="32675"
		[/random]
		[random]
			value="6964"
		[/random]
		[random]
			value="15638"
			[results]
				checksum="9CIQwCrz6RyeTTICy,HrVEsv8xKMwFuxzJDqOwQmKzmtMTEzPv,zPSmuOMoJAyLuJqKyRzLtHrjyLNtqqmLt5eGFJBAwBICTrpKGHCIsunwtguIWcfGAO<cOO98<20k3"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Allen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="1"
			x="19"
			y="20"
		[/recruit]
		[random]
			value="31270"
		[/random]
		[random]
			value="2786"
		[/random]
		[random]
			value="15061"
		[/random]
		[random]
			value="3319"
		[/random]
		[random]
			value="5970"
		[/random]
		[random]
			value="16875"
		[/random]
		[random]
			value="16725"
		[/random]
		[random]
			value="28906"
		[/random]
		[random]
			value="5727"
		[/random]
		[random]
			value="4176"
		[/random]
		[random]
			value="3771"
		[/random]
		[random]
			value="3381"
		[/random]
		[random]
			value="10570"
		[/random]
		[random]
			value="16495"
		[/random]
		[random]
			value="25345"
			[results]
				checksum="ACIByNSVYmLXPemyRXKFwqFrLmVQqEv0TwtBGgNMvJHtOMFtHrtKmNzMnuxEPDq6BPSLFIOJqR+ProSyETFwFyA9zumVnpCouMKPBb5OJGPbmz3o>.fjcflW4p97m5p7"
			[/results]
		[/random]
	[/command]
	[command]
		[recruit]
			value="6"
			x="20"
			y="20"
		[/recruit]
		[random]
			value="24551"
		[/random]
		[random]
			value="26239"
		[/random]
		[random]
			value="14372"
		[/random]
		[random]
			value="16479"
		[/random]
		[random]
			value="26591"
		[/random]
		[random]
			value="18873"
		[/random]
		[random]
			value="4168"
		[/random]
		[random]
			value="22708"
		[/random]
		[random]
			value="18903"
		[/random]
		[random]
			value="31527"
		[/random]
		[random]
			value="27968"
		[/random]
		[random]
			value="2119"
		[/random]
		[random]
			value="6381"
			[results]
				checksum="DTLTPwRQczAcRKLLbq0Mv5QyqrQOOBLOyBMIwFivztGUowQpTBRsw,0zs3P8rB49xHwm.opR7jouswcn.Adz9fQtQo8c1O8LyzFARPPnDHfaE>8vfLObeidgl03fnU6<"
			[/results]
		[/random]
	[/command]
	[command]
		[recruit]
			value="1"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="14052"
		[/random]
		[random]
			value="17532"
		[/random]
		[random]
			value="25802"
		[/random]
		[random]
			value="6160"
		[/random]
		[random]
			value="13147"
		[/random]
		[random]
			value="11536"
		[/random]
		[random]
			value="23647"
		[/random]
		[random]
			value="15258"
		[/random]
		[random]
			value="20261"
		[/random]
		[random]
			value="22206"
		[/random]
		[random]
			value="14197"
		[/random]
		[random]
			value="13370"
		[/random]
		[random]
			value="4322"
		[/random]
		[random]
			value="13042"
		[/random]
		[random]
			value="20949"
			[results]
				checksum="ACIByNSVYrLXPemyRXKCwqFrLmVQqEv0TwtBGgNMvJHtOMFtHrtKmNzMnuxEPDq6BPSLFIOJqR+ProSyETFwFyA9CumVnpCouMKPBb5TJGPbmz3o>.fjcflW4p97m5p7"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="21,22,23,24,25"
			y="21,20,20,20,21"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Knooedel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kostia has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,25,26,27,28,29,30,31"
			y="5,6,6,6,5,5,5,6"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="23,23,23,24,24,25,26,26"
			y="5,6,7,7,8,9,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="22,23,24,25,26,27,28,29"
			y="4,5,5,6,6,7,6,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="20,20,20,20,21,22,22"
			y="4,5,6,7,8,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kamikaze has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="19,18,18,17,17"
			y="5,5,6,7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14,13,12"
			y="5,5,5,5,5,5,4"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="17,18,19,20,21"
			y="3,3,4,4,4"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="22,21,21,21,21,21,20"
			y="20,20,19,18,17,16,15"
		[/move]
	[/command]
	[command]
		[move]
			x="24,25,26,27,28"
			y="19,19,18,18,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Faragon has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="28,29,30,31"
			y="17,17,16,16"
		[/move]
	[/command]
	[command]
		[move]
			x="25,26,27,28,29,30"
			y="21,21,21,20,20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="23,24,25,26,27,28"
			y="20,20,21,21,21,20"
		[/move]
	[/command]
	[command]
		[move]
			x="20,19,18,17,16"
			y="20,20,19,19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="18,18,18,18,17,16,16"
			y="19,18,17,16,16,15,14"
		[/move]
	[/command]
	[command]
		[move]
			x="19,18,17,16,15"
			y="20,19,20,19,20"
		[/move]
	[/command]
	[command]
		[move]
			x="28,28"
			y="20,19"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,31,31,31"
			y="6,7,8,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="29,30,31,32,33,33,33"
			y="7,7,8,8,9,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="noobzilla has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="22,23,24,25,26,27,28,29"
			y="9,9,8,9,9,10,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,12,12"
			y="4,5,6,7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,11"
			y="8,9,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="17,17,16,15,14,13,12,11"
			y="8,7,6,7,7,8,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="BillyBoy has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="orion has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="20464"
		[/random]
		[random]
			value="25054"
		[/random]
		[random]
			value="24067"
		[/random]
		[random]
			value="22396"
		[/random]
		[random]
			value="22086"
		[/random]
		[random]
			value="14708"
		[/random]
		[random]
			value="19895"
		[/random]
		[random]
			value="573"
		[/random]
		[random]
			value="20654"
		[/random]
		[random]
			value="8579"
		[/random]
		[random]
			value="14841"
		[/random]
		[random]
			value="20841"
		[/random]
		[random]
			value="9105"
		[/random]
		[random]
			value="29404"
		[/random]
		[random]
			value="17956"
			[results]
				checksum="F.ouxQ8q-vqhspPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCLJCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFMypdZF<gxEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Malkor has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saint-Chamond-III has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,29,28,27,26,25,25"
			y="20,20,19,19,18,18,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="rosti has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="28,29,30,31,32,33"
			y="19,19,18,18,17,17"
		[/move]
	[/command]
	[command]
		[move]
			x="16,15,14,13,12"
			y="18,19,18,19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="15,14,13,12,11"
			y="20,19,19,18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Elfisch has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="20,21,22,22,23"
			y="15,15,14,13,13"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="4"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="23626"
		[/random]
		[random]
			value="30054"
		[/random]
		[random]
			value="16218"
		[/random]
		[random]
			value="20121"
		[/random]
		[random]
			value="4791"
		[/random]
		[random]
			value="1341"
		[/random]
		[random]
			value="29626"
		[/random]
		[random]
			value="3594"
		[/random]
		[random]
			value="9713"
		[/random]
		[random]
			value="8488"
		[/random]
		[random]
			value="16498"
		[/random]
		[random]
			value="25267"
		[/random]
		[random]
			value="8898"
		[/random]
		[random]
			value="14486"
		[/random]
		[random]
			value="21960"
			[results]
				checksum="FTxBwyUzhyBkwVHKQOq5AMPytSNtRJzMRsDuHBtnQvBFyQAVsL8qJTmQQNRqrWuTuTxCUFIDPxfDLuyOdqNHp2JuaZMrXGikJwc0bkdie+c.P93obZj,mcol3b,IXl32"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Dauntless has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Menzo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saito has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Brom has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,10,9,9,9"
			y="11,11,12,13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,11"
			y="9,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Zambli has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="satHyre has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="so_mean has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,31,31"
			y="10,11,12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="MoaB has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,33,32"
			y="11,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="29,29,30"
			y="11,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="11,12,12,12,13"
			y="19,18,17,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="23-0 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="MKC_china_ has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,23"
			y="13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Elfisch has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="c4rLOs8 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="25,25,25,24"
			y="17,18,19,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="red87 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Irmao-Verdade has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="4"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="20453"
		[/random]
		[random]
			value="7006"
		[/random]
		[random]
			value="22729"
		[/random]
		[random]
			value="30513"
		[/random]
		[random]
			value="13680"
		[/random]
		[random]
			value="5632"
		[/random]
		[random]
			value="11095"
		[/random]
		[random]
			value="27499"
		[/random]
		[random]
			value="31571"
		[/random]
		[random]
			value="10720"
		[/random]
		[random]
			value="22365"
		[/random]
		[random]
			value="26538"
		[/random]
		[random]
			value="24546"
		[/random]
		[random]
			value="24976"
		[/random]
		[random]
			value="11377"
			[results]
				checksum="-n9uN+-Dy+EeNPrPbGMNQXtz0Ipzwss1tysRRKOwxuoVBywHrwxEqutHtKzE>BNMxHQOHFw.RFKFnqypNKoM8mwoFomIhFlq1.CLW<<ddBfkHDONNHvMSO1I9LGCHpAC"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Twixxx has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,32,33,34"
			y="16,15,15,15"
		[/move]
	[/command]
	[command]
		[move]
			x="33,32,31"
			y="17,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="VAMPIRE_VT has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="34,33,33"
			y="15,16,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="yello has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Elfisch has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,23"
			y="12,13"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jogudar2 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,24,25,26,26,27,27,28"
			y="5,6,7,7,8,9,10,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Anduilas has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="csc has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="27040"
		[/random]
		[random]
			value="20970"
		[/random]
		[random]
			value="23429"
		[/random]
		[random]
			value="26366"
		[/random]
		[random]
			value="15532"
		[/random]
		[random]
			value="16518"
		[/random]
		[random]
			value="7870"
		[/random]
		[random]
			value="7540"
		[/random]
		[random]
			value="4390"
		[/random]
		[random]
			value="29376"
		[/random]
		[random]
			value="13136"
		[/random]
		[random]
			value="12082"
		[/random]
		[random]
			value="31178"
		[/random]
		[random]
			value="14969"
		[/random]
		[random]
			value="17778"
			[results]
				checksum="86Wmq3.,tb9Th9Xh+8Om3eb898egWbi26k39>2dlaZge0f-9iPif8c7h8k-+v7e7e8fh18<i8Sem73jI-oaGeRO,h>ybO20xxhh6<5,n30KE4<Yfd6-cbePq5.ql>pFA"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="6"
			x="23"
			y="5"
		[/recruit]
		[random]
			value="30744"
		[/random]
		[random]
			value="7447"
		[/random]
		[random]
			value="26852"
		[/random]
		[random]
			value="31317"
		[/random]
		[random]
			value="14309"
		[/random]
		[random]
			value="30778"
		[/random]
		[random]
			value="8221"
		[/random]
		[random]
			value="12794"
		[/random]
		[random]
			value="21313"
		[/random]
		[random]
			value="20611"
		[/random]
		[random]
			value="17512"
		[/random]
		[random]
			value="14568"
		[/random]
		[random]
			value="29005"
		[/random]
		[random]
			value="13091"
		[/random]
		[random]
			value="26239"
			[results]
				checksum="GIrTMzMz9ES2DQOJBEKJhELDntFKRtrHUBCMyPNLLqFJRxvqM3FDTGMqHwEVMDODuIOJsNEoPcOusOKDwebPsxOruODoP.K+zDJqnpswJI0PpQ,qvAQ3huxn0mf5Lj19"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nobun has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14"
			y="5,6,6,7,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,9"
			y="14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,9"
			y="15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="save_the_queen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,10"
			y="16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,11,11"
			y="16,17,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="11"
				y="18"
			[/source]
			[destination]
				x="12"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="12210"
			[results]
				chance="60"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="18732"
			[results]
				chance="60"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Dharokan has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="pq1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="lordman has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,32,32,32"
			y="12,13,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,30,30,29,29"
			y="12,13,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Madder_Sky has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Elfisch has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="29,30"
			y="16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="30"
				y="16"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="9339"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="447"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="6033"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="2045"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13677"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="7936"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="22307"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,27,28,29,29,30,30,31"
			y="10,11,11,12,13,13,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="15"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="9449"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29721"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="14754"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28036"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="12613"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16959"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="shagal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="32"
				y="15"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="2256"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="6516"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="20052"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9234"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="21479"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="25123"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="22147"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,30,30"
			y="13,14,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="30"
				y="15"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="11465"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19540"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="14209"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="10982"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23700"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="brodie has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="mrdemonwolf has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="23,23,22,22,22"
			y="13,14,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Sunstroke has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="31"
				y="16"
			[/source]
			[destination]
				x="32"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="631"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="7993"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="10677"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Iluvatar has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="33,33"
			y="17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="33"
				y="16"
			[/source]
			[destination]
				x="32"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="9643"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="18631"
			[results]
				chance="40"
				damage="8"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="vader has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="12,11"
			y="18,19"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="11"
				y="19"
			[/source]
			[destination]
				x="11"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="25950"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23291"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21753"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15326"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="13,13,13,12"
			y="16,17,18,18"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="12"
				y="18"
			[/source]
			[destination]
				x="11"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="7124"
			[results]
				chance="30"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="3020"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31664"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19079"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19972"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="2839"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Twixxx has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,24,25"
			y="20,20,21"
		[/move]
	[/command]
	[command]
		[recruit]
			value="0"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="29654"
		[/random]
		[random]
			value="29836"
		[/random]
		[random]
			value="27687"
		[/random]
		[random]
			value="22161"
		[/random]
		[random]
			value="10325"
		[/random]
		[random]
			value="12782"
		[/random]
		[random]
			value="17061"
		[/random]
		[random]
			value="18795"
		[/random]
		[random]
			value="1543"
		[/random]
		[random]
			value="10839"
		[/random]
		[random]
			value="2090"
		[/random]
		[random]
			value="17114"
		[/random]
		[random]
			value="14593"
		[/random]
		[random]
			value="15323"
		[/random]
		[random]
			value="15245"
			[results]
				checksum="oxj+sAh20PB0LmsQ56tLoxMPdOFGJz.MMAvVvoQO,ECJMwDzBrzrTwAoECqSJHEvSS3IzTALqvFArEKTmSKvvPnFtw+OnBRSqBwbD3xFMMEJCCHO+YDPPnPywBn8FA25"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="wieker has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="24,25,26,27,28,29,30"
			y="19,20,20,21,20,20,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Delek-Ouzken has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="npc1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Morlok has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Shadde has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,11,11,10,10"
			y="18,17,16,15,14,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,13,12,12,12"
			y="7,8,8,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="15"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="31921"
			[results]
				chance="40"
				damage="12"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="1329"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30325"
			[results]
				chance="40"
				damage="12"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Xcite has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Treyz has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tusoalsob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="28,29,29,29,30,31,32,33"
			y="10,11,12,13,13,14,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="33"
				y="15"
			[/source]
			[destination]
				x="33"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="10311"
			[results]
				chance="50"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26217"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="24697"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19081"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11250"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,24,25,26,26,27,27,28"
			y="5,6,7,7,8,9,10,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="zhangziwei has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="23,24,25,25,26,26,27"
			y="5,5,6,7,7,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,31"
			y="16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,31,32"
			y="15,16,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="32"
				y="15"
			[/source]
			[destination]
				x="33"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="19560"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="5535"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="32686"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="4256"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="24076"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Claw has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Grzegt has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="yaodu3 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Twixxx has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="yaodu3 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,24,25,26,27,28,29,30"
			y="20,19,19,18,18,17,17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="30"
				y="16"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="5307"
			[results]
				chance="30"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26090"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26194"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11325"
			[results]
				chance="30"
				damage="6"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="30,30,30,30,31,31"
			y="20,19,18,17,17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="31"
				y="16"
			[/source]
			[destination]
				x="31"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="21080"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="24001"
			[results]
				chance="50"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="5021"
			[results]
				chance="50"
				damage="7"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="25,26,27,28,29,30"
			y="21,20,20,19,19,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="yaodu3 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="zedahu has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="hanter has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="22,22,22,22,23"
			y="16,15,14,13,13"
		[/move]
	[/command]
	[command]
		[move]
			x="23,23"
			y="13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="maomao has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,12,12,12,13"
			y="19,18,17,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Claw has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="12,11"
			y="18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="SirEbrum has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jacki has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ReNoM has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="en660 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saito2 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Frankenstein has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="cccp has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Burger has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="33"
				y="16"
			[/source]
			[destination]
				x="32"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="10607"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="24937"
			[results]
				chance="50"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="3282"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29424"
			[results]
				chance="50"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="tomasrojoromero has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,34,35,35,34"
			y="15,14,15,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,32"
			y="15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="34"
				y="16"
			[/source]
			[destination]
				x="33"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="30536"
			[results]
				chance="50"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8043"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26893"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="17619"
			[results]
				chance="30"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30135"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,33,34,34"
			y="14,14,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="34"
				y="15"
			[/source]
			[destination]
				x="33"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="25451"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="17111"
			[results]
				chance="30"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="2301"
			[results]
				chance="50"
				damage="6"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="27,28,29,29,29,30"
			y="9,9,10,11,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="28,29,30,31,32"
			y="10,11,11,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12"
			y="10,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11"
			y="11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,11,11,11"
			y="13,13,12,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,12"
			y="12,13,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="16,15"
			y="14,15"
		[/move]
	[/command]
	[command]
		[move]
			x="13,14,15,16"
			y="16,15,15,14"
		[/move]
	[/command]
	[command]
		[move]
			x="11,12,12,12,13"
			y="19,18,17,16,16"
		[/move]
	[/command]
	[command]
		[move]
			x="15,14,13,12,12,12,11"
			y="15,15,16,16,17,18,19"
		[/move]
	[/command]
	[command]
		[move]
			x="23,22,22"
			y="12,11,10"
		[/move]
	[/command]
	[command]
		[move]
			x="22,22"
			y="10,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="garas has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="HAOS has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Daniel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,31,31,31,31,30"
			y="16,17,18,19,20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30,29,29,29,28"
			y="16,17,18,19,20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30,30,29"
			y="18,19,20,21"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="199"
		[/random]
		[random]
			value="13474"
		[/random]
		[random]
			value="1919"
		[/random]
		[random]
			value="207"
		[/random]
		[random]
			value="18329"
		[/random]
		[random]
			value="443"
		[/random]
		[random]
			value="29632"
		[/random]
		[random]
			value="6310"
		[/random]
		[random]
			value="25735"
		[/random]
		[random]
			value="3802"
		[/random]
		[random]
			value="27889"
		[/random]
		[random]
			value="26279"
		[/random]
		[random]
			value="31744"
		[/random]
		[random]
			value="14649"
		[/random]
		[random]
			value="15281"
			[results]
				checksum="F<huxQ8q-vqhtpPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCQQCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFMypdZF<grEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="3"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="21146"
		[/random]
		[random]
			value="30482"
		[/random]
		[random]
			value="31859"
		[/random]
		[random]
			value="16675"
		[/random]
		[random]
			value="11528"
		[/random]
		[random]
			value="21031"
		[/random]
		[random]
			value="9295"
		[/random]
		[random]
			value="13688"
		[/random]
		[random]
			value="18062"
		[/random]
		[random]
			value="29518"
		[/random]
		[random]
			value="1019"
		[/random]
		[random]
			value="10332"
		[/random]
		[random]
			value="9839"
		[/random]
		[random]
			value="24388"
		[/random]
		[random]
			value="32134"
			[results]
				checksum="s6jvszkDcAP6A+iACEP7A2muIutTrV-zNi5IwMDsI88+-635<idd<26oh6m2>-p8-0W.oZ8>>6f27lXflk>9Z2A4b82p.au,,a+31>-PXX2S4+>Y,4gk3GZ9to8lVxJ<"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="WlochAnonim has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="WIF-Nimiael has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,30,30,30,31"
			y="12,13,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="MrFruehling has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,32,32"
			y="12,13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,31"
			y="14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="30,29,28,27,26,25,24"
			y="20,20,20,20,19,20,19"
		[/move]
	[/command]
	[command]
		[recruit]
			value="6"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="32561"
		[/random]
		[random]
			value="11979"
		[/random]
		[random]
			value="23416"
		[/random]
		[random]
			value="5491"
		[/random]
		[random]
			value="4141"
		[/random]
		[random]
			value="11252"
		[/random]
		[random]
			value="25324"
		[/random]
		[random]
			value="21641"
		[/random]
		[random]
			value="23509"
		[/random]
		[random]
			value="4728"
		[/random]
		[random]
			value="9773"
		[/random]
		[random]
			value="11423"
		[/random]
		[random]
			value="23365"
			[results]
				checksum="DTLTPwRQczAcRKLLbq0Mv5QyqrQOOBLOyBMIwFivztGUowQpTBRsw,0zs3P8rB49xHwm.opR7jouswcn.Adz9fQtQo8c1O8LyzFARPPnDHfaE>8vfLObeidgl03fnU6<"
			[/results]
		[/random]
	[/command]
	[command]
		[recruit]
			value="2"
			x="22"
			y="20"
		[/recruit]
		[random]
			value="2051"
		[/random]
		[random]
			value="13379"
		[/random]
		[random]
			value="23722"
		[/random]
		[random]
			value="2289"
		[/random]
		[random]
			value="19671"
		[/random]
		[random]
			value="15206"
		[/random]
		[random]
			value="17318"
		[/random]
		[random]
			value="26383"
		[/random]
		[random]
			value="24713"
		[/random]
		[random]
			value="16487"
		[/random]
		[random]
			value="5532"
		[/random]
		[random]
			value="27263"
		[/random]
		[random]
			value="5508"
		[/random]
		[random]
			value="25045"
		[/random]
		[random]
			value="30065"
			[results]
				checksum="9CIQwCrz6RyeTTICy,HrVEsv8xKMwFuxzJDqOwQmKzmtMTEzPv,zPSmuOMoJAyLuJqKyRzLtHrjzLNtqqmLt5eGFJBAwBICTrpKGHCIsunwtguIWcjGAO<cOO98<30k3"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kOJACK has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="29,28"
			y="21,21"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Juppe has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="xenom has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="4"
			x="18"
			y="19"
		[/recruit]
		[random]
			value="5122"
		[/random]
		[random]
			value="25946"
		[/random]
		[random]
			value="12699"
		[/random]
		[random]
			value="23339"
		[/random]
		[random]
			value="1523"
		[/random]
		[random]
			value="22493"
		[/random]
		[random]
			value="20814"
		[/random]
		[random]
			value="9633"
		[/random]
		[random]
			value="31781"
		[/random]
		[random]
			value="32211"
		[/random]
		[random]
			value="10760"
		[/random]
		[random]
			value="3806"
		[/random]
		[random]
			value="27751"
		[/random]
		[random]
			value="5727"
		[/random]
		[random]
			value="23728"
			[results]
				checksum="iCp,4nc1oNO<LLyKmJLIEhoF>vyBA6mszOAMDTywuzyODCrTtRLwFwmIsr1QENmxPFHFw.RFKFnqypNKBM8mwoFomIhFlq1.CL-<<ddBfkHDONNHvHQO1I9LGCHpACmL"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="11,10,9,8,7,6,6,5"
			y="19,18,19,18,18,17,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="scruffness has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="I17 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="bluepierrot has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,24,24,24,23"
			y="5,6,7,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="23"
				y="9"
			[/source]
			[destination]
				x="22"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="480"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="5948"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="2676"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9686"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="31910"
			[results]
				chance="40"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="24219"
		[/random]
		[random]
			value="23958"
		[/random]
		[random]
			value="7391"
		[/random]
		[random]
			value="18756"
		[/random]
		[random]
			value="26759"
		[/random]
		[random]
			value="13270"
		[/random]
		[random]
			value="21330"
		[/random]
		[random]
			value="14995"
		[/random]
		[random]
			value="5608"
		[/random]
		[random]
			value="27153"
		[/random]
		[random]
			value="11977"
		[/random]
		[random]
			value="499"
		[/random]
		[random]
			value="13742"
		[/random]
		[random]
			value="8005"
		[/random]
		[random]
			value="28380"
			[results]
				checksum="c4jbeoBjPXdN9277b82>Vg,h+ld6d5,0c<W-1<71YYc5-d+8873Gj8ibkh8k-+v7e7e8fh18<i8Sem73jI-oaGeRO,h>ybO20xxhh6<5,n30KE4<Yfd6-cbePq5.ql>p"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="23"
			y="5"
		[/recruit]
		[random]
			value="13869"
		[/random]
		[random]
			value="2477"
		[/random]
		[random]
			value="27734"
		[/random]
		[random]
			value="6993"
		[/random]
		[random]
			value="32302"
		[/random]
		[random]
			value="26650"
		[/random]
		[random]
			value="3331"
		[/random]
		[random]
			value="26543"
		[/random]
		[random]
			value="26405"
		[/random]
		[random]
			value="14148"
		[/random]
		[random]
			value="9364"
		[/random]
		[random]
			value="10249"
		[/random]
		[random]
			value="20011"
		[/random]
		[random]
			value="21043"
		[/random]
		[random]
			value="2820"
			[results]
				checksum="c4ibeoBjPXdN9277b82>Vg,h+ld6d5,0c<W-1<71YYc5-d+8873Gj8ibkh8k-+v7e7e8fh0c<i8Sem73jI-oaGeRO,h>ybO20xxhh6<5,n30KE4<Yfd6-cbfLq5.ql>p"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="21,22,22,22,22,22"
			y="4,4,5,6,7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="22"
				y="8"
			[/source]
			[destination]
				x="22"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="17784"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="22121"
			[results]
				chance="60"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16602"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26007"
			[results]
				chance="60"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="10477"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13208"
			[results]
				chance="60"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="15319"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,12"
			y="12,11,10,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,11,11,10"
			y="13,12,11,11,10,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Zephix has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="23,24,25,26,27"
			y="20,19,19,18,18"
		[/move]
	[/command]
	[command]
		[move]
			x="22,23,24,25"
			y="20,20,19,19"
		[/move]
	[/command]
	[command]
		[move]
			x="25,26"
			y="19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="24,25,26,27,28,29,30"
			y="19,20,20,21,20,20,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="KABOOM has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="28,29,30,31,32,33"
			y="20,20,20,20,20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="28,28"
			y="21,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="dawi has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Morlok has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="26,27,28"
			y="18,18,17"
		[/move]
	[/command]
	[command]
		[move]
			x="28,28,27"
			y="17,18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Moo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="18,18,17,17,16,16,15"
			y="19,18,18,17,16,15,15"
		[/move]
	[/command]
	[command]
		[move]
			x="13,13"
			y="16,15"
		[/move]
	[/command]
	[command]
		[move]
			x="13,13"
			y="15,14"
		[/move]
	[/command]
	[command]
		[move]
			x="5,5,6,6,7"
			y="16,15,14,13,13"
		[/move]
	[/command]
	[command]
		[move]
			x="16,15,14,14,14"
			y="14,14,13,12,11"
		[/move]
	[/command]
	[command]
		[move]
			x="13,12,11"
			y="14,13,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jojovic has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Albaby has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="7,7"
			y="13,12"
		[/move]
	[/command]
	[command]
		[move]
			x="7,8,9"
			y="12,11,12"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="brenden has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Euthanasie has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="xxx has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Heureka has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,30,30"
			y="15,14,13,12"
		[/move]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="I keep annoying myself over my moves after I have done them"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,31,31"
			y="16,15,14,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="34,34,34,34,34"
			y="16,15,14,13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="34,33,33,32,31,31"
			y="15,15,14,13,13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Wikwik has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="heh, typical for me too :-)"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tesafilmchen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="23"
				y="9"
			[/source]
			[destination]
				x="22"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="2862"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13915"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="14934"
			[results]
				chance="40"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9208"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="32558"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="22,22"
			y="8,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,19,20,21,21,22"
			y="5,6,6,7,8,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="22"
				y="8"
			[/source]
			[destination]
				x="22"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="10039"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30509"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26007"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="22953"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8741"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="14225"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="25871"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="24750"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="21397"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13775"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11146"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="32114"
			[results]
				chance="40"
				damage="4"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Litwin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="22,22,22"
			y="7,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,25,26,26,26,27,28,29"
			y="5,6,6,7,8,9,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="dusancic has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="23,24,25,25,26,26,27"
			y="5,5,6,7,7,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Shas-O has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,11,11,11"
			y="11,10,9,8,7"
		[/move]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="which moves do you regret?"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="at least the attack in the beginning :-)"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Skivman has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="derrwin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,9,9,9"
			y="9,9,8,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,11,10"
			y="9,9,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="27,28,29,30,31"
			y="18,17,17,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="AnniXa has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,29,28,27,26,25,24"
			y="20,20,20,20,19,20,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Blackadder has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="5"
			x="22"
			y="20"
		[/recruit]
		[random]
			value="8140"
		[/random]
		[random]
			value="1657"
		[/random]
		[random]
			value="16182"
		[/random]
		[random]
			value="25628"
		[/random]
		[random]
			value="1991"
		[/random]
		[random]
			value="9892"
		[/random]
		[random]
			value="10660"
		[/random]
		[random]
			value="19020"
		[/random]
		[random]
			value="20999"
		[/random]
		[random]
			value="2481"
		[/random]
		[random]
			value="4695"
		[/random]
		[random]
			value="21736"
		[/random]
		[random]
			value="30041"
		[/random]
		[random]
			value="8840"
		[/random]
		[random]
			value="23208"
			[results]
				checksum="tjfpy96<OvHApsEKQ0oOBBSqxDYSGUuIaHzsLFtQzOWOCBvyFBUsQPVHTIwPFmPFBqCnEs<sBULDPTGRPzPuVKDJsNyMJx,RFNPGrGqf<xPrTryODoP.K+zDJqnmswJN"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Xiyng has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="f has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="1"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="12323"
		[/random]
		[random]
			value="4281"
		[/random]
		[random]
			value="7717"
		[/random]
		[random]
			value="16324"
		[/random]
		[random]
			value="14063"
		[/random]
		[random]
			value="20551"
		[/random]
		[random]
			value="3816"
		[/random]
		[random]
			value="23932"
		[/random]
		[random]
			value="4871"
		[/random]
		[random]
			value="3201"
		[/random]
		[random]
			value="6128"
		[/random]
		[random]
			value="31612"
		[/random]
		[random]
			value="14074"
		[/random]
		[random]
			value="11019"
		[/random]
		[random]
			value="4198"
			[results]
				checksum="ACIByNSVYtLXPemyRXKFwqFrLmVQqEv0TwtBGgNMvJHtOMFtHrtKmNzMnuxEPDq6BPSLFIOJqR+ProSyETFwFyA9EumVnpCouMKPBb5tJGPbmz3o>.fjcflW4p97m5p7"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="D-Sin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="and the footpad that was caught into the wose trap"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I should have guessed that"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Valenwood has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="And I just forgot to retreat that merman, had planned that"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="True has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="tomasrojoromero has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="33,33,33,33,33"
			y="20,19,18,17,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="klein_atuin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="33,34"
			y="16,15"
		[/move]
	[/command]
	[command]
		[move]
			x="27,28,29,30"
			y="19,18,18,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="by the way, you probably should have put the footpad under siege"
			side="1"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,31,32,33"
			y="17,17,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="samp"
			message="you don't check through your units with moves left to make sure you don't forget anything?"
		[/speak]
	[/command]
	[command]
		[move]
			x="28,29,30,31,31,32"
			y="20,20,19,19,18,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="shagal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Don_Servy has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="plk2 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="14,13,12,11"
			y="11,11,10,11"
		[/move]
	[/command]
	[command]
		[move]
			x="15,14,13,12"
			y="15,14,14,13"
		[/move]
	[/command]
	[command]
		[move]
			x="12,12"
			y="13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Iceman089 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="michael has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Madus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="True has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Sandermatt"
			message="I will from now on"
			side="2"
		[/speak]
	[/command]
	[command]
		[move]
			x="9,10,11"
			y="12,11,12"
		[/move]
	[/command]
	[command]
		[move]
			x="11,10,9"
			y="13,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="""n"" is an important button"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Elendil has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="almost as importan as ""m"" :-P"
			side="1"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="important"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="jmegner"
			message="I really like ctrl+v and ctrl+b"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="roku has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="they're good too"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="arnaud has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="DarthMath has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Frijol has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kaesbrot has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Crispy has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="dusancic has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Quetzalcoatl_ has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Krach-U has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,10,11,11,12"
			y="7,6,6,5,4"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Battlesmile has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Leonides has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Partical has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,10,10,10,11"
			y="8,7,6,5,5"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,12,13,13,14"
			y="7,6,6,5,4"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Raiqos has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="22,21,20,19,18,17"
			y="8,8,8,8,7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tobi has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="22,22,22,22,23,24"
			y="9,8,7,6,6,5"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="26169"
		[/random]
		[random]
			value="21758"
		[/random]
		[random]
			value="19110"
		[/random]
		[random]
			value="18356"
		[/random]
		[random]
			value="2724"
		[/random]
		[random]
			value="22263"
		[/random]
		[random]
			value="10314"
		[/random]
		[random]
			value="28768"
		[/random]
		[random]
			value="1823"
		[/random]
		[random]
			value="19531"
		[/random]
		[random]
			value="7489"
		[/random]
		[random]
			value="21218"
		[/random]
		[random]
			value="23205"
		[/random]
		[random]
			value="8917"
		[/random]
		[random]
			value="24459"
			[results]
				checksum="F.puxQ8q-vqhspPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCLICMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFSypdZF<grEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="23"
			y="5"
		[/recruit]
		[random]
			value="32351"
		[/random]
		[random]
			value="32625"
		[/random]
		[random]
			value="29466"
		[/random]
		[random]
			value="21873"
		[/random]
		[random]
			value="20650"
		[/random]
		[random]
			value="10678"
		[/random]
		[random]
			value="27164"
		[/random]
		[random]
			value="826"
		[/random]
		[random]
			value="12832"
		[/random]
		[random]
			value="23330"
		[/random]
		[random]
			value="4524"
		[/random]
		[random]
			value="8522"
		[/random]
		[random]
			value="16620"
		[/random]
		[random]
			value="32261"
		[/random]
		[random]
			value="7277"
			[results]
				checksum="F<juxQ8q-vqhtpPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCQKCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFSypdZF<grEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="LegoShrimp has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="23,24,25,25,26"
			y="9,8,9,10,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,31"
			y="12,11,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="29,30,31,32,33"
			y="10,10,11,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="27,28,29,30,30,31"
			y="9,9,10,10,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="31,30,29,28,27"
			y="16,16,17,17,18"
		[/move]
	[/command]
	[command]
		[move]
			x="34,33,33,33,33,33"
			y="15,16,17,18,19,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="AnniXa has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,32,31,31,30"
			y="17,18,19,20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="33,33,33"
			y="16,17,18"
		[/move]
	[/command]
	[command]
		[move]
			x="33,32,32,31"
			y="18,18,19,20"
		[/move]
	[/command]
	[command]
		[move]
			x="31,32"
			y="20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="23,24,25,26,27,28"
			y="20,20,21,21,21,20"
		[/move]
	[/command]
	[command]
		[move]
			x="22,21,21,21,21,21,21,22"
			y="20,20,19,18,17,16,15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Mira has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="6"
			x="18"
			y="19"
		[/recruit]
		[random]
			value="21629"
		[/random]
		[random]
			value="25924"
		[/random]
		[random]
			value="31342"
		[/random]
		[random]
			value="289"
		[/random]
		[random]
			value="1121"
		[/random]
		[random]
			value="14017"
		[/random]
		[random]
			value="9395"
		[/random]
		[random]
			value="24411"
		[/random]
		[random]
			value="9950"
		[/random]
		[random]
			value="6932"
		[/random]
		[random]
			value="2722"
		[/random]
		[random]
			value="4634"
		[/random]
		[random]
			value="2360"
			[results]
				checksum="DTLTPwRQczAcRKLLbq0Mv5QyqrQOOBLOyBMIwFivztGUowQpTBRsw,0zs3P8rB49xHwm.opR7jouswcn.Adz9fQtQo8c1O8LyzFARPPnDHfaE>8vfLObeidgl03fnU6<"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="satHyre has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,11,11"
			y="11,12,13"
		[/move]
	[/command]
	[command]
		[move]
			x="9,10,11"
			y="12,11,11"
		[/move]
	[/command]
	[command]
		[move]
			x="11,10,9"
			y="12,11,12"
		[/move]
	[/command]
	[command]
		[move]
			x="11,11"
			y="13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Kanaim has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Louise has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="NHL has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,11"
			y="12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Allen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="playzerg has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="9,10"
			y="12,11"
		[/move]
	[/command]
	[command]
		[move]
			x="10,10,11"
			y="11,10,10"
		[/move]
	[/command]
	[command]
		[move]
			x="11,10,10,9"
			y="10,10,11,12"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Duke has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31"
			y="13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Anduilas has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31"
			y="14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31"
			y="15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,34,34,34,35,35"
			y="12,12,13,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,30,31,32,33,34"
			y="12,13,14,14,15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,32,33,34"
			y="12,13,13,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="hogar1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="el_duderino has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="what do they do?"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,27,28,29,30"
			y="10,11,11,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="23,24,24,25,25,26"
			y="5,5,6,7,8,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14"
			y="5,6,6,7,6"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,11,10"
			y="5,6,7,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,11"
			y="4,5,6,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,13,12,11,10,9"
			y="4,5,5,6,6,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Grzegt has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="ctrl-b is for ""show best enemy moves"""
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="jmegner"
			message="ctrl+v shows you how many enemies can move to each tile"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="forensic31 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="22,22,23"
			y="14,13,13"
		[/move]
	[/command]
	[command]
		[move]
			x="23,23"
			y="13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="jmegner"
			message="ctrl+b shows how many enemies can move to each tile assuming if your units aren't in the way"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Gallahad has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Gallifax has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,12,13,13,13,13"
			y="11,11,12,13,14,15"
		[/move]
	[/command]
	[command]
		[move]
			x="12,13,14,15,16"
			y="12,13,13,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Marckraft has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,12,12,12"
			y="13,13,14,15"
		[/move]
	[/command]
	[command]
		[move]
			x="18,17,16,15,14"
			y="19,20,19,19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="9,9,9,9,9,9"
			y="12,13,14,15,16,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="xen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Pionsix has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,33,34,35"
			y="20,20,20,21"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Pewl has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="idle has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Hid has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,31"
			y="20,21"
		[/move]
	[/command]
	[command]
		[move]
			x="27,28,29,29,30"
			y="18,18,19,20,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Ashglay has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tobi has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="uve has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Viskikummitus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Laci14 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Reski has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Bacon2 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Battlesmile has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="3"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="31167"
		[/random]
		[random]
			value="21549"
		[/random]
		[random]
			value="30957"
		[/random]
		[random]
			value="11779"
		[/random]
		[random]
			value="9843"
		[/random]
		[random]
			value="12540"
		[/random]
		[random]
			value="17666"
		[/random]
		[random]
			value="124"
		[/random]
		[random]
			value="28704"
		[/random]
		[random]
			value="24817"
		[/random]
		[random]
			value="7541"
		[/random]
		[random]
			value="4212"
		[/random]
		[random]
			value="32131"
		[/random]
		[random]
			value="25891"
		[/random]
		[random]
			value="24332"
			[results]
				checksum="rQV6GBwD,UJ+7fMAQJ+xOoaC2U6DfS5lmb>+9w26zYBFaluj9yjnQ1omih>hik67n,e0IoZ07o9kcp0Ad568,m9n<X,+m-08797o60sxBFgnkEzrk-i.-tciji+H>s3M"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Bacon has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="spanis has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="28,29,30,31,32"
			y="20,20,20,20,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="argoran has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,32"
			y="20,21"
		[/move]
	[/command]
	[command]
		[move]
			x="24,25,26,27,28"
			y="19,20,20,20,20"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,23,22,21"
			y="5,5,4,4"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="5"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="3089"
		[/random]
		[random]
			value="26157"
		[/random]
		[random]
			value="31718"
		[/random]
		[random]
			value="32447"
		[/random]
		[random]
			value="22935"
		[/random]
		[random]
			value="20636"
		[/random]
		[random]
			value="32722"
		[/random]
		[random]
			value="29838"
		[/random]
		[random]
			value="4528"
		[/random]
		[random]
			value="247"
		[/random]
		[random]
			value="29964"
		[/random]
		[random]
			value="20800"
		[/random]
		[random]
			value="22716"
		[/random]
		[random]
			value="23983"
		[/random]
		[random]
			value="28049"
			[results]
				checksum="8ax-d6b6wp8sjgga3aP72g3e+iBm.jefmffY-+6<ip3<5-4egW6m2lahna90i9fl5a1hh7oj8-<F-8mkj.91>I6ygXo9WjoolcACZdd9b,<-lvi-OF>N69sv8joLJwIp"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11"
			y="7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11"
			y="8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="chocoboner has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,8,8,8,9"
			y="7,7,8,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,9,9"
			y="10,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="save_the_queen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,11"
			y="9,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="nicolassene has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,13,13,12"
			y="6,7,8,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="17,17,16,15,14,13"
			y="8,7,6,7,7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,10,10,10"
			y="7,8,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,26"
			y="8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="shagal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="joergen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Valkyria has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,26"
			y="9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,31,31"
			y="10,11,12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Buafff has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kot has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="35,36,37,38,39"
			y="16,15,15,15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="34,33,32,31"
			y="15,15,15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="34,33,32"
			y="14,15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,30,30"
			y="12,13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="23,22"
			y="12,11"
		[/move]
	[/command]
	[command]
		[move]
			x="22,21"
			y="11,11"
		[/move]
	[/command]
	[command]
		[move]
			x="21,21"
			y="11,10"
		[/move]
	[/command]
	[command]
		[move]
			x="21,20,19"
			y="10,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="PepperMint has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="14,13,12"
			y="18,19,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="wavebreak1314 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="9,10"
			y="17,16"
		[/move]
	[/command]
	[command]
		[move]
			x="16,16"
			y="14,15"
		[/move]
	[/command]
	[command]
		[move]
			x="12,13"
			y="15,16"
		[/move]
	[/command]
	[command]
		[move]
			x="13,14,15,16"
			y="15,14,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Asperio has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="10,11"
			y="16,16"
		[/move]
	[/command]
	[command]
		[move]
			x="11,12"
			y="16,15"
		[/move]
	[/command]
	[command]
		[move]
			x="12,13"
			y="15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Duke has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="13,13"
			y="15,14"
		[/move]
	[/command]
	[command]
		[move]
			x="13,14,14,15"
			y="14,14,15,16"
		[/move]
	[/command]
	[command]
		[move]
			x="28,27,26,25,24"
			y="20,20,19,20,19"
		[/move]
	[/command]
	[command]
		[move]
			x="23,24,25,26,27,28"
			y="20,20,21,21,21,20"
		[/move]
	[/command]
	[command]
		[recruit]
			value="4"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="23174"
		[/random]
		[random]
			value="25506"
		[/random]
		[random]
			value="1119"
		[/random]
		[random]
			value="12454"
		[/random]
		[random]
			value="30793"
		[/random]
		[random]
			value="5161"
		[/random]
		[random]
			value="8100"
		[/random]
		[random]
			value="31122"
		[/random]
		[random]
			value="27031"
		[/random]
		[random]
			value="1863"
		[/random]
		[random]
			value="28520"
		[/random]
		[random]
			value="5156"
		[/random]
		[random]
			value="27780"
		[/random]
		[random]
			value="13786"
		[/random]
		[random]
			value="12266"
			[results]
				checksum="iDp,4nc1oNO1LLyKmJLIEhoF>vyBA6mszOAMDTywuzyODCrTtRLwFwmIsr1QENmxPFHFw.RFKFnqypNKAM8mwoFomIhFlq1.CL-<<ddBfkHDONNHvMSO1I9LGCHpACmL"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="24,25,26"
			y="19,19,19"
		[/move]
	[/command]
	[command]
		[move]
			x="35,35,35"
			y="21,20,19"
		[/move]
	[/command]
	[command]
		[move]
			x="35,35,34"
			y="19,18,17"
		[/move]
	[/command]
	[command]
		[move]
			x="34,34,34,34,35"
			y="17,18,19,20,21"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Horun has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,24,23,22,22,21,21,20"
			y="5,6,7,7,8,9,10,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="20"
				y="10"
			[/source]
			[destination]
				x="19"
				y="11"
			[/destination]
		[/attack]
		[random]
			value="7487"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="24802"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="18011"
			[results]
				chance="40"
				damage="12"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="7626"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="quisas has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Gnumarco has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="dethtoll has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="18630"
		[/random]
		[random]
			value="6676"
		[/random]
		[random]
			value="24254"
		[/random]
		[random]
			value="9396"
		[/random]
		[random]
			value="7650"
		[/random]
		[random]
			value="31831"
		[/random]
		[random]
			value="16753"
		[/random]
		[random]
			value="21862"
		[/random]
		[random]
			value="8619"
		[/random]
		[random]
			value="20126"
		[/random]
		[random]
			value="21489"
		[/random]
		[random]
			value="6951"
		[/random]
		[random]
			value="3304"
		[/random]
		[random]
			value="15016"
		[/random]
		[random]
			value="23761"
			[results]
				checksum="F<juxQ8q-vqhtpPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCQKCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFSypdZF<grEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="adf has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="alexis has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="idle has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jensp has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="l00t has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="21,20,20,20,20"
			y="4,4,5,6,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,27,27,28,28,29"
			y="10,11,12,12,13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,9"
			y="12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,9"
			y="13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="marecki has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="PaX has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="9,10"
			y="14,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,11,12"
			y="11,12,13,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Etorvs has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,11,11,12"
			y="10,11,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="13,12,12,12,11,11"
			y="8,8,9,10,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jensp has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,11"
			y="8,9,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="isutruk has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="35,35,34"
			y="21,20,19"
		[/move]
	[/command]
	[command]
		[move]
			x="34,34,33"
			y="19,18,18"
		[/move]
	[/command]
	[command]
		[move]
			x="19,19,19,20,20,20"
			y="11,12,13,13,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="VAMPIRE_VT has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="sunbeam has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="garo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="bombka has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Morlok has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="15,16,17"
			y="16,15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="wavebreak1314 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="16,16"
			y="15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="el_duderino has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Sombracie has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="guix has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,30,29,29,28"
			y="20,19,19,18,17"
		[/move]
	[/command]
	[command]
		[move]
			x="32,31,30"
			y="21,21,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Blood_Puddle has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="26,27,28"
			y="19,19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="28,27"
			y="18,18"
		[/move]
	[/command]
	[command]
		[move]
			x="33,33,33,32"
			y="18,19,20,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="shagal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,24,25,26"
			y="20,19,19,18"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="278000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="wb has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nylvin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Abdul has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[move]
			x="20,21,22,23,24,25,26,26"
			y="10,10,9,9,8,9,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="20,20,20,20,21"
			y="7,6,5,4,4"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14,13"
			y="5,6,6,7,7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="6"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="25875"
		[/random]
		[random]
			value="8476"
		[/random]
		[random]
			value="714"
		[/random]
		[random]
			value="26193"
		[/random]
		[random]
			value="1076"
		[/random]
		[random]
			value="27286"
		[/random]
		[random]
			value="27395"
		[/random]
		[random]
			value="13295"
		[/random]
		[random]
			value="3012"
		[/random]
		[random]
			value="30955"
		[/random]
		[random]
			value="28209"
		[/random]
		[random]
			value="18462"
		[/random]
		[random]
			value="32077"
		[/random]
		[random]
			value="1104"
		[/random]
		[random]
			value="27973"
			[results]
				checksum="GIsTMzMz9ES2DQOJBEKJhELDntFKRtrHUBCMyPNLLqFJRxvqM3FDTGMqHwEVMDODuIOJsNEqPcOusOKDwebPsxOruODoP.K+zDJqnpswGK0PpQ,UvAQ3huxn2mf5Lj19"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Verkele has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Baxter has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,10,10,10,11,11"
			y="13,14,15,16,17,18"
		[/move]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="twice ;-)"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nigroal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="again :-D"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jugador has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="_Itera has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="well played me :->"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="mark_twain has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="11"
				y="18"
			[/source]
			[destination]
				x="12"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="8831"
			[results]
				chance="60"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="20509"
			[results]
				chance="60"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="werner has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ajeje has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kubisak1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,12,13,14,15"
			y="11,11,12,12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12"
			y="13,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="o'boy"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Ion514_1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="12"
				y="15"
			[/source]
			[destination]
				x="13"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="8268"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="27734"
			[results]
				chance="60"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Gompel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="tatiana has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="blacklotus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="molgrum has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="dusancic has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="speler has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12"
			y="12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,12"
			y="12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="12,11"
			y="18,19"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="11"
				y="19"
			[/source]
			[destination]
				x="11"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="18155"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11981"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="30771"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26587"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Iceman089089 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="16,16,15,14,13,12"
			y="16,17,18,18,19,18"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="12"
				y="18"
			[/source]
			[destination]
				x="11"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="12345"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16877"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9485"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20744"
			[results]
				chance="50"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="25834"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="seren_ has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="slowthinker has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Spirto has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Ceoden_de_Rohan has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="hanter has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="13,12"
			y="16,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="12"
				y="16"
			[/source]
			[destination]
				x="12"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="2063"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="7747"
			[results]
				chance="80"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="13354"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="12480"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Korni has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="16,15,14,13"
			y="14,15,15,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="13"
				y="16"
			[/source]
			[destination]
				x="12"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="25794"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="12385"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9823"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="23916"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="10126"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="29473"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Esor has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="guix has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="17,17,17"
			y="15,16,17"
		[/move]
	[/command]
	[command]
		[move]
			x="17,17"
			y="17,18"
		[/move]
	[/command]
	[command]
		[move]
			x="28,29,29,30"
			y="17,17,16,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="30"
				y="15"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="15780"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21905"
			[results]
				chance="80"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8385"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23745"
			[results]
				chance="80"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Manu_Lugo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="aragon has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="uio has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,30,30,30,30,30"
			y="21,20,19,18,17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="30"
				y="16"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="19368"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9430"
			[results]
				chance="60"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="23134"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="23399"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="24790"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="10080"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="965"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="30,30,30,31,32,32"
			y="20,19,18,18,17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="32"
				y="16"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="14114"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31395"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9272"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1696"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="4723"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="15538"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="rjk has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="27,28,29,30,31"
			y="18,17,17,17,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="31"
				y="17"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="8417"
			[results]
				chance="40"
				damage="7"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="26,27,28,29,30,31"
			y="18,18,17,17,16,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="31"
				y="16"
			[/source]
			[destination]
				x="31"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="28868"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="5095"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="25114"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="33,33,33,33,33,34"
			y="20,19,18,17,16,15"
		[/move]
	[/command]
	[command]
		[move]
			x="32,32,32,32,32,32"
			y="20,19,18,17,16,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="32"
				y="15"
			[/source]
			[destination]
				x="31"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="28421"
			[results]
				chance="40"
				damage="7"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="28,29,30,31,32,32,33"
			y="20,20,19,19,18,17,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Magical_Noob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="uio has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="17,16,15,14,13,12"
			y="18,17,18,18,18,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="12"
				y="17"
			[/source]
			[destination]
				x="11"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="18304"
			[results]
				chance="30"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9226"
			[results]
				chance="60"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="28809"
			[results]
				chance="30"
				damage="8"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="MidNightExpress has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Magical_Noob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Deido has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Pain_ has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Magical_Noob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,31,32,32"
			y="14,14,13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="29,29,30"
			y="14,13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,32,33,33"
			y="14,13,13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="39,38,37,36,36,35"
			y="15,14,14,13,12,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jugador has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="noah has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,25,25,26,26,27"
			y="5,6,7,7,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="23030"
		[/random]
		[random]
			value="7400"
		[/random]
		[random]
			value="6509"
		[/random]
		[random]
			value="30717"
		[/random]
		[random]
			value="13156"
		[/random]
		[random]
			value="16798"
		[/random]
		[random]
			value="17555"
		[/random]
		[random]
			value="9723"
		[/random]
		[random]
			value="10589"
		[/random]
		[random]
			value="13589"
		[/random]
		[random]
			value="27205"
		[/random]
		[random]
			value="13281"
		[/random]
		[random]
			value="1273"
		[/random]
		[random]
			value="2969"
		[/random]
		[random]
			value="16111"
			[results]
				checksum="86Wmq3.,tb9Th9Xh+8Om3eb898egWbi26k39>2dlaZge0f-9iPif8c7h8k-+v7e7e8fh1b<i8Sem73jI-oaGeRO,h0ybO20xxhh6<5-i30KE4<Yfd6-cbeMq5.ql>pFA"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="anneurs has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,13,14,15,16"
			y="13,14,14,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="15,14,13,12"
			y="13,13,14,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,13,13,13,12,11"
			y="15,14,14,13,12,11,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="h iguys"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="deathknight has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="hi"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="and what does ""m"" do?"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="uio has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="oh lol :D"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="you already use it"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="chat :-D"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="yess"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12"
			y="12,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="13,12,12,12,12,12"
			y="8,8,9,10,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="34 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="12,13,14,15,16,16,16"
			y="18,18,18,18,17,16,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="16"
				y="15"
			[/source]
			[destination]
				x="16"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="16668"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16719"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="20410"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="12,13,14,14,15"
			y="16,16,15,14,14"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="15"
				y="14"
			[/source]
			[destination]
				x="16"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="15135"
			[results]
				chance="50"
				damage="13"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="4390"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="16939"
			[results]
				chance="50"
				damage="13"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="12,12,13,14,15,16"
			y="17,16,16,15,15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Sagez has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="what do u think the ctrl v/b is good for?"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,12"
			y="19,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[label]
			colour="46,65,155,0"
			text="here is no woose, really not"
			visible_in_fog="yes"
			x="12"
			y="18"
		[/label]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="it seems to just confuse me :)"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Greenhouse has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="20,21,22,22,23"
			y="15,15,14,13,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="it's useful when you are thinking where to retreat"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Gallifax"
			message="I find it also confusing, I never understood it:P"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="yuyun has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="uio has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="valmir_god_of_war has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nigroal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Slasher has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I guess the pros don't need it then :-)"
			side="1"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,30,30"
			y="15,14,13"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="30"
				y="13"
			[/source]
			[destination]
				x="31"
				y="13"
			[/destination]
		[/attack]
		[random]
			value="27780"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="10309"
			[results]
				chance="80"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="15865"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28171"
			[results]
				chance="80"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="dusancic has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="marico has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="blue woses are good only into parks"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="looper has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="they cant hit anything ;)"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Dauntless"
			message="so its plain decoration :)"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,31,31,31"
			y="16,16,15,14"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="31"
				y="14"
			[/source]
			[destination]
				x="31"
				y="13"
			[/destination]
		[/attack]
		[random]
			value="26653"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19032"
			[results]
				chance="60"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="2973"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21812"
			[results]
				chance="60"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19875"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="31,31,32,32"
			y="16,15,14,13"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="32"
				y="13"
			[/source]
			[destination]
				x="31"
				y="13"
			[/destination]
		[/attack]
		[random]
			value="1418"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="11690"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28296"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="149"
			[results]
				chance="60"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30011"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="31,30"
			y="17,17"
		[/move]
	[/command]
	[command]
		[move]
			x="32,32,32,33"
			y="16,15,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="lol"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="satHyre has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Cristobalio has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,31,30,29"
			y="15,15,14,14"
		[/move]
	[/command]
	[command]
		[move]
			x="33,32,32,32"
			y="17,16,15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="l00t has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="they'll start to hit soon enough I'm afraid"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="WhIte_RaBBit has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Arrovv has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Schmoopy has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="32"
				y="12"
			[/source]
			[destination]
				x="32"
				y="13"
			[/destination]
		[/attack]
		[random]
			value="20952"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="7319"
			[results]
				chance="30"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="2864"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="665"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,27,28,29,30,31,32,33,33"
			y="10,11,11,12,11,12,11,12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="33"
				y="13"
			[/source]
			[destination]
				x="32"
				y="13"
			[/destination]
		[/attack]
		[random]
			value="24588"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26677"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29960"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nigromita has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="strago has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="neo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,31,31"
			y="13,12,11,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="27,27,27,27"
			y="9,10,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,24,25,26,26,27,27,28"
			y="5,6,7,7,8,9,10,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,32,31,31"
			y="12,11,12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="13"
			[/source]
			[destination]
				x="31"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="31078"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29301"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26039"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="17824"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ivan_d has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="30"
				y="12"
			[/source]
			[destination]
				x="30"
				y="13"
			[/destination]
		[/attack]
		[random]
			value="25628"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31817"
			[results]
				chance="40"
				damage="10"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9134"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="21107"
			[results]
				chance="40"
				damage="10"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="28560"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="bigfattoad has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="like that"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Bane has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="32593"
		[/random]
		[random]
			value="13216"
		[/random]
		[random]
			value="10097"
		[/random]
		[random]
			value="9207"
		[/random]
		[random]
			value="18407"
		[/random]
		[random]
			value="27453"
		[/random]
		[random]
			value="184"
		[/random]
		[random]
			value="31489"
		[/random]
		[random]
			value="28776"
		[/random]
		[random]
			value="26142"
		[/random]
		[random]
			value="15141"
		[/random]
		[random]
			value="12745"
		[/random]
		[random]
			value="25640"
		[/random]
		[random]
			value="25562"
		[/random]
		[random]
			value="21315"
			[results]
				checksum="c4ibeoBjPXdN9277b82>Vg,h+ld6d5,0c<W-1<71YYc5-d+8873Gj8ibkh8k-+v7e7e8fh19<i8Sem73jI-oaGeRO,h>ybO20xxhh6<5-i30KE4<Yfd6-cbeOq5.ql>p"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Damiatux has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="AnniXa has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="teigneux has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="forkres has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Scipio has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,11"
			y="11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="31,31,31,31,31,31"
			y="14,15,16,17,18,19"
		[/move]
	[/command]
	[command]
		[move]
			x="30,29,28,27,26,25,24"
			y="17,18,18,19,19,20,19"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30,30,30,30"
			y="13,14,15,16,17"
		[/move]
	[/command]
	[command]
		[move]
			x="33,33,32,32,32,32"
			y="14,15,15,16,17,18"
		[/move]
	[/command]
	[command]
		[move]
			x="32,32,32,32,32,33"
			y="13,14,15,16,17,18"
		[/move]
	[/command]
	[command]
		[move]
			x="34,33,33"
			y="15,16,17"
		[/move]
	[/command]
	[command]
		[move]
			x="32,32,31,31,31,30"
			y="14,15,16,17,18,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Lord_MM has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="shagal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="29,28"
			y="14,13"
		[/move]
	[/command]
	[command]
		[move]
			x="28,29,30,31,32,32,33,34,34"
			y="13,14,14,15,15,16,17,17,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="razinger has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="0"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="22553"
		[/random]
		[random]
			value="8932"
		[/random]
		[random]
			value="11740"
		[/random]
		[random]
			value="4316"
		[/random]
		[random]
			value="19034"
		[/random]
		[random]
			value="27602"
		[/random]
		[random]
			value="32062"
		[/random]
		[random]
			value="2161"
		[/random]
		[random]
			value="1446"
		[/random]
		[random]
			value="23048"
		[/random]
		[random]
			value="16269"
		[/random]
		[random]
			value="21232"
		[/random]
		[random]
			value="18723"
		[/random]
		[random]
			value="8420"
		[/random]
		[random]
			value="18495"
			[results]
				checksum="DB3s-,zQn1M2yLIrtl,yvEJs+TqLAH7qSCNCNSvmIJ>KNGxwmIQwSVVvQLyBGFwuCzBR9PMVRCroPzMEKTmSKvvPnFtw+QnBRSqBwbD3xFMMEJCCHO+YDPPnPywBn8FA"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="PsychoticKittens has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="lkloojo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="0"
			x="18"
			y="19"
		[/recruit]
		[random]
			value="5485"
		[/random]
		[random]
			value="31011"
		[/random]
		[random]
			value="22064"
		[/random]
		[random]
			value="5483"
		[/random]
		[random]
			value="18369"
		[/random]
		[random]
			value="18205"
		[/random]
		[random]
			value="4774"
		[/random]
		[random]
			value="27936"
		[/random]
		[random]
			value="6304"
		[/random]
		[random]
			value="20173"
		[/random]
		[random]
			value="1518"
		[/random]
		[random]
			value="2176"
		[/random]
		[random]
			value="10775"
		[/random]
		[random]
			value="9693"
		[/random]
		[random]
			value="15258"
			[results]
				checksum="DB3s-,zQn1M2yLMrtl,yvEJs+TqLAH7qSCNCNSvmIJ>KNGxwmIQwSVVvQLyBGFwuCzBR9PMVRCroPzMEKTmSKvvPnFtw+MnBRSqBwbD3xFMMEJCCHO+YDPPnPywBn8EE"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Raynor has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14,13,12"
			y="5,6,6,7,7,8,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="archetype has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,32,32,33,34,34"
			y="12,13,14,15,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="34"
				y="16"
			[/source]
			[destination]
				x="33"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="31513"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="21773"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="22242"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26189"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1037"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,33,33"
			y="13,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,34,35,35,34"
			y="15,15,16,17,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="otto has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="35,35,34,34,33,32,32"
			y="12,13,13,14,15,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="32"
				y="16"
			[/source]
			[destination]
				x="33"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="20244"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28493"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11179"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="5330"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="29526"
			[results]
				chance="30"
				damage="12"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Battlesmile has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,30,31,32,32,33"
			y="12,13,14,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="33"
				y="16"
			[/source]
			[destination]
				x="33"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="21756"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="4467"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1976"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="3208"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="28104"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="34,34,33,32,32,31"
			y="12,13,14,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Dauntless_ has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="27,28,28,29,30,30"
			y="12,12,13,14,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,32,33,34,35,35"
			y="13,13,14,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="28,28,29,29,30,31,31,32"
			y="10,11,12,13,13,14,15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="fillthegates has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="34"
				y="17"
			[/source]
			[destination]
				x="33"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="899"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29269"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="6202"
			[results]
				chance="30"
				damage="12"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Filadeus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Domestos has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="verolese_BR has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,13,14"
			y="13,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="14"
				y="14"
			[/source]
			[destination]
				x="15"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="9483"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="12002"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="15338"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19005"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30126"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,13,14"
			y="12,13,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="14"
				y="13"
			[/source]
			[destination]
				x="15"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="32002"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="15090"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="14556"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="999"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="31894"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,12,13,14,15"
			y="12,12,13,12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="15"
				y="13"
			[/source]
			[destination]
				x="15"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="14122"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26434"
			[results]
				chance="60"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="20349"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="28944"
			[results]
				chance="60"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26196"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23631"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19858"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="6441"
			[results]
				chance="60"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="29936"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9594"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11930"
			[results]
				chance="80"
				damage="4"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Dark_Beer_Adept has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,12,13,14,15,15"
			y="11,11,12,12,13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="15"
				y="14"
			[/source]
			[destination]
				x="16"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="22869"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="7142"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="32306"
			[results]
				chance="60"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="24603"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		undo="no"
		[clear_labels]
			team_name="2"
		[/clear_labels]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="lkloojo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,23,22"
			y="13,12,11"
		[/move]
	[/command]
	[command]
		[move]
			x="22,21"
			y="11,11"
		[/move]
	[/command]
	[command]
		[move]
			x="21,20"
			y="11,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kamikaze has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="16,16,16,16,16,15"
			y="15,16,17,18,19,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Hobbit has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="13,12,12,12,11"
			y="16,16,17,18,19"
		[/move]
	[/command]
	[command]
		[move]
			x="18,18,19"
			y="19,18,18"
		[/move]
	[/command]
	[command]
		[move]
			x="16,16,16,16,17,17,18"
			y="14,15,16,17,18,19,19"
		[/move]
	[/command]
	[command]
		[move]
			x="31,30,29,28,27"
			y="19,19,20,20,21"
		[/move]
	[/command]
	[command]
		[move]
			x="18,17"
			y="19,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Butcher has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="eu has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="csarmi has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,24,25,26,27,28"
			y="20,20,21,21,21,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="shagal has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Arne has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="33,33,32,32,32"
			y="18,19,19,20,21"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="semler has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,31,31,30"
			y="18,19,20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="30,29,29,28"
			y="17,18,19,19"
		[/move]
	[/command]
	[command]
		[move]
			x="28,27"
			y="19,19"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30,30,31"
			y="18,19,20,21"
		[/move]
	[/command]
	[command]
		[move]
			x="34,34,33,33,33"
			y="18,19,20,21,22"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="PepperMint has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Orion has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="meiga has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Supersattmaen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="hogar has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Marcin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="1"
			x="23"
			y="20"
		[/recruit]
		[random]
			value="16623"
		[/random]
		[random]
			value="31010"
		[/random]
		[random]
			value="166"
		[/random]
		[random]
			value="179"
		[/random]
		[random]
			value="2032"
		[/random]
		[random]
			value="14972"
		[/random]
		[random]
			value="28355"
		[/random]
		[random]
			value="16410"
		[/random]
		[random]
			value="19390"
		[/random]
		[random]
			value="2886"
		[/random]
		[random]
			value="16645"
		[/random]
		[random]
			value="12212"
		[/random]
		[random]
			value="11537"
		[/random]
		[random]
			value="11564"
		[/random]
		[random]
			value="1784"
			[results]
				checksum="ACIByNSVYmLXPemyRXKFwqFrLmVQqEv0TwtBGgNMvJHtOMFtHrtKmNzMnuxEPDq6BPSLFIOJqR+ProSyETFwFyA9zumVnpCouMKPBb5oJGPbmz3o>.fjcflW4pf7m5p7"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Jolie has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Hobbit has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="24,25,26,27"
			y="19,20,19,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="zanotti has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Sarge_TJ has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nigromita has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,15,16,17"
			y="13,14,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="SM_Ile has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="lhAnny has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Orionn has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,15,16"
			y="14,15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="15,16,16"
			y="14,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,12,12"
			y="8,9,10,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="gaius has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="5"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="7922"
		[/random]
		[random]
			value="7397"
		[/random]
		[random]
			value="9094"
		[/random]
		[random]
			value="22244"
		[/random]
		[random]
			value="19705"
		[/random]
		[random]
			value="18529"
		[/random]
		[random]
			value="21155"
		[/random]
		[random]
			value="15897"
		[/random]
		[random]
			value="7670"
		[/random]
		[random]
			value="5334"
		[/random]
		[random]
			value="13632"
		[/random]
		[random]
			value="11156"
		[/random]
		[random]
			value="19920"
		[/random]
		[random]
			value="29601"
		[/random]
		[random]
			value="18450"
			[results]
				checksum="8ax-d6b6xp8sjgga3aP72g3e+iBm.jefmffY-+6<ip3<5-4egW6m2lahna90i9fl5a1hh7oj8-<F-<mkj.91>I6ygXo9WjoolcACZdd9b,<-lvi1OF>M69sv8joLJwOp"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Merik has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="txaurlo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="robertwilson has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="KILLASACHSE has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Daviz has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="34,34,33,32,31"
			y="17,16,16,15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="garwe has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jrobins has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="qimeron has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="bigfattoad has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="PatrickStar has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="30,31,32,33"
			y="15,16,16,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,31,30"
			y="15,16,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="35,35"
			y="16,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="20,19"
			y="10,10"
		[/move]
	[/command]
	[command]
		[move]
			x="19,18"
			y="10,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="kyus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="sinan has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="17,16,15,14,13"
			y="20,19,19,18,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jabi has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="life has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Orion has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="13,12,11,10,9,8"
			y="18,17,17,16,16,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Volstagg has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Reysol has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,11"
			y="19,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="True has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,31,30,29"
			y="21,21,20,21"
		[/move]
	[/command]
	[command]
		[move]
			x="27,26,25"
			y="21,20,21"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Faragon has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="23,24,25,26"
			y="20,19,19,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Gilluin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="tanmay has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="HellBenito has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="33,32"
			y="22,21"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="union19 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="SteppenWolf has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,30,30,30,30,30,30"
			y="10,11,11,12,13,14,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ajk has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31"
			y="16,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,32,31"
			y="16,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14,13,13,12,12,11"
			y="5,6,6,7,7,8,9,9,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tote has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="insomniach has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Grzegt has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="matius has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="16,15"
			y="14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,13,14,15"
			y="12,13,13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="15,15,16"
			y="13,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="19464"
		[/random]
		[random]
			value="21285"
		[/random]
		[random]
			value="1140"
		[/random]
		[random]
			value="13446"
		[/random]
		[random]
			value="20608"
		[/random]
		[random]
			value="20340"
		[/random]
		[random]
			value="5023"
		[/random]
		[random]
			value="5878"
		[/random]
		[random]
			value="9370"
		[/random]
		[random]
			value="24359"
		[/random]
		[random]
			value="17862"
		[/random]
		[random]
			value="19715"
		[/random]
		[random]
			value="19497"
		[/random]
		[random]
			value="32146"
		[/random]
		[random]
			value="21625"
			[results]
				checksum="F<juxQ8q-vqhtpPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCQKCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFSypdZF<grEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Eagle has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Albaby has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="sidzej has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="27,28,28,29"
			y="19,18,17,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="17"
			[/source]
			[destination]
				x="30"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="17140"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="14318"
			[results]
				chance="80"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8078"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="4536"
			[results]
				chance="80"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jason has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="28,29,30,31,32,33"
			y="20,20,20,20,20,20"
		[/move]
	[/command]
	[command]
		[move]
			x="25,26,27,28"
			y="21,20,21,20"
		[/move]
	[/command]
	[command]
		[move]
			x="18,19,19,19,19,18,18"
			y="9,10,11,12,13,13,14"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="18"
				y="14"
			[/source]
			[destination]
				x="17"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="30343"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="27177"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15066"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ToteCrusher has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="wiens has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="27,26,25,24"
			y="20,19,20,19"
		[/move]
	[/command]
	[command]
		[recruit]
			value="3"
			x="18"
			y="19"
		[/recruit]
		[random]
			value="9488"
		[/random]
		[random]
			value="22354"
		[/random]
		[random]
			value="27100"
		[/random]
		[random]
			value="20284"
		[/random]
		[random]
			value="15704"
		[/random]
		[random]
			value="30907"
		[/random]
		[random]
			value="21531"
		[/random]
		[random]
			value="32084"
		[/random]
		[random]
			value="25555"
		[/random]
		[random]
			value="3398"
		[/random]
		[random]
			value="12231"
		[/random]
		[random]
			value="2725"
		[/random]
		[random]
			value="5660"
		[/random]
		[random]
			value="13808"
		[/random]
		[random]
			value="3197"
			[results]
				checksum="rQV6GBwD,UJ+7fHAQJ+xOoaC2U6DfS5lmb>+9w26zYBFaluj9yjnQ1omih>hik67n,e0IoZ07o9kcp0Ad568,m9n<X,+m008797o60sxBFgnWEzrk-i.-tciji+H>s3M"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="24,25,26,27"
			y="19,20,19,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Almaelia has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="PaX has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Domestos has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="boula has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="aceKING has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jumpingjack has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="again a move that I regret"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Delek-Ouzken has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I think you play way too passive all the time"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I've had the advantage in villages for almost during the entire game"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="amadeus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="lupetto has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="17,17,17,17,16,16"
			y="15,16,17,18,18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="16"
				y="19"
			[/source]
			[destination]
				x="15"
				y="20"
			[/destination]
		[/attack]
		[random]
			value="10715"
			[results]
				chance="40"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31938"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="32306"
			[results]
				chance="40"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="21839"
			[results]
				chance="40"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Attilone has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="16,16,16,16,16,15"
			y="14,15,16,17,18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="15"
				y="19"
			[/source]
			[destination]
				x="15"
				y="20"
			[/destination]
		[/attack]
		[random]
			value="8890"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9720"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="17657"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20466"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21513"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="4109"
			[results]
				chance="40"
				damage="4"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[choose]
			value="0"
		[/choose]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Knooedel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Fust has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="16,16,16,15,14,13"
			y="15,16,17,18,18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Quintin has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="13"
				y="19"
			[/source]
			[destination]
				x="12"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="23499"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="31459"
			[results]
				chance="60"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Fust has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Wanker has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="did you remember the woose, or were you surprised?"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="surprised :-)"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="totti10 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="but I was going to block your fighter and scout anyway"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nigromantys has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="15,16,17,17,18"
			y="15,15,16,17,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="18"
				y="17"
			[/source]
			[destination]
				x="19"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="9980"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9849"
			[results]
				chance="70"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="12358"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23466"
			[results]
				chance="70"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="5515"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="daffodil has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="mrmagic has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="15,16,16,17,18,19,20"
			y="14,14,15,16,16,16,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,12,13,14,14,15,16"
			y="11,11,12,12,13,14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Twix has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="w00t has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14,13"
			y="5,6,6,7,7,8"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="1584"
		[/random]
		[random]
			value="7489"
		[/random]
		[random]
			value="3829"
		[/random]
		[random]
			value="8915"
		[/random]
		[random]
			value="17213"
		[/random]
		[random]
			value="18719"
		[/random]
		[random]
			value="20614"
		[/random]
		[random]
			value="17369"
		[/random]
		[random]
			value="3897"
		[/random]
		[random]
			value="14143"
		[/random]
		[random]
			value="29227"
		[/random]
		[random]
			value="29722"
		[/random]
		[random]
			value="13093"
		[/random]
		[random]
			value="20652"
		[/random]
		[random]
			value="11411"
			[results]
				checksum="96Wmq3.,tb9Th9Xh+8Om3eb898egWbi26k39>2dlaZge0f-9iPif8c7h8k-+v7e7e8fh0c<i8Sem73jI-oaGeRO,h>ybO20xxhh6<5,n30KE4<Yfd6-cbfLq5.ql>pFA"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="30"
				y="16"
			[/source]
			[destination]
				x="29"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="1693"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23779"
			[results]
				chance="80"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tuxbert has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Hrab has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="12"
				y="18"
			[/source]
			[destination]
				x="13"
				y="19"
			[/destination]
		[/attack]
		[random]
			value="31340"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="32495"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26494"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13646"
			[results]
				chance="60"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="29,29"
			y="17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="16"
			[/source]
			[destination]
				x="30"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="28929"
			[results]
				chance="40"
				damage="19"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8779"
			[results]
				chance="80"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8125"
			[results]
				chance="40"
				damage="19"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="cccp has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="finally a woose hit"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Dawi has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="26,27,28,29,30"
			y="18,18,17,17,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="30"
				y="17"
			[/source]
			[destination]
				x="31"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="12230"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="12578"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="24583"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15138"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="1018"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16437"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="32,32,32,32,31"
			y="21,20,19,18,18"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="31"
				y="18"
			[/source]
			[destination]
				x="31"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="22949"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="12995"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="14514"
			[results]
				chance="40"
				damage="7"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="28,28,28,29,29,30"
			y="20,19,18,18,17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="30"
				y="16"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="10697"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="24231"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="27944"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="but your counter attack is like an hour late..."
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Malkor has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="27,28,29,30,30,31"
			y="20,19,19,18,17,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="31"
				y="17"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="6511"
			[results]
				chance="50"
				damage="6"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="29,30,30,31,32,32"
			y="21,20,19,19,18,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="32"
				y="17"
			[/source]
			[destination]
				x="32"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="10470"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29804"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="1647"
			[results]
				chance="70"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Leonides has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="33,34,34,35"
			y="20,19,18,18"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="35"
				y="18"
			[/source]
			[destination]
				x="35"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="10489"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="12348"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29693"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26785"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="31,32,33,34,35,36,36"
			y="21,20,20,19,19,18,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="36"
				y="17"
			[/source]
			[destination]
				x="35"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="31641"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20251"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Albaby has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,31,32,32,33"
			y="20,20,19,18,18"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="33"
				y="18"
			[/source]
			[destination]
				x="33"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="1891"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15431"
			[results]
				chance="60"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="7683"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="7766"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21621"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8404"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ArtuR has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="18,18,19,20,21,21"
			y="14,13,13,13,14,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="21"
				y="15"
			[/source]
			[destination]
				x="20"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="23277"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26447"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="31895"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="18,18,17,16,15,15"
			y="19,20,21,21,21,20"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="15"
				y="20"
			[/source]
			[destination]
				x="15"
				y="19"
			[/destination]
		[/attack]
		[random]
			value="24699"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26812"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="11,11,11,12,13"
			y="18,19,20,20,20"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="13"
				y="20"
			[/source]
			[destination]
				x="13"
				y="19"
			[/destination]
		[/attack]
		[random]
			value="31867"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23099"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="823"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="29314"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9817"
			[results]
				chance="40"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26100"
			[results]
				chance="40"
				damage="8"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="guix has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="prelukos has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="19"
				y="18"
			[/source]
			[destination]
				x="18"
				y="17"
			[/destination]
		[/attack]
		[random]
			value="31493"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="17855"
			[results]
				chance="70"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26476"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="6950"
			[results]
				chance="70"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="8,8"
			y="15,14"
		[/move]
	[/command]
	[command]
		[move]
			x="8,9,9,9,10,11"
			y="14,14,13,12,11,11"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Orion has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="solo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="13,12,12,12"
			y="8,8,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="12"
				y="10"
			[/source]
			[destination]
				x="11"
				y="11"
			[/destination]
		[/attack]
		[random]
			value="1144"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30495"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29798"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="14267"
			[results]
				chance="70"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26812"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="236"
			[results]
				chance="70"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="MAl has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="12757"
		[/random]
		[random]
			value="23854"
		[/random]
		[random]
			value="10983"
		[/random]
		[random]
			value="3806"
		[/random]
		[random]
			value="1600"
		[/random]
		[random]
			value="22070"
		[/random]
		[random]
			value="9268"
		[/random]
		[random]
			value="8199"
		[/random]
		[random]
			value="23768"
		[/random]
		[random]
			value="12408"
		[/random]
		[random]
			value="1680"
		[/random]
		[random]
			value="972"
		[/random]
		[random]
			value="30271"
		[/random]
		[random]
			value="26204"
		[/random]
		[random]
			value="28116"
			[results]
				checksum="c4jbeoBjPXdN9277b82>Vg,h+ld6d5,0c<W-1<71YYc5-d+8873Gj8ibkh8k-+v7e7e8fh18<i8Sem73jI-oaGeRO,h>ybO20xxhh6<5,n30KE4<Yfd6-cbePq5.ql>p"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,24,24,24,25,26,26"
			y="5,6,7,8,9,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tote has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="sjrs456 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="WIF-Nimiael has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Trueblade has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ColinWielga has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="WeinsCrusher has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="loowww has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,30,29,28,27,27,28"
			y="15,14,14,14,15,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Magical_Noob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="30"
				y="15"
			[/source]
			[destination]
				x="29"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="12775"
			[results]
				chance="80"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="5042"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21290"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13202"
			[results]
				chance="40"
				damage="19"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="32529"
			[results]
				chance="80"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="MJMX has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="34,33,32,31"
			y="16,16,15,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="16"
			[/source]
			[destination]
				x="30"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="4530"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="21221"
			[results]
				chance="50"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="11121"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="24885"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="prelukos has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,32,31,30,29"
			y="16,15,15,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="15"
			[/source]
			[destination]
				x="29"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="19758"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="4466"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11940"
			[results]
				chance="80"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="17015"
			[results]
				chance="60"
				damage="19"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="28"
				y="16"
			[/source]
			[destination]
				x="29"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="16290"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="16586"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="3808"
			[results]
				chance="80"
				damage="12"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="23324"
			[results]
				chance="50"
				damage="19"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Mateusz has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Holmes70 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Slasher has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="33,33,32,31,30"
			y="17,16,15,15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="35,35,35,34,33,32"
			y="17,16,15,14,14,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="janek has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Rydrion has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="16,16,15,14,14"
			y="19,18,18,18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="14"
				y="19"
			[/source]
			[destination]
				x="15"
				y="20"
			[/destination]
		[/attack]
		[random]
			value="3260"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="10844"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19079"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15936"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="21783"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="DarthMath has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="15"
				y="19"
			[/source]
			[destination]
				x="15"
				y="20"
			[/destination]
		[/attack]
		[random]
			value="12975"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="16809"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="1847"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9113"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="15788"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="3340"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="4557"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="12444"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="909"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="3968"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="10030"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="10495"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13490"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="16939"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="6933"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31352"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19770"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="10843"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="14007"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="4625"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="4686"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1115"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="418"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="7843"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1607"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26827"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="14432"
			[results]
				chance="40"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="1955"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="657"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19355"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13637"
			[results]
				chance="40"
				damage="4"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,16,15"
			y="17,18,18,19,20"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="16,15,14,13,12,11,10,10"
			y="14,14,13,13,12,13,12,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="10"
				y="11"
			[/source]
			[destination]
				x="11"
				y="11"
			[/destination]
		[/attack]
		[random]
			value="25087"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19940"
			[results]
				chance="50"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9436"
			[results]
				chance="60"
				damage="13"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31571"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="2362"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="31,30,29,28"
			y="17,17,18,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="28"
				y="17"
			[/source]
			[destination]
				x="28"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="191"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="27203"
			[results]
				chance="50"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="29916"
			[results]
				chance="50"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="32296"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="29,29"
			y="16,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="15"
			[/source]
			[destination]
				x="30"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="6938"
			[results]
				chance="40"
				damage="19"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[choose]
			value="0"
		[/choose]
	[/command]
	[command]
		[move]
			x="36,35,35,34,33,32"
			y="17,17,16,15,15,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="32"
				y="15"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="25216"
			[results]
				chance="50"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="22174"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="32,32"
			y="17,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="32"
				y="16"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="13628"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="27308"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="27622"
			[results]
				chance="70"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="35,34,33,32,31"
			y="18,17,17,17,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="31"
				y="17"
			[/source]
			[destination]
				x="31"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="24988"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="7714"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="27623"
			[results]
				chance="50"
				damage="5"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="33,33,32,31,31"
			y="18,17,16,16,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="15"
			[/source]
			[destination]
				x="30"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="10391"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15303"
			[results]
				chance="60"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="412"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="20624"
			[results]
				chance="60"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="22933"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="23804"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="wental has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,29"
			y="17,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="17"
			[/source]
			[destination]
				x="28"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="30748"
			[results]
				chance="50"
				damage="6"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="31,31,31,30"
			y="18,17,16,15"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="30"
				y="15"
			[/source]
			[destination]
				x="30"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="17501"
			[results]
				chance="60"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="987"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="659"
			[results]
				chance="60"
				damage="5"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[choose]
			value="0"
		[/choose]
	[/command]
	[command]
		[move]
			x="30,31"
			y="16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Sandermatt"
			message="at least it hurts"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="satHyre1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="12,13,14"
			y="18,18,18"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="14"
				y="18"
			[/source]
			[destination]
				x="15"
				y="19"
			[/destination]
		[/attack]
		[random]
			value="177"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="8142"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="6251"
			[results]
				chance="70"
				damage="13"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="23789"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15354"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8202"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="6043"
			[results]
				chance="70"
				damage="13"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="12785"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="4473"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="981"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9412"
			[results]
				chance="80"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="690"
			[results]
				chance="80"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11255"
			[results]
				chance="70"
				damage="13"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="well sure does"
			side="1"
		[/speak]
	[/command]
	[command]
		[move]
			x="19,18,18,17,16,16"
			y="18,17,16,16,15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="aragon has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="13,12,11"
			y="20,19,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="maybe it wasn't so late as I imagined"
			side="1"
		[/speak]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="11"
				y="11"
			[/source]
			[destination]
				x="10"
				y="11"
			[/destination]
		[/attack]
		[random]
			value="3200"
			[results]
				chance="50"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="11878"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="21,21"
			y="15,16"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="21"
				y="16"
			[/source]
			[destination]
				x="20"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="1427"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="29636"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="3059"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="11,12,13"
			y="19,19,20"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="13"
				y="20"
			[/source]
			[destination]
				x="14"
				y="19"
			[/destination]
		[/attack]
		[random]
			value="10028"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="20703"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="32364"
			[results]
				chance="70"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Crom has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="32,31"
			y="13,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="31,31,31,31"
			y="13,12,11,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Burger has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="1"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="21843"
		[/random]
		[random]
			value="6852"
		[/random]
		[random]
			value="7465"
		[/random]
		[random]
			value="3457"
		[/random]
		[random]
			value="18129"
		[/random]
		[random]
			value="26887"
		[/random]
		[random]
			value="4202"
		[/random]
		[random]
			value="18141"
		[/random]
		[random]
			value="22938"
		[/random]
		[random]
			value="2901"
		[/random]
		[random]
			value="21442"
		[/random]
		[random]
			value="20301"
		[/random]
		[random]
			value="21801"
		[/random]
		[random]
			value="13646"
		[/random]
		[random]
			value="28197"
			[results]
				checksum="MkpsyKA8tq1G+rohkH2DZ9>b7j1h.rkiw1-Fek9X9FajMic5Q3Y959Xncn>g+J0<5+3mY8je7a461,hkJw7d1pgHD0ytJwg>n6zuefoWmmRC,xvlCbQ1htCesyhkpNss"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="7"
			x="23"
			y="5"
		[/recruit]
		[random]
			value="1036"
		[/random]
		[random]
			value="16191"
		[/random]
		[random]
			value="25168"
		[/random]
		[random]
			value="6291"
		[/random]
		[random]
			value="32536"
		[/random]
		[random]
			value="14479"
		[/random]
		[random]
			value="27204"
		[/random]
		[random]
			value="2888"
		[/random]
		[random]
			value="21634"
		[/random]
		[random]
			value="18423"
		[/random]
		[random]
			value="17501"
		[/random]
		[random]
			value="15945"
		[/random]
		[random]
			value="26844"
		[/random]
		[random]
			value="12045"
		[/random]
		[random]
			value="7658"
			[results]
				checksum="86Wmq3.,tb9Th9Xh+8Om3eb898egWbi26k39>2dlaZge0f-9iPif8c7h8k-+v7e7e8fh1k<i8Sem73jI-oaGeRO,h0ybO20xxhh6<5,n30KE4<Yfd6-cbeDq5.ql>pFA"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="18,17,16,15,14,13,12,12"
			y="5,6,6,7,7,8,8,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="12"
				y="10"
			[/source]
			[destination]
				x="11"
				y="11"
			[/destination]
		[/attack]
		[random]
			value="22281"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20584"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="25058"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="7475"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="25780"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="8393"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Battlesmile has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,10"
			y="11,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="10"
				y="10"
			[/source]
			[destination]
				x="11"
				y="11"
			[/destination]
		[/attack]
		[random]
			value="18994"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20715"
			[results]
				chance="50"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26315"
			[results]
				chance="60"
				damage="13"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Magical_Noob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="wental has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,13"
			y="19,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="20,19,18,17,16,15"
			y="15,16,16,17,17,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="15"
				y="18"
			[/source]
			[destination]
				x="14"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="29633"
			[results]
				chance="80"
				damage="10"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="4077"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="32763"
			[results]
				chance="80"
				damage="10"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="15405"
			[results]
				chance="40"
				damage="16"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="12401"
			[results]
				chance="80"
				damage="10"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="15,14"
			y="20,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="14"
				y="19"
			[/source]
			[destination]
				x="13"
				y="20"
			[/destination]
		[/attack]
		[random]
			value="13806"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="10420"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="13196"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="17583"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="6391"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20368"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="22303"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Vardek has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="13"
				y="19"
			[/source]
			[destination]
				x="13"
				y="20"
			[/destination]
		[/attack]
		[random]
			value="1816"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="5155"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="4913"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="1039"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30059"
			[results]
				chance="60"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="1402"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="26867"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		[move]
			x="13,12,11,11,12"
			y="20,20,20,19,18"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="12"
				y="18"
			[/source]
			[destination]
				x="13"
				y="19"
			[/destination]
		[/attack]
		[random]
			value="21997"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="31540"
			[results]
				chance="70"
				damage="2"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="16,16,16,16"
			y="14,15,16,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="16"
				y="17"
			[/source]
			[destination]
				x="15"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="23543"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="18220"
			[results]
				chance="40"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="11325"
			[results]
				chance="40"
				damage="6"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="21,20"
			y="16,15"
		[/move]
	[/command]
	[command]
		[move]
			x="28,27,26,25,24"
			y="17,18,18,19,19"
		[/move]
	[/command]
	[command]
		[recruit]
			value="2"
			x="18"
			y="19"
		[/recruit]
		[random]
			value="4735"
		[/random]
		[random]
			value="17475"
		[/random]
		[random]
			value="6816"
		[/random]
		[random]
			value="20536"
		[/random]
		[random]
			value="21078"
		[/random]
		[random]
			value="15486"
		[/random]
		[random]
			value="24815"
		[/random]
		[random]
			value="28049"
		[/random]
		[random]
			value="12732"
		[/random]
		[random]
			value="24378"
		[/random]
		[random]
			value="49"
		[/random]
		[random]
			value="6820"
		[/random]
		[random]
			value="9780"
		[/random]
		[random]
			value="14844"
		[/random]
		[random]
			value="17838"
			[results]
				checksum="9CIQwCrz6RyeTTICy,HrVEsv8xKMwFuxzJDqOwQmKzmtMTEzPv,zPSmuOMoJAyLuJqKyRzLtHrjyLNtqqmLt5eGFJBAwBICTrpKGHCIsunwtguIWcfGAO<cOO98<20k3"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="24,23,22"
			y="19,19,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="union19 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="29,29,29,29,28"
			y="15,14,13,12,11"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30,30"
			y="15,14,13"
		[/move]
	[/command]
	[command]
		[move]
			x="30,29"
			y="13,13"
		[/move]
	[/command]
	[command]
		[move]
			x="29,29,29,29,30"
			y="13,12,11,10,9"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="30"
				y="9"
			[/source]
			[destination]
				x="31"
				y="10"
			[/destination]
		[/attack]
		[random]
			value="7886"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20480"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="32,31,31,31,31"
			y="16,16,15,14,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Teenage_Dirtbag has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,31,31,31,31"
			y="15,14,13,12,11"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="31"
				y="11"
			[/source]
			[destination]
				x="31"
				y="10"
			[/destination]
		[/attack]
		[random]
			value="28100"
			[results]
				chance="30"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="10381"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="8692"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="29,30,30,30,30,29"
			y="17,16,15,14,13,13"
		[/move]
	[/command]
	[command]
		[move]
			x="31,31,31,31,31,31"
			y="17,16,15,14,13,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Morlok has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,32,32,32,32"
			y="15,14,13,12,11"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,27,28,29"
			y="10,10,9,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="9"
			[/source]
			[destination]
				x="30"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="32162"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="8675"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="22720"
			[results]
				chance="40"
				damage="12"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="30963"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="883"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="30704"
			[results]
				chance="40"
				damage="10"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="10"
			[/source]
			[destination]
				x="30"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="1335"
			[results]
				chance="40"
				damage="12"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="14965"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20758"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="25782"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="20387"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="30438"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Lazaro has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="23,24,24,24,24,25,26,26"
			y="5,5,6,7,8,9,9,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,25,26,27,28,29"
			y="5,6,5,6,5,6"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="18301"
		[/random]
		[random]
			value="3200"
		[/random]
		[random]
			value="29045"
		[/random]
		[random]
			value="19854"
		[/random]
		[random]
			value="25480"
		[/random]
		[random]
			value="314"
		[/random]
		[random]
			value="11762"
		[/random]
		[random]
			value="26710"
		[/random]
		[random]
			value="16819"
		[/random]
		[random]
			value="32110"
		[/random]
		[random]
			value="3701"
		[/random]
		[random]
			value="31659"
		[/random]
		[random]
			value="19541"
		[/random]
		[random]
			value="26088"
		[/random]
		[random]
			value="14636"
			[results]
				checksum="F.luxQ8q-vqhspPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCLMCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFMypdZF<gxEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Kvinkunx has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Olliz has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="critical attack..."
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Hoschi has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="78.4% chance"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Bobby7 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="marcel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,13,12,11,11"
			y="19,20,20,20,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="11"
				y="19"
			[/source]
			[destination]
				x="12"
				y="18"
			[/destination]
		[/attack]
		[random]
			value="5257"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19381"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21772"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="31474"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="21483"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1346"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="22815"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[choose]
			value="1"
		[/choose]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="noooooooooo"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Owned has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,13"
			y="9,10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,12,12"
			y="10,11,12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="10,11"
			y="10,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="13,14,14"
			y="11,11,12"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,14"
			y="12,13"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="14,15"
			y="13,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[move]
			x="15,16"
			y="14,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Euthanasie has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="last game I lost because of luck, at least I get some luck back this game"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Dragon has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="nightmare-_- has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,31,32,32"
			y="13,12,11,10"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="32"
				y="10"
			[/source]
			[destination]
				x="31"
				y="10"
			[/destination]
		[/attack]
		[random]
			value="28238"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="14225"
			[results]
				chance="70"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="18598"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="31,32,33,33,32"
			y="12,11,11,10,9"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="32"
				y="9"
			[/source]
			[destination]
				x="31"
				y="10"
			[/destination]
		[/attack]
		[random]
			value="29542"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11456"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="17001"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="23425"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="hehe, well, such is Wesnoth"
			side="1"
		[/speak]
	[/command]
	[command]
		[move]
			x="29,29,29,30"
			y="13,12,11,10"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="30"
				y="10"
			[/source]
			[destination]
				x="31"
				y="10"
			[/destination]
		[/attack]
		[random]
			value="17210"
			[results]
				chance="30"
				damage="5"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="ilia has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,31,31,31"
			y="16,15,14,13"
		[/move]
	[/command]
	[command]
		[move]
			x="30,31,31,31,31,31,31,31"
			y="9,10,11,12,13,14,15,16"
		[/move]
	[/command]
	[command]
		[move]
			x="32,32,31"
			y="11,10,10"
		[/move]
	[/command]
	[command]
		[move]
			x="31,31,30"
			y="11,10,9"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="30"
				y="9"
			[/source]
			[destination]
				x="29"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="14647"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="11103"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16835"
			[results]
				chance="40"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="28,28,29"
			y="11,10,10"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="10"
			[/source]
			[destination]
				x="29"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="19269"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="9056"
			[results]
				chance="80"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16403"
			[results]
				chance="40"
				damage="17"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Minotharus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="18,17,16"
			y="19,19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="16,15,14"
			y="18,19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="14,13"
			y="18,18"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="YANIV has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="22,21,20,19,18"
			y="18,19,19,20,19"
		[/move]
	[/command]
	[command]
		[move]
			x="16,16,16,15"
			y="17,18,19,20"
		[/move]
	[/command]
	[command]
		[move]
			x="13,13,12"
			y="18,19,19"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="12"
				y="19"
			[/source]
			[destination]
				x="11"
				y="19"
			[/destination]
		[/attack]
		[random]
			value="15027"
			[results]
				chance="50"
				damage="6"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="12,11"
			y="18,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="DannyBoy has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="SiawHy has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="clmates has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[move]
			x="29,30,31"
			y="6,5,6"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="eastprince has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,25,26"
			y="5,5,5"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="24077"
		[/random]
		[random]
			value="1037"
		[/random]
		[random]
			value="12079"
		[/random]
		[random]
			value="9431"
		[/random]
		[random]
			value="13158"
		[/random]
		[random]
			value="31507"
		[/random]
		[random]
			value="17457"
		[/random]
		[random]
			value="22998"
		[/random]
		[random]
			value="4505"
		[/random]
		[random]
			value="23849"
		[/random]
		[random]
			value="19232"
		[/random]
		[random]
			value="21432"
		[/random]
		[random]
			value="13608"
		[/random]
		[random]
			value="1822"
		[/random]
		[random]
			value="13982"
			[results]
				checksum="F.muxQ8q-vqhspPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCLHCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFSypdZF<grEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,26,25,24,23,22"
			y="10,9,9,8,9,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="marcel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Diomede has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saber has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="12,12,12"
			y="19,18,17"
		[/move]
	[/command]
	[command]
		[move]
			x="12,12,12"
			y="17,16,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tusoalsob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="11,12,12,12,13"
			y="19,18,17,16,16"
		[/move]
	[/command]
	[command]
		[move]
			x="12,13,13"
			y="15,16,17"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Delek-Ouzken has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="15,14,13,12"
			y="20,19,19,18"
		[/move]
	[/command]
	[command]
		[move]
			x="31,30,30,30,30"
			y="10,9,8,7,6"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="30"
				y="6"
			[/source]
			[destination]
				x="31"
				y="6"
			[/destination]
		[/attack]
		[random]
			value="12069"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28289"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="7820"
			[results]
				chance="50"
				damage="2"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Knooedel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,30,30"
			y="16,15,14"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30,31,31,31,31"
			y="14,13,13,12,11,10"
		[/move]
	[/command]
	[command]
		[move]
			x="29,28,27,26"
			y="10,10,11,10"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="DatMonsta has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="oh has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,31,31"
			y="10,10,9"
		[/move]
	[/command]
	[command]
		[move]
			x="32,32,32,31"
			y="9,8,7,7"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="31"
				y="7"
			[/source]
			[destination]
				x="31"
				y="6"
			[/destination]
		[/attack]
		[random]
			value="5049"
			[results]
				chance="50"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9512"
			[results]
				chance="50"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31659"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="26413"
			[results]
				chance="50"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="28507"
			[results]
				chance="50"
				damage="4"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="30,30,29"
			y="9,8,8"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30"
			y="10,9"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Minotharus has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,31,31"
			y="13,12,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Altonator has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Lord_MM has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="prayer2 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Physix has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Sandermatt"
			message="where are you from by the way"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="LunaLoony has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="Finland"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="regis has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="Sandermatt"
			message="cool"
			side="2"
		[/speak]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="23-0 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="khiM-"
			message="whats cool about htat?"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="u from Switzerland?"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Malkor has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="Hard to say, but it somehow sounds sympathic"
			side="2"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="yes"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="lol"
			side="1"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="have I played vs you before"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Diomede has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="26,27,28,29"
			y="5,6,5,6"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="29"
				y="6"
			[/source]
			[destination]
				x="30"
				y="6"
			[/destination]
		[/attack]
		[random]
			value="21095"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="16526"
			[results]
				chance="40"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31003"
			[results]
				chance="30"
				damage="8"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="17391"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="17151"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="khiM-"
			message="cool = sympahthic?"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="6"
			[/source]
			[destination]
				x="30"
				y="6"
			[/destination]
		[/attack]
		[random]
			value="19840"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28478"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1092"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="32639"
			[results]
				chance="50"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="12108"
			[results]
				chance="30"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="yes"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="khiM-"
			message="sweet"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="greenispeople has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="vs. me? No, I don't think we have played before"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,25,26"
			y="5,5,5"
		[/move]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="1"
			x="24"
			y="5"
		[/recruit]
		[random]
			value="4058"
		[/random]
		[random]
			value="7438"
		[/random]
		[random]
			value="15573"
		[/random]
		[random]
			value="17992"
		[/random]
		[random]
			value="29385"
		[/random]
		[random]
			value="18726"
		[/random]
		[random]
			value="20256"
		[/random]
		[random]
			value="3053"
		[/random]
		[random]
			value="27526"
		[/random]
		[random]
			value="17452"
		[/random]
		[random]
			value="26518"
		[/random]
		[random]
			value="31284"
		[/random]
		[random]
			value="31994"
		[/random]
		[random]
			value="28983"
		[/random]
		[random]
			value="22916"
			[results]
				checksum="McpsyKA8tq1H+rohkH2DZ9>b7j1h.rkiw1-Fek9X9FajMic5Q3Y959Xncn>g+J0<5+3mY8je7a461,hkRw7d1pgHD0ytJwg>n6zuefoWmmRC,xvlCaM1htCesyckpNss"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="xeron has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Janina has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="12,12,11,11,12"
			y="13,14,15,16,16"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="12"
				y="16"
			[/source]
			[destination]
				x="13"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="17580"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="18407"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="24556"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="30838"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="16124"
			[results]
				chance="40"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="18587"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="15751"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Mike1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="so you new it from the ladder that I am from switzerland?"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="16,15,14"
			y="14,15,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="14"
				y="15"
			[/source]
			[destination]
				x="13"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="6030"
			[results]
				chance="40"
				damage="10"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="6722"
			[results]
				chance="40"
				damage="12"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="31743"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="5386"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="13976"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="23905"
			[results]
				chance="40"
				damage="12"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Caleb has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="11,11,11,12,12,13"
			y="11,12,13,13,14,15"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="13"
				y="15"
			[/source]
			[destination]
				x="13"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="7824"
			[results]
				chance="40"
				damage="13"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="3999"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29341"
			[results]
				chance="40"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="31911"
			[results]
				chance="50"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="13285"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="29128"
			[results]
				chance="50"
				damage="9"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="is it shown there?"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="TheRAF has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Alpar has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="yes"
			side="1"
		[/speak]
	[/command]
	[command]
		[move]
			x="18,17,16,15,14,13,12"
			y="19,20,19,19,18,18,17"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="12"
				y="17"
			[/source]
			[destination]
				x="12"
				y="16"
			[/destination]
		[/attack]
		[random]
			value="5020"
			[results]
				chance="70"
				damage="6"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="11190"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="2113"
			[results]
				chance="70"
				damage="6"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="12,12,12,11,11,12"
			y="18,17,16,16,15,14"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="12"
				y="14"
			[/source]
			[destination]
				x="13"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="27094"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="32516"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="8785"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28454"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="jogador has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saint-Chamond has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="13,13,14,15,16,16,15,15,14"
			y="17,18,18,18,17,16,16,15,14"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="14"
				y="14"
			[/source]
			[destination]
				x="13"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="27485"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="3685"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="13"
				y="16"
			[/source]
			[destination]
				x="13"
				y="15"
			[/destination]
		[/attack]
		[random]
			value="7596"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="5578"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="1853"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="or there was Swiss flag next to your nick"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="IronFist has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Mjammm has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Uzael has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="marcel has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Remy has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="26,26"
			y="10,9"
		[/move]
	[/command]
	[command]
		[move]
			x="30,30,30,29,28,27,26"
			y="6,7,8,9,9,10,10"
		[/move]
	[/command]
	[command]
		[move]
			x="31,32"
			y="9,9"
		[/move]
	[/command]
	[command]
		[move]
			x="29,30,31"
			y="8,8,9"
		[/move]
	[/command]
	[command]
		[move]
			x="31,32,33,34"
			y="7,7,7,7"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saber has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="30,31,32,33"
			y="9,9,8,8"
		[/move]
	[/command]
	[command]
		[move]
			x="31,32,33,33"
			y="11,10,10,9"
		[/move]
	[/command]
	[command]
		[move]
			x="20,20,20,19,19,20"
			y="15,14,13,13,12,11"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tusoalsob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="bigfattoad has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="13,13"
			y="15,14"
		[/move]
	[/command]
	[command]
		sent="yes"
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="13"
				y="14"
			[/source]
			[destination]
				x="12"
				y="14"
			[/destination]
		[/attack]
		[random]
			value="30606"
			[results]
				chance="60"
				damage="13"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19912"
			[results]
				chance="50"
				damage="5"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="9114"
			[results]
				chance="60"
				damage="13"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="13026"
			[results]
				chance="50"
				damage="5"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Misa has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="trav has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[recruit]
			value="0"
			x="18"
			y="5"
		[/recruit]
		[random]
			value="31071"
		[/random]
		[random]
			value="31571"
		[/random]
		[random]
			value="17919"
		[/random]
		[random]
			value="8591"
		[/random]
		[random]
			value="5268"
		[/random]
		[random]
			value="16659"
		[/random]
		[random]
			value="9949"
		[/random]
		[random]
			value="32736"
		[/random]
		[random]
			value="12581"
		[/random]
		[random]
			value="5655"
		[/random]
		[random]
			value="13293"
		[/random]
		[random]
			value="3988"
		[/random]
		[random]
			value="19350"
		[/random]
		[random]
			value="8032"
		[/random]
		[random]
			value="28290"
			[results]
				checksum="F.muxQ8q-vqhspPuqvoeBIvxzyqxRKaVOEMsRHPLsxrnKSQUuPzuQTzBNpzqtPasFJDFNwNCmGSzKQuCLHCMwz5BGNz0sHXttHryoCqiuuzfBrmxtBFSypdZF<grEJR6"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Euthanasie has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Spinball has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[move]
			x="24,25,26,27,28"
			y="5,6,5,6,6"
		[/move]
	[/command]
	[command]
		sent="yes"
		[countdown_update]
			team="1"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="super_rambo has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Nirvana has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saint-Chamond has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="32,32,31,30,30"
			y="9,8,8,7,6"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="30"
				y="6"
			[/source]
			[destination]
				x="31"
				y="6"
			[/destination]
		[/attack]
		[random]
			value="9146"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="12084"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="19507"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="19539"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="33,33,33,33,32"
			y="9,8,7,6,5"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="1"
			weapon="1"
			[source]
				x="32"
				y="5"
			[/source]
			[destination]
				x="31"
				y="6"
			[/destination]
		[/attack]
		[random]
			value="5457"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="7792"
			[results]
				chance="60"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="8873"
			[results]
				chance="70"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="28419"
			[results]
				chance="70"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="satHyre1 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="33,32,31"
			y="8,7,7"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="31"
				y="7"
			[/source]
			[destination]
				x="31"
				y="6"
			[/destination]
		[/attack]
		[random]
			value="276"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="6185"
			[results]
				chance="50"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="18700"
			[results]
				chance="50"
				damage="4"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="31,31,31,31"
			y="9,8,7,6"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Szymron has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="20,21,22"
			y="11,11,10"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="-1"
			weapon="1"
			[source]
				x="22"
				y="10"
			[/source]
			[destination]
				x="22"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="13366"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="17503"
			[results]
				chance="30"
				damage="7"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="5590"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="26,25,24,23"
			y="9,9,8,9"
		[/move]
	[/command]
	[command]
		[attack]
			defender_weapon="0"
			weapon="0"
			[source]
				x="23"
				y="9"
			[/source]
			[destination]
				x="22"
				y="9"
			[/destination]
		[/attack]
		[random]
			value="30933"
			[results]
				chance="30"
				damage="0"
				dies="no"
				hits="no"
			[/results]
		[/random]
		[random]
			value="25532"
			[results]
				chance="80"
				damage="3"
				dies="no"
				hits="yes"
			[/results]
		[/random]
		[random]
			value="13607"
			[results]
				chance="30"
				damage="28"
				dies="yes"
				hits="yes"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="26,26,25"
			y="10,9,9"
		[/move]
	[/command]
	[command]
		[move]
			x="25,24,23,22"
			y="9,8,9,9"
		[/move]
	[/command]
	[command]
		[move]
			x="14,13,13,13,12,11"
			y="14,14,13,12,11,11"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Blackfish has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="meriton has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="13,12,12,12,11"
			y="16,16,17,18,19"
		[/move]
	[/command]
	[command]
		[move]
			x="12,13,14,15,16"
			y="14,14,14,14,14"
		[/move]
	[/command]
	[command]
		[move]
			x="12,13,14,15,16,17,18"
			y="17,18,18,19,19,20,19"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="qwert has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[recruit]
			value="6"
			x="19"
			y="20"
		[/recruit]
		[random]
			value="3259"
		[/random]
		[random]
			value="19417"
		[/random]
		[random]
			value="8657"
		[/random]
		[random]
			value="7776"
		[/random]
		[random]
			value="17408"
		[/random]
		[random]
			value="32039"
		[/random]
		[random]
			value="8145"
		[/random]
		[random]
			value="10467"
		[/random]
		[random]
			value="26669"
		[/random]
		[random]
			value="20924"
		[/random]
		[random]
			value="14840"
		[/random]
		[random]
			value="250"
		[/random]
		[random]
			value="8579"
			[results]
				checksum="DTLTPwRQczAcRKLLbq0Mv5QyqrQOOBLOyBMIwFivztGUowQpTBRsw,0zs3P8rB49xHwm.opR7jouswcn.Adz9fQtQo8c1O8LyzFARPPnDHfaE>8vfLObeidgl03fnU6<"
			[/results]
		[/random]
	[/command]
	[command]
		[recruit]
			value="4"
			x="24"
			y="19"
		[/recruit]
		[random]
			value="4951"
		[/random]
		[random]
			value="16319"
		[/random]
		[random]
			value="19249"
		[/random]
		[random]
			value="15947"
		[/random]
		[random]
			value="3679"
		[/random]
		[random]
			value="9447"
		[/random]
		[random]
			value="1074"
		[/random]
		[random]
			value="6166"
		[/random]
		[random]
			value="14286"
		[/random]
		[random]
			value="13422"
		[/random]
		[random]
			value="8550"
		[/random]
		[random]
			value="3941"
		[/random]
		[random]
			value="20070"
		[/random]
		[random]
			value="16218"
		[/random]
		[random]
			value="18375"
			[results]
				checksum="-n9uN+-Dy+EeNPrPbGMNQXtz0Ipzwss1tysRRKOwxuoVBywHrwxEqutHtKzE>BNMxHQOHFw.RFKFnqypNKoM8mwoFomIhFlq1.CLW<<ddBfkHDONNHvMSO1I9LGCHpAC"
			[/results]
		[/random]
	[/command]
	[command]
		[move]
			x="34,33,33,32,32"
			y="7,7,6,5,4"
		[/move]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="JoeSchmoe has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Frognosis has logged into the lobby"
		[/speak]
	[/command]
	[command]
		[move]
			x="31,30,29,28,27,26"
			y="10,9,10,10,10,10"
		[/move]
	[/command]
	[command]
		[countdown_update]
			team="2"
			value="330000"
		[/countdown_update]
	[/command]
	[command]
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[end_turn]
		[/end_turn]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="qwert has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Tusoalsob has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="yeah, it's over"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I give up"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="lauwen has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="Saint-Chamond has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="ok"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="oyuncu has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="thx for the game"
			side="1"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="Ithank you too"
			side="2"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="you really had"
			side="2"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="bad luck"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I don't know, I must study the replay"
			side="1"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="and least you can put some of the blam for the defeat on that"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="marecki has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="for a long time I thought I'd win with my village advantage"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I must have made some serious mistakes on the way"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="geg_Ma3gau has logged into the lobby"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="you stayed when it became day"
			side="2"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="mordimer87 has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="maybe"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="I was too sure of my victory"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="and it bite back at me"
			side="1"
		[/speak]
	[/command]
	[command]
		sent="yes"
		[speak]
			id="server"
			message="oss has logged into the lobby"
		[/speak]
	[/command]
	[command]
		sent="yes"
		undo="no"
		[speak]
			id="freesole"
			message="anyways, an exiting game, thanks and hope to play with you again soon"
			side="1"
		[/speak]
	[/command]
	[command]
		undo="no"
		[speak]
			id="Sandermatt"
			message="cu"
			side="2"
		[/speak]
	[/command]
[/replay]
[snapshot]
	campaign_type="multiplayer"
	completion="running"
	current_tod="2"
#textdomain wesnoth-multiplayer
	description=_ "These caves were once the lair of Chak'kso Ney'yks, a legendary Elder Basilisk. The petrified forms of his victims remain as monuments to his savage power."
	difficulty="NORMAL"
	end_text_duration="0"
	experience_modifier="70"
	hash="McPgEzp.LJt7h.t1Qr.c0wdN6DSMrFSDz4LpPy.MjaHg-SJ4NO6RN7,AJkIOwBZE.K6Gt>F,tbOGluI+4Fgcg7SDu,wQihAGrihF1c3lurN0vQXAvq<LoFHYPrX2RHE1"
	id="multiplayer_Basilisk"
	label="2S – Basiliskenhöhlen"
	map_data="border_size=1
usage=map

_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Mm^Xm       , Mm^Xm       , Mm^Xm       , Gs^Fp       , Mm^Xm       , Gs^Fp       , Hh          , Gs^Fms      , Ww          , Ww          , Ww          , Gs^Fp       , Gs^Fms      , Hh          , Mm^Xm       , Gs^Fp       , Mm^Xm       , Mm^Xm       , Mm          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Gs^Fp       , Mm          , Gg^Fet      , Mm          , Gs^Fp       , Mm^Xm       , Gs^Fms      , Gg^Ve       , Gg          , Hh          , Mm          , Ww          , Gs^Fp       , Hh          , Gg          , Mm          , Gg^Fet      , Mm^Xm       , Mm          , Mm          , Hh          , Gs^Fp       , Ggf         , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Hh          , Ggf         , Gg          , Hh          , Gg^Ve       , Hh          , Gs^Fms      , Mm          , Mm          , Ggf         , Gg          , Gg          , Ch          , 1 Kh        , Ch          , Gg          , Hh          , Gg          , Gg          , Gs^Fp       , Gg          , Gg          , Gg          , Gg          , Gs^Fms      , Wwf         , Wwf         , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Wwf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Kh          , Ch          , Gg          , Wwf         , Gg          , Ch          , Kh          , Gs^Fp       , Mm          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Mm          , Wwf         , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Wwf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Re          , Gg          , Re          , Gg          , Gg          , Gg          , Gg          , Wwf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Hh          , Gs^Fp       , Gg^Ve       , Gg          , Ggf         , Mm          , Wwf         , Xu          , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Xu          , Xu          , Xu          , Wwf         , Gg          , Gg          , Gs^Fp       , Hh          , Gs^Fp       , Gg          , Gg          , Re          , Re          , Xu          , Re          , Re^Uf       , Gg          , Re          , Wwf         , Gg          , Gs^Fms      , Gg          , Re          , Re          , Re          , Xu          , Gg          , Gg          , Hh          , Gg          , Gg          , Gs^Fp       , Wwf         , Wwf         , Xu          , Uh          , Xu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Wwf         , Mm          , Gg          , Gg          , Re^Uf       , Mm          , Gg          , Re          , Re          , Ww          , Xu          , Uh          , Uu^Vud      , Xu          , Re          , Wwf         , Wwf         , Re          , Gg          , Re          , Re          , Wwf         , Xu          , Xu          , Re^Uf       , Re          , Gg          , Gg          , Hh          , Ggf         , Hh          , Wwf         , Xu          , Wwf         , Uu          , Uu^Uf       , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Gs^Fp       , Hh          , Hh          , Gg          , Gg          , Hh          , Gs^Fms      , Gg          , Re          , Ww          , Wo          , Ww          , Wwf         , Wwf         , Uh          , Uu^Uf       , Wwf         , Ww          , Ss^Vhs      , Re          , Xu          , Wwf         , Ur          , Ur          , Re          , Re          , Gs^Fms      , Hh          , Gg^Uf       , Gg          , Gg          , Re          , Re^Uf       , Wwf         , Wwf         , Uu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Wwf         , Wwf         , Ggf         , Ggf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Re          , Ww          , Ww          , Ww          , Xu          , Uh          , Xu          , Ur          , Ww          , Ww          , Ww          , Xu          , Ww          , Uh          , Uu^Vu       , Re          , Gg          , Gg          , Gg          , Gg^Ve       , Gg          , Gg          , Gg          , Gg          , Re          , Gs^Fp       , Wwf         , Xu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Gs^Fms      , Gs^Fp       , Re^Uf       , Re          , Gg          , Gg          , Gg          , Gg          , Gg          , Ss^Vhs      , Gg          , Re          , Wwf         , Uh          , Xu          , Ur          , Xu          , Wwf         , Ww          , Wo          , Uu          , Uh          , Ww          , Xu          , Xu          , Re          , Re          , Gg          , Gg          , Gg          , Gs^Fms      , Hh          , Hh          , Gg          , Gg          , Re          , Re          , Wwf         , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Mm          , Hh          , Re          , Re          , Gg          , Gg          , Hh          , Gs^Fp       , Ss          , Gg          , Hh          , Re          , Wwf         , Xu          , Xu          , Ur          , Wwf         , Wwf         , Ww          , Uu^Uf       , Ww          , Ww          , Wwf         , Uu^Uf       , Xu          , Uh          , Wwf         , Re          , Hh          , Hh          , Mm          , Gs^Fp       , Hh          , Gs^Fp       , Gg          , Re          , Re          , Wwf         , Wwf         , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Wwf         , Re^Uf       , Re          , Gg          , Gg          , Gs^Fp       , Re^Uf       , Gs^Fms      , Mm          , Gs^Fp       , Hh          , Re          , Re          , Uh          , Xu          , Uu^Uf       , Ww          , Ww          , Uu          , Uu^Uf       , Ww          , Wwf         , Xu          , Ur          , Xu          , Xu          , Wwf         , Re          , Re          , Gs^Fp       , Gg          , Ss          , Gg          , Gg          , Gg          , Gg          , Gg          , Re^Uf       , Mm          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Re          , Gg          , Gg          , Gg          , Gg          , Hh          , Gg          , Hh          , Gg          , Gg          , Gg          , Re          , Uu^Vu       , Xu          , Ww          , Uh          , Ww          , Wo          , Ww          , Wwf         , Xu          , Ur          , Xu          , Uh          , Ww          , Re          , Re          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Ggf         , Hh          , Hh          , Gs^Fp       , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Wwf         , Hh          , Hh          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Re          , Re          , Ur          , Uh          , Xu          , Xu          , Ss^Vhs      , Ww          , Wwf         , Ur          , Uh          , Uh          , Wwf         , Ww          , Wo          , Ww          , Re          , Re          , Gg          , Gg          , Gs^Fms      , Gg          , Gg          , Gg          , Gg          , Gs^Fp       , Wwf         , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Gs^Fp       , Re          , Gg          , Ggf         , Gg          , Gg          , Gg          , Gg          , Gs^Fp       , Xu          , Ur          , Wwf         , Wwf         , Re          , Re          , Re          , Ww          , Wwf         , Uu^Uf       , Xu          , Wwf         , Uh          , Ww          , Ww          , Ww          , Re          , Ss^Vhs      , Gg          , Hh          , Mm          , Hh          , Re^Uf       , Gg          , Gg          , Wwf         , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Uu^Uf       , Uu          , Wwf         , Wwf         , Wwf         , Re          , Hh          , Mm          , Gs^Fp       , Gg          , Gg          , Uh          , Xu          , Xu          , Re          , Re          , Gg          , Gg          , Gg          , Wwf         , Re          , Re          , Re^Uf       , Uu^Vud      , Xu          , Xu          , Re          , Re          , Gg          , Gg          , Gg          , Gs^Fms      , Ggf         , Gs^Fp       , Gg          , Gg          , Wwf         , Wwf         , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Uh          , Xu          , Xu          , Wwf         , Re          , Re^Uf       , Ggf         , Gg^Uf       , Gs^Fp       , Gg          , Gg          , Re          , Gg          , Re          , Gg          , Gs^Fp       , Gg          , Wwf         , Gg          , Gg          , Gg          , Re          , Re          , Re          , Re          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Wwf         , Wwf         , Xu          , Xu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , Xu          , Xu          , Xu          , Xu          , Wwf         , Re          , Gs^Fms      , Gg          , Gg^Ve       , Ggf         , Gg          , Gg          , Gg          , Ggf         , Gg          , Kh          , Gg          , Gg          , Wwf         , Gg          , Gg          , Kh          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Wwf         , Xu          , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Wwf         , Re          , Mm          , Hh          , Gg          , Gg          , Gg          , Gg^Ve       , Gg          , Gs^Fms      , Gg          , Ch          , Ch          , Wwf         , Ch          , Ch          , Gg          , Gg          , Gg          , Gg          , Gg^Fet      , Gg          , Gg^Ve       , Gg          , Gg          , Gs^Fp       , Gg          , Wwf         , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Wwf         , Re          , Re          , Gs^Fp       , Re          , Gg          , Hh          , Hh          , Gs^Fms      , Gg          , Gg          , Hh          , Mm          , 2 Kh        , Gs^Fp       , Gg          , Gg          , Gg^Ve       , Gs^Fp       , Gg          , Hh          , Hh          , Gs^Fp       , Hh          , Gs^Fms      , Gg          , Wwf         , Wwf         , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Wwf         , Re          , Re          , Re          , Gs^Fp       , Mm          , Mm          , Mm          , Mm          , Gs^Fms      , Gg^Fet      , Hh          , Ww          , Hh          , Hh          , Gs^Fms      , Hh          , Mm          , Hh          , Mm^Xm       , Mm          , Mm          , Hh          , Gs^Fp       , Mm          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Mm          , Hh          , Hh          , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm          , Mm^Xm       , Ww          , Ww          , Mm          , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm          , Mm^Xm       , Mm          , Hh          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Mm^Xm       , _off^_usr   , Mm          , _off^_usr   , Gs^Fp       , _off^_usr   , Mm^Xm       , _off^_usr   , Ww          , _off^_usr   , Gs^Fp       , _off^_usr   , Hh          , _off^_usr   , Gs^Fp       , _off^_usr   , Mm^Xm       , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
"
	mp_countdown="yes"
	mp_countdown_action_bonus="20"
	mp_countdown_init_time="270"
	mp_countdown_reservoir_time="330"
	mp_countdown_turn_bonus="210"
	mp_fog="yes"
	mp_shroud="no"
	mp_use_map_settings="no"
	mp_village_gold="2"
	name=_ "2p - Caves of the Basilisk"
	next_underlying_unit_id="755"
#textdomain wesnoth
	objectives=_ "Victory:
@Defeat enemy leader(s)"
	observer="yes"
	playing_team="0"
	random_calls="0"
	random_seed="30374"
	random_start_time="yes"
	snapshot="yes"
	turn_at="28"
	turns="-1"
	unit_wml_ids="Armageddon Drake,Direwolf Rider,Dwarvish Berserker,Dwarvish Fighter,Dwarvish Guardsman,Dwarvish Ulfserker,Elder Wose,Elvish Archer,Elvish Fighter,Elvish Hero,Elvish Marksman,Elvish Ranger,Elvish Rider,Elvish Scout,Elvish Shaman,Footpad,Grand Knight,Grand Marshal,Gryphon Rider,Iron Mauler,Mage,Mermaid Siren,Merman Hunter,Naga Myrmidon,Poacher,Saurian Flanker,Saurian Oracle,Sea Serpent,Sky Drake,Thief,Trapper,Wose,era_events"
	version="1.6.2"
	[side]
		action_bonus_count="21"
		aggression="0.5"
		allow_player="yes"
		caution="0.25"
		colour="1"
		controller="network"
		countdown_time="330000"
		current_player="freesole"
		disallow_observers="no"
		fog="yes"
		global_recruitment_pattern="fighter,fighter,fighter,mixed fighter,archer,scout"
		gold="8"
		hidden="no"
		id="freesole1"
		income="0"
		leader_value="3"
		name="freesole"
		no_leader="yes"
		number_of_possible_recruits_to_force_recruit="3.1"
		objectives=_ "Victory:
@Defeat enemy leader(s)"
		objectives_changed="yes"
		recruit="Dwarvish Fighter,Dwarvish Guardsman,Dwarvish Thunderer,Dwarvish Ulfserker,Footpad,Gryphon Rider,Poacher,Thief"
		recruitment_pattern="fighter,fighter,fighter,mixed fighter,archer,scout"
		save_id="freesole1"
		share_maps="no"
		share_view="yes"
		shroud="no"
		side="1"
		start_gold="100"
		team_name="1"
		user_team_name="Team 1"
		village_gold="2"
		village_value="1"
		villages_per_scout="8"
		[ai]
			recruitment_pattern="fighter,fighter,fighter,mixed fighter,archer,scout"
			[team_formula]
				rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
			[/team_formula]
		[/ai]
		[ai]
			villages_per_scout="8"
		[/ai]
		[village]
			x="12"
			y="4"
		[/village]
		[village]
			x="17"
			y="3"
		[/village]
		[village]
			x="17"
			y="8"
		[/village]
		[unit]
			advances_to="Huntsman,Ranger"
			alignment="chaotic"
			allow_changes="yes"
			allow_player="yes"
			alpha="256"
			attacks_left="1"
			canrecruit="yes"
			colour="1"
			controller="network"
			cost="27"
			current_player="freesole"
			die_sound="human-die-1.ogg,human-die-2.ogg,human-die-3.ogg"
			experience="1"
			facing="ne"
			flag_rgb="magenta"
			flying="no"
			fog="yes"
			gender="male"
			gold="100"
			goto_x="-999"
			goto_y="-999"
			hitpoints="45"
			id="freesole1"
			image="units/human-outlaws/trapper.png"
			income="0"
#textdomain wesnoth-units
			language_name=_ "Trapper"
			leader="Dwarvish Steelclad,Dwarvish Thunderguard,Dwarvish Stalwart,Rogue,Trapper"
			level="2"
			max_attacks="1"
			max_experience="46"
			max_hitpoints="45"
			max_moves="5"
			movement="5"
			movement_type="smallfoot"
			moves="5"
			mp_countdown="yes"
			mp_countdown_action_bonus="20"
			mp_countdown_init_time="270"
			mp_countdown_reservoir_time="330"
			mp_countdown_turn_bonus="210"
			name="freesole"
			profile="portraits/humans/trapper.png"
			race="human"
			random_leader="Dwarvish Steelclad,Dwarvish Thunderguard,Rogue,Trapper"
			random_traits="no"
			recruit="Dwarvish Guardsman,Dwarvish Fighter,Dwarvish Ulfserker,Dwarvish Thunderer,Thief,Poacher,Footpad,Gryphon Rider"
			resting="yes"
			save_id="freesole1"
			share_maps="no"
			share_view="yes"
			shroud="no"
			side="1"
			team_name="1"
			terrain_liked="Hh, Ha, Mm"
			type="Trapper"
			undead_variation="archer"
			underlying_id="687"
			unrenamable="no"
			upkeep="full"
			usage="archer"
			user_team_name="Team 1"
			village_gold="2"
			x="21"
			y="4"
			zoc="yes"
			[defense]
				castle="40"
				cave="60"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="80"
				fungus="50"
				hills="50"
				impassable="60"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="50"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="2"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="3"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[portrait]
				image="portraits/humans/transparent/trapper.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/humans/transparent/trapper.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="4"
				description=_ "dagger"
				icon="attacks/dagger-human.png"
				name="dagger"
				number="4"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="6"
				description=_ "bow"
				name="bow"
				number="4"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Dwarvish Steelclad"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="16"
			die_sound="dwarf-die-1.ogg,dwarf-die-2.ogg"
			ellipse="misc/ellipse"
			experience="1"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="43"
			id="Dwarvish Fighter-750"
			image="units/dwarves/fighter.png"
			language_name=_ "Dwarvish Fighter"
			level="1"
			max_attacks="1"
			max_experience="29"
			max_hitpoints="44"
			max_moves="4"
			movement="4"
			movement_type="dwarvishfoot"
			moves="4"
			name="Dulcating"
			profile="portraits/dwarves/fighter.png"
			race="dwarf"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="1"
			type="Dwarvish Fighter"
			undead_variation="dwarf"
			underlying_id="750"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="29"
			y="6"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="hammer"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-150"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
				[frame]
					begin="-150"
					end="-100"
					image="units/dwarves/fighter-hammer-1.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/dwarves/fighter-hammer-2.png"
						sound="mace.wav"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/dwarves/fighter-hammer-2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="175"
					image="units/dwarves/fighter-hammer-3.png"
				[/frame]
				[frame]
					begin="175"
					end="200"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				offset="0.0~-0.15:30,-0.15~0.1:60,0.1~0.5:190,0.5~0.6:30,0.6~0.6:40,0.6~0.15:150,0.15~0.0:40"
				start_time="-350"
				[filter_attack]
					name="axe"
				[/filter_attack]
				[frame]
					duration="40"
					image="units/dwarves/fighter-axe-1.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-2.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-3.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-4.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						duration="60"
						image="units/dwarves/fighter-axe-5.png"
						sound="axe.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						duration="60"
						image="units/dwarves/fighter-axe-5.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-6.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-7.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-8.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-9.png"
				[/frame]
				[frame]
					duration="20"
					image="units/dwarves/fighter.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_second_attack]
					name="axe"
				[/filter_second_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-defend-2.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-2.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-2.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_second_attack]
					name="hammer"
				[/filter_second_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-hammer-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-hammer-defend.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-hammer-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-1.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-1.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter.png"
				[/frame]
			[/defend]
			[portrait]
				image="portraits/dwarves/transparent/fighter.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/dwarves/transparent/fighter.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="50"
				deep_water="80"
				flat="70"
				forest="70"
				frozen="70"
				fungus="60"
				hills="40"
				impassable="50"
				mountains="30"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="1"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="1"
				hills="1"
				impassable="99"
				mountains="1"
				reef="2"
				sand="1"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="90"
				blade="80"
				cold="90"
				fire="90"
				impact="80"
				pierce="80"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="8"
				description=_ "axe"
				name="axe"
				number="3"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="9"
				description=_ "hammer"
				icon="attacks/hammer-dwarven.png"
				name="hammer"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^resilient"
					id="resilient"
					male_name=_ "resilient"
					name=_ "resilient"
					[effect]
						apply_to="hitpoints"
						increase_total="4"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
						times="per level"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Dwarvish Steelclad"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="16"
			die_sound="dwarf-die-1.ogg,dwarf-die-2.ogg"
			ellipse="misc/ellipse"
			experience="0"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="43"
			id="Dwarvish Fighter-751"
			image="units/dwarves/fighter.png"
#textdomain wesnoth-units
			language_name=_ "Dwarvish Fighter"
			level="1"
			max_attacks="1"
			max_experience="23"
			max_hitpoints="43"
			max_moves="4"
			movement="4"
			movement_type="dwarvishfoot"
			moves="4"
			name="Ancatis"
			profile="portraits/dwarves/fighter.png"
			race="dwarf"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="1"
			type="Dwarvish Fighter"
			undead_variation="dwarf"
			underlying_id="751"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="26"
			y="5"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="hammer"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-150"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
				[frame]
					begin="-150"
					end="-100"
					image="units/dwarves/fighter-hammer-1.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/dwarves/fighter-hammer-2.png"
						sound="mace.wav"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/dwarves/fighter-hammer-2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="175"
					image="units/dwarves/fighter-hammer-3.png"
				[/frame]
				[frame]
					begin="175"
					end="200"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				offset="0.0~-0.15:30,-0.15~0.1:60,0.1~0.5:190,0.5~0.6:30,0.6~0.6:40,0.6~0.15:150,0.15~0.0:40"
				start_time="-350"
				[filter_attack]
					name="axe"
				[/filter_attack]
				[frame]
					duration="40"
					image="units/dwarves/fighter-axe-1.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-2.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-3.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-4.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						duration="60"
						image="units/dwarves/fighter-axe-5.png"
						sound="axe.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						duration="60"
						image="units/dwarves/fighter-axe-5.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-6.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-7.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-8.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-9.png"
				[/frame]
				[frame]
					duration="20"
					image="units/dwarves/fighter.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_second_attack]
					name="axe"
				[/filter_second_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-defend-2.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-2.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-2.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_second_attack]
					name="hammer"
				[/filter_second_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-hammer-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-hammer-defend.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-hammer-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-1.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-1.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter.png"
				[/frame]
			[/defend]
			[portrait]
				image="portraits/dwarves/transparent/fighter.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/dwarves/transparent/fighter.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="50"
				deep_water="80"
				flat="70"
				forest="70"
				frozen="70"
				fungus="60"
				hills="40"
				impassable="50"
				mountains="30"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="1"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="1"
				hills="1"
				impassable="99"
				mountains="1"
				reef="2"
				sand="1"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="90"
				blade="80"
				cold="90"
				fire="90"
				impact="80"
				pierce="80"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="7"
				description=_ "axe"
				name="axe"
				number="3"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="8"
				description=_ "hammer"
				icon="attacks/hammer-dwarven.png"
				name="hammer"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^resilient"
					id="resilient"
					male_name=_ "resilient"
					name=_ "resilient"
					[effect]
						apply_to="hitpoints"
						increase_total="4"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
						times="per level"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Dwarvish Stalwart"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="19"
			die_sound="dwarf-die-1.ogg,dwarf-die-2.ogg"
			ellipse="misc/ellipse"
			experience="0"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="48"
			id="Dwarvish Guardsman-752"
			image="units/dwarves/guard.png"
#textdomain wesnoth-units
			language_name=_ "Dwarvish Guardsman"
			level="1"
			max_attacks="1"
			max_experience="33"
			max_hitpoints="48"
			max_moves="4"
			movement="4"
			movement_type="dwarvishfoot"
			moves="4"
			name="Augaithas"
			profile="portraits/dwarves/guard.png"
			race="dwarf"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="1"
			type="Dwarvish Guardsman"
			undead_variation="dwarf"
			underlying_id="752"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="28"
			y="6"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="javelin"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/spear-n.png"
					image_diagonal="projectiles/spear-ne.png"
				[/missile_frame]
				[frame]
					begin="-250"
					end="-150"
					image="units/dwarves/guard-defend-1.png"
					sound="throw-1.wav,throw-2.wav,throw-3.wav,throw-4.wav"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-150"
						end="-50"
						image="units/dwarves/guard-attack.png"
						sound="spear.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-150"
						end="-50"
						image="units/dwarves/guard-attack.png"
					[/frame]
				[/else]
				[frame]
					begin="-50"
					end="0"
					image="units/dwarves/guard.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="spear"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-150"
					image="units/dwarves/guard.png"
				[/frame]
				[frame]
					begin="-150"
					end="-100"
					image="units/dwarves/guard-defend-1.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="50"
						image="units/dwarves/guard-attack.png"
						sound="spear.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="50"
						image="units/dwarves/guard-attack.png"
						sound="spear-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="50"
					end="75"
					image="units/dwarves/guard-defend-2.png"
				[/frame]
				[frame]
					begin="75"
					end="150"
					image="units/dwarves/guard.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/dwarves/guard-defend-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/guard-defend-2.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/guard-defend-2.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/guard-defend-2.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/guard-defend-1.png"
				[/frame]
			[/defend]
			[idle_anim]
				start_time="0"
				[filter]
					[not]
						[filter_wml]
							[status]
								poisoned="yes"
							[/status]
						[/filter_wml]
					[/not]
				[/filter]
				[filter]
					[filter_adjacent]
						count="0"
						is_enemy="yes"
					[/filter_adjacent]
				[/filter]
				[frame]
					duration="100"
					image="units/dwarves/guard-idle-1.png"
				[/frame]
				[frame]
					duration="500"
					image="units/dwarves/guard-idle-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/guard-idle-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/guard-idle-4.png"
				[/frame]
				[frame]
					duration="400"
					image="units/dwarves/guard-idle-5.png"
				[/frame]
				[frame]
					duration="500"
					image="units/dwarves/guard-idle-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/guard-idle-1.png"
				[/frame]
			[/idle_anim]
			[portrait]
				image="portraits/dwarves/transparent/guard.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/dwarves/transparent/guard.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="50"
				deep_water="80"
				flat="70"
				forest="70"
				frozen="70"
				fungus="60"
				hills="50"
				impassable="50"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="1"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="1"
				hills="1"
				impassable="99"
				mountains="1"
				reef="2"
				sand="1"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="90"
				blade="80"
				cold="90"
				fire="90"
				impact="80"
				pierce="80"
			[/resistance]
			[abilities]
				[resistance]
					active_on="defense"
					affect_self="yes"
					apply_to="blade,pierce,impact,fire,cold,arcane"
#textdomain wesnoth
					description=_ "Steadfast:
This unit's resistances are doubled, up to a maximum of 50%, when defending. Vulnerabilities are not affected."
					female_name=_ "female^steadfast"
					id="steadfast"
					max_value="50"
					multiply="2"
					name=_ "steadfast"
					[filter_base_value]
						greater_than="0"
						less_than_equal_to="50"
					[/filter_base_value]
				[/resistance]
			[/abilities]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="6"
#textdomain wesnoth-units
				description=_ "spear"
				icon="attacks/spear.png"
				name="spear"
				number="3"
				range="melee"
				type="pierce"
			[/attack]
			[attack]
				damage="5"
				description=_ "javelin"
				icon="attacks/javelin-human.png"
				name="javelin"
				number="1"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^resilient"
					id="resilient"
					male_name=_ "resilient"
					name=_ "resilient"
					[effect]
						apply_to="hitpoints"
						increase_total="4"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
						times="per level"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Dwarvish Steelclad"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="16"
			die_sound="dwarf-die-1.ogg,dwarf-die-2.ogg"
			ellipse="misc/ellipse"
			experience="0"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="43"
			id="Dwarvish Fighter-753"
			image="units/dwarves/fighter.png"
#textdomain wesnoth-units
			language_name=_ "Dwarvish Fighter"
			level="1"
			max_attacks="1"
			max_experience="23"
			max_hitpoints="43"
			max_moves="4"
			movement="4"
			movement_type="dwarvishfoot"
			moves="4"
			name="Glaing"
			profile="portraits/dwarves/fighter.png"
			race="dwarf"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="1"
			type="Dwarvish Fighter"
			undead_variation="dwarf"
			underlying_id="753"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="18"
			y="5"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="hammer"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-150"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
				[frame]
					begin="-150"
					end="-100"
					image="units/dwarves/fighter-hammer-1.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/dwarves/fighter-hammer-2.png"
						sound="mace.wav"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/dwarves/fighter-hammer-2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="175"
					image="units/dwarves/fighter-hammer-3.png"
				[/frame]
				[frame]
					begin="175"
					end="200"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				offset="0.0~-0.15:30,-0.15~0.1:60,0.1~0.5:190,0.5~0.6:30,0.6~0.6:40,0.6~0.15:150,0.15~0.0:40"
				start_time="-350"
				[filter_attack]
					name="axe"
				[/filter_attack]
				[frame]
					duration="40"
					image="units/dwarves/fighter-axe-1.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-2.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-3.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-4.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						duration="60"
						image="units/dwarves/fighter-axe-5.png"
						sound="axe.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						duration="60"
						image="units/dwarves/fighter-axe-5.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-6.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-7.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-8.png"
				[/frame]
				[frame]
					duration="60"
					image="units/dwarves/fighter-axe-9.png"
				[/frame]
				[frame]
					duration="20"
					image="units/dwarves/fighter.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_second_attack]
					name="axe"
				[/filter_second_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-defend-2.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-2.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-2.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_second_attack]
					name="hammer"
				[/filter_second_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-hammer-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-hammer-defend.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-hammer-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter-hammer.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/dwarves/fighter.png"
				[/frame]
				[frame]
					duration="100"
					image="units/dwarves/fighter-defend-1.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-1.png"
						sound="dwarf-hit-1.ogg,dwarf-hit-2.ogg,dwarf-hit-3.ogg,dwarf-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/dwarves/fighter-defend-1.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/dwarves/fighter.png"
				[/frame]
			[/defend]
			[portrait]
				image="portraits/dwarves/transparent/fighter.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/dwarves/transparent/fighter.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="50"
				deep_water="80"
				flat="70"
				forest="70"
				frozen="70"
				fungus="60"
				hills="40"
				impassable="50"
				mountains="30"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="1"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="1"
				hills="1"
				impassable="99"
				mountains="1"
				reef="2"
				sand="1"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="90"
				blade="80"
				cold="90"
				fire="90"
				impact="80"
				pierce="80"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="7"
				description=_ "axe"
				name="axe"
				number="3"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="8"
				description=_ "hammer"
				icon="attacks/hammer-dwarven.png"
				name="hammer"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^resilient"
					id="resilient"
					male_name=_ "resilient"
					name=_ "resilient"
					[effect]
						apply_to="hitpoints"
						increase_total="4"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
						times="per level"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
	[/side]
	[side]
		action_bonus_count="0"
		aggression="0.5"
		allow_player="yes"
		caution="0.25"
		colour="2"
		controller="human"
		countdown_time="330000"
		current_player="Sandermatt"
		disallow_observers="no"
		fog="yes"
		global_recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
		gold="2"
		hidden="no"
		id="Sandermatt2"
		income="0"
		leader_value="3"
		name="Sandermatt"
		no_leader="yes"
		number_of_possible_recruits_to_force_recruit="3.1"
		objectives=_ "Victory:
@Defeat enemy leader(s)"
		objectives_changed="no"
		recruit="Elvish Archer,Elvish Fighter,Elvish Scout,Elvish Shaman,Mage,Merman Hunter,Wose"
		recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
		save_id="Sandermatt2"
		share_maps="no"
		share_view="yes"
		shroud="no"
		side="2"
		start_gold="100"
		team_name="2"
		user_team_name="Team 2"
		village_gold="2"
		village_value="1"
		villages_per_scout="8"
		[ai]
			recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
			[team_formula]
				rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
			[/team_formula]
		[/ai]
		[ai]
			villages_per_scout="8"
		[/ai]
		[village]
			x="11"
			y="11"
		[/village]
		[village]
			x="11"
			y="19"
		[/village]
		[village]
			x="15"
			y="20"
		[/village]
		[village]
			x="16"
			y="14"
		[/village]
		[village]
			x="20"
			y="15"
		[/village]
		[village]
			x="22"
			y="9"
		[/village]
		[village]
			x="25"
			y="17"
		[/village]
		[village]
			x="25"
			y="21"
		[/village]
		[village]
			x="26"
			y="10"
		[/village]
		[village]
			x="30"
			y="20"
		[/village]
		[village]
			x="31"
			y="6"
		[/village]
		[village]
			x="31"
			y="10"
		[/village]
		[village]
			x="31"
			y="16"
		[/village]
		[unit]
			advances_to="Elvish Avenger"
			alignment="neutral"
			allow_changes="yes"
			allow_player="yes"
			alpha="256"
			attacks_left="1"
			canrecruit="yes"
			colour="2"
			controller="human"
			cost="41"
			current_player="Sandermatt"
			die_sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
			experience="33"
			facing="ne"
			flag_rgb="magenta"
			flying="no"
			fog="yes"
			gender="male"
			gold="100"
			goto_x="-999"
			goto_y="-999"
			hitpoints="42"
			id="Sandermatt2"
			image="units/elves-wood/ranger.png"
			income="0"
#textdomain wesnoth-units
			language_name=_ "Elvish Ranger"
			leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,White Mage,Red Mage,Elder Wose"
			level="2"
			max_attacks="1"
			max_experience="63"
			max_hitpoints="42"
			max_moves="6"
			movement="6"
			movement_type="woodland"
			moves="0"
			mp_countdown="yes"
			mp_countdown_action_bonus="20"
			mp_countdown_init_time="270"
			mp_countdown_reservoir_time="330"
			mp_countdown_turn_bonus="210"
			name="Sandermatt"
			profile="portraits/elves/ranger.png"
			race="elf"
			random_leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,Red Mage"
			random_traits="no"
			recruit="Elvish Fighter,Elvish Archer,Mage,Elvish Shaman,Elvish Scout,Wose,Merman Hunter"
			resting="no"
			save_id="Sandermatt2"
			share_maps="no"
			share_view="yes"
			shroud="no"
			side="2"
			team_name="2"
			terrain_liked="Ff, Fa, Ss, Ww"
			type="Elvish Ranger"
			undead_variation="archer"
			underlying_id="688"
			unrenamable="no"
			upkeep="full"
			usage="mixed fighter"
			user_team_name="Team 2"
			village_gold="2"
			x="18"
			y="19"
			zoc="yes"
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="30"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="60"
				shallow_water="70"
				swamp_water="60"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="2"
				reef="2"
				sand="2"
				shallow_water="2"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[abilities]
				[hides]
					affect_self="yes"
#textdomain wesnoth
					description=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					description_inactive=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					female_name=_ "female^ambush"
					female_name_inactive=_ "female^ambush"
					id="ambush"
					name=_ "ambush"
					name_inactive=_ "ambush"
					[filter_self]
						[filter_location]
							terrain="*^Fp,*^Fet,*^Ft,*^Fpa,*^Fd*,*^Fm*"
						[/filter_location]
					[/filter_self]
				[/hides]
			[/abilities]
			[portrait]
				image="portraits/elves/transparent/ranger.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/ranger.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="7"
#textdomain wesnoth-units
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="3"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="7"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="4"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Champion"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="32"
			die_sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
			ellipse="misc/ellipse"
			experience="11"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="22"
			id="Elvish Fighter-711"
			image="units/elves-wood/hero.png"
			language_name=_ "Elvish Hero"
			level="2"
			max_attacks="1"
			max_experience="50"
			max_hitpoints="52"
			max_moves="5"
			movement="5"
			movement_type="woodland"
			moves="1"
			name="Mér"
			profile="portraits/elves/hero.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Hero"
			underlying_id="711"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="11"
			y="19"
			zoc="yes"
			[portrait]
				image="portraits/elves/transparent/hero.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/hero.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[attack_anim]
				[filter_attack]
					name="bow"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/missile-n.png"
					image_diagonal="projectiles/missile-ne.png"
				[/missile_frame]
				[frame]
					begin="-445"
					end="-380"
					image="units/elves-wood/hero-bow.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/hero-bow-attack1.png"
						sound="bow.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/hero-bow-attack1.png"
						sound="bow-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-305"
					end="-230"
					image="units/elves-wood/hero-bow-attack2.png"
				[/frame]
				[frame]
					begin="-230"
					end="-130"
					image="units/elves-wood/hero-bow-attack3.png"
				[/frame]
				[frame]
					begin="-130"
					end="0"
					image="units/elves-wood/hero-bow-attack4.png"
				[/frame]
				[frame]
					begin="0"
					end="65"
					image="units/elves-wood/hero-bow.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="sword"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-175"
					image="units/elves-wood/hero.png"
				[/frame]
				[frame]
					begin="-175"
					end="-110"
					image="units/elves-wood/hero-melee-1.png"
				[/frame]
				[frame]
					begin="-110"
					end="-75"
					image="units/elves-wood/hero-melee-2.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-75"
						end="75"
						image="units/elves-wood/hero-melee-3.png"
						sound="sword-1.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-75"
						end="75"
						image="units/elves-wood/hero-melee-3.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="75"
					end="120"
					image="units/elves-wood/hero-melee-4.png"
				[/frame]
				[frame]
					begin="120"
					end="180"
					image="units/elves-wood/hero-defend.png"
				[/frame]
				[frame]
					begin="180"
					end="200"
					image="units/elves-wood/hero.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_attack]
					range="melee"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/hero.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/hero-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/hero-defend.png"
						sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/hero-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/hero.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/hero-bow.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/hero-bow-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/hero-bow-defend.png"
						sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/hero-bow-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/hero-bow.png"
				[/frame]
			[/defend]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="9"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="4"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="6"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="3"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="White Mage,Red Mage"
			alignment="lawful"
			alpha="256"
			attacks_left="0"
			cost="20"
			die_sound="human-female-die-1.ogg,human-female-die-2.ogg,human-female-die-3.ogg"
			ellipse="misc/ellipse"
			experience="6"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="female"
			goto_x="-999"
			goto_y="-999"
			hitpoints="24"
			id="Mage-716"
			image="units/human-magi/mage+female.png"
#textdomain wesnoth-units
			language_name=_ "female^Mage"
			level="1"
			max_attacks="1"
			max_experience="34"
			max_hitpoints="25"
			max_moves="5"
			movement="5"
			movement_type="smallfoot"
			moves="0"
			name="Nora"
			profile="portraits/humans/mage+female.png"
			race="human"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Mage"
			underlying_id="716"
			unrenamable="no"
			upkeep="full"
			usage="mixed fighter"
			x="32"
			y="5"
			zoc="yes"
			[attack_anim]
				magic_missile_flare_start_time="-750"
				magic_missile_start_time="-750"
				magic_missile_trail_1_start_time="-350"
				magic_missile_trail_2_start_time="-350"
				magic_missile_trail_3_start_time="-350"
				offset="0"
				[filter_attack]
					name="missile"
				[/filter_attack]
				[magic_missile_frame]
					duration="400"
					halo="halo/mage-halo1.png,halo/mage-halo2.png,halo/mage-halo3.png,halo/mage-halo4.png,halo/mage-halo5.png"
					halo_x="11~0"
					halo_y="-20~-54"
					offset="0.001~-0.083,-0.083~-0.25,-0.25~-0.5"
				[/magic_missile_frame]
				[magic_missile_frame]
					duration="350"
					halo="halo/mage-halo1.png,halo/mage-halo2.png,halo/mage-halo3.png,halo/mage-halo4.png,halo/mage-halo5.png,misc/blank-hex.png:1"
					halo_y="-54~-45,-45~-27,-27~0"
					offset="-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_frame]
				[magic_missile_trail_1_frame]
					duration="350"
					halo="misc/blank-hex.png:40,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:40,-54~-45,-45~-27,-27~0"
					offset="0.001:40,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_1_frame]
				[magic_missile_trail_2_frame]
					duration="350"
					halo="misc/blank-hex.png:80,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:80,-54~-45,-45~-27,-27~0"
					offset="0.001:80,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_2_frame]
				[magic_missile_trail_3_frame]
					duration="350"
					halo="misc/blank-hex.png:120,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:120,-54~-45,-45~-27,-27~0"
					offset="0.001:120,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_3_frame]
				[magic_missile_flare_frame]
					duration="600"
					halo="halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_x="11"
					halo_y="-20"
					offset="0"
				[/magic_missile_flare_frame]
				[frame]
					begin="-800"
					end="-700"
					image="units/human-magi/mage+female-attack-magic1.png"
				[/frame]
				[frame]
					begin="-700"
					end="-350"
					image="units/human-magi/mage+female-attack-magic2.png"
				[/frame]
				[if]
					hits="no"
					[frame]
						begin="-350"
						end="-100"
						image="units/human-magi/mage+female-attack-magic2.png"
						sound="magic-missile-1-miss.ogg,magic-missile-2-miss.ogg,magic-missile-3-miss.ogg"
					[/frame]
				[/if]
				[else]
					hits="yes"
					[frame]
						begin="-350"
						end="-100"
						image="units/human-magi/mage+female-attack-magic2.png"
						sound="magic-missile-1.ogg,magic-missile-2.ogg,magic-missile-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-100"
					end="100"
					image="units/human-magi/mage+female-attack-magic1.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="staff"
				[/filter_attack]
				[frame]
					begin="-250"
					end="-200"
					image="units/human-magi/mage+female.png"
				[/frame]
				[frame]
					begin="-200"
					end="-100"
					image="units/human-magi/mage+female-attack-staff1.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/human-magi/mage+female-attack-staff2.png"
						sound="staff.wav"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/human-magi/mage+female-attack-staff2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="150"
					image="units/human-magi/mage+female-attack-magic1.png"
				[/frame]
				[frame]
					begin="150"
					end="200"
					image="units/human-magi/mage+female.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/human-magi/mage+female.png"
				[/frame]
				[frame]
					duration="100"
					image="units/human-magi/mage+female-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/human-magi/mage+female-defend.png"
						sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/human-magi/mage+female-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/human-magi/mage+female.png"
				[/frame]
			[/defend]
			[portrait]
				image="portraits/humans/transparent/mage+female.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/humans/transparent/mage+female.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="60"
				deep_water="80"
				flat="60"
				forest="50"
				frozen="80"
				fungus="50"
				hills="50"
				impassable="60"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="2"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="3"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
			[/status]
			[attack]
				damage="6"
				description=_ "staff"
				icon="attacks/staff-magic.png"
				name="staff"
				number="1"
				range="melee"
				type="impact"
			[/attack]
			[attack]
				damage="7"
				description=_ "missile"
				icon="attacks/magic-missile.png"
				name="missile"
				number="3"
				range="ranged"
				type="fire"
				[specials]
					[chance_to_hit]
						cumulative="no"
#textdomain wesnoth
						description=_ "Magical:
This attack always has a 70% chance to hit regardless of the defensive ability of the unit being attacked."
						id="magical"
						name=_ "magical"
						value="70"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "female^strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "female^intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Ancient Wose"
			alignment="lawful"
			alpha="256"
			attacks_left="0"
			cost="31"
			die_sound="wose-die.ogg"
			ellipse="misc/ellipse"
			experience="19"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="61"
			id="Wose-722"
			image="units/woses/wose-elder.png"
#textdomain wesnoth-units
			language_name=_ "Elder Wose"
			level="2"
			max_attacks="1"
			max_experience="70"
			max_hitpoints="64"
			max_moves="4"
			movement="4"
			movement_type="treefolk"
			moves="0"
			name="Bremdelom"
			race="wose"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elder Wose"
			undead_variation="wose"
			underlying_id="722"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="23"
			y="9"
			zoc="yes"
			[defense]
				castle="80"
				cave="80"
				deep_water="90"
				flat="80"
				forest="60"
				frozen="80"
				fungus="70"
				hills="70"
				impassable="80"
				mountains="70"
				reef="80"
				sand="80"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="80"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="2"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="130"
				blade="100"
				cold="90"
				fire="150"
				impact="60"
				pierce="40"
			[/resistance]
			[abilities]
				[hides]
					affect_self="yes"
#textdomain wesnoth
					description=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					description_inactive=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					female_name=_ "female^ambush"
					female_name_inactive=_ "female^ambush"
					id="ambush"
					name=_ "ambush"
					name_inactive=_ "ambush"
					[filter_self]
						[filter_location]
							terrain="*^Fp,*^Fet,*^Ft,*^Fpa,*^Fd*,*^Fm*"
						[/filter_location]
					[/filter_self]
				[/hides]
				[regenerate]
					affect_self="yes"
					description=_ "Regenerates:
The unit will heal itself 8 HP per turn. If it is poisoned, it will remove the poison instead of healing."
					female_name=_ "female^regenerates"
					id="regenerates"
					name=_ "regenerates"
					poison="cured"
					value="8"
				[/regenerate]
			[/abilities]
			[attack_anim]
				start_time="-500"
				[filter_attack]
					name="crush"
				[/filter_attack]
				[if]
					hits="yes"
					[frame]
						duration="400"
						image="units/woses/wose-elder-attack-1.png"
						sound="wose-attack.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						duration="400"
						image="units/woses/wose-elder-attack-1.png"
						sound="wose-miss.ogg"
					[/frame]
				[/else]
				[frame]
					duration="200"
					image="units/woses/wose-elder-attack-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-attack-1.png"
				[/frame]
			[/attack_anim]
			[death]
				start_time="0"
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-7.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-8.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-9.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-10.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-11.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-12.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-13.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-14.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-die-fall-15.png"
				[/frame]
			[/death]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/woses/wose-elder.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-elder-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/woses/wose-elder-defend.png"
						sound="wose-hit.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/woses/wose-elder-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/woses/wose-elder.png"
				[/frame]
			[/defend]
			[variables]
			[/variables]
			[status]
			[/status]
			[attack]
				damage="19"
#textdomain wesnoth-units
				description=_ "crush"
				icon="attacks/crush-wose.png"
				name="crush"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[modifications]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Outrider"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="31"
			die_sound="horse-die.ogg"
			ellipse="misc/ellipse"
			experience="9"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="47"
			id="Elvish Scout-723"
			image="units/elves-wood/rider.png"
			language_name=_ "Elvish Rider"
			level="2"
			max_attacks="1"
			max_experience="42"
			max_hitpoints="47"
			max_moves="10"
			movement="10"
			movement_type="woodland"
			moves="5"
			name="Elvilmandil"
			profile="portraits/elves/scout.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Rider"
			undead_variation="mounted"
			underlying_id="723"
			unrenamable="no"
			upkeep="full"
			usage="scout"
			x="26"
			y="10"
			zoc="yes"
			[portrait]
				image="portraits/elves/transparent/scout.png"
				mirror="true"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/scout.png"
				mirror="false"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="120"
			[/resistance]
			[attack_anim]
				[filter_attack]
					name="bow"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/missile-n.png"
					image_diagonal="projectiles/missile-ne.png"
				[/missile_frame]
				[if]
					hits="yes"
					[frame]
						begin="-500"
						end="-400"
						image="units/elves-wood/rider-attack1.png"
						sound="bow.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-500"
						end="-400"
						image="units/elves-wood/rider-attack1.png"
						sound="bow-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-400"
					end="-150"
					image="units/elves-wood/rider-attack2.png"
				[/frame]
				[frame]
					begin="-150"
					end="-50"
					image="units/elves-wood/rider-attack1.png"
				[/frame]
				[frame]
					begin="-50"
					end="100"
					image="units/elves-wood/rider-moving.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="sword"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-175"
					image="units/elves-wood/rider.png"
					sound="horse-elf-canter.wav"
				[/frame]
				[frame]
					begin="-175"
					end="-100"
					image="units/elves-wood/rider-melee-2.png"
				[/frame]
				[if]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/rider-melee-1.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/rider-melee-1.png"
						sound="sword-1.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="175"
					image="units/elves-wood/rider-moving.png"
				[/frame]
				[frame]
					begin="175"
					end="200"
					image="units/elves-wood/rider.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/elves-wood/rider.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/rider-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/rider-defend.png"
						sound="horse-hit-1.ogg,horse-hit-2.ogg,horse-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/rider-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/rider.png"
				[/frame]
			[/defend]
			[movement_anim]
				[frame]
					begin="0"
					end="150"
					image="units/elves-wood/rider-moving.png"
				[/frame]
			[/movement_anim]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="8"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="3"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="9"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="2"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Merman Spearman,Merman Netcaster"
			alignment="lawful"
			alpha="256"
			attacks_left="0"
			cost="15"
			die_sound="mermen-die.ogg"
			ellipse="misc/ellipse"
			experience="5"
			facing="n"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="29"
			id="Merman Hunter-727"
			image="units/merfolk/hunter.png"
#textdomain wesnoth-units
			language_name=_ "Merman Hunter"
			level="1"
			max_attacks="1"
			max_experience="25"
			max_hitpoints="29"
			max_moves="7"
			movement="6"
			movement_type="swimmer"
			moves="0"
			name="Poseidontune"
			profile="portraits/merfolk/hunter.png"
			race="merman"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Merman Hunter"
			undead_variation="swimmer"
			underlying_id="727"
			unrenamable="no"
			upkeep="full"
			usage="mixed fighter"
			x="22"
			y="10"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="spear"
					range="ranged"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/spear-n.png"
					image_diagonal="projectiles/spear-ne.png"
				[/missile_frame]
				[frame]
					begin="-200"
					end="-100"
					image="units/merfolk/hunter.png"
					sound="throw-1.wav,throw-2.wav,throw-3.wav,throw-4.wav"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="50"
						image="units/merfolk/hunter.png"
						sound="spear.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="50"
						image="units/merfolk/hunter.png"
					[/frame]
				[/else]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="spear"
					range="melee"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-150"
					image="units/merfolk/hunter.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-150"
						end="100"
						image="units/merfolk/hunter.png"
						sound="spear.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-150"
						end="100"
						image="units/merfolk/hunter.png"
						sound="spear-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="150"
					image="units/merfolk/hunter.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/merfolk/hunter.png"
				[/frame]
				[frame]
					duration="100"
					image="units/merfolk/hunter.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/merfolk/hunter.png"
						sound="mermen-hit.wav"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/merfolk/hunter.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/merfolk/hunter.png"
				[/frame]
			[/defend]
			[defense]
				castle="60"
				cave="80"
				deep_water="50"
				flat="70"
				forest="70"
				frozen="70"
				fungus="80"
				hills="70"
				impassable="80"
				mountains="80"
				reef="30"
				sand="70"
				shallow_water="40"
				swamp_water="40"
				unwalkable="80"
				village="60"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="1"
				flat="2"
				forest="5"
				frozen="2"
				fungus="3"
				hills="5"
				impassable="99"
				mountains="99"
				reef="2"
				sand="2"
				shallow_water="1"
				swamp_water="1"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="100"
				blade="100"
				cold="80"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
			[/status]
			[attack]
				damage="5"
				description=_ "spear"
				name="spear"
				number="2"
				range="melee"
				type="pierce"
			[/attack]
			[attack]
				damage="5"
				description=_ "spear"
				name="spear"
				number="3"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^quick"
					id="quick"
					male_name=_ "quick"
					name=_ "quick"
					[effect]
						apply_to="movement"
						increase="1"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="-5%"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Captain,Elvish Hero"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="14"
			die_sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
			ellipse="misc/ellipse"
			experience="5"
			facing="n"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="33"
			id="Elvish Fighter-728"
			image="units/elves-wood/fighter.png"
#textdomain wesnoth-units
			language_name=_ "Elvish Fighter"
			level="1"
			max_attacks="1"
			max_experience="22"
			max_hitpoints="33"
			max_moves="5"
			movement="5"
			movement_type="woodland"
			moves="0"
			name="Pilas"
			profile="portraits/elves/fighter.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Fighter"
			underlying_id="728"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="31"
			y="6"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="bow"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/missile-n.png"
					image_diagonal="projectiles/missile-ne.png"
				[/missile_frame]
				[frame]
					begin="-445"
					end="-380"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/fighter-bow-attack1.png"
						sound="bow.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/fighter-bow-attack1.png"
						sound="bow-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-305"
					end="-230"
					image="units/elves-wood/fighter-bow-attack2.png"
				[/frame]
				[frame]
					begin="-230"
					end="-130"
					image="units/elves-wood/fighter-bow-attack3.png"
				[/frame]
				[frame]
					begin="-130"
					end="0"
					image="units/elves-wood/fighter-bow-attack4.png"
				[/frame]
				[frame]
					begin="0"
					end="65"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="sword"
				[/filter_attack]
				[frame]
					begin="-175"
					end="-100"
					image="units/elves-wood/fighter.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/fighter-melee-1.png"
						sound="sword-1.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/fighter-melee-1.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="150"
					image="units/elves-wood/fighter-melee-2.png"
				[/frame]
				[frame]
					begin="150"
					end="175"
					image="units/elves-wood/fighter.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_attack]
					range="melee"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/fighter.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-defend.png"
						sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/fighter.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-bow-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-bow-defend.png"
						sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-bow-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
			[/defend]
			[idle_anim]
				start_time="0"
				[filter]
					[not]
						[filter_wml]
							[status]
								poisoned="yes"
							[/status]
						[/filter_wml]
					[/not]
				[/filter]
				[filter]
					[filter_adjacent]
						count="0"
						is_enemy="yes"
					[/filter_adjacent]
				[/filter]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-idle-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-idle-2.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/fighter-idle-3.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-4.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/fighter-idle-5.png"
				[/frame]
				[frame]
					duration="200"
					image="units/elves-wood/fighter-idle-6.png"
				[/frame]
				[frame]
					duration="200"
					image="units/elves-wood/fighter-idle-5.png"
				[/frame]
				[frame]
					duration="400"
					image="units/elves-wood/fighter-idle-6.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/fighter-idle-7.png"
				[/frame]
				[frame]
					duration="200"
					image="units/elves-wood/fighter-idle-8.png"
				[/frame]
				[frame]
					duration="250"
					image="units/elves-wood/fighter-idle-9.png"
				[/frame]
				[frame]
					duration="400"
					image="units/elves-wood/fighter-idle-10.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-9.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-11.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-12.png"
				[/frame]
			[/idle_anim]
			[portrait]
				image="portraits/elves/transparent/fighter.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/fighter.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="5"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="4"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="4"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="3"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^dextrous"
					id="dextrous"
					male_name=_ "dextrous"
					name=_ "dextrous"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="ranged"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Druid,Elvish Sorceress"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="15"
			die_sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
			ellipse="misc/ellipse"
			experience="5"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="female"
			goto_x="-999"
			goto_y="-999"
			hitpoints="23"
			id="Elvish Shaman-732"
			image="units/elves-wood/shaman.png"
#textdomain wesnoth-units
			language_name=_ "female^Elvish Shaman"
			level="1"
			max_attacks="1"
			max_experience="22"
			max_hitpoints="26"
			max_moves="6"
			movement="5"
			movement_type="woodland"
			moves="0"
			name="Anebrithiel"
			profile="portraits/elves/shaman.png~RIGHT()"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Shaman"
			underlying_id="732"
			unrenamable="no"
			upkeep="full"
			usage="healer"
			x="22"
			y="9"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="entangle"
				[/filter_attack]
				[missile_frame]
					begin="-200"
					end="50"
					image="projectiles/entangle.png"
					image_diagonal="projectiles/entangle.png"
					offset="1.0"
				[/missile_frame]
				[frame]
					begin="-450"
					end="-375"
					halo="halo/elven/nature-halo1.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman.png"
				[/frame]
				[frame]
					begin="-375"
					end="-300"
					halo="halo/elven/nature-halo2.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman.png"
				[/frame]
				[frame]
					begin="-300"
					end="-225"
					halo="halo/elven/nature-halo3.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman.png"
				[/frame]
				[frame]
					begin="-225"
					end="-150"
					halo="halo/elven/nature-halo4.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman-attack2.png"
				[/frame]
				[frame]
					begin="-150"
					end="-75"
					halo="halo/elven/nature-halo5.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman-attack2.png"
				[/frame]
				[if]
					hits="hit"
					slowed_sound_start_time="-100"
					[filter_second]
						[not]
							[filter_wml]
								[status]
									slowed="yes"
								[/status]
							[/filter_wml]
						[/not]
					[/filter_second]
					[slowed_sound_frame]
						duration="100"
						sound="slowed.wav"
					[/slowed_sound_frame]
				[/if]
				[frame]
					begin="-75"
					end="0"
					halo="halo/elven/nature-halo6.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman-attack2.png"
					sound="entangle.wav"
				[/frame]
				[frame]
					begin="-0"
					end="50"
					halo="halo/elven/nature-halo7.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman.png"
				[/frame]
				[frame]
					begin="50"
					end="100"
					halo="halo/elven/nature-halo8.png"
					halo_x="0"
					halo_y="-12"
					image="units/elves-wood/shaman.png"
				[/frame]
				[frame]
					begin="100"
					end="150"
					image="units/elves-wood/shaman.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="staff"
				[/filter_attack]
				[frame]
					begin="-175"
					end="-100"
					image="units/elves-wood/shaman.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/shaman-attack.png"
						sound="staff.wav"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/shaman-attack.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="175"
					image="units/elves-wood/shaman.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/elves-wood/shaman.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/shaman-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/shaman-defend.png"
						sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/shaman-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/shaman.png"
				[/frame]
			[/defend]
			[healing_anim]
				start_time="-200"
				[frame]
					duration="55"
					image="units/elves-wood/shaman-heal1.png"
				[/frame]
				[frame]
					duration="55"
					image="units/elves-wood/shaman-heal2.png"
				[/frame]
				[frame]
					duration="55"
					halo="halo/elven/shaman-heal-halo-1.png"
					image="units/elves-wood/shaman-heal3.png"
				[/frame]
				[frame]
					duration="55"
					halo="halo/elven/shaman-heal-halo-2.png"
					image="units/elves-wood/shaman-heal4.png"
				[/frame]
				[frame]
					duration="55"
					halo="halo/elven/shaman-heal-halo-3.png"
					image="units/elves-wood/shaman-heal5.png"
				[/frame]
				[frame]
					duration="55"
					halo="halo/elven/shaman-heal-halo-4.png"
					image="units/elves-wood/shaman-heal6.png"
				[/frame]
				[frame]
					duration="55"
					halo="halo/elven/shaman-heal-halo-5.png"
					image="units/elves-wood/shaman-heal7.png"
				[/frame]
				[frame]
					duration="55"
					halo="halo/elven/shaman-heal-halo-6.png"
					image="units/elves-wood/shaman-heal8.png"
				[/frame]
				[frame]
					duration="55"
					halo="halo/elven/shaman-heal-halo-7.png"
					image="units/elves-wood/shaman-heal9.png"
				[/frame]
				[frame]
					duration="30"
					image="units/elves-wood/shaman-heal9.png"
				[/frame]
			[/healing_anim]
			[portrait]
				image="portraits/elves/transparent/shaman.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/shaman.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="30"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[abilities]
				[heals]
					affect_allies="yes"
					affect_self="no"
#textdomain wesnoth
					description=_ "Heals +4:
Allows the unit to heal adjacent allied units at the beginning of our turn.

A unit cared for by this healer may heal up to 4 HP per turn, or stop poison from taking effect for that turn.
A poisoned unit cannot be cured of its poison by a healer, and must seek the care of a village or a unit that can cure."
					female_name=_ "female^heals +4"
					id="healing"
					name=_ "heals +4"
					poison="slowed"
					value="4"
					[affect_adjacent]
						adjacent="n,ne,se,s,sw,nw"
					[/affect_adjacent]
				[/heals]
			[/abilities]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="4"
#textdomain wesnoth-units
				description=_ "staff"
				icon="attacks/druidstaff.png"
				name="staff"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[attack]
				damage="3"
				description=_ "entangle"
				name="entangle"
				number="2"
				range="ranged"
				type="impact"
				[specials]
					[slow]
#textdomain wesnoth
						description=_ "Slow:
This attack slows the target until it ends a turn. Slow halves the damage caused by attacks and the movement cost for a slowed unit is doubled. A unit that is slowed will feature a snail icon in its sidebar information when it is selected."
						id="slow"
						name=_ "slows"
					[/slow]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					female_name=_ "female^quick"
					id="quick"
					male_name=_ "quick"
					name=_ "female^quick"
					[effect]
						apply_to="movement"
						increase="1"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="-5%"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "female^strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="White Mage,Red Mage"
			alignment="lawful"
			alpha="256"
			attacks_left="0"
			cost="20"
			die_sound="human-die-1.ogg,human-die-2.ogg,human-die-3.ogg"
			ellipse="misc/ellipse"
			experience="8"
			facing="ne"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="29"
			id="Mage-734"
			image="units/human-magi/mage.png"
#textdomain wesnoth-units
			language_name=_ "Mage"
			level="1"
			max_attacks="1"
			max_experience="34"
			max_hitpoints="29"
			max_moves="5"
			movement="5"
			movement_type="smallfoot"
			moves="0"
			name="Yrac"
			profile="portraits/humans/mage.png"
			race="human"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Mage"
			underlying_id="734"
			unrenamable="no"
			upkeep="full"
			usage="mixed fighter"
			x="30"
			y="6"
			zoc="yes"
			[attack_anim]
				magic_missile_flare_start_time="-750"
				magic_missile_start_time="-750"
				magic_missile_trail_1_start_time="-350"
				magic_missile_trail_2_start_time="-350"
				magic_missile_trail_3_start_time="-350"
				offset="0"
				[filter_attack]
					name="missile"
				[/filter_attack]
				[magic_missile_frame]
					duration="400"
					halo="halo/mage-halo1.png,halo/mage-halo2.png,halo/mage-halo3.png,halo/mage-halo4.png,halo/mage-halo5.png"
					halo_x="11~0"
					halo_y="-20~-54"
					offset="0.001~-0.083,-0.083~-0.25,-0.25~-0.5"
				[/magic_missile_frame]
				[magic_missile_frame]
					duration="350"
					halo="halo/mage-halo1.png,halo/mage-halo2.png,halo/mage-halo3.png,halo/mage-halo4.png,halo/mage-halo5.png,misc/blank-hex.png:1"
					halo_y="-54~-45,-45~-27,-27~0"
					offset="-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_frame]
				[magic_missile_trail_1_frame]
					duration="350"
					halo="misc/blank-hex.png:40,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:40,-54~-45,-45~-27,-27~0"
					offset="0.001:40,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_1_frame]
				[magic_missile_trail_2_frame]
					duration="350"
					halo="misc/blank-hex.png:80,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:80,-54~-45,-45~-27,-27~0"
					offset="0.001:80,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_2_frame]
				[magic_missile_trail_3_frame]
					duration="350"
					halo="misc/blank-hex.png:120,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:120,-54~-45,-45~-27,-27~0"
					offset="0.001:120,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_3_frame]
				[magic_missile_flare_frame]
					duration="600"
					halo="halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_x="11"
					halo_y="-20"
					offset="0"
				[/magic_missile_flare_frame]
				[frame]
					begin="-800"
					end="-700"
					image="units/human-magi/mage-attack-magic1.png"
				[/frame]
				[frame]
					begin="-700"
					end="-350"
					image="units/human-magi/mage-attack-magic2.png"
				[/frame]
				[if]
					hits="no"
					[frame]
						begin="-350"
						end="-100"
						image="units/human-magi/mage-attack-magic2.png"
						sound="magic-missile-1-miss.ogg,magic-missile-2-miss.ogg,magic-missile-3-miss.ogg"
					[/frame]
				[/if]
				[else]
					hits="yes"
					[frame]
						begin="-350"
						end="-100"
						image="units/human-magi/mage-attack-magic2.png"
						sound="magic-missile-1.ogg,magic-missile-2.ogg,magic-missile-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-100"
					end="100"
					image="units/human-magi/mage-attack-magic1.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="staff"
				[/filter_attack]
				[frame]
					begin="-250"
					end="-200"
					image="units/human-magi/mage.png"
				[/frame]
				[frame]
					begin="-200"
					end="-100"
					image="units/human-magi/mage-attack-staff1.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/human-magi/mage-attack-staff2.png"
						sound="staff.wav"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/human-magi/mage-attack-staff2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="150"
					image="units/human-magi/mage-attack-magic1.png"
				[/frame]
				[frame]
					begin="150"
					end="200"
					image="units/human-magi/mage.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/human-magi/mage.png"
				[/frame]
				[frame]
					duration="100"
					image="units/human-magi/mage-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/human-magi/mage-defend.png"
						sound="human-old-hit-1.ogg,human-old-hit-2.ogg,human-old-hit-3.ogg,human-old-hit-4.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/human-magi/mage-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/human-magi/mage.png"
				[/frame]
			[/defend]
			[portrait]
				image="portraits/humans/transparent/mage.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/humans/transparent/mage.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="60"
				deep_water="80"
				flat="60"
				forest="50"
				frozen="80"
				fungus="50"
				hills="50"
				impassable="60"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="2"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="3"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
			[/status]
			[attack]
				damage="5"
				description=_ "staff"
				icon="attacks/staff-magic.png"
				name="staff"
				number="1"
				range="melee"
				type="impact"
			[/attack]
			[attack]
				damage="7"
				description=_ "missile"
				icon="attacks/magic-missile.png"
				name="missile"
				number="3"
				range="ranged"
				type="fire"
				[specials]
					[chance_to_hit]
						cumulative="no"
#textdomain wesnoth
						description=_ "Magical:
This attack always has a 70% chance to hit regardless of the defensive ability of the unit being attacked."
						id="magical"
						name=_ "magical"
						value="70"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^resilient"
					id="resilient"
					male_name=_ "resilient"
					name=_ "resilient"
					[effect]
						apply_to="hitpoints"
						increase_total="4"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
						times="per level"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Ranger,Elvish Marksman"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="17"
			die_sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
			ellipse="misc/ellipse"
			experience="11"
			facing="n"
			flag_rgb="magenta"
			flying="no"
			gender="female"
			goto_x="-999"
			goto_y="-999"
			hitpoints="30"
			id="Elvish Archer-739"
			image="units/elves-wood/archer+female.png"
#textdomain wesnoth-units
			language_name=_ "female^Elvish Archer"
			level="1"
			max_attacks="1"
			max_experience="31"
			max_hitpoints="30"
			max_moves="6"
			movement="6"
			movement_type="woodland"
			moves="2"
			name="Elviel"
			profile="portraits/elves/archer+female.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Archer"
			undead_variation="archer"
			underlying_id="739"
			unrenamable="no"
			upkeep="full"
			usage="archer"
			x="32"
			y="4"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="bow"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/missile-n.png"
					image_diagonal="projectiles/missile-ne.png"
				[/missile_frame]
				[frame]
					begin="-445"
					end="-380"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/archer+female-bow-attack1.png"
						sound="bow.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/archer+female-bow-attack1.png"
						sound="bow-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-305"
					end="-230"
					image="units/elves-wood/archer+female-bow-attack2.png"
				[/frame]
				[frame]
					begin="-230"
					end="-130"
					image="units/elves-wood/archer+female-bow-attack3.png"
				[/frame]
				[frame]
					begin="-130"
					end="0"
					image="units/elves-wood/archer+female-bow-attack4.png"
				[/frame]
				[frame]
					begin="0"
					end="65"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="sword"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-175"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
				[frame]
					begin="-175"
					end="-75"
					image="units/elves-wood/archer+female-sword-1.png"
				[/frame]
				[if]
					hits="no"
					[frame]
						begin="-75"
						end="75"
						image="units/elves-wood/archer+female-sword-2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="yes"
					[frame]
						begin="-75"
						end="75"
						image="units/elves-wood/archer+female-sword-2.png"
						sound="sword-1.ogg"
					[/frame]
				[/else]
				[frame]
					begin="75"
					end="125"
					image="units/elves-wood/archer+female-sword-3.png"
				[/frame]
				[frame]
					begin="125"
					end="175"
					image="units/elves-wood/archer+female-sword-4.png"
				[/frame]
				[frame]
					begin="175"
					end="200"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_attack]
					range="melee"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer+female-sword-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-sword-defend.png"
						sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-sword-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer+female-bow-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-bow-defend.png"
						sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-bow-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
			[/defend]
			[idle_anim]
				start_time="0"
				[filter]
					[not]
						[filter_wml]
							[status]
								poisoned="yes"
							[/status]
						[/filter_wml]
					[/not]
				[/filter]
				[filter]
					[filter_adjacent]
						count="0"
						is_enemy="yes"
					[/filter_adjacent]
				[/filter]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-1.png"
				[/frame]
			[/idle_anim]
			[portrait]
				image="portraits/elves/transparent/archer+female.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/archer+female.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="30"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="6"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="2"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="6"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="4"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "female^strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^dextrous"
					id="dextrous"
					male_name=_ "dextrous"
					name=_ "female^dextrous"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="ranged"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Ranger,Elvish Marksman"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="17"
			die_sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
			ellipse="misc/ellipse"
			experience="19"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="female"
			goto_x="-999"
			goto_y="-999"
			hitpoints="8"
			id="Elvish Archer-740"
			image="units/elves-wood/archer+female.png"
#textdomain wesnoth-units
			language_name=_ "female^Elvish Archer"
			level="1"
			max_attacks="1"
			max_experience="25"
			max_hitpoints="34"
			max_moves="6"
			movement="6"
			movement_type="woodland"
			moves="0"
			name="Glinien"
			profile="portraits/elves/archer+female.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Archer"
			undead_variation="archer"
			underlying_id="740"
			unrenamable="no"
			upkeep="full"
			usage="archer"
			x="16"
			y="14"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="bow"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/missile-n.png"
					image_diagonal="projectiles/missile-ne.png"
				[/missile_frame]
				[frame]
					begin="-445"
					end="-380"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/archer+female-bow-attack1.png"
						sound="bow.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/archer+female-bow-attack1.png"
						sound="bow-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-305"
					end="-230"
					image="units/elves-wood/archer+female-bow-attack2.png"
				[/frame]
				[frame]
					begin="-230"
					end="-130"
					image="units/elves-wood/archer+female-bow-attack3.png"
				[/frame]
				[frame]
					begin="-130"
					end="0"
					image="units/elves-wood/archer+female-bow-attack4.png"
				[/frame]
				[frame]
					begin="0"
					end="65"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="sword"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-175"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
				[frame]
					begin="-175"
					end="-75"
					image="units/elves-wood/archer+female-sword-1.png"
				[/frame]
				[if]
					hits="no"
					[frame]
						begin="-75"
						end="75"
						image="units/elves-wood/archer+female-sword-2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="yes"
					[frame]
						begin="-75"
						end="75"
						image="units/elves-wood/archer+female-sword-2.png"
						sound="sword-1.ogg"
					[/frame]
				[/else]
				[frame]
					begin="75"
					end="125"
					image="units/elves-wood/archer+female-sword-3.png"
				[/frame]
				[frame]
					begin="125"
					end="175"
					image="units/elves-wood/archer+female-sword-4.png"
				[/frame]
				[frame]
					begin="175"
					end="200"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_attack]
					range="melee"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer+female-sword-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-sword-defend.png"
						sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-sword-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-sword.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer+female-bow-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-bow-defend.png"
						sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/archer+female-bow-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/archer+female-bow.png"
				[/frame]
			[/defend]
			[idle_anim]
				start_time="0"
				[filter]
					[not]
						[filter_wml]
							[status]
								poisoned="yes"
							[/status]
						[/filter_wml]
					[/not]
				[/filter]
				[filter]
					[filter_adjacent]
						count="0"
						is_enemy="yes"
					[/filter_adjacent]
				[/filter]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/archer-idle-1.png"
				[/frame]
			[/idle_anim]
			[portrait]
				image="portraits/elves/transparent/archer+female.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/archer+female.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="30"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="5"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="2"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="5"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="4"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^resilient"
					id="resilient"
					male_name=_ "resilient"
					name=_ "female^resilient"
					[effect]
						apply_to="hitpoints"
						increase_total="4"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
						times="per level"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "female^intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Captain,Elvish Hero"
			alignment="neutral"
			alpha="256"
			attacks_left="0"
			cost="14"
			die_sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
			ellipse="misc/ellipse"
			experience="25"
			facing="n"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="33"
			id="Elvish Fighter-741"
			image="units/elves-wood/fighter.png"
#textdomain wesnoth-units
			language_name=_ "Elvish Fighter"
			level="1"
			max_attacks="1"
			max_experience="28"
			max_hitpoints="34"
			max_moves="5"
			movement="5"
			movement_type="woodland"
			moves="0"
			name="Eärebrieril"
			profile="portraits/elves/fighter.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Fighter"
			underlying_id="741"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="31"
			y="7"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="bow"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/missile-n.png"
					image_diagonal="projectiles/missile-ne.png"
				[/missile_frame]
				[frame]
					begin="-445"
					end="-380"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/fighter-bow-attack1.png"
						sound="bow.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-380"
						end="-305"
						image="units/elves-wood/fighter-bow-attack1.png"
						sound="bow-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-305"
					end="-230"
					image="units/elves-wood/fighter-bow-attack2.png"
				[/frame]
				[frame]
					begin="-230"
					end="-130"
					image="units/elves-wood/fighter-bow-attack3.png"
				[/frame]
				[frame]
					begin="-130"
					end="0"
					image="units/elves-wood/fighter-bow-attack4.png"
				[/frame]
				[frame]
					begin="0"
					end="65"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="sword"
				[/filter_attack]
				[frame]
					begin="-175"
					end="-100"
					image="units/elves-wood/fighter.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/fighter-melee-1.png"
						sound="sword-1.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/fighter-melee-1.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="150"
					image="units/elves-wood/fighter-melee-2.png"
				[/frame]
				[frame]
					begin="150"
					end="175"
					image="units/elves-wood/fighter.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[filter_attack]
					range="melee"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/fighter.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-defend.png"
						sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/fighter.png"
				[/frame]
			[/defend]
			[defend]
				start_time="-126"
				[filter_attack]
					range="ranged"
				[/filter_attack]
				[frame]
					duration="1"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-bow-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-bow-defend.png"
						sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/fighter-bow-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/fighter-bow.png"
				[/frame]
			[/defend]
			[idle_anim]
				start_time="0"
				[filter]
					[not]
						[filter_wml]
							[status]
								poisoned="yes"
							[/status]
						[/filter_wml]
					[/not]
				[/filter]
				[filter]
					[filter_adjacent]
						count="0"
						is_enemy="yes"
					[/filter_adjacent]
				[/filter]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-idle-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/fighter-idle-2.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/fighter-idle-3.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-4.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/fighter-idle-5.png"
				[/frame]
				[frame]
					duration="200"
					image="units/elves-wood/fighter-idle-6.png"
				[/frame]
				[frame]
					duration="200"
					image="units/elves-wood/fighter-idle-5.png"
				[/frame]
				[frame]
					duration="400"
					image="units/elves-wood/fighter-idle-6.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/fighter-idle-7.png"
				[/frame]
				[frame]
					duration="200"
					image="units/elves-wood/fighter-idle-8.png"
				[/frame]
				[frame]
					duration="250"
					image="units/elves-wood/fighter-idle-9.png"
				[/frame]
				[frame]
					duration="400"
					image="units/elves-wood/fighter-idle-10.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-9.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-11.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/fighter-idle-12.png"
				[/frame]
			[/idle_anim]
			[portrait]
				image="portraits/elves/transparent/fighter.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/fighter.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
			[/status]
			[attack]
				damage="6"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="4"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="4"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="3"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^dextrous"
					id="dextrous"
					male_name=_ "dextrous"
					name=_ "dextrous"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="ranged"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Rider"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="18"
			die_sound="horse-die.ogg"
			ellipse="misc/ellipse"
			experience="9"
			facing="nw"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="32"
			id="Elvish Scout-749"
			image="units/elves-wood/scout.png"
#textdomain wesnoth-units
			language_name=_ "Elvish Scout"
			level="1"
			max_attacks="1"
			max_experience="18"
			max_hitpoints="32"
			max_moves="9"
			movement="9"
			movement_type="woodland"
			moves="0"
			name="Malér"
			profile="portraits/elves/scout.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Elvish Scout"
			undead_variation="mounted"
			underlying_id="749"
			unrenamable="no"
			upkeep="full"
			usage="scout"
			x="11"
			y="11"
			zoc="yes"
			[attack_anim]
				[filter_attack]
					name="bow"
				[/filter_attack]
				[missile_frame]
					begin="-150"
					end="0"
					image="projectiles/missile-n.png"
					image_diagonal="projectiles/missile-ne.png"
				[/missile_frame]
				[if]
					hits="yes"
					[frame]
						begin="-400"
						end="-300"
						image="units/elves-wood/scout-attack1.png"
						sound="bow.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-400"
						end="-300"
						image="units/elves-wood/scout-attack1.png"
						sound="bow-miss.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-300"
					end="-50"
					image="units/elves-wood/scout-attack2.png"
				[/frame]
				[frame]
					begin="-50"
					end="50"
					image="units/elves-wood/scout-moving.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="sword"
				[/filter_attack]
				[frame]
					begin="-200"
					end="-175"
					image="units/elves-wood/scout.png"
					sound="horse-elf-canter.wav"
				[/frame]
				[frame]
					begin="-175"
					end="-100"
					image="units/elves-wood/scout-moving.png"
				[/frame]
				[if]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/scout-attack.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/elves-wood/scout-attack.png"
						sound="sword-1.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="200"
					image="units/elves-wood/scout-moving.png"
				[/frame]
				[frame]
					begin="200"
					end="250"
					image="units/elves-wood/scout.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/elves-wood/scout.png"
				[/frame]
				[frame]
					duration="100"
					image="units/elves-wood/scout-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/elves-wood/scout-defend.png"
						sound="horse-hit-1.ogg,horse-hit-2.ogg,horse-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/elves-wood/scout-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/elves-wood/scout.png"
				[/frame]
			[/defend]
			[idle_anim]
				start_time="0"
				[filter]
					[not]
						[filter_wml]
							[status]
								poisoned="yes"
							[/status]
						[/filter_wml]
					[/not]
				[/filter]
				[filter]
					[filter_adjacent]
						count="0"
						is_enemy="yes"
					[/filter_adjacent]
				[/filter]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-1.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-2.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-3.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-4.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-5.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-6.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-7.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-8.png"
				[/frame]
				[frame]
					duration="125"
					image="units/elves-wood/scout-idle-7.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/scout-idle-8.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-7.png"
				[/frame]
				[frame]
					duration="150"
					image="units/elves-wood/scout-idle-8.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-9.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-10.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-11.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-12.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-13.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-14.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-15.png"
				[/frame]
				[frame]
					duration="175"
					image="units/elves-wood/scout-idle-16.png"
				[/frame]
			[/idle_anim]
			[movement_anim]
				[frame]
					begin="0"
					end="150"
					image="units/elves-wood/scout-moving.png"
				[/frame]
			[/movement_anim]
			[portrait]
				image="portraits/elves/transparent/scout.png"
				mirror="true"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/scout.png"
				mirror="false"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="60"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="120"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
			[/status]
			[attack]
				damage="4"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="3"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="7"
				description=_ "bow"
				icon="attacks/bow-elven.png"
				name="bow"
				number="2"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
#textdomain wesnoth
					female_name=_ "female^dextrous"
					id="dextrous"
					male_name=_ "dextrous"
					name=_ "dextrous"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="ranged"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elder Wose"
			alignment="lawful"
			alpha="256"
			attacks_left="0"
			cost="20"
			die_sound="wose-die.ogg"
			ellipse="misc/ellipse"
			experience="0"
			facing="n"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="-999"
			goto_y="-999"
			hitpoints="52"
			id="Wose-754"
			image="units/woses/wose.png"
#textdomain wesnoth-units
			language_name=_ "Wose"
			level="1"
			max_attacks="1"
			max_experience="28"
			max_hitpoints="52"
			max_moves="4"
			movement="4"
			movement_type="treefolk"
			moves="0"
			name="Bolad"
			race="wose"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Wose"
			undead_variation="wose"
			underlying_id="754"
			unrenamable="no"
			upkeep="full"
			usage="fighter"
			x="19"
			y="20"
			zoc="yes"
			[attack_anim]
				start_time="-500"
				[filter_attack]
					name="crush"
				[/filter_attack]
				[if]
					hits="yes"
					[frame]
						duration="400"
						image="units/woses/wose-attack-1.png"
						sound="wose-attack.ogg"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						duration="400"
						image="units/woses/wose-attack-1.png"
						sound="wose-miss.ogg"
					[/frame]
				[/else]
				[frame]
					duration="150"
					image="units/woses/wose-attack-2.png"
				[/frame]
				[frame]
					duration="75"
					image="units/woses/wose-attack-1.png"
				[/frame]
			[/attack_anim]
			[death]
				start_time="0"
				[filter_attack]
					type="blade,impact,pierce"
				[/filter_attack]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-1.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-2.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-3.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-4.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-5.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-6.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-7.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-8.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-9.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-10.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-11.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-12.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-13.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-14.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-die-fall-15.png"
				[/frame]
			[/death]
			[death]
				start_time="0"
				[filter_attack]
					type="arcane,fire,cold"
				[/filter_attack]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-1.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-2.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-3.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-4.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-5.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-6.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-7.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-8.png"
				[/frame]
				[frame]
					duration="150"
					image="units/woses/wose-die-decay-9.png"
				[/frame]
			[/death]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/woses/wose.png"
				[/frame]
				[frame]
					duration="100"
					image="units/woses/wose-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/woses/wose-defend.png"
						sound="wose-hit.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/woses/wose-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/woses/wose.png"
				[/frame]
			[/defend]
			[defense]
				castle="80"
				cave="80"
				deep_water="90"
				flat="80"
				forest="60"
				frozen="80"
				fungus="70"
				hills="70"
				impassable="80"
				mountains="70"
				reef="80"
				sand="80"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="80"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="2"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="130"
				blade="100"
				cold="90"
				fire="150"
				impact="60"
				pierce="40"
			[/resistance]
			[abilities]
				[hides]
					affect_self="yes"
#textdomain wesnoth
					description=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					description_inactive=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					female_name=_ "female^ambush"
					female_name_inactive=_ "female^ambush"
					id="ambush"
					name=_ "ambush"
					name_inactive=_ "ambush"
					[filter_self]
						[filter_location]
							terrain="*^Fp,*^Fet,*^Ft,*^Fpa,*^Fd*,*^Fm*"
						[/filter_location]
					[/filter_self]
				[/hides]
				[regenerate]
					affect_self="yes"
					description=_ "Regenerates:
The unit will heal itself 8 HP per turn. If it is poisoned, it will remove the poison instead of healing."
					female_name=_ "female^regenerates"
					id="regenerates"
					name=_ "regenerates"
					poison="cured"
					value="8"
				[/regenerate]
			[/abilities]
			[variables]
			[/variables]
			[status]
			[/status]
			[attack]
				damage="13"
#textdomain wesnoth-units
				description=_ "crush"
				icon="attacks/crush-wose.png"
				name="crush"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[modifications]
			[/modifications]
		[/unit]
		[unit]
			advances_to="White Mage,Red Mage"
			alignment="lawful"
			alpha="256"
			attacks_left="0"
			cost="20"
			die_sound="human-female-die-1.ogg,human-female-die-2.ogg,human-female-die-3.ogg"
			ellipse="misc/ellipse"
			experience="0"
			facing="ne"
			flag_rgb="magenta"
			flying="no"
			gender="female"
			goto_x="-999"
			goto_y="-999"
			hitpoints="25"
			id="Mage-755"
			image="units/human-magi/mage+female.png"
			language_name=_ "female^Mage"
			level="1"
			max_attacks="1"
			max_experience="34"
			max_hitpoints="25"
			max_moves="5"
			movement="5"
			movement_type="smallfoot"
			moves="0"
			name="Merubryan"
			profile="portraits/humans/mage+female.png"
			race="human"
			random_gender="no"
			random_traits="no"
			resting="no"
			side="2"
			type="Mage"
			underlying_id="755"
			unrenamable="no"
			upkeep="full"
			usage="mixed fighter"
			x="24"
			y="19"
			zoc="yes"
			[attack_anim]
				magic_missile_flare_start_time="-750"
				magic_missile_start_time="-750"
				magic_missile_trail_1_start_time="-350"
				magic_missile_trail_2_start_time="-350"
				magic_missile_trail_3_start_time="-350"
				offset="0"
				[filter_attack]
					name="missile"
				[/filter_attack]
				[magic_missile_frame]
					duration="400"
					halo="halo/mage-halo1.png,halo/mage-halo2.png,halo/mage-halo3.png,halo/mage-halo4.png,halo/mage-halo5.png"
					halo_x="11~0"
					halo_y="-20~-54"
					offset="0.001~-0.083,-0.083~-0.25,-0.25~-0.5"
				[/magic_missile_frame]
				[magic_missile_frame]
					duration="350"
					halo="halo/mage-halo1.png,halo/mage-halo2.png,halo/mage-halo3.png,halo/mage-halo4.png,halo/mage-halo5.png,misc/blank-hex.png:1"
					halo_y="-54~-45,-45~-27,-27~0"
					offset="-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_frame]
				[magic_missile_trail_1_frame]
					duration="350"
					halo="misc/blank-hex.png:40,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:40,-54~-45,-45~-27,-27~0"
					offset="0.001:40,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_1_frame]
				[magic_missile_trail_2_frame]
					duration="350"
					halo="misc/blank-hex.png:80,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:80,-54~-45,-45~-27,-27~0"
					offset="0.001:80,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_2_frame]
				[magic_missile_trail_3_frame]
					duration="350"
					halo="misc/blank-hex.png:120,halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_y="-54:120,-54~-45,-45~-27,-27~0"
					offset="0.001:120,-0.5~-0.25,-0.25~0.25,0.25~1.0"
				[/magic_missile_trail_3_frame]
				[magic_missile_flare_frame]
					duration="600"
					halo="halo/mage-preparation-halo1.png,halo/mage-preparation-halo2.png,halo/mage-preparation-halo3.png,halo/mage-preparation-halo4.png,halo/mage-preparation-halo5.png,halo/mage-preparation-halo6.png,halo/mage-preparation-halo7.png,misc/blank-hex.png:1"
					halo_x="11"
					halo_y="-20"
					offset="0"
				[/magic_missile_flare_frame]
				[frame]
					begin="-800"
					end="-700"
					image="units/human-magi/mage+female-attack-magic1.png"
				[/frame]
				[frame]
					begin="-700"
					end="-350"
					image="units/human-magi/mage+female-attack-magic2.png"
				[/frame]
				[if]
					hits="no"
					[frame]
						begin="-350"
						end="-100"
						image="units/human-magi/mage+female-attack-magic2.png"
						sound="magic-missile-1-miss.ogg,magic-missile-2-miss.ogg,magic-missile-3-miss.ogg"
					[/frame]
				[/if]
				[else]
					hits="yes"
					[frame]
						begin="-350"
						end="-100"
						image="units/human-magi/mage+female-attack-magic2.png"
						sound="magic-missile-1.ogg,magic-missile-2.ogg,magic-missile-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="-100"
					end="100"
					image="units/human-magi/mage+female-attack-magic1.png"
				[/frame]
			[/attack_anim]
			[attack_anim]
				[filter_attack]
					name="staff"
				[/filter_attack]
				[frame]
					begin="-250"
					end="-200"
					image="units/human-magi/mage+female.png"
				[/frame]
				[frame]
					begin="-200"
					end="-100"
					image="units/human-magi/mage+female-attack-staff1.png"
				[/frame]
				[if]
					hits="yes"
					[frame]
						begin="-100"
						end="100"
						image="units/human-magi/mage+female-attack-staff2.png"
						sound="staff.wav"
					[/frame]
				[/if]
				[else]
					hits="no"
					[frame]
						begin="-100"
						end="100"
						image="units/human-magi/mage+female-attack-staff2.png"
						sound="miss-1.ogg,miss-2.ogg,miss-3.ogg"
					[/frame]
				[/else]
				[frame]
					begin="100"
					end="150"
					image="units/human-magi/mage+female-attack-magic1.png"
				[/frame]
				[frame]
					begin="150"
					end="200"
					image="units/human-magi/mage+female.png"
				[/frame]
			[/attack_anim]
			[defend]
				start_time="-126"
				[frame]
					duration="1"
					image="units/human-magi/mage+female.png"
				[/frame]
				[frame]
					duration="100"
					image="units/human-magi/mage+female-defend.png"
				[/frame]
				[if]
					hits="hit"
					[frame]
						duration="150"
						image="units/human-magi/mage+female-defend.png"
						sound="human-female-hit-1.ogg,human-female-hit-2.ogg,human-female-hit-3.ogg"
					[/frame]
				[/if]
				[else]
					hits="miss,kill"
					[frame]
						duration="150"
						image="units/human-magi/mage+female-defend.png"
					[/frame]
				[/else]
				[frame]
					duration="1"
					image="units/human-magi/mage+female.png"
				[/frame]
			[/defend]
			[portrait]
				image="portraits/humans/transparent/mage+female.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/humans/transparent/mage+female.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[defense]
				castle="40"
				cave="60"
				deep_water="80"
				flat="60"
				forest="50"
				frozen="80"
				fungus="50"
				hills="50"
				impassable="60"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="2"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="3"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[variables]
			[/variables]
			[status]
			[/status]
			[attack]
				damage="6"
				description=_ "staff"
				icon="attacks/staff-magic.png"
				name="staff"
				number="1"
				range="melee"
				type="impact"
			[/attack]
			[attack]
				damage="7"
				description=_ "missile"
				icon="attacks/magic-missile.png"
				name="missile"
				number="3"
				range="ranged"
				type="fire"
				[specials]
					[chance_to_hit]
						cumulative="no"
#textdomain wesnoth
						description=_ "Magical:
This attack always has a 70% chance to hit regardless of the defensive ability of the unit being attacked."
						id="magical"
						name=_ "magical"
						value="70"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					female_name=_ "female^intelligent"
					id="intelligent"
					male_name=_ "intelligent"
					name=_ "female^intelligent"
					[effect]
						apply_to="max_experience"
						increase="-20%"
					[/effect]
				[/trait]
				[trait]
					female_name=_ "female^strong"
					id="strong"
					male_name=_ "strong"
					name=_ "female^strong"
					[effect]
						apply_to="attack"
						increase_damage="1"
						range="melee"
					[/effect]
					[effect]
						apply_to="hitpoints"
						increase_total="1"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
	[/side]
	[side]
		action_bonus_count="0"
		aggression="0.5"
		allow_player="no"
		caution="0.25"
		colour="5"
		controller="network"
		countdown_time="270000"
		current_player="ai3"
		disallow_observers="no"
		fog="yes"
		global_recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
		gold="-810"
		hidden="yes"
		id="ai3"
		income="0"
		leader_value="3"
		name="Computer"
		no_leader="yes"
		number_of_possible_recruits_to_force_recruit="3.1"
		objectives=_ "Victory:
@Defeat enemy leader(s)"
		objectives_changed="yes"
		recruit="Elvish Archer,Elvish Fighter,Elvish Scout,Elvish Shaman,Mage,Merman Hunter,Wose"
		recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
		save_id="ai3"
		share_maps="no"
		share_view="yes"
		shroud="no"
		side="3"
		start_gold="100"
		team_name="3"
		user_team_name="Team 3"
		village_gold="2"
		village_value="1"
		villages_per_scout="4"
		[ai]
			recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
			[team_formula]
				rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
			[/team_formula]
		[/ai]
		[unit]
			advances_to="Hurricane Drake"
			alignment="lawful"
			alpha="256"
			attacks_left="1"
			cost="30"
			description="Am dunklen Himmel, der Wind blies kalt,
Der Mond stand hoch, die Nacht war alt,
Doch die Nacht, sie konnte nicht verhehlen,
Den Draken, der das Gold wollt’ stehlen.

In dunkler Nacht, der Mond verklärt,
Alles vergaß, was er gelernt
Zur Höhle des Lisken, der Drake flog,
Das Gold, das zog ihn, wie ein Sog.

Doch nun das Feuer brennt nicht mehr,
Hervor trat nun der Höhlenherr,
Ein Blick, und er erstarrte zu Stein,
Und steinern seither des Draken Gebein.

Die Himmelswinde blasen so kalt,
Die Jahre gehen, die Tage alt,
Des Draken Statue noch immer hier,
Sein Schicksal besiegelt von eigener Gier.
(Niedergeschrieben von Ottokar dem Barden)"
			die_sound="drake-die.ogg"
			experience="0"
			facing="se"
			flies="false"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Sky Drake-689"
			image="units/drakes/sky.png"
#textdomain wesnoth-units
			language_name=_ "Sky Drake"
			level="2"
			max_attacks="1"
			max_experience="56"
			max_hitpoints="1"
			max_moves="0"
			movement="9"
			movement_type="fly"
			moves="0"
			profile="portraits/drakes/glider.png"
			race="drake"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Sky Drake"
			undead_variation="drake"
			underlying_id="689"
			unrenamable="yes"
			upkeep="full"
			usage="scout"
			x="27"
			y="14"
			zoc="yes"
			[defense]
				castle="50"
				cave="70"
				deep_water="50"
				flat="50"
				forest="50"
				frozen="50"
				fungus="60"
				hills="50"
				impassable="80"
				mountains="50"
				reef="50"
				sand="50"
				shallow_water="50"
				swamp_water="50"
				unwalkable="50"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="1"
				flat="1"
				forest="1"
				frozen="1"
				fungus="2"
				hills="1"
				impassable="99"
				mountains="1"
				reef="1"
				sand="1"
				shallow_water="1"
				swamp_water="1"
				unwalkable="1"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="130"
				blade="90"
				cold="150"
				fire="50"
				impact="80"
				pierce="110"
			[/resistance]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="6"
				description=_ "slam"
				icon="attacks/slam-drake.png"
				name="slam"
				number="3"
				range="melee"
				type="impact"
			[/attack]
			[attack]
				damage="5"
				description=_ "fire breath"
				icon="attacks/fire-breath-drake.png"
				name="fire breath"
				number="3"
				range="ranged"
				type="fire"
				[specials]
					[chance_to_hit]
						active_on="offense"
						cumulative="yes"
#textdomain wesnoth
						description=_ "Marksman:
When used offensively, this attack always has at least a 60% chance to hit."
						id="marksman"
						name=_ "marksman"
						value="60"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="chaotic"
			alpha="256"
			attacks_left="1"
			cost="46"
			description="Als mächtigster Krieger des Rysssrylosszkk Stammes (Übersetzung: Der »Jagt-Seine-Feinde-In-Siedenden-Flüssen« Stamm) wurde Xikkrisx von Syrsszk von den Ältesten in diese Region entsandt. Sein Stamm bereitete einen Angriff auf einen Außenposten der Menschen vor und wollte Oxsrrsk, einen großen saurianischen Mystiker ob des Ausgangs ihres Untefangens befragen, der zuletzt in der Nähe des Ruaskkolin Sees gesehen wurde. Es dauerte auch nicht lange und Xikkrisx fand den zu Stein gewordenen Körper von Oxsrrsk zusammen mit einer sorgsam zusammengebundenen Schriftrolle, die in einer kleinen Bodenspalte lag. Er öffnete die Schriftrolle und lass einen Absatz in der Mitte des Texts: »Verbannt und verflucht, die Oberwelt nie wieder zu betreten, suchte der wütende Geist von Chak'kso einen Weg, seine Verbannung aufzuheben. Und schließlich, nach fast endloser Qual, fand er eine Möglichkeit. In jenen Gebieten, wo es Stollen und Höhlen gab, die bis zur Oberfläche hinauf führten, erlangte er einen begrenzten Einfluss auf eben diese. Sein abgrundtiefer Hass wirkte sich auf die Eier von großen Echsen aus, so dass ihre Körper und ihr Wille zu einem Abbild von Chak'ksos Hass wurden.« Verwirrt von diesen Zeilen, machte sich Xikkrisx daran, den zur Statue gewordenen Körper von Oxsrrsk zu seinem Stamm zu bringen. Vielleicht würden die Ältesten wissen, wie man Oxsrssk wieder zurückverwandelte. Er war noch nicht weit gekommen, als die Nacht hereinbrach und er sich erschöpft in einer kleinen Höhle zur Ruhe begab. Geweckt wurde er durch ein markerschütterndes Brüllen."
			die_sound="hiss-die.wav"
			experience="0"
			facing="sw"
			flag_rgb="magenta"
			flies="false"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Saurian Flanker-690"
			image="units/saurians/flanker.png"
#textdomain wesnoth-units
			language_name=_ "Saurian Flanker"
			level="3"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="7"
			movement_type="lizard"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Xikkrisx"
			profile="portraits/saurians/skirmisher.png"
			race="lizard"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Saurian Flanker"
			undead_variation="saurian"
			underlying_id="690"
			unrenamable="yes"
			upkeep="full"
			usage="scout"
			x="40"
			y="8"
			zoc="yes"
			[defense]
				castle="40"
				cave="40"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="70"
				fungus="40"
				hills="40"
				impassable="40"
				mountains="40"
				reef="60"
				sand="40"
				shallow_water="60"
				swamp_water="40"
				unwalkable="80"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="1"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="4"
				fungus="1"
				hills="1"
				impassable="99"
				mountains="2"
				reef="2"
				sand="1"
				shallow_water="3"
				swamp_water="1"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="110"
				cold="120"
				fire="120"
				impact="110"
				pierce="80"
			[/resistance]
			[abilities]
				[skirmisher]
					affect_self="yes"
#textdomain wesnoth
					description=_ "Skirmisher:
This unit is skilled in moving past enemies quickly, and ignores all enemy Zones of Control."
					female_name=_ "female^skirmisher"
					id="skirmisher"
					name=_ "skirmisher"
				[/skirmisher]
			[/abilities]
			[advancement]
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[portrait]
				image="portraits/saurians/transparent/skirmisher.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/saurians/transparent/skirmisher.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="8"
#textdomain wesnoth-units
				description=_ "spear"
				icon="attacks/spear.png"
				name="spear"
				number="4"
				range="melee"
				type="pierce"
			[/attack]
			[attack]
				damage="7"
				description=_ "spear"
				icon="attacks/spear.png"
				name="spear"
				number="2"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="chaotic"
			alpha="256"
			attacks_left="1"
			cost="27"
			description="Oxsrrsk war ein mächtiger saurianischer Wahrsager, der, während eines Überfalls auf den rivalisierenden Xraxss Stamm, eine sehr faszinierende Schriftrolle (aus dem Besitz des nun toten Wahrsagers Hesx-Rzzak) erbeutet hatte. Der Titel dieser Schrift war »Ney'yks des versteinernden Blicks« und beschrieb eine Kreatur, bekannt unter dem Namen »Chak'kso Ney'yks«, der in altsaurianisch soviel bedeutete, wie »Ältestes Kind des Chak'kso«. Chak'kso, so erzählt man sich, soll ein mächtiger Halbgott des Unterreichs gewesen sein, erwähnt als »Erzdämon der Erde« in der elfischen Geschichte. Laut diesen Aufzeichnungen hatte Chak'kso versucht, alles Leben an der Oberfläche zu Stein zu verwandeln, bis er schließlich durch mächtige Magie gebannt wurde. Doch nach einigen Jahrhunderten, als die Geschichte fast vergessen war, tauchten, zunächst nur einzeln, dann immer häufiger, gigantische Echsen auf, mit der Gabe, jeden, den sie erblickten auf der Stelle zu Stein werden zu lassen. Unter großen Verlusten gelang es schließlich, diese, Basilisken genannten, Kreaturen zu töten. Doch einer, der den Namen »Der Ney'yks« oder in der heutigen Sprache »Das älteste Kind« trägt, soll überlebt haben. Oxsrrsk glaubte, dass er mit seinen Fähigkeiten in der Lage wäre, diesen letzten Basilisken zu finden und ihn sich zum Diener zu machen, so dass er schließlich gen des Ruaskkolin Sees aufbrauch..."
			die_sound="hiss-die.wav"
			experience="0"
			facing="sw"
			flag_rgb="magenta"
			flies="false"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Saurian Oracle-691"
			image="units/saurians/oracle.png"
			language_name=_ "Saurian Oracle"
			level="2"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="6"
			movement_type="lizard"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Oxsrrsk"
			profile="portraits/saurians/augur.png"
			race="lizard"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Saurian Oracle"
			undead_variation="saurian"
			underlying_id="691"
			unrenamable="yes"
			upkeep="full"
			usage="archer"
			x="39"
			y="8"
			zoc="yes"
			[defense]
				castle="40"
				cave="40"
				deep_water="80"
				flat="60"
				forest="40"
				frozen="70"
				fungus="40"
				hills="40"
				impassable="40"
				mountains="40"
				reef="60"
				sand="40"
				shallow_water="60"
				swamp_water="40"
				unwalkable="80"
				village="50"
			[/defense]
			[movement_costs]
				castle="1"
				cave="1"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="4"
				fungus="1"
				hills="1"
				impassable="99"
				mountains="2"
				reef="2"
				sand="1"
				shallow_water="3"
				swamp_water="1"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="110"
				cold="120"
				fire="120"
				impact="110"
				pierce="80"
			[/resistance]
			[abilities]
				[heals]
					affect_allies="yes"
					affect_self="no"
#textdomain wesnoth
					description=_ "Heals +4:
Allows the unit to heal adjacent allied units at the beginning of our turn.

A unit cared for by this healer may heal up to 4 HP per turn, or stop poison from taking effect for that turn.
A poisoned unit cannot be cured of its poison by a healer, and must seek the care of a village or a unit that can cure."
					female_name=_ "female^heals +4"
					id="healing"
					name=_ "heals +4"
					poison="slowed"
					value="4"
					[affect_adjacent]
						adjacent="n,ne,se,s,sw,nw"
					[/affect_adjacent]
				[/heals]
			[/abilities]
			[advancement]
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[portrait]
				image="portraits/saurians/transparent/augur.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/saurians/transparent/augur.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="4"
#textdomain wesnoth-units
				description=_ "staff"
				icon="attacks/staff-magic.png"
				name="staff"
				number="3"
				range="melee"
				type="impact"
			[/attack]
			[attack]
				damage="8"
				description=_ "curse"
				icon="attacks/curse.png"
				name="curse"
				number="3"
				range="ranged"
				type="cold"
				[specials]
					[chance_to_hit]
						cumulative="no"
#textdomain wesnoth
						description=_ "Magical:
This attack always has a 70% chance to hit regardless of the defensive ability of the unit being attacked."
						id="magical"
						name=_ "magical"
						value="70"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Elvish Sharpshooter"
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="41"
			description="Ein Schütze einst kam, das Getüm zu erlegen.
Er nahm seinen Bogen und spitzte den Degen.

Hinab in die Höhle er stieg,
in seinen Gedanken war nur noch der Sieg.

Den Bogen bereit und sicher gespannt,
durchstreift er die Höhle nach Spuren im Sand.

Die Augen gebannt auf den Boden gerichtet,
hat er schon bald, auf’s schleichen verzichtet.

Geweckt durch den Hall, der Wurm sich schnell windet,
geschockt durch den Anblick er den Rückweg nicht findet.

Des Schützen einst starke Statur, 
ist seitdem zu bewundern als Marmorfigur.


(Niedergeschrieben von Karomir dem Spook)"
			die_sound="human-hit-1.ogg,human-hit-2.ogg,human-hit-3.ogg,human-hit-4.ogg,elf-hit-1.ogg,elf-hit-2.ogg"
			experience="0"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Elvish Marksman-692"
			image="units/elves-wood/marksman.png"
#textdomain wesnoth-units
			language_name=_ "Elvish Marksman"
			level="2"
			max_attacks="1"
			max_experience="56"
			max_hitpoints="1"
			max_moves="0"
			movement="6"
			movement_type="woodland"
			moves="0"
			profile="portraits/elves/marksman.png"
			race="elf"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Elvish Marksman"
			undead_variation="archer"
			underlying_id="692"
			unrenamable="yes"
			upkeep="full"
			usage="archer"
			x="2"
			y="11"
			zoc="yes"
			[defense]
				castle="40"
				cave="70"
				deep_water="80"
				flat="60"
				forest="30"
				frozen="70"
				fungus="50"
				hills="50"
				impassable="70"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="110"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[portrait]
				image="portraits/elves/transparent/marksman.png"
				mirror="true"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/elves/transparent/marksman.png"
				mirror="false"
				side="right"
				size="400"
			[/portrait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="6"
				description=_ "sword"
				icon="attacks/sword-elven.png"
				name="sword"
				number="2"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="9"
				description=_ "longbow"
				icon="attacks/bow-elven-magic.png"
				name="longbow"
				number="4"
				range="ranged"
				type="pierce"
				[specials]
					[chance_to_hit]
						active_on="offense"
						cumulative="yes"
#textdomain wesnoth
						description=_ "Marksman:
When used offensively, this attack always has at least a 60% chance to hit."
						id="marksman"
						name=_ "marksman"
						value="60"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="chaotic"
			alpha="256"
			attacks_left="1"
			cost="41"
			description="Blum Duk wurde von seinem Stamm geachtet, da er einen der mächtigen Schreckenswölfe des Gebirges gezähmt hatte. Seine Führungsqualitäten allein war es zu verdanken, dass der Stamm der Kobolde die Bedrohung durch Mensch und Elf überstehen konnte. Es ging das Gerücht um, dass sein Reittier fünfzig Menschen und hundert Elfen getötet habe.
Als er die Kunde von einem schrecklichen Monster vernahm, das in der Nähe seines Stammes hauste, ritt er allein hinaus, um sich dem Ungetüm entgegen zu stellen. Die anderen Kobolde harten freudig seiner Rückkehr, da sie wussten, dass Blum Duk die Kreatur erschlagen und mit dem Kadaver zurückkehren würde. 
Als er jedoch den Basilisken erblickte, wurde er von Furcht ergriffen. Er versuchte seinen Wolf zum Rückzug zu bewegen, doch er wollte sich nicht bewegen. Als die Kreatur auf ihn zu kam, schrie er seine letzten Worte gen Himmel: Verdammt, Gog sind deine Beine aus Stein?!?
(Niedergeschrieben von einem furchtlosen Wandersmann)"
			die_sound="wolf-die.wav"
			experience="0"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Direwolf Rider-693"
			image="units/goblins/direwolver.png"
#textdomain wesnoth-units
			language_name=_ "Direwolf Rider"
			level="3"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="10"
			movement_type="orcishfoot"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Blum Duk"
			race="wolf"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Direwolf Rider"
			undead_variation="mounted"
			underlying_id="693"
			unrenamable="yes"
			upkeep="full"
			usage="scout"
			x="10"
			y="17"
			zoc="yes"
			[defense]
				castle="40"
				cave="60"
				deep_water="80"
				flat="60"
				forest="50"
				frozen="80"
				fungus="60"
				hills="50"
				impassable="60"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="2"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="2"
				fungus="3"
				hills="1"
				impassable="99"
				mountains="2"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="100"
				blade="100"
				cold="100"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[advancement]
#textdomain wesnoth
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="9"
#textdomain wesnoth-units
				description=_ "fangs"
				icon="attacks/fangs-animal.png"
				name="fangs"
				number="4"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="4"
				description=_ "claws"
				icon="attacks/claws-animal.png"
				name="claws"
				number="4"
				range="melee"
				type="blade"
				[specials]
					[poison]
#textdomain wesnoth
						description=_ "Poison:
This attack poisons living targets. Poisoned units lose 8 HP every turn until they are cured or are reduced to 1 HP. Poison can not, of itself, kill a unit."
						id="poison"
						name=_ "poison"
					[/poison]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="lawful"
			alpha="256"
			attacks_left="1"
			cost="100"
			description="Rah Ihn Mar, Meister der brennenden Hügel, reiste zum Ruaskkolin See um den elfischen Helden Terowydlithrol, unter seinesgleichen bekannt als »Drachentöter«, zu stellen. Es wird behauptet, Terowydlithrol habe einen Feuerdrachen eigenhändig getötet, der ein elfisches Dorf bedroht hat. Daraufhin hat er einen Gegenangriff befohlen, in dem 37 Draken, die in einer nahe gelegenen Schlucht ihr Lager aufgeschlagen hatten, ihren Tod fanden, da vermutet wurde, dass sie mit dem Drachen verbündet waren. Rah Ihn Mar wusste, dass diese Draken unschuldig waren und so machte er sich auf die Suche nach Terowydlithrol. Völlig beseelt von dem Gedanken nach Rache, stieg er zum See hinab..."
			die_sound="drake-die.ogg"
			ellipse="misc/ellipse"
			experience="0"
			facing="se"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Armageddon Drake-694"
			image="units/drakes/armageddon.png"
#textdomain wesnoth-units
			language_name=_ "Armageddon Drake"
			level="4"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="5"
			movement_type="drakefly"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Rah Ihn Mar"
			profile="portraits/drakes/burner.png"
			race="drake"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Armageddon Drake"
			undead_variation="drake"
			underlying_id="694"
			unrenamable="yes"
			upkeep="full"
			usage="archer"
			x="11"
			y="14"
			zoc="yes"
			[defense]
				castle="60"
				cave="70"
				deep_water="80"
				flat="70"
				forest="60"
				frozen="80"
				fungus="60"
				hills="60"
				impassable="70"
				mountains="60"
				reef="70"
				sand="60"
				shallow_water="80"
				swamp_water="70"
				unwalkable="60"
				village="60"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="2"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="1"
				impassable="99"
				mountains="1"
				reef="1"
				sand="1"
				shallow_water="1"
				swamp_water="1"
				unwalkable="1"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="130"
				blade="90"
				cold="150"
				fire="0"
				impact="80"
				pierce="110"
			[/resistance]
			[advancement]
#textdomain wesnoth
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="15"
#textdomain wesnoth-units
				description=_ "claws"
				icon="attacks/claws-drake.png"
				name="claws"
				number="2"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="12"
				description=_ "fire breath"
				icon="attacks/fire-breath-drake.png"
				name="fire breath"
				number="6"
				range="ranged"
				type="fire"
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="chaotic"
			alpha="256"
			attacks_left="1"
			cost="40"
			description="Von Zeitalter zu Zeitalter hatte sie hier, in den Tiefen des Wassers, gelebt. Jedwede Kreatur, ob Fisch, Frosch oder Angehöre des Meervolkes, wurde zu ihrer Beute. Es war ihr See, niemand anderes. Und obwohl der See nicht groß war, war sie die Herrscherin. Dann jedoch, kam der Basilisk und blickte in die Augen der Seeschlange. Und obwohl die Seeschlange nicht gestorben war, so war sie doch auch nicht länger am Leben. So nahm der neue Herrscher des Sees seinen Platz ein.
(Niedergeschrieben von Agon dem Kaltherzigen)"
			die_sound="water-blast.wav"
			experience="0"
			facing="sw"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Sea Serpent-695"
			image="units/monsters/seaserpent.png"
			language_name=_ "Sea Serpent"
			level="3"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="8"
			movement_type="deepsea"
			moves="0"
			profile="portraits/monsters/sea-serpent.png"
			race="monster"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Sea Serpent"
			undead_variation="swimmer"
			underlying_id="695"
			unrenamable="yes"
			upkeep="full"
			usage="fighter"
			x="22"
			y="12"
			zoc="yes"
			[defense]
				castle="70"
				cave="80"
				deep_water="40"
				flat="70"
				forest="70"
				frozen="70"
				fungus="80"
				hills="70"
				impassable="80"
				mountains="80"
				reef="50"
				sand="70"
				shallow_water="50"
				swamp_water="40"
				unwalkable="80"
				village="70"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="1"
				flat="4"
				forest="5"
				frozen="2"
				fungus="3"
				hills="5"
				impassable="99"
				mountains="99"
				reef="2"
				sand="4"
				shallow_water="2"
				swamp_water="2"
				unwalkable="99"
				village="2"
			[/movement_costs]
			[resistance]
				arcane="100"
				blade="80"
				cold="40"
				fire="100"
				impact="70"
				pierce="100"
			[/resistance]
			[advancement]
#textdomain wesnoth
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="18"
#textdomain wesnoth-units
				description=_ "fangs"
				icon="attacks/fangs-animal.png"
				name="fangs"
				number="2"
				range="melee"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="lawful"
			alpha="256"
			attacks_left="1"
			cost="58"
			description="Als mutiger Held aus Wesnoths Goldenem Zeitalter, kam dieser mächtige Anführer der Menschen an diesen Ort, um die Orks zu jagen. Doch die schurkischen Kreaturen lockten ihn in einen Hinterhalt, indem viele seiner Begleiter ihr Leben ließen, doch er kämpfte mit grimmiger Entschlossenheit und streckte Ork um Ork nieder. Doch dann trat der garstige Basilisk aus seinem Versteck und verwandelte den tapferen Krieger zu Stein, als dieser gerade den letzten Ork erschlug. Doch der kalte Stein ist weiterhin ein Symbol für große Stärke und Tapferkeit.
(Niedergeschrieben von Alrik dem Träumer)"
			die_sound="horse-die.ogg"
			experience="0"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Grand Knight-696"
			image="units/human-loyalists/grand-knight.png"
			language_name=_ "Grand Knight"
			level="3"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="7"
			movement_type="mounted"
			moves="0"
			profile="portraits/humans/grand-knight.png"
			race="human"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Grand Knight"
			undead_variation="mounted"
			underlying_id="696"
			unrenamable="yes"
			upkeep="full"
			usage="fighter"
			x="25"
			y="14"
			zoc="yes"
			[defense]
				castle="60"
				cave="80"
				deep_water="80"
				flat="60"
				forest="70"
				frozen="70"
				fungus="80"
				hills="60"
				impassable="80"
				mountains="80"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="60"
			[/defense]
			[movement_costs]
				castle="1"
				cave="4"
				deep_water="99"
				flat="1"
				forest="3"
				frozen="2"
				fungus="4"
				hills="2"
				impassable="99"
				mountains="99"
				reef="3"
				sand="2"
				shallow_water="4"
				swamp_water="4"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="80"
				cold="100"
				fire="100"
				impact="70"
				pierce="120"
			[/resistance]
			[advancement]
#textdomain wesnoth
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="12"
#textdomain wesnoth-units
				description=_ "sword"
				icon="attacks/greatsword-human.png"
				name="sword"
				number="4"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="17"
				description=_ "lance"
				name="lance"
				number="2"
				range="melee"
				type="pierce"
				[specials]
					[damage]
						active_on="offense"
						apply_to="both"
#textdomain wesnoth
						description=_ "Charge:
When used offensively, this attack deals double damage to the target. It also causes this unit to take double damage from the target's counterattack."
						id="charge"
						multiply="2"
						name=_ "charge"
					[/damage]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			advances_to="Ancient Wose"
			alignment="lawful"
			alpha="256"
			attacks_left="1"
			cost="31"
			description="Bramwythl der Waldschrat war selbst für einen Waldschrat langsam und wortkarg. Mehr als als alle anderen Waldschrate, liebte er es, einfach nur unter dem Licht der Sonne zu stehen und die Schönheit des Himmels zu betrachten. Einmal gestand er einem Gefährten sogar, dass sein größter Wunsch es sei, sich auf ewig im wärmenden Licht zu sonnen.
Kurze Zeit später jedoch vernahm die örtliche Gemeinschaft der Waldschrate, dass sich ein grausames Monstrum näherte, das stark genug sei, um sämtliche Waldschrate in diesem Landstrich zu vernichten. Daher beschlossen sie, schnellstmöglich das Weite zu suchen (schnellstmöglich in Waldschratmaßstäben). Jedoch vergaßen sie in ihrer Eile, Bramwythl aufzusuchen und ihm von der Gefahr zu berichten.
Der Basilisk hatte leichtes Spiel mit ihm und er bemerkte die Bestie nicht einmal, als er auch schon zu Stein erstarrte. Seither steht seine erstarrte Gestalt unter offenem Himmel im wärmenden Licht der Sonne. Damit wurde Bramwythls größter Wunsch erfüllt.
(Niedergeschrieben von Ignatius von Schmottke)"
			die_sound="wose-die.ogg"
			experience="0"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Elder Wose-697"
			image="units/woses/wose-elder.png"
#textdomain wesnoth-units
			language_name=_ "Elder Wose"
			level="2"
			max_attacks="1"
			max_experience="70"
			max_hitpoints="1"
			max_moves="0"
			movement="4"
			movement_type="treefolk"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Bramwythl"
			race="wose"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Elder Wose"
			undead_variation="wose"
			underlying_id="697"
			unrenamable="yes"
			upkeep="full"
			usage="fighter"
			x="32"
			y="6"
			zoc="yes"
			[defense]
				castle="80"
				cave="80"
				deep_water="90"
				flat="80"
				forest="60"
				frozen="80"
				fungus="70"
				hills="70"
				impassable="80"
				mountains="70"
				reef="80"
				sand="80"
				shallow_water="80"
				swamp_water="70"
				unwalkable="80"
				village="80"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="99"
				flat="1"
				forest="1"
				frozen="2"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="2"
				swamp_water="2"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="130"
				blade="100"
				cold="90"
				fire="150"
				impact="60"
				pierce="40"
			[/resistance]
			[abilities]
				[hides]
					affect_self="yes"
#textdomain wesnoth
					description=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					description_inactive=_ "Ambush:
This unit can hide in forest, and remain undetected by its enemies.

Enemy units cannot see this unit while it is in forest, except if they have units next to it. Any enemy unit that first discovers this unit immediately loses all its remaining movement."
					female_name=_ "female^ambush"
					female_name_inactive=_ "female^ambush"
					id="ambush"
					name=_ "ambush"
					name_inactive=_ "ambush"
					[filter_self]
						[filter_location]
							terrain="*^Fp,*^Fet,*^Ft,*^Fpa,*^Fd*,*^Fm*"
						[/filter_location]
					[/filter_self]
				[/hides]
				[regenerate]
					affect_self="yes"
					description=_ "Regenerates:
The unit will heal itself 8 HP per turn. If it is poisoned, it will remove the poison instead of healing."
					female_name=_ "female^regenerates"
					id="regenerates"
					name=_ "regenerates"
					poison="cured"
					value="8"
				[/regenerate]
			[/abilities]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="19"
#textdomain wesnoth-units
				description=_ "crush"
				icon="attacks/crush-wose.png"
				name="crush"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="lawful"
			alpha="256"
			attacks_left="1"
			cost="50"
			description="General Talael Ryndoc kam an diesen Ort um mit Feldmarschall Aethec Corryn ein Duell auszufechten. Doch die beiden sollten sich nie finden..."
			die_sound="human-die-1.ogg,human-die-2.ogg,human-die-3.ogg"
			experience="0"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Iron Mauler-698"
			image="units/human-loyalists/siegetrooper.png"
			language_name=_ "Iron Mauler"
			level="3"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="4"
			movement_type="armoredfoot"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Talael Ryndoc"
			profile="portraits/humans/iron-mauler.png~RIGHT()"
			race="human"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Iron Mauler"
			underlying_id="698"
			unrenamable="yes"
			upkeep="full"
			usage="fighter"
			x="34"
			y="11"
			zoc="yes"
			[defense]
				castle="50"
				cave="60"
				deep_water="80"
				flat="70"
				forest="60"
				frozen="80"
				fungus="60"
				hills="60"
				impassable="60"
				mountains="80"
				reef="80"
				sand="80"
				shallow_water="90"
				swamp_water="90"
				unwalkable="80"
				village="60"
			[/defense]
			[movement_costs]
				castle="1"
				cave="2"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="4"
				fungus="2"
				hills="3"
				impassable="99"
				mountains="99"
				reef="3"
				sand="2"
				shallow_water="4"
				swamp_water="4"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="50"
				cold="110"
				fire="110"
				impact="90"
				pierce="60"
			[/resistance]
			[advancement]
#textdomain wesnoth
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[portrait]
				image="portraits/humans/transparent/iron-mauler.png"
				mirror="false"
				side="right"
				size="400"
			[/portrait]
			[trait]
				description=_ "Fights normally during unfavorable times of day/night"
				female_name=_ "female^fearless"
				id="fearless"
				male_name=_ "fearless"
			[/trait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="25"
#textdomain wesnoth-units
				description=_ "mace"
				name="mace"
				number="2"
				range="melee"
				type="impact"
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="lawful"
			alpha="256"
			attacks_left="1"
			cost="66"
			description="Die letzten Worte gesprochen von Feldmarschall Aethec Corryn: »Talael Ryndoc! Ich bin es leid, nach dir zu suchen! Ich werde mich nun zurück zu Haldrics Hallen begeben und den Rat darüber unterrichten, welch ein Feigling du warst, nicht beim Duell zu erscheinen. Deine Schmach soll für dich eine größere Qual sein, als der Tod, den ich dir gegeben hätte!«

Vielleicht hätte er nicht ganz so laut sprechen sollen..."
			die_sound="human-die-1.ogg,human-die-2.ogg,human-die-3.ogg"
			experience="0"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Grand Marshal-699"
			image="units/human-loyalists/marshal.png"
			language_name=_ "Grand Marshal"
			level="4"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="6"
			movement_type="smallfoot"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Aethec Corryn"
			profile="portraits/humans/marshal.png"
			race="human"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Grand Marshal"
			underlying_id="699"
			unrenamable="yes"
			upkeep="full"
			usage="fighter"
			x="15"
			y="11"
			zoc="yes"
			[defense]
				castle="40"
				cave="60"
				deep_water="80"
				flat="60"
				forest="50"
				frozen="80"
				fungus="50"
				hills="50"
				impassable="60"
				mountains="40"
				reef="70"
				sand="70"
				shallow_water="80"
				swamp_water="80"
				unwalkable="80"
				village="40"
			[/defense]
			[movement_costs]
				castle="1"
				cave="2"
				deep_water="99"
				flat="1"
				forest="2"
				frozen="3"
				fungus="2"
				hills="2"
				impassable="99"
				mountains="3"
				reef="2"
				sand="2"
				shallow_water="3"
				swamp_water="3"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="80"
				blade="80"
				cold="100"
				fire="100"
				impact="80"
				pierce="80"
			[/resistance]
			[abilities]
				[leadership]
					affect_self="no"
					cumulative="no"
#textdomain wesnoth
					description=_ "Leadership:
This unit can lead our own units that are next to it, making them fight better.

Adjacent own units of lower level will do more damage in battle. When a unit adjacent to, of a lower level than, and on the same side as a unit with Leadership engages in combat, its attacks do 25% more damage times the difference in their levels."
					female_name=_ "female^leadership"
					id="leadership"
					name=_ "leadership"
					value="100"
					[affect_adjacent]
						adjacent="n,ne,se,s,sw,nw"
						[filter]
							level="0"
						[/filter]
					[/affect_adjacent]
				[/leadership]
				[leadership]
					affect_self="no"
					cumulative="no"
					id="leadership"
					value="75"
					[affect_adjacent]
						adjacent="n,ne,se,s,sw,nw"
						[filter]
							level="1"
						[/filter]
					[/affect_adjacent]
				[/leadership]
				[leadership]
					affect_self="no"
					cumulative="no"
					id="leadership"
					value="50"
					[affect_adjacent]
						adjacent="n,ne,se,s,sw,nw"
						[filter]
							level="2"
						[/filter]
					[/affect_adjacent]
				[/leadership]
				[leadership]
					affect_self="no"
					cumulative="no"
					id="leadership"
					value="25"
					[affect_adjacent]
						adjacent="n,ne,se,s,sw,nw"
						[filter]
							level="3"
						[/filter]
					[/affect_adjacent]
				[/leadership]
			[/abilities]
			[advancement]
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[portrait]
				image="portraits/humans/transparent/marshal.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/humans/transparent/marshal.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="10"
#textdomain wesnoth-units
				description=_ "sword"
				icon="attacks/greatsword-human.png"
				name="sword"
				number="4"
				range="melee"
				type="blade"
			[/attack]
			[attack]
				damage="8"
				description=_ "crossbow"
				icon="attacks/crossbow-human.png"
				name="crossbow"
				number="3"
				range="ranged"
				type="pierce"
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="neutral"
			alpha="256"
			attacks_left="1"
			cost="48"
			description="Ein mutiger Krieger, bekannt unter den Naga als Rilhon der Unerschütterliche, hörte Gerüchte über einen Schatz, der verschollen in den Tiefen dieser Unterwasserhöhlen versteckt sein sollte. Man sagt, es handelte sich dabei um einen Speer mit einem Fangzahn des uralten Basilisken Chak'so Ney'yks, der vor langer Zeit von dem Efenkrieger Eloralduil besiegt wurde, als Spitze. Der Legende nach, lag der Speer irgendwo auf dem Grunde dieses Sees. Der Ruaskkolinsee ist nach einer gefürchteten Seeschlange benannt, welche dort hauste. Nachdem Rilhon sich auf einen schlimmen Kampf mit der Seeschlange vorbereitet hatte und zu dem See gereist war, erwarteten ihn dort zwei große Überraschungen: Die erste in der Form von Ruaskkolin, der Seeschlange, die komplett zu Stein erstarrt war und die Zweite war ein sehr lebendig wirkender Chak'kso Ney'yks, welcher zudem noch im Besitz all seiner Zähne war.
(Niedergeschrieben von Sumosius Nieselprim)"
			die_sound="naga-die.ogg"
			experience="0"
			facing="se"
			flag_rgb="magenta"
			flying="no"
			gender="male"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Naga Myrmidon-700"
			image="units/nagas/myrmidon.png"
			language_name=_ "Naga Myrmidon"
			level="3"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="7"
			movement_type="naga"
			moves="0"
#textdomain wesnoth-multiplayer
			name=_ "Rilhon"
			profile="portraits/nagas/fighter.png"
			race="naga"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Naga Myrmidon"
			undead_variation="swimmer"
			underlying_id="700"
			unrenamable="yes"
			upkeep="full"
			usage="fighter"
			x="20"
			y="12"
			zoc="yes"
			[defense]
				castle="50"
				cave="60"
				deep_water="50"
				flat="50"
				forest="60"
				frozen="80"
				fungus="60"
				hills="60"
				impassable="60"
				mountains="60"
				reef="30"
				sand="40"
				shallow_water="40"
				swamp_water="40"
				unwalkable="80"
				village="60"
			[/defense]
			[movement_costs]
				castle="2"
				cave="2"
				deep_water="1"
				flat="2"
				forest="3"
				frozen="2"
				fungus="2"
				hills="3"
				impassable="99"
				mountains="5"
				reef="2"
				sand="1"
				shallow_water="1"
				swamp_water="1"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="100"
				blade="100"
				cold="120"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[advancement]
#textdomain wesnoth
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="9"
#textdomain wesnoth-units
				description=_ "sword"
				icon="attacks/sword-orcish.png"
				name="sword"
				number="5"
				range="melee"
				type="blade"
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			alignment="lawful"
			alpha="256"
			attacks_left="1"
			cost="52"
			description="Über die Wellen, blau und weiß,
sie zog die Brandung schnell und heiß.
Die Fische, so strahlend silbern grün,
bekamen die Sprache von Ihr geliehen.
Magische Muscheln und Wälder aus Tang,
stimmten mit ein in Ihren Gesang.
Doch dann trat ein, man wollts kaum glauben,
seither sie bewegte nichtmal die Augen.

(Niedergeschrieben von Kasius dem Knappen)"
			die_sound="mermaid-die.ogg"
			experience="0"
			facing="sw"
			flag_rgb="magenta"
			flying="no"
			gender="female"
			goto_x="0"
			goto_y="0"
			hitpoints="1"
			id="Mermaid Siren-701"
			image="units/merfolk/siren.png"
			language_name=_ "Mermaid Siren"
			level="3"
			max_attacks="1"
			max_experience="105"
			max_hitpoints="1"
			max_moves="0"
			movement="7"
			movement_type="swimmer"
			moves="0"
			profile="portraits/merfolk/initiate.png"
			race="merman"
			random_gender="no"
			random_traits="no"
			resting="yes"
			side="3"
			type="Mermaid Siren"
			undead_variation="swimmer"
			underlying_id="701"
			unrenamable="yes"
			upkeep="full"
			usage="mixed fighter"
			x="17"
			y="11"
			zoc="yes"
			[defense]
				castle="60"
				cave="80"
				deep_water="50"
				flat="70"
				forest="70"
				frozen="70"
				fungus="80"
				hills="70"
				impassable="80"
				mountains="80"
				reef="30"
				sand="70"
				shallow_water="40"
				swamp_water="40"
				unwalkable="80"
				village="60"
			[/defense]
			[movement_costs]
				castle="1"
				cave="3"
				deep_water="1"
				flat="2"
				forest="5"
				frozen="2"
				fungus="3"
				hills="5"
				impassable="99"
				mountains="99"
				reef="2"
				sand="2"
				shallow_water="1"
				swamp_water="1"
				unwalkable="99"
				village="1"
			[/movement_costs]
			[resistance]
				arcane="100"
				blade="100"
				cold="80"
				fire="100"
				impact="100"
				pierce="100"
			[/resistance]
			[advancement]
#textdomain wesnoth
				description=_ "Max HP bonus +3, Max XP +20%"
				id="amla_default"
				image="misc/icon-amla-tough.png"
				max_times="100"
				strict_amla="yes"
				[effect]
					apply_to="hitpoints"
					heal_full="yes"
					increase_total="3"
				[/effect]
				[effect]
					apply_to="max_experience"
					increase="20%"
				[/effect]
				[effect]
					apply_to="status"
					remove="poisoned"
				[/effect]
				[effect]
					apply_to="status"
					remove="slowed"
				[/effect]
			[/advancement]
			[portrait]
				image="portraits/merfolk/transparent/initiate.png"
				mirror="false"
				side="left"
				size="400"
			[/portrait]
			[portrait]
				image="portraits/merfolk/transparent/initiate.png"
				mirror="true"
				side="right"
				size="400"
			[/portrait]
			[variables]
			[/variables]
			[status]
				hidden="yes"
				stoned="on"
			[/status]
			[attack]
				damage="12"
#textdomain wesnoth-units
				description=_ "naia touch"
				icon="attacks/touch-faerie.png"
				name="naia touch"
				number="1"
				range="melee"
				type="impact"
				[specials]
					[chance_to_hit]
						cumulative="no"
#textdomain wesnoth
						description=_ "Magical:
This attack always has a 70% chance to hit regardless of the defensive ability of the unit being attacked."
						id="magical"
						name=_ "magical"
						value="70"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[attack]
				damage="15"
#textdomain wesnoth-units
				description=_ "water spray"
				icon="attacks/waterspray.png"
				name="water spray"
				number="3"
				range="ranged"
				type="impact"
				[specials]
					[chance_to_hit]
						cumulative="no"
#textdomain wesnoth
						description=_ "Magical:
This attack always has a 70% chance to hit regardless of the defensive ability of the unit being attacked."
						id="magical"
						name=_ "magical"
						value="70"
					[/chance_to_hit]
				[/specials]
			[/attack]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
	[/side]
	[time]
		blue="0"
		green="-20"
		id="dawn"
		image="misc/schedule-dawn.png"
		lawful_bonus="0"
		name=_ "Dawn"
		red="-20"
	[/time]
	[time]
		blue="0"
		green="0"
		id="morning"
		image="misc/schedule-morning.png"
		lawful_bonus="25"
		name=_ "Morning"
		red="0"
	[/time]
	[time]
		blue="0"
		green="0"
		id="afternoon"
		image="misc/schedule-afternoon.png"
		lawful_bonus="25"
		name=_ "Afternoon"
		red="0"
	[/time]
	[time]
		blue="-20"
		green="-20"
		id="dusk"
		image="misc/schedule-dusk.png"
		lawful_bonus="0"
		name=_ "Dusk"
		red="0"
	[/time]
	[time]
		blue="-10"
		green="-40"
		id="first_watch"
		image="misc/schedule-firstwatch.png"
		lawful_bonus="-25"
		name=_ "First Watch"
		red="-40"
	[/time]
	[time]
		blue="-10"
		green="-40"
		id="second_watch"
		image="misc/schedule-secondwatch.png"
		lawful_bonus="-25"
		name=_ "Second Watch"
		red="-40"
	[/time]
	[music]
		ms_after="0"
		ms_before="12000"
		name="knolls.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="wanderer.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="battle.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="transience.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="revelation.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="loyalists.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="the_king_is_dead.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="knalgan_theme.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="the_city_falls.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="nunc_dimittis.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="breaking_the_chains.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="elvish-theme.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="legends_of_the_north.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="traveling_minstrels.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="underground.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="vengeful.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="frantic.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="the_dangerous_symphony.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="heroes_rite.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="suspense.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="the_deep_path.ogg"
	[/music]
	[music]
		append="yes"
		ms_after="0"
		ms_before="12000"
		name="siege_of_laurelmor.ogg"
	[/music]
	[variables]
		damage_inflicted="28"
		side_number="1"
		turn_number="28"
	[/variables]
	[player]
		can_recruit="Elvish Archer,Elvish Fighter,Elvish Scout,Elvish Shaman,Mage,Merman Hunter,Wose"
		gold="-1"
		gold_add="no"
		save_id="Sandermatt2"
	[/player]
	[player]
		can_recruit="Elvish Archer,Elvish Fighter,Elvish Scout,Elvish Shaman,Mage,Merman Hunter,Wose"
		gold="-1"
		gold_add="no"
		save_id="ai3"
	[/player]
	[player]
		can_recruit="Dwarvish Fighter,Dwarvish Guardsman,Dwarvish Thunderer,Dwarvish Ulfserker,Footpad,Gryphon Rider,Poacher,Thief"
		gold="-1"
		gold_add="no"
		save_id="freesole1"
	[/player]
[/snapshot]
[replay_start]
	current_tod="5"
#textdomain wesnoth-multiplayer
	description=_ "These caves were once the lair of Chak'kso Ney'yks, a legendary Elder Basilisk. The petrified forms of his victims remain as monuments to his savage power."
	experience_modifier="70"
	hash="McPgEzp.LJt7h.t1Qr.c0wdN6DSMrFSDz4LpPy.MjaHg-SJ4NO6RN7,AJkIOwBZE.K6Gt>F,tbOGluI+4Fgcg7SDu,wQihAGrihF1c3lurN0vQXAvq<LoFHYPrX2RHE1"
	id="multiplayer_Basilisk"
	map_data="border_size=1
usage=map

_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Mm^Xm       , Mm^Xm       , Mm^Xm       , Gs^Fp       , Mm^Xm       , Gs^Fp       , Hh          , Gs^Fms      , Ww          , Ww          , Ww          , Gs^Fp       , Gs^Fms      , Hh          , Mm^Xm       , Gs^Fp       , Mm^Xm       , Mm^Xm       , Mm          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Gs^Fp       , Mm          , Gg^Fet      , Mm          , Gs^Fp       , Mm^Xm       , Gs^Fms      , Gg^Ve       , Gg          , Hh          , Mm          , Ww          , Gs^Fp       , Hh          , Gg          , Mm          , Gg^Fet      , Mm^Xm       , Mm          , Mm          , Hh          , Gs^Fp       , Ggf         , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Hh          , Ggf         , Gg          , Hh          , Gg^Ve       , Hh          , Gs^Fms      , Mm          , Mm          , Ggf         , Gg          , Gg          , Ch          , 1 Kh        , Ch          , Gg          , Hh          , Gg          , Gg          , Gs^Fp       , Gg          , Gg          , Gg          , Gg          , Gs^Fms      , Wwf         , Wwf         , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Wwf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Kh          , Ch          , Gg          , Wwf         , Gg          , Ch          , Kh          , Gs^Fp       , Mm          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Mm          , Wwf         , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Wwf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Re          , Gg          , Re          , Gg          , Gg          , Gg          , Gg          , Wwf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Hh          , Gs^Fp       , Gg^Ve       , Gg          , Ggf         , Mm          , Wwf         , Xu          , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Xu          , Xu          , Xu          , Wwf         , Gg          , Gg          , Gs^Fp       , Hh          , Gs^Fp       , Gg          , Gg          , Re          , Re          , Xu          , Re          , Re^Uf       , Gg          , Re          , Wwf         , Gg          , Gs^Fms      , Gg          , Re          , Re          , Re          , Xu          , Gg          , Gg          , Hh          , Gg          , Gg          , Gs^Fp       , Wwf         , Wwf         , Xu          , Uh          , Xu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Wwf         , Mm          , Gg          , Gg          , Re^Uf       , Mm          , Gg          , Re          , Re          , Ww          , Xu          , Uh          , Uu^Vud      , Xu          , Re          , Wwf         , Wwf         , Re          , Gg          , Re          , Re          , Wwf         , Xu          , Xu          , Re^Uf       , Re          , Gg          , Gg          , Hh          , Ggf         , Hh          , Wwf         , Xu          , Wwf         , Uu          , Uu^Uf       , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Gs^Fp       , Hh          , Hh          , Gg          , Gg          , Hh          , Gs^Fms      , Gg          , Re          , Ww          , Wo          , Ww          , Wwf         , Wwf         , Uh          , Uu^Uf       , Wwf         , Ww          , Ss^Vhs      , Re          , Xu          , Wwf         , Ur          , Ur          , Re          , Re          , Gs^Fms      , Hh          , Gg^Uf       , Gg          , Gg          , Re          , Re^Uf       , Wwf         , Wwf         , Uu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Wwf         , Wwf         , Ggf         , Ggf         , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Re          , Ww          , Ww          , Ww          , Xu          , Uh          , Xu          , Ur          , Ww          , Ww          , Ww          , Xu          , Ww          , Uh          , Uu^Vu       , Re          , Gg          , Gg          , Gg          , Gg^Ve       , Gg          , Gg          , Gg          , Gg          , Re          , Gs^Fp       , Wwf         , Xu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Gs^Fms      , Gs^Fp       , Re^Uf       , Re          , Gg          , Gg          , Gg          , Gg          , Gg          , Ss^Vhs      , Gg          , Re          , Wwf         , Uh          , Xu          , Ur          , Xu          , Wwf         , Ww          , Wo          , Uu          , Uh          , Ww          , Xu          , Xu          , Re          , Re          , Gg          , Gg          , Gg          , Gs^Fms      , Hh          , Hh          , Gg          , Gg          , Re          , Re          , Wwf         , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Mm          , Hh          , Re          , Re          , Gg          , Gg          , Hh          , Gs^Fp       , Ss          , Gg          , Hh          , Re          , Wwf         , Xu          , Xu          , Ur          , Wwf         , Wwf         , Ww          , Uu^Uf       , Ww          , Ww          , Wwf         , Uu^Uf       , Xu          , Uh          , Wwf         , Re          , Hh          , Hh          , Mm          , Gs^Fp       , Hh          , Gs^Fp       , Gg          , Re          , Re          , Wwf         , Wwf         , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Wwf         , Re^Uf       , Re          , Gg          , Gg          , Gs^Fp       , Re^Uf       , Gs^Fms      , Mm          , Gs^Fp       , Hh          , Re          , Re          , Uh          , Xu          , Uu^Uf       , Ww          , Ww          , Uu          , Uu^Uf       , Ww          , Wwf         , Xu          , Ur          , Xu          , Xu          , Wwf         , Re          , Re          , Gs^Fp       , Gg          , Ss          , Gg          , Gg          , Gg          , Gg          , Gg          , Re^Uf       , Mm          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Re          , Gg          , Gg          , Gg          , Gg          , Hh          , Gg          , Hh          , Gg          , Gg          , Gg          , Re          , Uu^Vu       , Xu          , Ww          , Uh          , Ww          , Wo          , Ww          , Wwf         , Xu          , Ur          , Xu          , Uh          , Ww          , Re          , Re          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Ggf         , Hh          , Hh          , Gs^Fp       , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Wwf         , Hh          , Hh          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Re          , Re          , Ur          , Uh          , Xu          , Xu          , Ss^Vhs      , Ww          , Wwf         , Ur          , Uh          , Uh          , Wwf         , Ww          , Wo          , Ww          , Re          , Re          , Gg          , Gg          , Gs^Fms      , Gg          , Gg          , Gg          , Gg          , Gs^Fp       , Wwf         , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Gs^Fp       , Re          , Gg          , Ggf         , Gg          , Gg          , Gg          , Gg          , Gs^Fp       , Xu          , Ur          , Wwf         , Wwf         , Re          , Re          , Re          , Ww          , Wwf         , Uu^Uf       , Xu          , Wwf         , Uh          , Ww          , Ww          , Ww          , Re          , Ss^Vhs      , Gg          , Hh          , Mm          , Hh          , Re^Uf       , Gg          , Gg          , Wwf         , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Uu^Uf       , Uu          , Wwf         , Wwf         , Wwf         , Re          , Hh          , Mm          , Gs^Fp       , Gg          , Gg          , Uh          , Xu          , Xu          , Re          , Re          , Gg          , Gg          , Gg          , Wwf         , Re          , Re          , Re^Uf       , Uu^Vud      , Xu          , Xu          , Re          , Re          , Gg          , Gg          , Gg          , Gs^Fms      , Ggf         , Gs^Fp       , Gg          , Gg          , Wwf         , Wwf         , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , Xu          , Wwf         , Uh          , Xu          , Xu          , Wwf         , Re          , Re^Uf       , Ggf         , Gg^Uf       , Gs^Fp       , Gg          , Gg          , Re          , Gg          , Re          , Gg          , Gs^Fp       , Gg          , Wwf         , Gg          , Gg          , Gg          , Re          , Re          , Re          , Re          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Wwf         , Wwf         , Xu          , Xu          , Xu          , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , Xu          , Xu          , Xu          , Xu          , Wwf         , Re          , Gs^Fms      , Gg          , Gg^Ve       , Ggf         , Gg          , Gg          , Gg          , Ggf         , Gg          , Kh          , Gg          , Gg          , Wwf         , Gg          , Gg          , Kh          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Gg          , Wwf         , Xu          , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Xu          , Wwf         , Wwf         , Re          , Mm          , Hh          , Gg          , Gg          , Gg          , Gg^Ve       , Gg          , Gs^Fms      , Gg          , Ch          , Ch          , Wwf         , Ch          , Ch          , Gg          , Gg          , Gg          , Gg          , Gg^Fet      , Gg          , Gg^Ve       , Gg          , Gg          , Gs^Fp       , Gg          , Wwf         , Xu          , Xu          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Xu          , Wwf         , Re          , Re          , Gs^Fp       , Re          , Gg          , Hh          , Hh          , Gs^Fms      , Gg          , Gg          , Hh          , Mm          , 2 Kh        , Gs^Fp       , Gg          , Gg          , Gg^Ve       , Gs^Fp       , Gg          , Hh          , Hh          , Gs^Fp       , Hh          , Gs^Fms      , Gg          , Wwf         , Wwf         , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Wwf         , Re          , Re          , Re          , Gs^Fp       , Mm          , Mm          , Mm          , Mm          , Gs^Fms      , Gg^Fet      , Hh          , Ww          , Hh          , Hh          , Gs^Fms      , Hh          , Mm          , Hh          , Mm^Xm       , Mm          , Mm          , Hh          , Gs^Fp       , Mm          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Mm          , Hh          , Hh          , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm          , Mm^Xm       , Ww          , Ww          , Mm          , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm^Xm       , Mm          , Mm^Xm       , Mm          , Hh          , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , Mm^Xm       , _off^_usr   , Mm          , _off^_usr   , Gs^Fp       , _off^_usr   , Mm^Xm       , _off^_usr   , Ww          , _off^_usr   , Gs^Fp       , _off^_usr   , Hh          , _off^_usr   , Gs^Fp       , _off^_usr   , Mm^Xm       , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
_off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   , _off^_usr   
"
	mp_countdown="yes"
	mp_countdown_action_bonus="20"
	mp_countdown_init_time="270"
	mp_countdown_reservoir_time="330"
	mp_countdown_turn_bonus="210"
	mp_fog="yes"
	mp_shroud="no"
	mp_use_map_settings="no"
	mp_village_gold="2"
	name=_ "2p - Caves of the Basilisk"
	next_underlying_unit_id="0"
#textdomain wesnoth
	objectives=_ "Victory:
@Defeat enemy leader(s)"
	observer="yes"
	random_seed="30374"
	random_start_time="yes"
	scenario="(L) freesole - Sandermatt"
	turns="-1"
	version="1.6"
	[time]
		green="-20"
		id="dawn"
		image="misc/schedule-dawn.png"
		name=_ "Dawn"
		red="-20"
		sound="ambient/morning.ogg"
	[/time]
	[time]
		id="morning"
		image="misc/schedule-morning.png"
		lawful_bonus="25"
		name=_ "Morning"
	[/time]
	[time]
		id="afternoon"
		image="misc/schedule-afternoon.png"
		lawful_bonus="25"
		name=_ "Afternoon"
	[/time]
	[time]
		blue="-20"
		green="-20"
		id="dusk"
		image="misc/schedule-dusk.png"
		name=_ "Dusk"
		sound="ambient/night.ogg"
	[/time]
	[time]
		blue="-10"
		green="-40"
		id="first_watch"
		image="misc/schedule-firstwatch.png"
		lawful_bonus="-25"
		name=_ "First Watch"
		red="-40"
	[/time]
	[time]
		blue="-10"
		green="-40"
		id="second_watch"
		image="misc/schedule-secondwatch.png"
		lawful_bonus="-25"
		name=_ "Second Watch"
		red="-40"
	[/time]
	[music]
		ms_before="12000"
		name="knolls.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="wanderer.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="battle.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="transience.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="the_king_is_dead.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="knalgan_theme.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="the_city_falls.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="nunc_dimittis.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="revelation.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="loyalists.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="breaking_the_chains.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="elvish-theme.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="legends_of_the_north.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="traveling_minstrels.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="underground.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="vengeful.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="frantic.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="the_dangerous_symphony.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="heroes_rite.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="suspense.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="the_deep_path.ogg"
	[/music]
	[music]
		append="yes"
		ms_before="12000"
		name="siege_of_laurelmor.ogg"
	[/music]
	[event]
		name="prestart"
		[music]
			ms_before="12000"
			name="knolls.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="wanderer.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="battle.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="transience.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="revelation.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="loyalists.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="the_king_is_dead.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="knalgan_theme.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="the_city_falls.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="nunc_dimittis.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="breaking_the_chains.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="elvish-theme.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="legends_of_the_north.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="traveling_minstrels.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="underground.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="vengeful.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="frantic.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="the_dangerous_symphony.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="heroes_rite.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="suspense.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="the_deep_path.ogg"
		[/music]
		[music]
			append="yes"
			ms_before="12000"
			name="siege_of_laurelmor.ogg"
		[/music]
	[/event]
	[era]
		id="era_default"
#textdomain wesnoth-multiplayer
		name=_ "Default"
		[multiplayer_side]
			flag_rgb="magenta"
			id="Random"
			image="units/random-dice.png"
			name=_ "Random"
			random_faction="yes"
		[/multiplayer_side]
		[multiplayer_side]
			flag_rgb="magenta"
			id="Loyalists"
			image="units/human-loyalists/lieutenant.png"
			leader="Lieutenant,Swordsman,Pikeman,Javelineer,Shock Trooper,Longbowman,White Mage,Red Mage"
			name=_ "Loyalists"
			random_leader="Lieutenant,Swordsman,Pikeman,Javelineer,Longbowman,Red Mage"
			recruit="Cavalryman,Horseman,Spearman,Fencer,Heavy Infantryman,Bowman,Mage,Merman Fighter"
			terrain_liked="Gg, Ww, Wo"
			type="Lieutenant"
			[ai]
				recruitment_pattern="fighter,fighter,fighter,archer,mixed fighter,scout"
				[team_formula]
					rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
				[/team_formula]
			[/ai]
		[/multiplayer_side]
		[multiplayer_side]
			flag_rgb="magenta"
			id="Rebels"
			image="units/elves-wood/captain.png"
			leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,White Mage,Red Mage,Elder Wose"
			name=_ "Rebels"
			random_leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,Red Mage"
			recruit="Elvish Fighter,Elvish Archer,Mage,Elvish Shaman,Elvish Scout,Wose,Merman Hunter"
			terrain_liked="Ff, Fa, Ss, Ww"
			type="Elvish Captain"
			[ai]
				recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
				[team_formula]
					rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
				[/team_formula]
			[/ai]
		[/multiplayer_side]
		[multiplayer_side]
			flag_rgb="magenta"
			id="Northerners"
			image="units/orcs/warrior.png"
			leader="Orcish Warrior,Troll,Troll Rocklobber,Orcish Crossbowman,Orcish Slayer"
			name=_ "Northerners"
			recruit="Orcish Grunt,Troll Whelp,Wolf Rider,Orcish Archer,Orcish Assassin,Naga Fighter,Goblin Spearman"
			terrain_liked="Hh, Ha, Mm, Ss"
			type="Orcish Warrior"
			[ai]
				recruitment_pattern="fighter,fighter,fighter,mixed fighter,archer,scout"
				[team_formula]
					rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
				[/team_formula]
			[/ai]
		[/multiplayer_side]
		[multiplayer_side]
			flag_rgb="magenta"
			id="Undead"
			image="units/undead-necromancers/dark-sorcerer.png"
			leader="Dark Sorcerer,Revenant,Deathblade,Bone Shooter,Necrophage"
			name=_ "Undead"
			random_leader="Dark Sorcerer,Revenant,Deathblade,Bone Shooter"
			recruit="Skeleton,Skeleton Archer,Walking Corpse,Ghost,Vampire Bat,Dark Adept,Ghoul"
			terrain_liked="Ss, Hh, Ha, Ww"
			type="Dark Sorcerer"
			[ai]
				recruitment_pattern="fighter,fighter,archer,fighter,scout,archer"
				[team_formula]
					rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
				[/team_formula]
			[/ai]
		[/multiplayer_side]
		[multiplayer_side]
			flag_rgb="magenta"
			id="Knalgan Alliance"
			image="units/dwarves/steelclad.png"
			leader="Dwarvish Steelclad,Dwarvish Thunderguard,Dwarvish Stalwart,Rogue,Trapper"
			name=_ "Knalgan Alliance"
			random_leader="Dwarvish Steelclad,Dwarvish Thunderguard,Rogue,Trapper"
			recruit="Dwarvish Guardsman,Dwarvish Fighter,Dwarvish Ulfserker,Dwarvish Thunderer,Thief,Poacher,Footpad,Gryphon Rider"
			terrain_liked="Hh, Ha, Mm"
			type="Dwarvish Steelclad"
			[ai]
				recruitment_pattern="fighter,fighter,fighter,mixed fighter,archer,scout"
				[team_formula]
					rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
				[/team_formula]
			[/ai]
		[/multiplayer_side]
		[multiplayer_side]
			flag_rgb="magenta"
			id="Drakes"
			image="units/drakes/flare.png"
			leader="Drake Flare,Fire Drake,Drake Slasher,Drake Gladiator,Drake Warrior,Saurian Oracle,Saurian Soothsayer"
			name=_ "Drakes"
			random_leader="Drake Flare,Fire Drake,Drake Slasher,Drake Gladiator,Drake Warrior"
			recruit="Drake Burner,Drake Clasher,Drake Glider,Drake Fighter,Saurian Skirmisher,Saurian Augur"
			terrain_liked="Hh, Ha, Ds, Ss"
			type="Drake Flare"
			[ai]
				recruitment_pattern="fighter,fighter,archer,healer,scout,scout"
				[team_formula]
					rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
				[/team_formula]
			[/ai]
		[/multiplayer_side]
		[event]
			name="prestart"
			[store_unit]
				kill="yes"
				variable="leaders_to_make_quick"
				[filter]
					canrecruit="yes"
					[filter_wml]
						max_moves="4"
					[/filter_wml]
				[/filter]
			[/store_unit]
			[set_variable]
				name="i"
				value="0"
			[/set_variable]
			[while]
				[variable]
					less_than="$leaders_to_make_quick.length"
					name="i"
				[/variable]
				[do]
					[set_variables]
						mode="merge"
						name="leaders_to_make_quick[$i].modifications"
						[literal]
							[trait]
#textdomain wesnoth
								female_name=_ "female^quick"
								id="quick"
								male_name=_ "quick"
								[effect]
									apply_to="movement"
									increase="1"
								[/effect]
								[effect]
									apply_to="hitpoints"
									increase_total="-5%"
								[/effect]
							[/trait]
						[/literal]
					[/set_variables]
					[clear_variable]
						name="leaders_to_make_quick[$i].max_moves,leaders_to_make_quick[$i].moves,leaders_to_make_quick[$i].max_hitpoints,leaders_to_make_quick[$i].hitpoints"
					[/clear_variable]
					[unstore_unit]
						variable="leaders_to_make_quick[$i]"
					[/unstore_unit]
					[set_variable]
						add="1"
						name="i"
					[/set_variable]
				[/do]
			[/while]
			[clear_variable]
				name="i"
			[/clear_variable]
			[clear_variable]
				name="leaders_to_make_quick"
			[/clear_variable]
		[/event]
	[/era]
	[side]
		allow_changes="yes"
		allow_player="yes"
		canrecruit="yes"
		colour="1"
		controller="human"
		current_player="freesole"
		flag_rgb="magenta"
		fog="yes"
		gender="male"
		gold="100"
		id="freesole1"
		image="units/dwarves/steelclad.png"
		income="0"
		leader="Dwarvish Steelclad,Dwarvish Thunderguard,Dwarvish Stalwart,Rogue,Trapper"
		mp_countdown="yes"
		mp_countdown_action_bonus="20"
		mp_countdown_init_time="270"
		mp_countdown_reservoir_time="330"
		mp_countdown_turn_bonus="210"
		name="freesole"
		random_leader="Dwarvish Steelclad,Dwarvish Thunderguard,Rogue,Trapper"
		recruit="Dwarvish Guardsman,Dwarvish Fighter,Dwarvish Ulfserker,Dwarvish Thunderer,Thief,Poacher,Footpad,Gryphon Rider"
		save_id="freesole1"
		share_maps="no"
		share_view="yes"
		shroud="no"
		side="1"
		team_name="1"
		terrain_liked="Hh, Ha, Mm"
		type="Trapper"
		user_team_name="Team 1"
		village_gold="2"
		[ai]
			recruitment_pattern="fighter,fighter,fighter,mixed fighter,archer,scout"
			[team_formula]
				rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
			[/team_formula]
		[/ai]
		[ai]
			villages_per_scout="8"
		[/ai]
	[/side]
	[side]
		allow_changes="yes"
		allow_player="yes"
		canrecruit="yes"
		colour="2"
		controller="network"
		current_player="Sandermatt"
		flag_rgb="magenta"
		fog="yes"
		gender="male"
		gold="100"
		id="Sandermatt2"
		image="units/elves-wood/captain.png"
		income="0"
		leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,White Mage,Red Mage,Elder Wose"
		mp_countdown="yes"
		mp_countdown_action_bonus="20"
		mp_countdown_init_time="270"
		mp_countdown_reservoir_time="330"
		mp_countdown_turn_bonus="210"
		name="Sandermatt"
		random_leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,Red Mage"
		recruit="Elvish Fighter,Elvish Archer,Mage,Elvish Shaman,Elvish Scout,Wose,Merman Hunter"
		save_id="Sandermatt2"
		share_maps="no"
		share_view="yes"
		shroud="no"
		side="2"
		team_name="2"
		terrain_liked="Ff, Fa, Ss, Ww"
		type="Elvish Ranger"
		user_team_name="Team 2"
		village_gold="2"
		[ai]
			recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
			[team_formula]
				rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
			[/team_formula]
		[/ai]
		[ai]
			villages_per_scout="8"
		[/ai]
	[/side]
	[side]
		allow_changes="yes"
		allow_player="no"
		canrecruit="no"
		colour="5"
		controller="ai"
		flag_rgb="magenta"
		fog="yes"
		gender="female"
		gold="100"
		hidden="yes"
		id="ai3"
		image="units/elves-wood/captain.png"
		income="0"
		leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,White Mage,Red Mage,Elder Wose"
		mp_countdown="yes"
		mp_countdown_action_bonus="20"
		mp_countdown_init_time="270"
		mp_countdown_reservoir_time="330"
		mp_countdown_turn_bonus="210"
		name=_ "Computer player"
		no_leader="yes"
		random_leader="Elvish Captain,Elvish Hero,Elvish Ranger,Elvish Marksman,Elvish Druid,Elvish Sorceress,Red Mage"
		recruit="Elvish Fighter,Elvish Archer,Mage,Elvish Shaman,Elvish Scout,Wose,Merman Hunter"
		save_id="ai3"
		share_maps="no"
		share_view="yes"
		shroud="no"
		side="3"
		team_name="3"
		terrain_liked="Ff, Fa, Ss, Ww"
		type="Elvish Sorceress"
		user_team_name="Team 3"
		village_gold="2"
		[unit]
#textdomain wesnoth-multiplayer
			description=_ "The winds of the dark sky blew so cold,
The moon was high, the night was old,
Brave was the drake that dared forsake
His home to steal the Basilisk's gold.

On that dark night, the skies so churned,
He disregarded what he had learned,
Foolish but brave, to the Basilisk's cave,
He flew, and the fire within him burned.

Alas, that fire burns no more,
For the Basilisk, with one mighty roar,
Chilled him to the bone, and he turned to stone,
And so he stays forevermore.

The winds of the sky blow so cold,
The years pass by, the days are old,
Here stands that drake, who dared forsake
His home to steal the Basilisk's gold.
(inscribed by Flametrooper)"
			random_traits="no"
			type="Sky Drake"
			unrenamable="yes"
			x="27"
			y="14"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "Xikkrisx of Syrsszk was a powerful Saurian warrior, sent to this region by the Elders of the Rysssrylosszkk Clan (translation: ''The Hunts-Foes-In-Boiling-Rivers Clan''). The Elders were preparing to make war on a human outpost, and were in great need of the powerful magics of Oxsrrsk, a Saurian Mystic who had last been seen heading in the direction of Ruaskkolin Lake. Xikkrisx found the petrified body of Oxsrrsk, along with a carefully bound scroll that had apparently been dropped into a small crevice in the cave floor. He opened the scroll and read a brief passage from the middle of the text: ''After he was bound and cast from the Upper World, Chak'kso's enraged spirit sought release, and was able to exert a corrupting influence on certain regions of the Upper World, channeled through ''pathways of stone'' that extend from the surface into the depths of the Under Reaches. This rage altered the eggs of great lizards, shaping their bodies and spirits into implements of Chak'kso's hatred.'' Confused, Xikkrisx fixed his attention on the task at hand. Thinking that perhaps the Elders could find some way to restore Oxsrrsk, he began the long and strenuous task of hauling the statue back to the domain of the Rysssrylosszkk Clan. Exhausted, and not having traveled far from the lake, Xikkrisx set the statue down inside of a small cave, and lay down to rest. He was awoken by a bone-chilling roar."
			facing="sw"
			name=_ "Xikkrisx"
			random_traits="no"
			type="Saurian Flanker"
			unrenamable="yes"
			x="40"
			y="8"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "Oxsrrsk was a powerful Saurian Oracle, who had, in a raid against the rival Xraxss Clan, acquired (from the vaults of the now-dead Oracle Hesx-Rzzak) a most fascinating scroll. The scroll was entitled ''Ney'yks of the Granite Gaze,'' and told of a creature known as the ''Chak'kso Ney'yks,'' a name which, in an ancient saurian tongue, meant ''Eldest Child of Chak'kso.'' Chak'kso was believed to have been a powerful demigod of the Under Reaches, described as a ''great demon of the earth'' in the Elvish Histories. According to these histories, Chak'kso had once sought to transform all life on the planet to stone; so great was his hatred for creatures of flesh. He was ultimately defeated and bound by powerful magics, but in the centuries following his banishment (to a realm far below the surface of the world) a new breed of creature began appearing in the Histories, a breed with the ability to turn any being of flesh into stone. There was a period when these Basilisks (as they came to be known) wreaked havoc on the world of the living, turning thousands to stone. One by one, and at great cost, the Basilisks were defeated. All, it would seem, but one; the Basilisk known as ''The Ney'yks,'' or ''The Eldest Child,'' in the modern tongue. Supremely convinced of his ability to locate and bind this powerful creature into his service, Oxsrrsk set out on his journey..."
			facing="sw"
			name=_ "Oxsrrsk"
			random_traits="no"
			type="Saurian Oracle"
			unrenamable="yes"
			x="39"
			y="8"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "Slim of Stature, dexterous Hands
- - Seven Stones and Eleven
Left his Foes so slim a Chance
- - Seven Stones and Eleven
Marksman known as Dragonbane
'mongst the Statues here was slain
- - Seven Stones - and the Elven
(inscribed by Gauteamus)"
			random_traits="no"
			type="Elvish Marksman"
			unrenamable="yes"
			x="2"
			y="11"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "Blum Duk was renowned among his goblin clan for having tamed one of the Dire Wolves of the mountains, and he had the courage to match. His leadership and skills alone were what kept the area's goblins alive despite human and elvish menaces. Rumor had it that his wolf had slain fifty men and a hundred Elves.
Thus, when he heard of the awful monster that was inhabiting the area, it was only natural that he ride out alone to face it. All the other goblins expected him to slay the creature easily and drag back its carcass to feast on.
He was in for quite a shock. As soon as he saw the Basilisk, Blum Duk cowered in fright. He tried to wheel his wolf around to run away, but it wouldn't move. As the creature stalked towards him, he screamed his last words: Good Gog, dog, are yer legs made of stone?!?
(inscribed by Elvish Pillager)"
			name=_ "Blum Duk"
			random_traits="no"
			type="Direwolf Rider"
			unrenamable="yes"
			x="10"
			y="17"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "Rah Ihn Mar, Champion of the Burning Hills, made his way to the Ruaskkolin Lake region in pursuit of the Elvish Hero Terowydlithrol, known among Elves as ''The Dragonbane.'' It was said that Terowydlithrol had killed a Dragon of Fire that threatened an Elvish village, and initiated a ''counterattack'' in which some 37 Drakes, camping in a nearby ravine and believed to be in allegiance with the Dragon, were slaughtered. Knowing that these Drakes were innocent, Rah Ihn Mar came to Ruaskkolin Lake to hunt down and slay Terowydlithrol, who had been seen entering the region but a day ago. Burning for vengeance, Rah Ihn Mar began the hunt....."
			name=_ "Rah Ihn Mar"
			random_traits="no"
			type="Armageddon Drake"
			unrenamable="yes"
			x="11"
			y="14"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "He had lived there for ages upon ages, in the depths of the water, preying upon the various fish and frogs and merfolk that entered his domain. It was his lake, no other's, and though it was not large, he was its master. Then, the Basilisk came, and looked into the Serpent's eyes. And the Serpent had not died, but it was no longer alive. Thus the new lord of the lake had arrived.
(inscribed by Turin)"
			facing="sw"
			random_traits="no"
			type="Sea Serpent"
			unrenamable="yes"
			x="22"
			y="12"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "A brave hero of Wesnoth's Golden Age, this great rider and commander of men came to this evil place while on a raid against the orcs. Caught unaware by the foul creatures, many of his fellows were killed, but he fought valiantly, slaying many a foe. But alas! The foul Basilisk turned him to stone even as he slew the last orc. Now all that is left is a stark reminder of his once great bearing and strength.
(inscribed by Fynmiir)"
			facing="sw"
			random_traits="no"
			type="Grand Knight"
			unrenamable="yes"
			x="25"
			y="14"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "Bramwythl the Wose was always considered a slow, taciturn fellow, even by other Woses. More than any other Wose, he enjoyed simply standing alone in the sun, arms upraised, admiring the beauty of the empty sky. Once, even, he confided in a fellow that his greatest wish was to be able to bask forever in the sun's glory.
However, not long after, the local wose community heard of the approach of a horrible monster, powerful enough to easily destroy the few woses that lived in the area. They quickly moved off (quickly for Woses, anyway), but Bramwythl was left behind - in their haste, no one had remembered to find him and tell him of the danger.
He was taken quite unawares by the Basilisk, and turned to stone before he even recognized the beast. His petrified form still stands there today, warmed by the sun's rays, under an open sky. His greatest wish has been granted.
(inscribed by Elvish Pillager)"
			name=_ "Bramwythl"
			random_traits="no"
			type="Elder Wose"
			unrenamable="yes"
			x="32"
			y="6"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "General Talael Ryndoc came to this place to fight a duel with the Grand Marshal Aethec Corryn, but the two men never found one another. "
			facing="sw"
			name=_ "Talael Ryndoc"
			random_traits="no"
			type="Iron Mauler"
			unrenamable="yes"
			x="34"
			y="11"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "The last words spoken by Grand Marshal Aethec Corryn: ''Talael Ryndoc! I am through searching for you! I shall make my way back to Haldric's Hall, and inform the court that you were too much of a coward to attend our duel! Your disgrace shall be more agonizing than the death I'd have given you!''

Perhaps he should not have shouted quite so loudly.... "
			facing="sw"
			name=_ "Aethec Corryn"
			random_traits="no"
			type="Grand Marshal"
			unrenamable="yes"
			x="15"
			y="11"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "This brave warrior, known as Rilhon among the Naga, heard tell of a fabulous treasure that had been lost in these watery caves- a spear whose head was said to have been fashioned from the tooth of Chak'kso Ney'yks, an Elder Basilisk slain long ago by the Elvish hero, Eloralduil. According to the legend, the weapon rested somewhere on the bottom of this very lake (Ruaskkolin Lake, named for a well-known Sea Serpent who made it his home). Having prepared himself for battle with the Serpent, Rilhon met with two rather large surprises. The first was the petrified form of Ruaskkolin the Serpent. The second was the very-much-alive Chak'kso Ney'yks, who was, oddly enough, in possession of all of his teeth.
(inscribed by Paterson)"
			name=_ "Rilhon"
			random_traits="no"
			type="Naga Myrmidon"
			unrenamable="yes"
			x="20"
			y="12"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[unit]
			description=_ "Through waves and rocky channels
blue and white
she pulled and pushed the tides
and taught the fishes how to speak to planets
silver green
with magic
running from her spirit into skins of kelp and shells of snails
a twisting of her tail and hands
she sent her songs to run on pin-tipped legs about the sands
and now
and now the strangest pause
for years and years
she hasn't moved her eyes

(inscribed by MJQ)"
			facing="sw"
			random_traits="no"
			type="Mermaid Siren"
			unrenamable="yes"
			x="17"
			y="11"
			[status]
				stoned="on"
			[/status]
			[modifications]
				[trait]
					id="remove_hp"
					[effect]
						apply_to="hitpoints"
						increase_total="-100%"
					[/effect]
					[effect]
						apply_to="movement"
						set="0"
					[/effect]
				[/trait]
			[/modifications]
		[/unit]
		[ai]
			recruitment_pattern="fighter,fighter,archer,archer,mixed fighter,healer,scout"
			[team_formula]
				rulebase="fai 'recruitment.fai'
		# ===== Some general functions used later ==== #

def sumarize_values( input_map )
	sum(
		values(input_map)
	);

def lowest_value( input_map )
	choose( input_map, -value ).value;

def highest_value( input_map )
	choose( input_map, value ).value;

def change_numbers_to_percents( input_map )
	map( input_map, 
		(value*100) / highest_value(input_map) 
	);

def add_number_to_values( input_map, number )
	map( input_map, 
		value + number 
	);

#make sure we have only positive values in a map #

def make_positive_only( input_map )
	if( lowest_value( input_map ) < 0, 
		add_number_to_values( 
			input_map, 
			abs(lowest_value(input_map))
		), 
		input_map 
	);

def sumarize_maps_values( map_A, map_B )
	map( map_A + map_B, 
		value + map_A[key]
	);

		#===== Evaluation how good unit is on a map ===== #

# ==1==  evaluate average defense #
#gives map where key is id of terrain, and value is number of hexes of that terrain on a gamemap#

def locations_map(ai*) 
	tomap( 
		map( 
			map.terrain, 
			id 
		) 
	);

#filters terrain map, min_percent it minimal % of map that terrain has to occupy to be considered in later evaluations# 

def filtered_locations_map(ai*, min_percent)
	filter( 
		locations_map(ai) , 
		value >  (map.w * map.h) / ( 100 / min_percent ) 
	);

#returns average defense of the unit #

def unit_average_defense(ai*, unit, terrain_min_percent )
	sum( 
		values( 
			map(
				filtered_locations_map(ai,terrain_min_percent), 
				defense_on( 
					unit, 
					find(map.terrain,id=key).loc
				) *
				value
			) 
		) 
	) / 
	sum(
		values(
			filtered_locations_map(
				ai,
				terrain_min_percent
			)
		)
	);

#returns map of units from units_list and their average defense (more -> better) #

def map_units_average_defense(ai*, units_list, terrain_min_percent) 
	tomap(
		map( 
			units_list, 
			id 
		), 
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	);

def units_average_defense(ai*, units_list, terrain_min_percent)
	sum(
		map( 
			units_list, 'unit', 
			unit_average_defense(
				ai, 
				unit, 
				terrain_min_percent 
			) 
		) 
	) /
	size(
		units_list
	);


# ==2== TODO: evaluate unit effectivness based on movement points and movement cost#


		#===== Evaluation of game state - how good is ai doing ===== #

# ==1== based on unit cost and current amount of gold #
# returns number between 0 and 100 where: 0 we are losing, 100 we are winning #

def units_cost_gold_eval(ai*)
	min(
		[
			(
				(
					sum(
						map(
							allies, 'team', 
							sum(
								map(
									units_of_side[team], 
									cost
								)
							) + 
							teams[team].gold 
						)
					) * 
					100
				) / 
				sum(
					map(
						enemies, 'team', 
						sum(
							map(
								units_of_side[team], 
								cost
							)
						) + 
						max(
							[teams[team].gold, 0]
						) 
					)
				)
			) / 2,
			100
		]
	);

# ==2== based on village possession #

def count_allied_villages(ai*)
	sum(
		map(
			allies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

def count_enemy_villages(ai*)
	sum(
		map(
			enemies, 'side', 
			size(
				villages_of_side[side]
			)
		)
	);

# multipled by 1000 to increase precision #

def village_evaluation(ai*)
	(
		50000 + 
		(
			count_allied_villages(ai) - 
			count_enemy_villages(ai)
		) * 
		(
			50000 /
			size(
				villages
			)
		)
	) /
	1000;

# ==3== combined 2 of the above #

def eval(ai*)
	( 
		units_cost_gold_eval(ai) + 
		village_evaluation(ai)
	) / 
	2;

		#===== Evaluation how effective my units are against the enemy ===== #

#==1==  basic evaluation #

# evaluate how much damage unit can inflict - how much damage unit can get#

def evaluate_attacker_against_opponents(ai*, unit, enemy_units)
	sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( unit, enemy_unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				) 
			)
		)
	);

def evaluate_defender_against_opponents(ai*, unit, enemy_units)
	-sum( 
		map( 
			enemy_units, 'enemy_unit', 
			sum(
				map(
					[
						max_possible_damage_with_retaliation( enemy_unit, unit )
					],
					max(
						[
							self[0] - self[2],
							self[1] - self[3]
						]
					)
				)
			)
		)
	);

def units_hp_map(ai*, units)
	tomap( 
		map(
			units, 
			id
		), 
		map( 
			units, 
			hitpoints
		)
	);

#in case side's gold is more than 50, add units that side can recruit to the side's unit list#

def create_side_unit_list(ai*, side)
	if( 
		teams[side].gold > 50, 
		recruits_of_side[side], 
		[]
	) + 
	units_of_side[side];

def evaluate_my_recruits_as_attackers(ai*)
	tomap( 
		map(
			my_recruits, 
			id
		), 
		map(
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_attacker_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai, 
							enemy_side
						)
					)
				)
			)
		)
	);

def evaluate_my_recruits_as_defenders(ai*)
	tomap(
		map(
			my_recruits, 
			id
		),
		map( 
			my_recruits, 'my_unit',
			sum(
				map(
					enemies, 'enemy_side',
					evaluate_defender_against_opponents(
						ai,
						my_unit,
						create_side_unit_list(
							ai,
							enemy_side
						)
					)
				)
			)
		)
	);


# === 2 ===  now consider abilities and weapon specials  #

def abilities_weights()
	['skirmisher' -> 15, 'ambush' -> 10, 'nightstalk' -> 20, 'regenerates' -> 20, 'healing' -> 15, 'curing' -> 10, 'leadership' -> 20, 'illumination' -> 15, 'teleport' -> 10, 'steadfast' -> 15 ];

def weapon_specials_weights()
	[ 'backstab' -> 20 ,'slow' -> 10 ,'berserk' -> 20 ,'stones' -> 60 ,'plague' -> 10 ,'marksman' -> 30 ,'magical' -> 40 ,'charge' -> 30 ,'drains' -> 30,  'firststrike' -> 10, 'poison' -> 25 ];

def apply_abilities_weights( units_map )
	map( 
		units_map, 
		value +
		(
			value * 
			max(
				map(
					get_unit_type( key ).abilities, 'ability',
					abilities_weights()[ability]
				)
			)
		) / 100
	);

def apply_weapon_specials_weights( units_map )
	map(
		units_map, 
		value +
		(
			value *
			max(
				map(
					get_unit_type( key ).attacks, 'attack',
					vars.weapon_specials[attack.special]
				)
			)
		) / 100
	);

# since undead units don't get random traits and are balanced with that, we need to lower their evaluation a bit to match fairly the living units #

def undead_malus( units_map )
	map( 
		units_map, 
		if(
			get_unit_type(key).undead,
			( value * 90 ) / 100,
			value 
		)
	);

# === 3 ===  pit 1 and 2 together  #

def evaluate_attackers(ai*)
	change_numbers_to_percents(
		apply_abilities_weights(
			apply_weapon_specials_weights(
				undead_malus( 
					make_positive_only(
						evaluate_my_recruits_as_attackers( ai )	
					)
				)
			)
		)
	);

def evaluate_defenders(ai*)
	map(
		map(
			change_numbers_to_percents(
				apply_abilities_weights(
					apply_weapon_specials_weights(
						undead_malus( 
							make_positive_only(
								evaluate_my_recruits_as_defenders( ai )	
							)
						)
					)
				)
			),
			value / 3
		), 
		value +
		map(
			change_numbers_to_percents(
				units_hp_map(
					ai,
					my_recruits
				)
			),
		value * 2 / 3
		)[key]
	);

	#=========== we have evaluation of game state and units, time to combine them: ==========#
		#=========	recruitment_list_builder	=========#

def rlb_apply_eval(eval, attackers_map, defenders_map, offset)
	map(
		sumarize_maps_values(
			map(
				attackers_map, 
				value * (eval+offset)
			),
			map(
				defenders_map,
				value * ( (100 - eval) - offset )
			)
		),
		value / 100
	);

def rlb_remove_lowest( input_map, percent)
	filter(
		input_map, 
		value > 
		(
			(
				percent * sumarize_values(input_map)
			) / 100
		)
	);

def rlb_first_step(eval, attackers_map, defenders_map, offset)
	rlb_remove_lowest(
		rlb_apply_eval(
			eval,
			attackers_map,
			defenders_map,
			offset
		),
		10
	);

def recruitment_list_builder(eval, attackers_map, defenders_map)
	map(
		rlb_first_step(
			eval,
			attackers_map,
			defenders_map,
			40
		),
		(
			(
				value * 100
			) / 
			sumarize_values(
				rlb_first_step(
					eval,
					attackers_map,
					defenders_map,
					40
				)
			)
		)
	);

		# ========== choose the unit to recruit now ========= #

def unit_chooser(ai*,unit_map) 
	choose(
		keys(unit_map), 'unit_type',
		unit_map[unit_type] - 
		(
			(
				100 * 
				size(
					filter(
						my_units, 
						type = unit_type
					)
				)
			) / 
			size(my_units)
		)
	);

def unit_map_cost_filter(ai*, unit_map)
	filter( unit_map,
		get_unit_type(key).cost < my_side.gold
	);

		# ==========	Main formula section 	========== #

def initialize_weapon_specials_map(ai*)
	if(vars.weapon_specials_init != turn,
		[
			set_var('weapon_specials_init', turn),
			set_var('weapon_specials',
				map(
					weapon_specials_weights(),
					if( key = 'magical',
						units_average_defense(ai, enemy_units, 10),
						if( key = 'marksman',
							units_average_defense(ai, enemy_units, 10) - 10,
							value
						)
					)
				)
			)
		],
		[]
	);

def create_recruits_map(ai*)
	if(vars.recruits_map_creator != turn,
		[
			set_var('recruits_map_creator', turn ),
			set_var('recruits_map',
				debug_print('final unit evaluation: ', recruitment_list_builder(
					debug_print('current AI evaluation (0-100): ', eval(ai)),
					debug_print('attackers evaluation: ',evaluate_attackers(ai)),
					debug_print('defenders evaluation: ',evaluate_defenders(ai))
				))
			)
		],
		[]
	);

def castle_space(ai*)
	filter( map( castle_locs( my_leader.loc ), 'location', if( unit_at( location ), 1, 0 ) ), self = 0  ).size;

if(vars.turn_initialized = turn,
		if( my_leader.loc = nearest_keep( my_leader.loc ),
			if( 
				get_unit_type(
					choose(
						vars.recruits_map,
						-get_unit_type(key).cost
					).key
				).cost <
				my_side.gold,
				if( castle_space(self),
					recruit(debug_print(
						unit_chooser(
							self,
							unit_map_cost_filter(
								self,
								vars.recruits_map
							)
						)
					)),
					fallback()
				),
				fallback() 
			),
			if( my_leader.movement_left > 0,
				move( my_leader.loc, nearest_keep( my_leader.loc ) ),
				fallback()
			)
		),
	[set_var(debug_print('turn_initialized'), turn)] +
	initialize_weapon_specials_map(self) +
	create_recruits_map(self)
)

faiend
"
			[/team_formula]
		[/ai]
	[/side]
[/replay_start]
[statistics]
	mid_scenario="yes"
	[scenario]
		scenario="2S – Basiliskenhöhlen"
		[team]
			[recruits]
				Elvish Archer="3"
				Elvish Fighter="4"
				Elvish Scout="4"
				Elvish Shaman="2"
				Mage="4"
				Merman Hunter="2"
				Wose="4"
			[/recruits]
			[recalls]
			[/recalls]
			[advances]
				Elder Wose="1"
				Elvish Hero="1"
				Elvish Rider="1"
			[/advances]
			[deaths]
				Elvish Archer="1"
				Elvish Fighter="1"
				Elvish Scout="2"
				Elvish Shaman="1"
				Mage="1"
				Merman Hunter="1"
				Wose="2"
			[/deaths]
			[killed]
				Dwarvish Berserker="1"
				Dwarvish Fighter="6"
				Dwarvish Guardsman="1"
				Footpad="4"
				Gryphon Rider="3"
				Poacher="2"
				Thief="10"
			[/killed]
			[attacks]
				[sequence]
					s00="5"
					s000="1"
					s0000="1"
					s0011="1"
					s01="1"
					s010="1"
					s1="1"
					s100="2"
					s1000="1"
					s1001="1"
					s11="1"
					_num="30"
				[/sequence]
				[sequence]
					s00="4"
					s000="1"
					s0011="1"
					s01="3"
					s011="2"
					s0110="1"
					s0111="1"
					s1="3"
					s10="1"
					s100="1"
					s1011="2"
					s11="1"
					_num="40"
				[/sequence]
				[sequence]
					s00="1"
					s000="1"
					s01="2"
					s0100="1"
					s011="2"
					s0110="1"
					s1="3"
					s10="2"
					s1011="1"
					s11="1"
					_num="50"
				[/sequence]
				[sequence]
					s0111="1"
					s11="1"
					_num="60"
				[/sequence]
				[sequence]
					s01="2"
					s0101="1"
					s011="2"
					s01101="1"
					s100="1"
					s101="5"
					s110="2"
					s111="4"
					_num="70"
				[/sequence]
			[/attacks]
			[defends]
				[sequence]
					s="5"
					_num="0"
				[/sequence]
				[sequence]
					s00="1"
					s000="1"
					s010="1"
					s1="3"
					_num="30"
				[/sequence]
				[sequence]
					s001="2"
					s0011="1"
					s01="5"
					s10="1"
					s100="2"
					s101="1"
					s11="1"
					s1110="1"
					_num="40"
				[/sequence]
				[sequence]
					s0="2"
					s0011="1"
					s01="2"
					s0101="1"
					s1="3"
					s100="1"
					s11="2"
					s1110="1"
					_num="50"
				[/sequence]
				[sequence]
					s01="1"
					s111="1"
					s1110="1"
					_num="60"
				[/sequence]
				[sequence]
					s00="1"
					s000="1"
					s011="1"
					s1="2"
					s10="1"
					s1011="1"
					s11="4"
					s1101="1"
					s1110="1"
					s1111="1"
					s1111111111="1"
					_num="70"
				[/sequence]
			[/defends]
			recruit_cost="399"
			recall_cost="0"
			damage_inflicted="1134"
			damage_taken="678"
			expected_damage_inflicted="1049854"
			expected_damage_taken="728342"
			turn_damage_inflicted="67"
			turn_damage_taken="3"
			turn_expected_damage_inflicted="49131"
			turn_expected_damage_taken="11720"
			save_id="Sandermatt2"
		[/team]
		[team]
			[recruits]
			[/recruits]
			[recalls]
			[/recalls]
			[advances]
			[/advances]
			[deaths]
			[/deaths]
			[killed]
			[/killed]
			[attacks]
			[/attacks]
			[defends]
			[/defends]
			recruit_cost="0"
			recall_cost="0"
			damage_inflicted="0"
			damage_taken="0"
			expected_damage_inflicted="0"
			expected_damage_taken="0"
			turn_damage_inflicted="0"
			turn_damage_taken="0"
			turn_expected_damage_inflicted="0"
			turn_expected_damage_taken="0"
			save_id="ai3"
		[/team]
		[team]
			[recruits]
				Dwarvish Fighter="9"
				Dwarvish Guardsman="2"
				Dwarvish Ulfserker="1"
				Footpad="4"
				Gryphon Rider="3"
				Poacher="2"
				Thief="10"
			[/recruits]
			[recalls]
			[/recalls]
			[advances]
				Dwarvish Berserker="1"
			[/advances]
			[deaths]
				Dwarvish Berserker="1"
				Dwarvish Fighter="6"
				Dwarvish Guardsman="1"
				Footpad="4"
				Gryphon Rider="3"
				Poacher="2"
				Thief="10"
			[/deaths]
			[killed]
				Elvish Archer="1"
				Elvish Fighter="1"
				Elvish Scout="2"
				Elvish Shaman="1"
				Mage="1"
				Merman Hunter="1"
				Wose="2"
			[/killed]
			[attacks]
				[sequence]
					s001="4"
					s01="1"
					s010="1"
					s100="1"
					_num="30"
				[/sequence]
				[sequence]
					s00="1"
					s000="3"
					s000001100100101011001="1"
					s00011="1"
					s001="2"
					s01="2"
					s010="2"
					s0101="1"
					s10="1"
					s100="2"
					s11="1"
					s110="1"
					s11010001="1"
					s111="1"
					_num="40"
				[/sequence]
				[sequence]
					s00="1"
					s01="1"
					s10="2"
					_num="50"
				[/sequence]
				[sequence]
					s00="1"
					s01="5"
					s010="1"
					s011="1"
					s100="2"
					s101="1"
					s11="3"
					s110="1"
					s111="1"
					_num="60"
				[/sequence]
				[sequence]
					s01="2"
					s011="1"
					s101="1"
					s11="1"
					s110="1"
					s1101111="1"
					s111="2"
					_num="80"
				[/sequence]
			[/attacks]
			[defends]
				[sequence]
					s="37"
					_num="0"
				[/sequence]
				[sequence]
					s0="1"
					_num="30"
				[/sequence]
				[sequence]
					s01="1"
					s10="1"
					_num="40"
				[/sequence]
				[sequence]
					s0="2"
					s01="1"
					s1="1"
					s11="1"
					_num="50"
				[/sequence]
				[sequence]
					s="2"
					s0="3"
					s00="1"
					s01="4"
					s1="1"
					s10="1"
					s1000="1"
					s11="2"
					_num="60"
				[/sequence]
				[sequence]
					s="1"
					s0="1"
					s00="1"
					s01="1"
					s1="3"
					s10="1"
					s10110010="1"
					s11="3"
					_num="80"
				[/sequence]
			[/defends]
			recruit_cost="487"
			recall_cost="0"
			damage_inflicted="678"
			damage_taken="1134"
			expected_damage_inflicted="728342"
			expected_damage_taken="1049854"
			turn_damage_inflicted="0"
			turn_damage_taken="0"
			turn_expected_damage_inflicted="0"
			turn_expected_damage_taken="0"
			save_id="freesole1"
		[/team]
	[/scenario]
[/statistics]
