The PvT project

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

The PvT project

Postby Taranok » Sun Dec 23, 2012 8:41 am

List of several AIs made in this thread made specifically for PvT.

ZBwaiP v0.6RE.txt
by Taranok
Description: few dragoons + Zealots + carriers = win (OK maybe not versus BWAPI).

Myk T 1.5.txt by Myk (duh!)
Description: a Meching TvP AI. likes to expand quickly.

Mech T v1.2.txt by Taranok
Description: a Meching TvP AI.

TaranokAI P v1.72TE.txt by Taranok
Description: a buffed version of 1,71 designed to be better versus mech

CarrierRush-0.1.txt by Myk
Description: just like the title says. only carriers

Screenshots:
[spoiler]Image
Y u no have anti-air?[/spoiler]Old versions:[spoiler]AntiCarrier_T-01.txt
Myk T 1.2.txt
Myk T 1.1.txt
ZBwaiP v0.2TE.txt
ZBwaiP v0.3RE.txt
ZBwaiP v0.4RE.txt
ZBwaiP.txt[/spoiler]
The purpose of this thread is to explore the PvT AIvsAI matchup..and have fun!
Last edited by psychowico on Sun Dec 30, 2012 11:11 pm, edited 2 times in total.
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Postby Taranok » Sun Dec 23, 2012 8:42 am

Will have to add some zealots in to natural defences. I think adding more cannons doesn't work mostly because shots are wasted by overkilling a unit.

Sometimes the AI still wins after it loses it's natural because it attacks with 1-2 Carriers and wins. :D
krasi0
Posts: 254
Joined: Thu Dec 18, 2008 12:42 pm

Postby krasi0 » Sun Dec 23, 2012 8:35 pm

So a quick carrier rush, eh? I'll try it vs mine :)
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Postby Taranok » Sun Dec 23, 2012 9:13 pm

Well actually it does pretty bad against mech, because it relies on cannons for defense, and a few siege tanks could easily wipe them out. And with mech you could get goliaths. The normal AI for Goliaths are pretty bad, they seem to walk around a lot without doing much. BWAPI goliaths probably don't have this problem.

EDIT: Even defense against M+M is kinda faulty. Sometimes it works fine (Jade, Icarus), and sometimes it just fails (Byzantium). ??????????????????????? Maybe it just has to do with cannon targeting???
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Postby Taranok » Mon Dec 24, 2012 4:40 pm

Version 0.2 uploaded!

I'm kind of not sure if I want zealots to get speed, they seem to rush ahead of the carriers and suicide.



This version gets armor upgrades for zealots eventually. It also has a timed expand loop, which fixes the random expanding the AI used to do. Should be macroing a bit better.

In one of my test matches, it was a base trade scenario, with each AI having 1 base left, but then my AI tried to come back to defend it's base, but it was too late ;) . If it would have gone for the last Terran base, it probably would have won.
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Re: ZBwaiP v0.2 (Updated 12/24/12)

Postby Taranok » Sun Dec 30, 2012 11:15 pm

Does anybody have an unedited version of ZBwaiP v0.2? I got a bit careless with backing up copies, and so the version I have now actually doesn't work as well. The attachments are gone from the original site/forum, so can someone upload it and link?
User avatar
Myk
Posts: 257
Joined: Sat Jun 13, 2009 12:56 pm

Re: ZBwaiP v0.2 (Updated 12/24/12)

Postby Myk » Tue Jan 01, 2013 10:13 pm

Taranok wrote:Does anybody have an unedited version of ZBwaiP v0.2? I got a bit careless with backing up copies, and so the version I have now actually doesn't work as well. The attachments are gone from the original site/forum, so can someone upload it and link?


Can you post any version of it? I'd like to see this script in action.
User avatar
bajadulce
Posts: 52
Joined: Fri Feb 01, 2013 7:02 pm

Re: ZBwaiP v0.2 (Updated 12/24/12)

Postby bajadulce » Tue Jan 01, 2013 11:17 pm

Was there another topic on the old boards where this might have been placed? I just looked at the most recent data backup of site, and it only goes back to Dec 21st 2012. The period between the 21st and the 28th (when this new board was installed) unfortunately was only backed up w/ posts not data. But will keep looking sorry.

Also.. I know attachments aren't currently working and look ugly broken in posts, but they are still there and can be retrieved by their number very easily. So for now, keep any broken attachment links you feel are important for the time being. Yes, it's possible to find the attachment w/ just the topic i.d.#, but definitely not as easy.

am currently working on a quick reformat of poiuy's PyMS pages/layout, but will address the old attachments soon after that.

