Category Archives: NEAT Bot

Guides, Goals, and Scripts for using with NEAT Bot.

Automatic Level 10 NPC Farming Script – by EHU

Here is an Automatic Level 10 NPC Farming Script for NEAT bot.. no need to change anything except the “set minarchers” value which is currently set to 120k, you could also change the troops and heroname if you are comfortable with NEAT scripting!! Have fun watching food pile up.. ;) Also, if you have an insta-archer hero running on this script you may want to make some of the delays in this script longer, otherwise your hero will burn through your archers/population/resources too fast making insta-archers while farming lvl 10 npcs! You will see… then adjust as needed.

If you are not familar with NEAT Bot for Evony then head over to the NEAT Bot section of Evony Hookups to learn a bit more about and acquire the BEST Evony Bot yet!

label autorun //-- The Auto-Run --//
sleep 600 //-- Delay for bot to stabilize, and map. --//

set heroname any:att=best //-- Hero Variables --//
set troops a:88k,t:2k,s:3k,w:7k //-- Troop Variables --//
set sleepcycle 300 //-- Inter-script sleep Delay --//
set minarchers 120k //-- Minimum Archers for Farming --//

type="npc" //-- What to Farm.. --//
distance=6 //-- Distance of NPCs to farm --//
level=10 //-- Level of NPCs to farm --//

//-- Don't Touch Below!! --// 

list=FindField(city.x, city.y, distance, GetFieldType(type), level)
echo "Found " + list.length + " level " + level + " " + type + "(s)"

label farming
ifgoto (ind==list.length) wait
ifgoto ( m_city.cityManager.troop.archer < %minarchers% ) wait
echo "attack "+FieldIdToCoords(xy)+" %heroname% %troops%"
execute "attack "+FieldIdToCoords(xy)+" %heroname% %troops%"
loop farming

//Method wait
label wait
sleep %sleepcycle%
goto farming
//End of Method Wait

goto autorun

Click Here to Report Broken/Dead Links!

Beating the New Evony IP Connection Limits with Proxies and NEATBot

Okay, so.. I was recently affected by what seems to be the start of a larger problem on Evony – IP connection limits!! After the new year I was starting to be plagued with the now dreaded (on some servers) “Security Error”. It turns out Evony is now limiting how many accounts/players can connect to Evony servers via one single IP address. The Evony server I play on has been limited to 100 accounts per IP, but I’m seeing in forums that some servers have been limited to as little as 5 accounts/players connected per IP!!
As a 4+ year Evony veteran, and 3.9+ year Evony botter, I’m used to IP bans and how to get around them by setting up my machine (computer/server) with one of the various VPN protocols (PPTP, L2TP, VPN) and “routing” my machine/network’s internet activity to another machine’s internet connection some where else, effectively changing my IP. However, the problems with most VPNs is they route my machines entire internet activity, this means all the applications and software on my machine will run through the VPN and alternate IP – thus making it difficult to utilize multiple IPs at once without using multiple computers/machines.
So.. What do I do if I have 17 Evony accounts and the server I play on gets limited to 5 accounts per IP? Use 4 computers/machines and 3 VPNs?? That’s a pain in the ass.. What if I have some beastly 4Ghz 16-Core Server with 64gb of RAM that could possibly run 400+ accounts, but the extremely competitive and bot-heavy server I play on gets limited to 50 accounts per IP? That would really suck to have all that horsepower and not be able to use it.. So, how do I route some of my bots through an alternate IP, and the rest through another alternate IP? How do I route 1/3 of my bots through my real IP address, and then the other 2/3 of my bots through 2 alternate IPs??

The solution to the problem at hand is a Proxy – or in our situation, multiple proxies!

What is a proxy you ask?? Similar to a VPN, a proxy “routes” your internet activity to another remote machine some where else in the world, changing your IP address. However, properly configuring a decent “proxifier” will allow you to route only SOME of your applications/software, via the .exe executable file, through different proxies while allowing you to still use your real IP address for other applications/software. You can even put your entire machine behind a VPN connection and then also use multiple proxy connections. You can even “tunnel” through two or more proxies at a time for extra security if you really want to hide your real IP, however I’m not sure why you would need that much security to bot on Evony.. :P

Things you will need:

  • Proxies – Socks4 or Socks5 only! HTTP/HTTPS proxies won’t work.
  • “Proxifier” program – Self-titled proxifier app, there are others that would work. (Proxy Switcher Pro, perhaps?)
  • NEAT####.exe – An up-to-date version of the latest NEAT.exe executable file.
  • “The Director” – I’d assume you are already using this if you have multiple accounts..


  1. NEAT.exe Preparation
  2. Proxifier Install/Setup
  3. “The Director” Configuration

NEAT.exe Preparation:

Okay, first.. I assume you have your NEAT.exe in a designated folder/directory with TheDirector.exe on your “desktop” or “My Documents” some where, if not, I recommend doing so for organizational purposes.. don’t just run TheDirector and NEAT from the desktop, it can get messy.. especially if you use Global Goals and/or parameter start-up scripts.. and you also run the risk of accidentally deleting scripts, goals, or even essential TheDirector files. My NEAT.exe and TheDirector.exe are located in a folder named “NEAT” on my desktop – see image below.
Next, you will need to place your NEAT.exe executable in the NEAT folder/directory that you have your TheDirector.exe executable in, if it’s not already there. Then, make a duplicate copy of the NEAT.exe for each different proxy/IP you plan on using. I am setting up 3 alternate proxy IPs, so I have 3 copies of my NEAT2995.exe named “NEATProxy1.exe”, “NEATProxy2.exe”, and “NEATProxy3.exe” – see image below.

Proxifier Install/Setup:

Now, open Proxifier and click “Profile” on the top menu, then “Proxy Servers..” – see image below.
Then click the “Add…” button on the Proxy Servers window once it appears – see image below.
Now enter your proxy’s IP/URL, Port number, select the proxy type, and click the “OK” button to save your proxy server – see image below. (If you want to use Proxifier to make sure your proxy server is functioning, go to the next step before clicking “OK” to save.)
You may click the “Check” button too make sure your chosen proxy server is up and running. If everything checks out fine, just click ‘OK” on the Proxy Checker window and then “OK” again on the Proxy Server window to save your new proxy server and continue – see image below.
Now, repeat the two previous steps until all of your proxies are entered into Proxifier. Once complete, click “OK” on the “Proxy Servers” window – see image below.
Now, to setup which NEAT.exe files Proxifier uses with each proxy, click “Profile” on the top menu, and then “Proxification Rules…” – see image below.
Click the “Add” button on the “Proxification Rules” window that appears – see image below.
Then, give your new rule a name, such as “NEATProxy1″.
Next, assign Applications to the first proxy by using the “Browse” button to navigate to your NEAT folder (mine’s on my desktop, remember?) and then select the first NEAT.exe that you renamed (“NEATProxy1.exe” if you are following this guide without deviation) – you can also just type the executable’s name followed by a semicolon, and skip the “Browse” button.
Leave the Target Hosts and Target Ports options set to “any”, the default.In the “Action’ drop-down box, select the first Proxy you entered into Proxifier and then click the “OK” button to save your first Proxification Rule – see image below.
Next, repeat the last two steps setting up new “Proxification Rules” for each of the separate NEAT.exe files you renamed and the Proxy Servers you saved to Proxifier – see image below. (I also like to use the Up/Down arrows on the left of the “Proxification Rules” window to order my rules in order of use, starting with the top being first used proxy, and bottom being the last used proxy. This is just for organizational purposes so proxies are easier to distinguish/find when I need to switch them out.)
Now that you are done with your Proxy Servers, and Proxification Rules, it’s time to set Proxifier to auto, as well as save everything. First, in the top menu click “File” then in the drop-down click “Autostart” to make Proxifier start automatically when Windows loads. Next, click “File” in the top menu and then “Save Profile As…” to save all of your freshly setup Proxifier settings, rules, and proxies to a new profile, I named mine “NEAT” – see images below.

“The Director” Configuration:

Now all that is left to beat the Evony IP connection limit with NEATbot and proxies is to set your “The Director” to use the newly created, and proxified, NEAT.exe files you created/renamed previously. Assuming you have already been using The Director to run your NEATbots, this should be an easy/quick task. If your “The Director” is not already setup to manage your accounts, set it up first before continuing.
The only task in The Director is to change which NEATbot NEAT.exe executable file that your accounts use when starting, and there are two ways to do this. But first, set your The Director’s “Auto-Restart” option to “Regular” instead of “Enable” so no bots are restarted/maintained while we edit profile info – see image below.
So, the first way to assign which NEATbot executable your accounts launch with is the manual way, and to do it you highlight the account name in The Director, then click the “Account Details”. In the “Profile Settings” window that appears, click the “set” button next to the “Profile Bot” blank at the bottom of the window – see image below.
In the “Select File” window that appears, browse to the first NEAT.exe executable we renamed, “NEATProxy1.exe” if following this guide without deviation, then click the “Open” button – see image below.
You will now see the new path to the NEAT.exe to use in the “Profile Bot” blank , the first proxified one we created. Click the “Save” button at the bottom of the “Profile Settings” window and then repeat the two previous steps for ALL the accounts and different proxified NEAT.exe files you created – see image below.
The second method for changing which NEAT.exe files The Director uses for each account is much faster, but might be scary to the less “tech savvy” Evony botters… Click the “View” button in the top menu and then “Edit All Profile Info”, this will bring up a new window where ALL account settings can be edited from one page/view. Find the “Specific Exe” column and fill in the blanks with the paths to the desired NEAT.exe file for each account. Once all accounts in the list have their “Specific Exe” value changed to the desired path, click the “Editing Complete” button at the bottom of the window – see image below.


