<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'  'http://www.docbook.org/xml/4.4/docbookx.dtd'><article><articleinfo><title>HeroString</title><revhistory><revision><revnumber>19</revnumber><date>2014-03-11 09:06:10</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>18</revnumber><date>2013-11-13 18:08:50</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>17</revnumber><date>2013-11-13 18:05:30</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>16</revnumber><date>2013-11-13 17:48:59</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>15</revnumber><date>2013-11-13 17:46:27</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>14</revnumber><date>2013-05-14 18:20:18</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>13</revnumber><date>2012-12-04 19:39:16</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>12</revnumber><date>2012-12-04 19:38:51</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>11</revnumber><date>2012-12-04 19:38:28</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>10</revnumber><date>2012-12-04 19:38:02</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>9</revnumber><date>2012-11-17 20:06:48</date><authorinitials>Susannah</authorinitials></revision><revision><revnumber>8</revnumber><date>2012-11-17 20:06:02</date><authorinitials>Susannah</authorinitials></revision><revision><revnumber>7</revnumber><date>2012-11-06 02:28:29</date><authorinitials>Susannah</authorinitials></revision><revision><revnumber>6</revnumber><date>2012-11-06 02:27:49</date><authorinitials>Susannah</authorinitials></revision><revision><revnumber>5</revnumber><date>2012-10-26 20:57:23</date><authorinitials>Susannah</authorinitials></revision><revision><revnumber>4</revnumber><date>2012-10-12 16:46:28</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>3</revnumber><date>2012-10-12 16:44:55</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>2</revnumber><date>2012-09-18 13:24:33</date><authorinitials>Inanna</authorinitials></revision><revision><revnumber>1</revnumber><date>2012-09-18 12:32:26</date><authorinitials>Inanna</authorinitials></revision></revhistory></articleinfo><para>Many places in the bot will allow you to specify heroes. The selection or list of heroes to be used will be referred to as the hero-string in various other places in this wiki. </para><!--rule (<hr>) is not applicable to DocBook--><para> You may list hero names individually, and/or exclude heroes with '!name', and/or include all heroes with 'any' or even use no hero at all with 'none'. For example, </para><itemizedlist><listitem><para><emphasis role="underline">valleyheroes Biggy</emphasis> <emphasis>this would allow only hero Biggy to attack valleys &amp; flats</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes !Smarty,!Biggy,any</emphasis> <emphasis>this would allow any hero except Smarty and except Biggy to hit npcs</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 10 Biggy,Polly,Smarty</emphasis> <emphasis>this would allow heroes Biggy, Polly, and Smarty to hit npc10s</emphasis> </para></listitem><listitem><para><emphasis role="underline">reinforce 123,456 any c:100000</emphasis> <emphasis>this would allow you to reinforce 123,456 with cav and any available hero</emphasis> </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--><para> You may also use advanced filters in hero-strings in the format of hero:filter. The hero name list (or 'any') must be stated first, followed by the filter(s). Any filters listed will apply to the entire line. For example, </para><itemizedlist><listitem><para><emphasis role="underline">valleyheroes any:attack&gt;180</emphasis> <emphasis>this would allow any hero with an attack over 180 to attack valleys &amp; flats</emphasis> </para></listitem><listitem><para><emphasis role="underline">valleyheroes any:politics&lt;200</emphasis> <emphasis>this would allow any hero with politics under 200 to attack valleys &amp; flats</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 8 any:politics=best</emphasis> <emphasis>this would allow the best politics hero to hit npc8s</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 5 farmer:attack&lt;200</emphasis> <emphasis>this would allow any hero named Farmer who's attack is under 200 to attack npc5s</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 10 any:attack&gt;300,base&gt;60</emphasis> <emphasis>this would allow any attack hero with both an attack over 300 AND a base over 60 to hit npc10s</emphasis> </para></listitem><listitem><para><emphasis role="underline">attack 111,222 !Biggy,any:attack&gt;180 c:99k,s:1k</emphasis> <emphasis>this would attack coordinates 111,222 with any hero over 180 attack other than hero Biggy with 99k cavs, 1k scouts</emphasis> </para></listitem><listitem><para><emphasis role="underline">attack 111,222 !Polly,any:attack&lt;100 w:5k</emphasis> <emphasis>this would attack coordinates 111,222 with any hero under 100 attack other than hero Polly with 5k warriors</emphasis> </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--><para> If you wish to apply separate filters to separate heroes, use multiple lines. For example, </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 5 any:base&gt;60</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 5 any:attack&lt;300</emphasis> </para></listitem></itemizedlist><para>The above lines mean that npc5s can be farmed with any hero that has greater than 60 base OR any hero that has less than 300 attack. </para><!--rule (<hr>) is not applicable to DocBook--><para> If you wish to include heroes of specific names regardless of whether they meet the conditional filter for that line, put them on separate lines: </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 5 bob,fred,joe</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 5 any:attack&gt;=60</emphasis> </para></listitem></itemizedlist><para>The above lines mean that npc5s can be farmed by any hero named &quot;bob&quot;, &quot;fred&quot;, or &quot;joe&quot;, OR any hero with 60+ base. </para><!--rule (<hr>) is not applicable to DocBook--><para> Multiple lines can be concatenated (combined) into a single line with the | symbol. For example, </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 5 bob,fred,joe|any:attack&gt;=60</emphasis> </para></listitem></itemizedlist><para>The above line means exactly the same thing as the 2 before it. </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 5 bob,any:attack&gt;=60</emphasis> </para></listitem></itemizedlist><para>If you were to instead use the line above, it would mean npc5s can be farmed with any hero that has both the name bob AND has an attack of 60+. </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 5 any:base&gt;60,attack&lt;300</emphasis> </para></listitem></itemizedlist><para>With those rules standing, the above line would mean you can farm npc5s with any hero that has both a base higher than 60 AND an attack under 300. </para><!--rule (<hr>) is not applicable to DocBook--><para> All possible filters for use in hero-strings are: </para><itemizedlist><listitem><para>attack or att </para></listitem><listitem><para>politics or pol </para></listitem><listitem><para>intel or int </para></listitem><listitem><para>loyalty or loy </para></listitem><listitem><para>level or lvl </para></listitem><listitem><para>experience or exp </para></listitem><listitem><para>points or pts </para></listitem><listitem><para>base or bse </para></listitem></itemizedlist><para>All possible comparisons to use in filters are: </para><itemizedlist><listitem><para>&lt; (less than) </para></listitem><listitem><para>&gt; (greater than) </para></listitem><listitem><para>= (equal to) </para></listitem><listitem><para>!= (not equal to) </para></listitem><listitem><para>&lt;&gt; (not equal to) </para></listitem><listitem><para>&lt;= (less than or equal to) </para></listitem><listitem><para>&gt;= (greater than or equal to) </para></listitem></itemizedlist><para>&quot;Best&quot; and &quot;Worst&quot; can be used in place of values for comparisons, for example: </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 10 any:attack=best</emphasis> <emphasis>would allow npc10s to be farmed with the best attack hero.</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 5 any:attack&lt;best</emphasis> <emphasis>would allow npc5s to be farmed with any hero lower than the best attack hero.</emphasis> </para></listitem></itemizedlist><para>Stats can be compared to other stats in place of values, for example: </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 5 any:attack&gt;politics</emphasis> <emphasis>would allow any hero with an attack score greater than its politics score.</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 5 any:politics&gt;level</emphasis> <emphasis>would allow any hero with a politics score greater than its level.</emphasis> </para></listitem></itemizedlist><para>Wildcards can be used for the hero list. * will represent 1 or more characters, ? will represent 1 character. For example, </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 5 att*:attack&gt;200</emphasis> <emphasis>would allow npc5s to be farmed with any hero over 200 attack that has &quot;att&quot; in its name.</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 5 *:base&gt;60</emphasis> <emphasis>would allow npc5s to be farmed with any hero that has a base over 60.</emphasis> </para></listitem><listitem><para><emphasis role="underline">npcheroes 5 att??int:base&gt;=69</emphasis> <emphasis>would allow npc5s to be farmed with any hero named &quot;att69int,&quot; &quot;att70int,&quot; etc. who's base is 69+.</emphasis> </para></listitem></itemizedlist><para>Hero strings cannot consist of only a single number. This is a safety precaution for people blindly replacing older goals of &quot;herofirelimit 100&quot; with &quot;keepheroes 100&quot; and unexpectedly losing a valuable hero. If you use heroes with pure number names, for example &quot;100&quot; you can still <emphasis>trick</emphasis> the hero string into accepting it, by adding something more than just that single number. </para><itemizedlist><listitem><para><emphasis role="underline">npcheroes 8 100,100</emphasis> This would allow the hero named &quot;100&quot; (or the hero named &quot;100&quot; :P) to farm npc8s. </para></listitem></itemizedlist><!--rule (<hr>) is not applicable to DocBook--><para> <ulink url="http://guide.neatportal.com/wiki/HeroString/wiki/CategoryHowTo#">CategoryHowTo</ulink> </para></article>