Update to poison RCA test scenario

This commit is contained in:
Bartek Waresiak 2009-06-30 18:38:46 +00:00
parent 03bac721d0
commit 587ed03445
2 changed files with 115 additions and 117 deletions

View file

@ -1,16 +1,10 @@
fai 'poisoner_eval.fai' fai 'poisoner_eval.fai'
if( if(
not filter(me.attacks,'att',filter(att.special,'spe',contains_string(spe,'poison'))),-1,
target.undead != 0,-1,
target.hitpoints < 5,-1,
target.max_experience - target.experience <= 8,-1,
index_of('poisoned',keys(target.states)) != -1,-1,
index_of('regenerates',target.abilities) != -1, 1, index_of('regenerates',target.abilities) != -1, 1,
find( villages, 'vill', vill = target.loc ), 1, find( villages, 'vill', vill = target.loc ), 1,
target.leader, 5, target.leader, 5,
2 2
) )
faiend faiend

View file

@ -34,123 +34,127 @@ Gs^Fp , Gs^Fp , Wwf , Wwf , Mm , Rd
Gs^Fp , Gs^Fp , Wwf , Wwf , Mm , Rd , Gs^Fp , Wwf , Wwf , Gg , Gg , Gg , Gg , Gg , Hh , Gg , Wwf , Wwf , Gg , Gg , Wwf , Mm , Mm Gs^Fp , Gs^Fp , Wwf , Wwf , Mm , Rd , Gs^Fp , Wwf , Wwf , Gg , Gg , Gg , Gg , Gg , Hh , Gg , Wwf , Wwf , Gg , Gg , Wwf , Mm , Mm
" "
turns=90 turns=90
id=poison id=poison
{DEFAULT_SCHEDULE} {DEFAULT_SCHEDULE}
[label] [label]
x,y=3,8 x,y=3,8
text="Target Choose test" text="Target Choose test"
[/label] [/label]
[label] [label]
x,y=17,3 x,y=17,3
text="Weapon test with low hp target" text="Weapon test with low hp target"
[/label] [/label]
[label] [label]
x,y=13,8 x,y=13,8
text="Regeneration attack Test" text="Regeneration attack Test"
[/label] [/label]
[label] [label]
x,y=7,3 x,y=7,3
text="Undead Target Test" text="Undead Target Test"
[/label] [/label]
[side] [side]
name="Azalin" name="Azalin"
type=Necromancer type=Necromancer
id=side_1_leader id=side_1_leader
canrecruit=yes canrecruit=yes
recruit=Assassin,Thief,Poacher,Footpad recruit=Assassin,Thief,Poacher,Footpad
gold=90 gold=90
controller=human controller=human
[unit] [unit]
x,y=13,8 x,y=13,8
type="Ancient Wose" type="Ancient Wose"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=3,7 x,y=3,7
type="Arch Mage" type="Arch Mage"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=2,7 x,y=2,7
type="Elvish Archer" type="Elvish Archer"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=16,5 x,y=16,5
type="Elvish Archer" type="Elvish Archer"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=2,8 x,y=2,8
type="Elvish Archer" type="Elvish Archer"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=17,2 x,y=17,2
type="Elvish Fighter" type="Elvish Fighter"
hitpoints=3 hitpoints=3
generate_nema=yes generate_nema=yes
[/unit] [/unit]
[unit] [unit]
x,y=7,2 x,y=7,2
type="Skeleton" type="Skeleton"
generate_name=yes generate_name=yes
[/unit] [/unit]
[/side] [/side]
[side] [side]
name=FormulaAı name=FormulaAı
type=Dark Sorcerer type=Dark Sorcerer
side=2 side=2
canrecruit=yes canrecruit=yes
recruit=Skeleton,Skeleton Archer,Ghost,Ghost,Vampire Bat,Vampire Bat,Ghoul recruit=Skeleton,Skeleton Archer,Ghost,Ghost,Vampire Bat,Vampire Bat,Ghoul
gold=100 gold=100
shroud=yes shroud=yes
[unit] [unit]
x,y=5,8 x,y=5,8
type="Ghoul" type="Ghoul"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=6,9 x,y=6,9
type="Cuttle Fish" type="Cuttle Fish"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=13,7 x,y=13,7
type="Cuttle Fish" type="Cuttle Fish"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=17,3 x,y=17,3
type="Cuttle Fish" type="Cuttle Fish"
generate_name=yes generate_name=yes
[/unit] [/unit]
[unit] [unit]
x,y=7,3 x,y=7,3
type="Ghoul" type="Ghoul"
generate_name=yes generate_name=yes
[/unit] [/unit]
ai_algorithm=formula_ai ai_algorithm=formula_ai
[ai] [ai]
eval_list=yes eval_list=yes
[register_candidate_move] [register_candidate_action]
name=poisoner name=poisoner
type=attack type=attack
evaluation="{ai/formula/poisoner_eval.fai}" [filter]
action="{ai/formula/poisoner_attack.fai}" me="filter( input, 'me', filter(me.attacks,'att',filter(att.special,'spe',contains_string(spe,'poison'))))"
[/register_candidate_move] target="filter( input, 'target', target.undead = 0 and target.hitpoints > 5 and index_of('poisoned',keys(target.states)) = -1)"
[/filter]
[/ai] evaluation="{ai/formula/poisoner_eval.fai}"
[/side] action="{ai/formula/poisoner_attack.fai}"
[/register_candidate_action]
[/ai]
[/side]
[/test] [/test]
# vim: tabstop=4: shiftwidth=4: expandtab: softtabstop=4: autoindent: # vim: tabstop=4: shiftwidth=4: expandtab: softtabstop=4: autoindent: