Delivery Man

Upload your latest creations here.
Please note that by posting comments to posts in this forum you forfeit your personal copyright on whatever you post. AI Scripters reserves the right to re-use objective comments in script reviews without requiring the posting author's permission. Credit, where appropriate will be given in such cases.
Post Reply
aabattery
Forumer
Posts: 13
Joined: Mon Nov 02, 2015 5:08 pm

Delivery Man

Post by aabattery »

Personal space? Oh no, we're not having any of that today.

This simple man only knows one strategy; the TC drop. He then follows up with a couple towers, a couple castles, and then a villager+UU rush to mop up. Works best vs an AI player (I know tower rushing is cheating :rolleyes:).

Game version: UP 1.4
Map: Black Forest RM (higher chance of scouting the enemy quickly)
Civilization: Spanish/ Mongols preferred
Map size: Tiny
Population: 200
Difficulty: Hard and below
Starting Age: Dark Age
Teams: No (tends to TC drop the same enemy, making it very inefficient)

Tested and won vs Barbarian and Promi AI on hard when it scouted the enemy TC early (<10 minutes).

Thanks to scripter64 and II2N for helping me get started.

Latest update 24/2/16
Now targets players other than player 2, however it does not play against itself very well. Expect every Delivery Man on one team to douche the exact same person in team games.

Update 10/2/16
Now builds first stone and gold mining camp at first scouted mine (typically close to original base)
Drops food to maintain villager production (needs improvement)
Garrisons individual villagers into TC to act as a tower when enemy villagers are present
Attachments
Delivery Man.7z
(8.25 KiB) Downloaded 341 times
Last edited by aabattery on Fri Feb 26, 2016 5:21 am, edited 5 times in total.

User avatar
offwo
Guru
Posts: 541
Joined: Mon Feb 21, 2011 9:31 am

Re: Delivery Man

Post by offwo »

Glad to see some new scripters here :)

I tested this script twice as koreans vs my script on 1v1 BF. First game it found the enemy too late and so when it tried to fwd the tc it simply deleted it and dropped another one at its base. Second game it played better and managed to drop foundation 6 tiles away, but this was thwarted when my script built a camp where the foundation was and it then placed it 8 tiles away in a different spot. It caused some minor damage but my script was able to drop a castle 6 tiles away from the fwd tc and it was quickly defeated after that.

Some comments:
- Your script had an error where you had accidentally written feudal-age-age instead of feudal-age.
-FORCE DROP. Your script had idle tc on 49F for 30 seconds. At 8mins in the first game, despite having not deleted its tc yet, it had 18 pop, where a perfectly playing script would have 22. This would make a big difference in the vill wars, as well as your ability to gather 275 wood quickly enough.
An simple example of force drop code would be something like this:

Code: Select all

(defrule
(food-amount < 50)
(up-pending-objects c:< villager < 1)
(building-type-count town-center > 0)
=>
(up-drop-resources food c:< 8)
)
You could improve this code by adding a timer (doing it 23s after a vill is trained) or using it to advance to feudal earlier, but even adding this would make a difference.
- You could get away with looming slightly later. I understand you take it early because of wolves, but even taking it at pop 6 would make a difference to your idle tc time. If you decide to keep taking it immediately, I would not use 2 villagers on the first house.
- I'm not sure about the vill explorer. It didn't seem to be effective, in both games the tc was found by the scout. If you decide to keep it, then send it after 2 or 3 minutes (maybe the same with the actual scout). You could possibly even use direct unit commands to direct the vill, although I wouldn't have any idea how to do that. :P
- You might want to experiment with training vills after the fwd tc instead of saving for feudal.
- You might want to experiment with building camps/farms forward (or after your second tc is up).

However, overall I was impressed with this script for a first time script. My first script was a lot worse.
those hackers are just idiots, i spit on them :lol: - Mabuse

aabattery
Forumer
Posts: 13
Joined: Mon Nov 02, 2015 5:08 pm

Re: Delivery Man

Post by aabattery »

The AI's strategy really is hit or miss, so I tested on ~20x speed and focused mainly on the scouting and execution of the TC drop. I'll definitely work on the eco.
Unfortunately, until I figure out a good scouting pattern, the initial villager explorer is almost necessary to find sheep and still find the enemy TC with the scout in time.

I'm writing using Notepad++ so typing feu<cursor here>-age and pressing enter turns it into feudal-age-age <_<

Is your AI The Unknown? I'm (ironically) having a hard time dealing with towers because I have to move my TC. To get villagers to hit towers, I have to increase town size, but often it extends too far into enemy territory, so if there's a tower deep in enemy territory my villagers will suicide on it.

scripter64
Waheguru
Posts: 5891
Joined: Fri Jan 16, 2009 8:36 pm

Re: Delivery Man

Post by scripter64 »

I love the concept of this AI :lol:

For the TLS issue, you could use sn-number-civilian-militia to limit the number of villagers that go after towers in town. If you're losing a lot of villagers, you can set it to 0 to stop it entirely.

User avatar
John the Late
Swami
Posts: 116
Joined: Thu Dec 20, 2012 8:54 am
Location: Germany

Re: Delivery Man

Post by John the Late »

A very funny AI! :D

I tested it 1v1 against itself, and saw one of the weirdest things ever: A complete stalemate. Both AIs TC-dropped each other, following up with towers and castles, but in the end they were so aggressive that they killed ALL villagers of each other, leaving both AIs completely unable to do anything while not being defeated either.

Post Reply