The PvT project

Help - Resources - AI Scripting - Grafting - Plugins - Modding Projects
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Re: The PvT project

Postby Taranok » Sat Jan 12, 2013 9:46 pm

Updated v1.1! This version is much more solid in play! Added the second bunker. Doesn't seem to hurt it much and it helps in defense, even though it's in the main, as units get lured into the main. Made a few changes to attack loop to make it more consistent.

Stats: (tested on BWAIWarV and BWAIWarIV reps)
3-1 vs TaranokAI v1.71 - loss on Jade: this map seems a little bit harder to defend with? anyway the classic 10 minute attack somehow breaks through defenses
4-0 vs Unleaded v2.41 - steam rolled
2-2 vs ZBwaiP - loss on Icarus: attack loop freezes :curse: loss on Jade: units get stuck :curse:
3-1 vs Baja P - loss on Byzantium: loses to rush...

I'm not sure how I feel about these numbers. 12-4 is a 75% win rate. However, this rushing still seems to be the main problem.

I think Protoss AI's will have to modifiy unit compositions into one of these three:
zealot + dragoon with arbiters - zealot dragoon doesn't work well
zealot + archon - actually does surprisingly well, probably because Archons can tank the damage from tanks.
carrier + zealot - I don't think this works, but maybe tweaking with how ZBwaiP works could fix this.

Or they will just have to rush like Baja P.
User avatar
bajadulce
Posts: 52
Joined: Fri Feb 01, 2013 7:02 pm

Re: The PvT project

Postby bajadulce » Sat Jan 12, 2013 11:26 pm

what replays are you using? I haven't screwed around w/ these things in years but have a sudden urge to tinker around w/ it a bit later tonight just for kicks. :o

Sorta related but some ramblings about Ai vs Ai maps in general:[spoiler]As noted before, Ideally you should abandon any "pro map" biases for AI vs AI matchups in favor of custom built simple AI maps. Maps that would be considered "boring" to play as humans, but are 100% symmetrical, contain no unnecessary doodads, large mains, and simple path finding (*base separation should be **normal distances among the maps). ***Once you are happy w/ the maps, stick w/ them! By constantly changing the map pools, it's unfair to judge old scripts that were tested/designed with timings to work on those. A good AI script should work well on ALL maps, but these scripts work so differently from map to map (replay to replay).

Generally, you can find replays where ScriptA easily wins vs ScriptB and then find another replay where the same ScriptA struggles or even loses to the same ScriptB. Obviously some scripts are way better than others and others are just overall poor, but for the most part this holds true for semi-evenly matched scripts.

Notes:
*one inherent problem w/ the internal AI engine is that while it can recognize enemy build orders and react accordingly, it can't react to how far the enemy is (not that I know of). Obviously a map like bloodbath plays completely differently than a huge 256x256 winding snake path map. And yet script build orders are the same on both maps. Obviously build orders (either defensive or offensive) won't work as intended on the 2 different maps. While that is an obvious example, maps with more subtle path finding differences will behave differently as well.

** distances among the base separation should be within a set "range" determined as "normal". Something pro maps seem to share in common. I don't know what that range is, nor how one goes about determining it, but it needs to be defined.

*** Once you are happy w/ the maps, stick w/ them!
And that seems to be the big hangup. ScripterB is upset because his script does poorly on a certain mapA and wants to change the map pool until he comes up w/ mapB that works well w/ his script. Then ScripterC comes along a year later and says mapB sucks and that mapC should be the map...[/spoiler]
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Re: The PvT project

Postby Taranok » Sun Jan 13, 2013 12:52 am

BWAIWarIV + V replays.zip - Combined replays from BWAIWarIV and BWAIWarV. Also added my edited destination rep if anyone wants it.

Some notes: As far as the PvT ones, the rush distances are similar. The difference between maps is the distance between going diagonally across the map and vertically/horizontally. My least favorite maps for PvT are Python and Jade.

Btw, I do all my testing with the entropy.exe that was in the new BWAILauncher. I find that it results in better targeting and control of spell casters (no more irradiating overlords :P), although the changes to storm might have made it a little bit overpowered :P. It's also uploaded here: Entropy3.zip.

