FtM2014 Picker Ai

Wargus is a Warcraft 2 mod that allows you to play Warcraft 2 with the Stratagus engine.
Post Reply
User avatar
Kyran
Posts: 499
Joined: Sat Dec 31, 2011 5:19 pm
Location: Australia
Contact:

FtM2014 Picker Ai

Post by Kyran »

Currently, there are four different ways to define the build order for the Picker Ai, AiRed_2014.

Code: Select all

function AiRed_Strategy_Orc_Blackflood_2014(i)
	AiRed_Strategy_2014(i, 1, 20, 1, "unit-skeleton", "unit-ogre", "unit-ogre", "unit-skeleton", "unit-grunt", "unit-peon", "unit-skeleton", "unit-grunt", "unit-peon", "unit-axethrower", "unit-death-knight", "unit-berserker", "unit-ogre", "unit-dragon", "unit-catapult", "unit-ogre-mage", "unit-sharp-axe", "unit-ogre", "unit-quick-blade", "unit-ogre-mage", "unit-fad-man")
end
AiRed_Strategy_2014(i, Loop, Terminate, Quantity, Unit0, Unit1, Unit2, Unit3, ..., Unit20)
i = AiPlayer
Loop = Where in the build order it will go back to once the build order has reached terminate.
Terminate = Build order will loop upon reaching this point.
Quantity = The number of each unit to be constructed.

Code: Select all

function AiRed_Strategy_Orc_Mass_2014(i)
	AiRed_Strategy_2014(i, 1, 4, 3, "unit-skeleton", "unit-skeleton", "unit-skeleton", "unit-skeleton", "unit-skeleton")
	AiRed_Strategy_Extend_2014(i, 5, 15, "unit-goblin-sappers", 1, "unit-peon", 2, "unit-axethrower", 4, "unit-grunt", 2, "unit-nomad", 1, "unit-skeleton", 2, "unit-grunt", 2, "unit-catapult", 1, "unit-grunt", 2, "unit-grunt", 2, "unit-berserker", 1)
	AiRed_Strategy_Extend_2014(i, 16, 18, "unit-ogre-mage", 1, "unit-ogre", 1, "unit-grunt", 2)
end
AiRed_Strategy_Extend_2014(i, j, k, Unit0, Quantity0, Unit1, Quantity1, ..., Unit10, Quantity10)
i = AiPlayer
j = Where we shall be inserting units in the build order. For example, if the build order currently goes up to 4, we'd put 5 here.
k = Where we will ceaseinserting units into the build order. For example, if we are added ten more units, we shall cease at j + 10.

Code: Select all

function AiRed_Strategy_Orc_Economy_2014(i)
	aiftm_loop[i] = 4
	aiftm_terminate[i] = 16
	AiRed_Strategy_Insert_2014(i, 0, "unit-grunt", 2)
	AiRed_Strategy_Insert_2014(i, 1, "unit-grunt", 2)
	AiRed_Strategy_Insert_2014(i, 2, "unit-grunt", 2)
	AiRed_Strategy_Insert_2014(i, 3, "unit-peon", 2)
	AiRed_Strategy_Insert_2014(i, 4, "unit-berserker")
	AiRed_Strategy_Insert_2014(i, 5, "unit-ogre-mage")
	AiRed_Strategy_Insert_2014(i, 6, "unit-axethrower")
	AiRed_Strategy_Insert_2014(i, 7, "unit-grunt", 3)
	AiRed_Strategy_Insert_2014(i, 8, "unit-nomad")
	AiRed_Strategy_Insert_2014(i, 9, "unit-axethrower")
	AiRed_Strategy_Insert_2014(i, 10, "unit-ogre")
	AiRed_Strategy_Insert_2014(i, 11, "unit-catapult")
	AiRed_Strategy_Insert_2014(i, 12, "unit-grunt", 2)
	AiRed_Strategy_Insert_2014(i, 13, "unit-axethrower", 2)
	AiRed_Strategy_Insert_2014(i, 14, "unit-grunt", 2)
	AiRed_Strategy_Insert_2014(i, 15, "unit-axethrower", 2)
	AiRed_Strategy_Insert_2014(i, 16, "unit-ogre")
	AiRed_Strategy_Insert_2014(i, 17, "unit-dragon")
	AiRed_Strategy_Insert_2014(i, 18, "unit-dragon")
	AiRed_Strategy_Insert_2014(i, 19, "unit-grunt", 2)
	AiRed_Strategy_Insert_2014(i, 20, "unit-grunt", 2)
	AiRed_Strategy_Insert_2014(i, 21, "unit-axethrower", 2)
	AiRed_Strategy_Insert_2014(i, 22, "unit-quick-blade")
end

Code: Select all

function AiRed_Strategy_Human_Support_2014(i)
	aiftm_loop[9] = 10
	aiftm_terminate[9] = 17
	aiftm_unit[i][0] = "unit-peasant"
	aiftm_quantity[i][0] = 1
	aiftm_unit[i][1] = "unit-footman"
	aiftm_quantity[i][1] = 3
	aiftm_unit[i][2] = "unit-footman"
	aiftm_quantity[i][2] = 3
	aiftm_unit[i][3] = "unit-ranger"
	aiftm_quantity[i][3] = 1
	aiftm_unit[i][4] = "unit-knight"
	aiftm_quantity[i][4] = 1
	aiftm_unit[i][5] = "unit-arthor-literios"
	aiftm_quantity[i][5] = 1
	aiftm_unit[i][6] = "unit-footman"
	aiftm_quantity[i][6] = 2
	aiftm_unit[i][7] = "unit-archer"
	aiftm_quantity[i][7] = 2
	aiftm_unit[i][8] = "unit-footman"
	aiftm_quantity[i][8] = 2
	aiftm_unit[i][9] = "unit-paladin"
	aiftm_quantity[i][9] = 1
	aiftm_unit[i][10] = "unit-knight"
	aiftm_quantity[i][10] = 2
	aiftm_unit[i][11] = "unit-archer"
	aiftm_quantity[i][11] = 2
	aiftm_unit[i][12] = "unit-mage"
	aiftm_quantity[i][12] = 1
	aiftm_unit[i][13] = "unit-footman"
	aiftm_quantity[i][13] = 3
	aiftm_unit[i][14] = "unit-knight"
	aiftm_quantity[i][14] = 1
	aiftm_unit[i][15] = "unit-knight"
	aiftm_quantity[i][15] = 1
	aiftm_unit[i][16] = "unit-archer"
	aiftm_quantity[i][16] = 2
	aiftm_unit[i][17] = "unit-footman"
	aiftm_quantity[i][17] = 2
end
04:27 jim4 why haven't you added wc1 support? this project sucks. i'm only going to use freecraft
05:06 jim4 finished wc1 support yet? i've been waiting for 6 years
05:10 jim4 new things scare me
Post Reply