Now that you have finished setting up your NEAT.exe files, your proxies and proxifier, and have changed The Director to use your proxied NEAT.exe files.. the only thing left to do is start your accounts! (Or, set Director back to “Enable” if you changed it to “Regular” earlier, and then restart your accounts!)
Keep the proxifier window/log open and you will be able to see it working, routing all of the different NEAT.exe traffic through the different proxies, giving them new IP addresses. ;)

NEAT-Bot-Director-Proxy5In my tutorial I’ve setup just 4 accounts using 3 proxies and also my real IP address. Of course, you can see how this could be done on a larger scale, for example: 5 proxies with 50 feeder accounts on each, plus 50 main accounts running “direct” through the real IP address, for a total of 300 accounts running on one Evony server limited to 50 accounts per IP address. Alternatively, if you are in one of the more strict servers you might need to restrict The Director to only running 5 accounts per proxy, so just 25 accounts would need at least 4 proxies – which is still better than using VPNs and needing 5 different machines!!Enjoy!

Note: Not all proxies are the same, and some of the shared/public proxies can be unsecured – even monitored. Using shared/public proxies can be a free, however, be SURE to only use them for accounts you don’t mind a slight chance of possibly losing, and NEVER use a shared/public proxy for routing personal information. (In other words.. Don’t setup your web-browser to run through a shared/public proxy and then login to your online banking account! That info could be logged…) Private proxies can be bought/rented – this is the most safe route. Besides.. scraping shared/public proxies can be a pain in the ass..

Note 2: Don’t use the proxies shown in this tutorial – they are shared/public proxies I grabbed JUST for making this tutorial – they are slow, probably unsafe, and horribly unreliable. :P

Update: This article was also shared on the NEAT Bot website’s forum, and recently was closed to new replies after these replies from Inanna.

“by Inanna » Fri Feb 14, 2014 7:18 pm
You don’t need proxifier anymore now… the bot can support it built-in. Check out the change log on the last 3 test builds :)


“by Inanna » Tue Feb 18, 2014 8:40 pm
Closing this for now since there’s no longer an IP limit on Evony. No need for us to continue freaking out about potential new systems they’re planning and haven’t yet added.”

So, you may continue using this method, or try out the NEAT Bot’s new proxy features. Personally, I like managing my proxies in a proxifier as opposed to managing them individually in applications. Good Luck!

Click Here to Report Broken/Dead Links!

Automatic Nearest Level 5 NPC Capture – Make New Feeder Cities FAST – by EHU

Adjust this script once to your liking, save it for future use, then just paste it into a feeder city and run it to capture the nearest level 5 npc – NO entering coordinates – just paste, run, and wait 30-45 minutes until you have a new city! Once the level 5 npc is captured it is sent some food, ballista, and transporters to get it farming the moment you set some farming goals! (Or, if you are using the newest version of NEAT you can take advantage of the NEW Auto-Script-Run that Romulus added for newly captured cities!) Thanks go to the Neat Forum for giving me the stock scripts to butcher for this!!

Automatically capture dozens of new cities and quickly grow your Evony feeder accounts that have just made it past the dredded Rose Metal hunt for Knight level!

Sure, level 10 NPCs would be better… but some new accounts don’t have the heroes or troops for that, especially a clunky auto bot script doing the attacking.. Plus, with an adjusted “Level 10 NPC Convert” script you can easily build a level 5 npc city up to a usable city. Not to mention, this is a REAL time saver when playing 10.. 25.. 150+ accounts!

If you are not familar with NEAT Bot for Evony then head over to the NEAT Bot section of Evony Hookups to learn a bit more about and acquire the BEST Evony Bot yet!

1: config wartown:1
2: recallall
3: sleep 900  //  <--- Wait for recalled heroes to come home..