I might add that your baja P AI could benefit from a little tweaking. Kind of sits with a lot of minerals around the 10 minute mark. But the rushing is pretty good :).
User avatar
bajadulce
Posts: 52
Joined: Fri Feb 01, 2013 7:02 pm

Re: The PvT project

Postby bajadulce » Sun Jan 13, 2013 4:56 am

BWAIWarV? I usually always change a line or 2 and submit something just to let ppl know I'm still alive. Sorry was absent from the forums. :cry:

I got the replay pack and checked out the PvT maps. They seem decent enough and like what I saw. I also ran the current bajaT1.2 from the Launcher through them for fun, and must say that don't remember going 4 rax? lol. That must have been the "I change a line or 2" just to submit something different that I mentioned. Doubt I spent much time on that one. :lol:

So went back to the BWAIWar3 files and if I do find some time to do any modifying, will use this one instead as a base for the TvP.

Code: Select all

# baja T v1.1
# BWAIWar III
TMCx(1342, 101, aiscript):

    start_town()
    farms_notiming()
    transports_off()

    build(1, command_center, 150)
    wait_buildstart(1, command_center)
    build(4, scv, 130)
    wait_buildstart(4, scv)

    debug(null, BajaT v1.1)
    --null--

    build(7, scv, 80)
    wait_buildstart(7, scv)

    enemyowns_jump(command_center, tvt)

    build(1, barracks, 80)
    wait_buildstart(1, barracks)
    defenseuse_gg(1, marine)
    defenseuse_ag(1, marine)
    build(8, scv, 80)
    wait_buildstart(8, scv)
    build(1, supply_depot, 80)
    wait_buildstart(1, supply_depot)
    build(10, scv, 80)
    wait_buildstart(10, scv)
    enemyowns_jump(spawning_pool, bunker)
    goto(skip_bunker)

        --bunker--
    build(1, bunker, 80)
    wait_buildstart(1, bunker)

        --skip_bunker--
    build(2, barracks, 80)
    wait_buildstart(2, barracks)
    defensebuild_gg(1, marine)
    train(1, marine)
    build(11, scv, 80)
    wait_buildstart(11, scv)
    train(2, marine)
    build(12, scv, 80)
    wait_buildstart(12, scv)
    train(3, marine)
    build(2, supply_depot, 100)
    wait_buildstart(2, supply_depot)
    train(5, marine)
    build(1, academy, 80)
    wait_buildstart(1, academy)
    defenseuse_gg(1, firebat)
    train(7, marine)
    build(1, refinery, 80)
    wait_buildstart(1, refinery)
    enemyowns_jump(hatchery, skip_bunker2)
    enemyowns_jump(citadel_of_adun, dt_rush)
    build(1, bunker, 80)
    wait_buildstart(1, bunker)
    wait(100)
    build(2, bunker, 80)
    wait_buildstart(2, bunker)
    multirun(comsat)
    multirun(detection)

        --skip_bunker2--
    build(16, scv, 80)
    wait_buildstart(16, scv)
    build(3, supply_depot, 150)
    wait_buildstart(3, supply_depot)
    train(7, marine)
    build(17, scv, 80)
    wait_buildstart(17, scv)
    train(9, marine)
    build(1, academy, 80)
    wait_buildstart(1, academy)
    place_guard(medic, 0)
    multirun(scvs2)
    farms_timing()
    train(12, marine)
    build(3, barracks, 80)
    wait_buildstart(3, barracks)
    train(14, marine)
    build(1, comsat_station, 80)
    wait_buildstart(1, comsat_station)
    multirun(academy_upgrades)
    train(2, medic)
    train(16, marine)
    build(1, factory, 80)
    wait_buildstart(1, factory)
    train(6, medic)
    train(21, marine)
    build(1, machine_shop, 100)
    wait_buildstart(1, machine_shop)
    multirun(m_shop_upgrades)
    place_guard(siege_tank, 0)
    train(3, firebat)
    train(23, marine)
    train(1, siege_tank)
    train(32, marine)
    train(2, siege_tank)

    multirun(primary_attack)
    expand(1, expo)
    multirun(expo_loop)
    train(25, marine)
    build(4, barracks, 80)
    wait_build(4, barracks)
    wait(1000)
    build(1, engineering_bay, 80)
    wait_buildstart(1, engineering_bay)
    multirun(ebay_upgrades)
    wait(3000)
    build(1, armory, 80)
    wait_buildstart(1, armory)
    multirun(armory_upgrades)
    wait(1000)
    build(2, factory, 80)
    wait_build(2, factory)
    build(2, machine_shop, 80)
    wait(2500)

        --late_game--
    build(1, starport, 80)
    wait_build(1, starport)
    build(1, control_tower, 80)
    wait(2500)
    build(1, science_facility, 80)
    check_transports()
    place_guard(science_vessel, 0)
    place_guard(science_vessel, 1)
    stop()

        --dt_rush--
    train(6, marine)
    wait_train(6, marine)
    send_suicide(0)
    multirun(comsat)
    build(1, engineering_bay, 80)
    wait_buildstart(1, engineering_bay)
    multirun(turrets)
    defensebuild_gg(1, firebat)
    place_guard(medic, 0)
    place_guard(medic, 1)
    train(5, marine)
    build(1, factory, 80)
    wait_buildstart(1, factory)
    build(15, scv, 80)
    wait_buildstart(15, scv)
    farms_timing()
    train(7, firebat)
    train(4, marine)
    train(3, medic)
    build(1, machine_shop, 80)
    wait_buildstart(1, machine_shop)
    defenseuse_gg(1, vulture)
    defensebuild_gg(1, vulture)
    tech(spider_mines, 70)
    build(5, missile_turret, 80)
    wait_buildstart(5, missile_turret)
    upgrade(1, t_infantry_weapon, 70)
    place_guard(vulture, 0)
    place_guard(siege_tank, 0)
    train(1, vulture)
    train(6, marine)
    train(7, firebat)
    build(3, barracks, 80)
    wait_buildstart(3, barracks)
    tech(siege_mode, 70)
    train(2, vulture)
    build(18, scv, 80)
    wait_buildstart(18, scv)
    tech(stim_packs, 70)
    train(2, siege_tank)
    train(10, marine)
    train(2, vulture)
    train(8, firebat)
    train(14, marine)
    train(2, siege_tank)
    wait_train(2, siege_tank)
    send_suicide(0)

    capt_expand()
    expand(1, expo)
    multirun(expo_loop)

    build(2, factory, 80)
    wait_buildstart(2, factory)
    build(2, machine_shop, 80)
    defenseuse_gg(1, siege_tank)
    defensebuild_gg(1, siege_tank)
    build(1, armory, 80)
    wait_buildstart(1, armory)
    defenseuse_gg(1, goliath)
    defenseuse_ag(1, goliath)
    defensebuild_gg(1, goliath)
    defensebuild_ag(1, goliath)
    upgrade(1, goliath_range, 70)
    upgrade(1, marine_range, 70)
    build(1, engineering_bay, 80)
    wait_buildstart(1, engineering_bay)
    multirun(ebay_upgrades)
    multirun(armory_upgrades)
    build(4, barracks, 80)
    wait_buildstart(4, barracks)
    multirun(scvs2)
    goto(main_attack)

