This script will echo your troop & resource (including population) totals for each city and for your entire account.
Troop upkeep per city and total for account added as well. Note it shows upkeep with vesta, etc. buffs factored in, not unbuffed.

THIS VERSION REQUIRES NEATBOT 3010T OR LATER.
For older bots use the script in the second code box below.

// =======================================================
// Troop & Resource Totals For Each City & Entire Account
// Originally by romulus
// =======================================================

// set this to 1 if you want individual city troopcounts displayed too, 0 if not
showcities = 0

mycities = cities.concat()
echo "ACCOUNT TOTALS: Found " + mycities.length + " castle(s)"
echo "Please wait. Calculating..."
t = GetTroops("a:0")
res = GetResources("f:0")
pop = 0
popmax = 0
up = 0

label mainLoop
c = mycities.shift()
if !c goto end
c = c.cityManager
tr = c.getAvailableTroop()
up = up + c.resource.troopCostFood
cres = c.resetEstResource()
popmax = popmax + c.resource.maxPopulation
pop = pop + c.resource.curPopulation
if showcities echo "City " + c.name + " - " + TroopBeanToString(tr, ",") + " (Upkeep: " + FormatNumber(c.resource.troopCostFood) + ")\nGold: " + FormatNumber(cres.gold) + " Food: " + FormatNumber(cres.food) + " Wood: " + FormatNumber(cres.wood) + " Stone: " + FormatNumber(cres.stone) + " Iron: " + FormatNumber(cres.iron) + " Population: " + floor(pop) + " of " + floor(popmax)
dummy = tr.addTo(t)
dummy = cres.addTo(res)
goto mainLoop

label end
echo "===========================\nTOTAL TROOPS\n===========================\n" + TroopBeanToString(t, "\n") + "\n(Upkeep: " + FormatNumber(up) + ")\n===========================\nTOTAL RESOURCES\n===========================\nGold: " + FormatNumber(res.gold) + "\nFood: " + FormatNumber(res.food) + "\nWood: " + FormatNumber(res.wood) + "\nStone: " + FormatNumber(res.stone) + "\nIron: " + FormatNumber(res.iron) + "\n(Pop: " + FormatNumber(pop) + " of " + FormatNumber(popmax) + ")\n==========================="

FOR OLDER NEATBOT VERSIONS:

// ================================================================
// Troop & Resource Totals For Each City & Entire Account
// Originally by romulus
// ================================================================

// set this to 1 if you want individual city troopcounts displayed too, 0 if not
showcities = 0

mycities = cities.concat()
echo "ACCOUNT TOTALS: Found " + mycities.length + " castle(s)"
echo "Please wait. Calculating..."
t = GetTroops("a:0")
pop = 0
popmax = 0
up = 0
g = 0
f = 0
w = 0
s = 0
i = 0

label mainLoop
c = mycities.shift()
if !c goto end
c = c.cityManager
tr = c.getAvailableTroop()
popmax = popmax + c.resource.maxPopulation
pop = pop + c.resource.curPopulation
up = up + c.resource.troopCostFood
g = g + c.resource.gold
f = f + c.resource.food.amount
w = w + c.resource.wood.amount
s = s + c.resource.stone.amount
i = i + c.resource.iron.amount
if showcities echo c.name + " - " + TroopBeanToString(tr, ",") + " (Upkeep: " + floor(c.resource.troopCostFood) + ")"
dummy = tr.addTo(t)
goto mainLoop

label end
if up >= 1b up = round(up / 1000000000,2) + "B"
if up < 1b up = round(up / 1000000,2) + "M"
if g >= 1b g = round(g / 1000000000,2) + "B"
if g < 1b g = round(g / 1000000,2) + "M"
if f >= 1b f = round(f / 1000000000,2) + "B"
if f < 1b f = round(f / 1000000,2) + "M"
if w >= 1b w = round(w / 1000000000,2) + "B"
if w < 1b w = round(w / 1000000,2) + "M"
if s >= 1b s = round(s / 1000000000,2) + "B"
if s < 1b s = round(s / 1000000,2) + "M"
if i >= 1b i = round(i / 1000000000,2) + "B"
if i < 1b i = round(i / 1000000,2) + "M"

echo "TOTAL TROOPS:\n" + TroopBeanToString(t, "\n") + "\n*** Upkeep: " + up + " ***"
echo "TOTAL RESOURCES:\nGold: " + g + "\nFood: " + f + "\nWood: " + w + "\nStone: " + s + "\nIron: " + i + "\nPopulation: " + floor(pop) + " of " + floor(popmax)


ScriptExamples

TroopAndResourceTotals (last edited 2014-02-25 05:10:19 by Inanna)