Sorry if this one slipped thru during the last week. :(

EDIT:
Was there another topic on the old boards where this might have been placed?
Found this:
viewtopic.php?p=11301#p11301
Is this the most recent update before you made this post?
If so can retrieve that. [attachment=3119:ZBwaiP.txt] Which by chance happens to be the last saved attachment on the old boards. Nothing after that.

Code: Select all

# stat_txt.tbl entry 1343: Protoss Expansion Custom Level<0>
PMCx(1343, 101, aiscript):

#this AI will aim for a quick +1 armor
# 1gate -> expand -> reavers -> expand
   start_town()
   transports_off()
   farms_notiming()
   defaultbuild_off()
   default_min(0)
   debug(vTAIstart, go!)

   --vTAIstart--
   build(8, Protoss Probe, 60)
   build(1, Protoss Pylon, 60)
   wait_build(8, Protoss Probe)
   build(9, Protoss Probe, 60)
   wait_build(9, Protoss Probe)
   build(10, Protoss Probe, 60)
   build(1, Protoss Gateway, 60)
   wait_build(10, Protoss Probe)
   build(11, Protoss Probe, 60)
   multirun(buildstuff)
   wait_build(11, Protoss Probe)
   build(12, Protoss Probe, 60)
   wait_build(12, Protoss Probe)
   build(13, Protoss Probe, 60)
   wait_buildstart(13, Protoss Probe)
   wait_build(13, Protoss Probe)
   expand(99, natural)
   build(14, Protoss Probe, 50)
   wait_build(14, Protoss Probe)
   build(15, Protoss Probe, 50)
   wait_build(15, Protoss Probe)
   build(16, Protoss Probe, 50)
   wait_build(16, Protoss Probe)
   build(17, Protoss Probe, 50)
   wait_build(17, Protoss Probe)
   build(18, Protoss Probe, 40)
   wait_build(18, Protoss Probe)
   build(19, Protoss Probe, 40)
   wait_build(19, Protoss Probe)
   build(20, Protoss Probe, 30)
   wait_build(20, Protoss Probe)
   build(21, Protoss Probe, 30)
   wait_build(21, Protoss Probe)
   build(22, Protoss Probe, 30)
   stop()

   --buildstuff--
   build(1, Protoss Gateway, 40)
   wait_buildstart(1, Protoss Gateway)
   build(1, Protoss Assimilator, 50)
   wait_buildstart(1, Protoss Assimilator)
   build(1, Protoss Forge, 30)
   wait_buildstart(1, Protoss Forge)
   multirun(+1armor)
   wait_build(1, Protoss Gateway)
   build(1, Protoss Cybernetics Core, 60)
   farms_timing()
   wait_build(1, Protoss Cybernetics Core)
   build(1, Protoss Robotics Facility, 60)
   wait_build(1, Protoss Robotics Facility)
   build(1, Protoss Robotics Support Bay, 40)
   wait_build(1, Protoss Robotics Support Bay)
   multirun(reavers)
   wait(10)
   multirun(upgradedmg)
   wait(10)
   multirun(addgates)
   build(3, Protoss Forge, 30)
   build(1, Protoss Citadel of Adun, 35)
   multirun(upgrades)
   wait_build(6, Protoss Gateway)
   stop()

   --addgates--
   build(4, Protoss Gateway, 20)
   wait_buildstart(4, Protoss Gateway)
   multirun(zealots)
   wait_build(4, Protoss Gateway)
   build(5, Protoss Gateway, 20)
   wait_build(5, Protoss Gateway)
   build(6, Protoss Gateway, 20)
   wait_build(6, Protoss Gateway)
   check_transports()
   wait(400)
   multirun(loop)
   stop()

   --loop--
   wait(900)
   resources_jump(600, 600, extra)
   stop()

   --extra--
   player_need(9, Protoss Gateway)
   player_need(2, Protoss Robotics Facility)
   stop()

   --upgrades--
   wait(10)
   multirun(citadel)
   wait_build(3, Protoss Forge)
   wait_build(1, Protoss Templar Archives)
   upgrade(2, Protoss Armor, 20)
   upgrade(1, Protoss Ground Weapons, 20)
   upgrade(1, Protoss Plasma Shields, 20)
   wait(4500)
   upgrade(3, Protoss Armor, 20)
   upgrade(2, Protoss Ground Weapons, 20)
   upgrade(2, Protoss Plasma Shields, 20)
   wait(5000)
   upgrade(3, Protoss Ground Weapons, 20)
   upgrade(3, Protoss Plasma Shields, 20)
   stop()

   --citadel--
   wait_build(1, Protoss Citadel of Adun)
   multirun(templar)
   upgrade(1, Leg Enhancements, 20)
   stop()

   --templar--
   build(1, Protoss Templar Archives, 30)
   stop()

   --zealots--
   train(1, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(2, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(3, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(4, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(5, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(6, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(7, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(8, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(9, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(10, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(11, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(12, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(13, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(14, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(15, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(16, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(17, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(18, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(19, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   train(20, Protoss Zealot)
   attack_add(1, Protoss Zealot)
   goto(attackloop)
   stop()

   --attackloop--
   wait_train(4, Protoss Reaver)
   wait_train(19, Protoss Zealot)
   attack_prepare()
   expand(99, natural2)
   wait(15)
   attack_do()
   multirun(zealots)
   multirun(reavers)
   attack_clear()

   stop()

   --reavers--
   train(1, Protoss Reaver)
   attack_add(1, Protoss Reaver)
   train(2, Protoss Reaver)
   attack_add(1, Protoss Reaver)
   train(3, Protoss Reaver)
   attack_add(1, Protoss Reaver)
   train(4, Protoss Reaver)
   attack_add(1, Protoss Reaver)
   stop()

   --upgradedmg--
   upgrade(1, 35, 20)
   stop()

   --+1armor--
   wait_build(1, Protoss Forge)
   upgrade(1, Protoss Armor, 40)
   stop()

   --natural2--
   start_town()
   build(1, Protoss Nexus, 40)
   wait_buildstart(1, Protoss Nexus)
   wait_build(1, Protoss Nexus)
   build(1, Protoss Assimilator, 30)
   build(1, Protoss Pylon, 35)
   multirun(cannon2s)
   get_oldpeons(12)
   wait(300)
   build(13, Protoss Probe, 35)
   wait_buildstart(13, Protoss Probe)
   wait(300)
   build(14, Protoss Probe, 35)
   wait_buildstart(14, Protoss Probe)
   wait(300)
   build(15, Protoss Probe, 35)
   wait_buildstart(15, Protoss Probe)
   wait(300)
   build(16, Protoss Probe, 35)
   wait_buildstart(16, Protoss Probe)
   wait(300)
   build(17, Protoss Probe, 35)
   wait_buildstart(17, Protoss Probe)
   wait(300)
   build(18, Protoss Probe, 35)
   wait_buildstart(18, Protoss Probe)
   wait(300)
   build(19, Protoss Probe, 35)
   wait_buildstart(19, Protoss Probe)
   stop()

   --cannon2s--
   wait_build(1, Protoss Pylon)
   build(2, Protoss Photon Cannon, 50)
   defenseuse_gg(1, Protoss Reaver)
   stop()
   

   --natural--
   start_town()
   build(1, Protoss Nexus, 50)
   wait_buildstart(1, Protoss Nexus)
   wait_build(1, Protoss Nexus)
   build(1, Protoss Assimilator, 30)
   build(1, Protoss Pylon, 35)
   multirun(cannons)
   get_oldpeons(6)
   build(7, Protoss Probe, 35)
   wait_buildstart(7, Protoss Probe)
   wait(300)
   build(8, Protoss Probe, 35)
   wait_buildstart(8, Protoss Probe)
   wait(300)
   build(9, Protoss Probe, 35)
   wait_buildstart(9, Protoss Probe)
   wait(300)
   build(10, Protoss Probe, 35)
   wait_buildstart(10, Protoss Probe)
   wait(300)
   build(11, Protoss Probe, 35)
   wait_buildstart(11, Protoss Probe)
   wait(300)
   build(12, Protoss Probe, 35)
   wait_buildstart(12, Protoss Probe)
   wait(300)
   build(13, Protoss Probe, 35)
   wait_buildstart(13, Protoss Probe)
   wait(300)
   build(14, Protoss Probe, 35)
   wait_buildstart(14, Protoss Probe)
   wait(300)
   build(15, Protoss Probe, 35)
   wait_buildstart(15, Protoss Probe)
   wait(300)
   build(16, Protoss Probe, 35)
   wait_buildstart(16, Protoss Probe)
   wait(300)
   build(17, Protoss Probe, 35)
   wait_buildstart(17, Protoss Probe)
   wait(300)
   build(18, Protoss Probe, 35)
   wait_buildstart(18, Protoss Probe)
   wait(300)
   build(19, Protoss Probe, 35)
   wait_buildstart(19, Protoss Probe)
   stop()

   --cannons--
   wait_build(1, Protoss Pylon)
   build(5, Protoss Photon Cannon, 50)
   defenseuse_gg(1, Protoss Reaver)
   stop()
User avatar
Taranok
Posts: 256
Joined: Tue Sep 07, 2010 9:41 pm

Re: ZBwaiP v0.2 (Updated 12/24/12)

Postby Taranok » Wed Jan 02, 2013 12:41 am

Oh wait you can still use links with the attachment numbers to retrieve the attachments? Woops, i deleted the number :|

Anyway, I think I worked out a semi-decent version that can win maybe about 60% versus the top T bots?
Basically winning or losing depends on 2 factors:
1. did it survive the early attack T does
2. does it attack before the 2nd attack T does
It seems really timing based, but essentially the AI is not terrific at defending (is any AI good at it?)

I'm trying to figure out whether to use a timed expansion loop or an attack-based expansion loop. If you care to look at the script (sorry it's so messy), there's a part under --attackloop-- where the expand(99, natural2) is commented out. If you want to test it, you'll have to uncomment it and put a stop in the --testexpandloop--

Google Drive download
goto file -> download as
User avatar
Myk
Posts: 257
Joined: Sat Jun 13, 2009 12:56 pm

Re: ZBwaiP v0.2b (Updated 1/1/13) Happy New Year!

Postby Myk » Wed Jan 02, 2013 3:19 am

Carrier Rush!

I, uhhh, think I broke the game?

Well, Taranok, you were right about Carriers being good, especially with upgraded shields and plating. Sometimes they get caught out in the open, but it's not too weird to find some with 10 kills and even a few with 20 kills (that's 1000 minerals worth!).

Return to “StarCraft Modding”

Who is online

Users browsing this forum: No registered users and 1 guest