###### ATTACKS #########################

        --primary_attack--
    multirun(infantry)
    multirun(tanks)
    wait_train(24, marine)
    wait_train(3, medic)
    attack_add(3, siege_tank)
    attack_add(28, marine)
    attack_add(5, firebat)
    attack_add(3, medic)
    attack_prepare()
    wait(1500)
    attack_do()
    attack_clear()
    notowns_jump(armory, primary_attack)
    goto(main_attack)

        --main_attack--
    multirun(infantry)
    multirun(tanks)
    attack_add(5, siege_tank)
    attack_add(4, vulture)
    attack_add(15, marine)
    attack_add(8, firebat)
    attack_add(4, goliath)
    attack_add(4, medic)
    attack_prepare()
    wait(2200)
    attack_do()
    attack_clear()
    goto(main_attack)

        --tvt_attack_loop--
    train(15, siege_tank)
    train(10, goliath)
    attack_add(12, siege_tank)
    attack_add(8, goliath)
    attack_prepare()
    wait(1200)
    attack_do()
    attack_clear()
    goto(tvt_attack_loop)

        --infantry--
    train(20, marine)
    train(3, medic)
    train(5, firebat)
    train(30, marine)
    train(6, medic)
    train(10, firebat)
    train(40, marine)
    stop()

        --tanks--
    train(2, siege_tank)
    wait(400)
    train(4, siege_tank)
    wait(400)
    train(6, siege_tank)
    wait(400)
    train(8, siege_tank)
    wait(400)
    goto(tanks)