set doorkickerhero any:attack=best|any:attack>120  //  <--- Large attack hero, adjust accordingly
set reentryhero any:attack>60  //  <--- Decent attack hero, adjust accordingly
set spamhero any:attack<best  //  <--- Junk heroes, adjust accordingly
set currentcities 8 
set currentheroes 9
set doorkickerwave a:35k,s:10k  //  <--- Main attack, adjust accordingly
set reentrywave a:35k,s:10k  //  <--- Secondary waves main attack, adjust accordingly
set spamwave w:10k,s:1k,a:100  //  <--- Junk waves, adjust accordingly

//----Do Not Change Below This Line---//
4: type="npc"
5: distance=3
6: level=5

7: list=FindField(city.x, city.y, distance, GetFieldType(type), level)
8: echo "Found " + list.length + " level " + level + " " + type + "(s)"
9: ind=0
10: xy=list[ind]

label doorkicker
11: config nomayor:1
12: echo "attack "+FieldIdToCoords(xy)+" %doorkickerhero% %doorkickerwave%"
13: execute "attack "+FieldIdToCoords(xy)+" %doorkickerhero% %doorkickerwave%"
14: goto checkrally

label reentry
15: echo "attack "+FieldIdToCoords(xy)+" %reentryhero% %reentrywave%"
16: execute "attack "+FieldIdToCoords(xy)+" %reentryhero% %reentrywave%"
17: if m_context.Player.playerInfo.castleCount = %currentcities%+1 goto complete
18: if m_city.cityManager.heroes.length = %currentheroes%-1 goto complete
//scout %targetcity%

label checkrally
19: sleep 3
20: if city.selfArmies.length < 10 goto checkheroes
21: if city.selfArmies.length = 0 goto reentry

label checkheroes
22: if city.heroes[0].isIdle = true goto checkarchers
23: if city.heroes[1].isIdle = true goto checkarchers
24: if city.heroes[2].isIdle = true goto checkarchers
25: if city.heroes[3].isIdle = true goto checkarchers
26: if city.heroes[4].isIdle = true goto checkarchers
27: if city.heroes[5].isIdle = true goto checkarchers
28: if city.heroes[6].isIdle = true goto checkarchers
29: if city.heroes[7].isIdle = true goto checkarchers
30: if city.heroes[8].isIdle = true goto checkarchers
31: if city.heroes[9].isIdle = true goto checkarchers
32: sleep 5
33: if city.heroes[0].isIdle = true goto checkarchers
34: if city.heroes[1].isIdle = true goto checkarchers
35: if city.heroes[2].isIdle = true goto checkarchers
36: if city.heroes[3].isIdle = true goto checkarchers
37: if city.heroes[4].isIdle = true goto checkarchers
38: if city.heroes[5].isIdle = true goto checkarchers
39: if city.heroes[6].isIdle = true goto checkarchers
40: if city.heroes[7].isIdle = true goto checkarchers
41: if city.heroes[8].isIdle = true goto checkarchers
42: if city.heroes[9].isIdle = true goto checkarchers
43: goto reentry

label checkarchers
44: if m_city.cityManager.troop.archer < 35000 goto spamwaves
45: if m_city.cityManager.troop.archer >= 35000 goto reentry

label spamwaves
46: echo "attack "+FieldIdToCoords(xy)+" %spamhero% %spamwave%"
47: execute "attack "+FieldIdToCoords(xy)+" %spamhero% %spamwave%"
48: if m_context.Player.playerInfo.castleCount = %currentcities%+1 goto complete
49: if m_city.cityManager.heroes.length = %currentheroes%-1 goto complete
50: goto checkrally

51: ind=ind+0
52: ind=0

label complete
53: config nomayor:0
54: recallall
55: echo "NPC has been captured"
56: say "NPC has been captured"
57: config wartown:0
58: echo "sendtroops any ballista 2k 1k 1k"
59: execute "sendtroops any ballista 2k 1k 1k" //  <--- Send Ballista to newly captured city
60: echo "sendtroops any transport 2k 1k 1k"
61: execute "sendtroops any transport 2k 1k 1k"  //  <--- Send Transporters to newly captured city
62: echo "sendresources any food 100m 138m 38m worker"
63: execute "sendresources any food 100m 138m 38m worker"  //  <--- Send some Food to newly captured city

As soon as the new cities are captured and the food, ballista, and transporters have arrived.. just paste in your favorite Feeder City goals and maybe some Level 5 NPC Convert scripts and watch your feeder alliance grow!

Note: Be careful you don’t have too many level 5 NPCs being captured at once before you can paste goals into them – other players may have waves heading to the city from when it was still a level 5 NPC so get that loyalty up fast before the cities are stolen from you – especially since they are the closest level 5 npc to your cities!!

Click Here to Report Broken/Dead Links!