##### TvT #######################

        --tvt--
    define_max(60, scv)
    define_max(4, marine)
    define_max(32, siege_tank)
    define_max(32, goliath)
    define_max(12, vulture)
    define_max(12, battlecruiser)
    define_max(30, wraith)
    define_max(20, valkyrie)
    define_max(6, science_vessel)
    define_max(10, ghost)

    build(8, scv, 80)
    wait_buildstart(8, scv)
    build(1, supply_depot, 80)
    wait_buildstart(1, supply_depot)
    build(11, scv, 80)
    wait_buildstart(11, scv)
    build(1, barracks, 80)
    wait_buildstart(1, barracks)
    defenseuse_gg(1, marine)
    build(12, scv, 80)
    wait_buildstart(12, scv)
    build(1, refinery, 80)
    wait_buildstart(1, refinery)
    build(14, scv, 80)
    wait_buildstart(14, scv)
    build(2, supply_depot, 80)
    wait_buildstart(2, supply_depot)
    build(15, scv, 80)
    wait_buildstart(15, scv)
    train(1, marine)
    build(16, scv, 80)
    wait_buildstart(16, scv)
    train(2, marine)
    build(17, scv, 80)
    wait_buildstart(17, scv)
    build(1, factory, 80)
    wait_buildstart(1, factory)
    place_guard(siege_tank, 0)
    multirun(scvs2)
    build(1, bunker, 80)
    wait_buildstart(1, bunker)
    train(3, marine)
    build(2, factory, 80)
    wait_buildstart(2, factory)
    build(1, machine_shop, 80)
    wait_buildstart(1, machine_shop)
    farms_timing()
    train(1, siege_tank)
    build(2, machine_shop, 80)
    wait_buildstart(2, machine_shop)
    multirun(t_detection)
    train(3, siege_tank)
    wait_train(1, siege_tank)
    wait(300)
    expand(1, expo)
    train(6, siege_tank)
    multirun(m_shop_upgrades)
    defenseuse_gg(1, siege_tank)
    defensebuild_gg(1, siege_tank)
    build(1, armory, 80)
    wait_buildstart(1, armory)
    defenseuse_gg(1, goliath)
    defenseuse_ag(1, goliath)
    train(7, siege_tank)
    train(2, goliath)
    build(3, factory, 80)
    wait_buildstart(3, factory)
    train(4, goliath)
    build(4, factory, 80)
    wait_buildstart(4, factory)
    multirun(expo_loop)
    train(6, goliath)
    build(3, machine_shop, 80)
    wait_buildstart(3, machine_shop)
    train(9, siege_tank)
    build(4, machine_shop, 80)
    wait_buildstart(4, machine_shop)
    train(10, siege_tank)
    train(7, goliath)
    train(12, siege_tank)
    train(8, goliath)
    multirun(tvt_attack_loop)
    multirun(armory_upgrades)
    wait(3000)
    build(1, starport, 80)
    wait_build(1, starport)
    build(1, control_tower, 80)
    check_transports()
    goto(late_game)

##### EXPANSIONS #####

        --expo_loop--
    wait(8000)
    expand(99, expo)
    goto(expo_loop)

        --expo--
    start_town()
    build(1, command_center, 80)
    wait_build(1, command_center)
    build(1, bunker, 80)
    wait_buildstart(1, bunker)

    multirun(comsat)
    multirun(gas)
    multirun(expo_buildings)

        --scvs--
    build(1, scv, 80)
    wait_buildstart(1, scv)
    build(2, scv, 80)
    wait_buildstart(2, scv)
    build(3, scv, 80)
    wait_buildstart(3, scv)
    place_guard(siege_tank, 0)
    build(4, scv, 80)
    wait_build(4, scv)
    build(5, scv, 80)
    wait_build(5, scv)
    build(6, scv, 80)
    wait_build(6, scv)
    build(7, scv, 80)
    wait_build(7, scv)
    wait(2000)
    build(8, scv, 80)
    wait_build(8, scv)
    build(9, scv, 80)
    wait_build(9, scv)
    build(10, scv, 80)
    wait_build(10, scv)
    build(11, scv, 80)
    wait_build(11, scv)
    wait(2000)
    build(13, scv, 80)
    wait_build(13, scv)

        --scvs2--
    build(18, scv, 80)
    wait_build(18, scv)
    build(19, scv, 80)
    wait_build(19, scv)
    build(20, scv, 80)
    wait_build(20, scv)
    build(21, scv, 80)
    wait_build(21, scv)
    build(22, scv, 80)
    wait_build(22, scv)
    build(23, scv, 80)
    wait_build(23, scv)
    build(24, scv, 80)
    wait_build(24, scv)
    build(25, scv, 80)
    wait_build(25, scv)
    build(30, scv, 80)
    stop()

        --expo_buildings--
    enemyowns_jump(command_center, expo4_buildings)
    build(1, barracks, 80)
    wait_build(1, barracks)
    wait(1000)
    random_jump(128, expo2_buildings)
    build(2, barracks, 80)
    random_jump(128, expo3_buildings)
    stop()

        --expo2_buildings--
    build(1, factory, 80)
    wait_build(1, factory)
    build(1, machine_shop, 70)
    random_jump(128, expo3_buildings)
    stop()

        --expo3_buildings--
    build(1, starport, 80)
    wait_build(1, starport)
    build(1, control_tower, 80)
    stop()

        --expo4_buildings--
    build(1, factory, 80)
    wait_build(1, factory)
    build(1, machine_shop, 80)
    wait_buildstart(1, machine_shop)
    build(2, factory, 80)
    wait_build(2, factory)
    build(2, machine_shop, 80)
    wait_buildstart(2, machine_shop)
    build(3, factory, 80)
    wait_build(3, factory)
    build(3, machine_shop, 80)
    stop()

##### UPGRADES #######

        --ebay_upgrades--
    wait_build(1, engineering_bay)
    upgrade(1, t_infantry_weapon, 80)
    wait(4500)
    upgrade(1, t_infantry_armor, 80)
    wait(4500)
    wait_build(1, science_facility)
    build(2, engineering_bay, 80)
    wait_buildstart(2, engineering_bay)
    upgrade(2, t_infantry_weapon, 80)
    wait_build(2, engineering_bay)
    upgrade(2, t_infantry_armor, 80)
    wait(4500)
    upgrade(3, t_infantry_armor, 80)
    upgrade(3, t_infantry_weapon, 80)
    stop()

        --academy_upgrades--
    tech(stim_packs, 150)
    wait(2000)
    wait_buildstart(1, comsat_station)
    upgrade(1, marine_range, 70)
    wait(12000)
    upgrade(1, medic_mana, 70)
    enemyowns_jump(nexus, stop)
    wait(3000)
    tech(restoration, 70)
    stop()

        --m_shop_upgrades--
    tech(siege_mode, 70)
    wait(3000)
    tech(spider_mines, 70)
    wait(3000)
    wait_train(4, goliath)
    upgrade(1, goliath_range, 70)
    stop()

        --armory_upgrades--
    upgrade(1, t_vehicle_weapon, 30)
    wait(4500)
    upgrade(1, t_vehicle_plating, 30)
    stop()

# ##### Misc. ########

        --t_detection--
    enemyowns_jump(control_tower, t_detection_prime)
    enemyowns_jump(covert_ops, t_detection_prime)
    wait(400)
    goto(t_detection)

        --t_detection_prime--
    build(1, academy, 80)
    build(1, engineering_bay, 80)
    multirun(comsat)
    goto(turrets)

        --detection--
    wait(1000)
    enemyowns_jump(citadel_of_adun, turrets_prime)
    goto(detection)

        --turrets_prime--
    build(1, engineering_bay, 80)
    wait_build(1, engineering_bay)

        --turrets--
    build(1, missile_turret, 80)
    wait_build(1, missile_turret)
    build(2, missile_turret, 80)
    wait_build(2, missile_turret)
    build(3, missile_turret, 80)
    wait_build(3, missile_turret)
    wait(5000)
    build(4, missile_turret, 80)
    wait_build(4, missile_turret)
    build(5, missile_turret, 80)
    stop()

        --gas--
    build(1, refinery, 80)
    stop()

        --comsat--
    build(1, comsat_station, 80)
    stop()

        --stop--
    stop()

Which looks a tad better vs. Protoss.

I don't know how much motivation I have to look at these tho tbh, but will poke around for a bit.

Typical rambling that requires a spoiler.. damn keyboard just keeps writing words.[spoiler]I feel sorta bad in a way for pushing these no$ scripts. They're great for challenges amongst ourselves, but they aren't much after that (maybe for newbies). When this forum started, nobody seemed interested in writing a non-cheating AI script. Racine, Ahzz, Mesk, and few other guys were all writing scripts meant to challenge people. Real human players were the target audience. And those scripts were extremely popular. Racine especially being a huge hit @ TL.net etc. Ahzz had a big following at Warboards. Ppl played those because they were fun and didn't care if they "cheated". They only wanted a decent challenge without being too absurd and over the top. And so I kept pushing the "no money" scripts here to attempt to win ppl over and get a decent Ai vs AI database. It wasn't long before everyone was producing them exclusively. Rarely did I see somebody attempting to make something "fun" again. It was always no$ on standard maps.

The evolution of these non-money scripts tho has been quite fascinating and impressive. I have had a blast watching ppl improve the timings as these things progressed. It has been very fun and wouldn't change a thing. I believe we've reached the optimum timing/bo's that these scripts can attain however. I don't see a whole lot of room for improvement, but maybe I'm wrong.[/spoiler]

Question: I don't see any of Myk's no$ Terran scripts in the current BWAIWar directory of the launcher?
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Re: The PvT project

Postby Taranok » Sun Jan 13, 2013 7:58 am

As far as I know, there wasn't Terran AIvsAI script that Myk wrote. There were the normal Myk 3,5 scripts, and I don't know whether those should be used or not. I also don't know if I should be using Unleaded 2.41 or Unleaded 3.31 (or whatever the latest one is), because I don't know if 2.41 was specifically intended for AIvsAI.

As for ai scripting potential, I think there are still quite a few unexplored options left. Seeing that simple stuff like Carrier rushes and the fact that Mech never was successfully attempted before kind of shows that scripting hasn't quite developed it's full potential. I wrote a ZvP script that just won against even some good AIs just by building drones and lings (no joke). And if BWScriptEmulator works out it could maybe open new options (if it is what I think it is).

Scripting for human play kind of dropped off because I think players found them useful mainly for training macro. You don't really need 50 different scripts to practice macro. Additionally, activity lessened after a bit.

EDIT: suggestion: your AI could benefit from more SCV's. 20 minutes into a game it still only has about 30 SCVs. It took quite a long time (almost 50 minutes) to defeat Blizzard P on Icarus. It just doesn't have any money to build anything. I would try using a command place_guard or get_oldpeons(20) to force more SCV's.
User avatar
bajadulce
Posts: 52
Joined: Fri Feb 01, 2013 7:02 pm

Re: The PvT project

Postby bajadulce » Sun Jan 13, 2013 9:34 am

Ah for some reason I thought Mike had written a few Terran scripts?

Good point on the different ideas and always fun to explore new stuff (tho I have to say that the non-cheating avenues are rather limited). The FMP or crazy give_money scripts can do all sorts of off-the-wall stuff.

Ya. Activity dropped that's for sure, but there are still plenty of ppl that enjoy the old game including single player stuff like this.

@ script benefiting from more SCV's than 30 @ 20 minute mark
30 is not enough? I never tested anything past 15 minutes cause there weren't any replays that lasted that long when I wrote these. :lol: And If I hadn't killed the other AI by the 10 minute mark it was prob a wash anyways. Mainly I wrote the most simple script I could with a rather static opening build order that tried to burn up as much resources as it could in the first 5 minutes. After that, generic attack loops and called it done. I was only interested in the first 5-10 minutes and squeezing the most out of what was harvested. No doubt those scripts of mine are dinosaurs. :)

I might tinker w/ some a bit here tho. Need a challenge. What AI is the strongest PvT on those reps right now? And those reps ONLY. We should have a challenge the 3 of us to come up w/ a terran AI that beats the strongest P AI on all of those maps. Has to win every single map vs a single selectively chosen P.
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Re: The PvT project

Postby Taranok » Sun Jan 13, 2013 10:32 am

Maybe Myk did? Hopefully he'll tell us.

Myk's carrier rush and ZBwaiP would technically get the same score versus current Terran AI's (I'm pretty sure they 2-0 every one on the WarV maps). Myk's carrier script is slightly more gimmicky in that it relies solely on carriers. Once you can deal with carriers, you've beaten it. So if you want a better test I would go with ZBwaiP, which adds zealots (actually quite complicates things sometimes).
Of the Protoss AI's that don't go for carrier rushes, TaranokAI v1.71 is the strongest. Unleaded 2.41 does slightly worse according to scores. However, both carrier scripts are stronger than these. (Although, with some tweaking, TaranokAI could pose more of a threat. need to fix mineral-gas imbalance and expanding issues)

If you pick ZBwaiP I already have a head start :P My mech v1.1b I think already has a 3-1 score, and if not, 4-0.
[spoiler]Maybe we can all try building a PvT script vs the Mech script (that wins on all maps and doesn't dt rush)?[/spoiler]I will upload v1.1b soon, after some more testing. The main change is the fix to the attack loop with the goliaths added. It used to stop because it used wait_force for vultures when the loop doesn't tell the AI to build any ;)
krasi0
Posts: 254
Joined: Thu Dec 18, 2008 12:42 pm

Re: The PvT project

Postby krasi0 » Sun Jan 13, 2013 10:40 am

"...Maybe we can all try building a PvT script vs the Mech script (that wins on all maps and doesn't dt rush)?"
For examples you could have a look at how Skynet plays. It has a few BOs
User avatar
bajadulce
Posts: 52
Joined: Fri Feb 01, 2013 7:02 pm

Re: The PvT project

Postby bajadulce » Sun Jan 13, 2013 6:35 pm

A Mech script that works! Cool! can't wait to see it in action. :thumbs:

@ Terran script
Last night I slapped together a super-duper chessy T script (never built a single factory ala CounterZerg tier 1 simplicity) that slammed every single no$ P script on that current BWAILauncher on all 4 of the replays (no game lasted more than 10 mins and if the 1st rush didn't wipe em out, the 2nd cleanup wave did). So I looked at about a dozen replays from the old BWAIWar replay pak (need to reupload here soon) vs the stronger ones and it also won every one I looked at.
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Re: The PvT project

Postby Taranok » Sun Jan 13, 2013 7:35 pm

You quite like your rush scripts, don't you :P As if defending existing 2rax rushes wasn't hard enough. Probably medic marine firebat rush with more barracks, right?

Heh, Mech v1.1b seems a little bit disapppointing (at least to me) in performance.
TaranokAI: 3-1
ZBwaiP: 2-2

ZBwaiP tends to win because it is able to kill the third base on Python, where the 3rd is super open, and Byzantium, where the AI expands toward the Protoss (bad idea versus carriers). Plus, on Python it gets a weird supply block at 110 supply.

If you want a fun game I would suggest watching TaranokAI vs Mech on Icarus.

Return to “StarCraft Modding”

Who is online

Users browsing this forum: No registered users and 2 guests