Size: 952
Comment:
|
Size: 2507
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
This script will echo your troop totals for each city and for your entire account. | This script will echo your troop & resource (including population) totals for each city and for your entire account. <<BR>> Troop upkeep per city and total for account added as well. Note it shows upkeep with vesta, etc. buffs factored in, not unbuffed. |
Line 3: | Line 4: |
'''THIS VERSION REQUIRES NEATBOT 3145T OR LATER. <<BR>> For older bots use the script in the second code box below.''' |
|
Line 4: | Line 7: |
// gets total troops in all cities | // ====== Find total troops across all cities ======== total = GetTroops("a:0") cities.forEach(CreateFunction("city,ind,arr", "total.add(city.cityManager.getAvailableTroop())")) echo "Total troops in all cities is:\n" + TroopBeanToString(total, "\n") }}} <<BR>><<BR>> FOR OLDER NEATBOT VERSIONS: <<BR>><<BR>> {{{ // ======================================================= // Troop & Resource Totals For Each City & Entire Account // Originally by romulus // Requires NeatBot 3010 or later // ======================================================= // set this to 1 if you want individual city troop/res counts displayed too, 0 if not showcities = 0 |
Line 6: | Line 27: |
echo "TOTAL TROOPS: Found " + mycities.length + " castle(s)" | echo "ACCOUNT TOTALS: Found " + mycities.length + " castle(s)" echo "Please wait. Calculating..." |
Line 8: | Line 30: |
res = GetResources("f:0") pop = 0 popmax = 0 up = 0 |
|
Line 11: | Line 37: |
if c c = c.cityManager if c tr = c.getAvailableTroop() if c echo c.name + " - " + TroopBeanToString(tr, ",") if c dummy = tr.addTo(t) if c goto mainLoop |
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 |
Line 17: | Line 49: |
echo "TOTAL TROOPS:\n" + TroopBeanToString(t, "\n") | 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===========================" |
Line 20: | Line 53: |
This is the same thing, only just the account totals and not individual cities included too. {{{ // gets total troops in all cities mycities = cities.concat() echo "TOTAL TROOPS: Found " + mycities.length + " castle(s)" t = GetTroops("a:0") label mainLoop c = mycities.shift() if c c = c.cityManager if c tr = c.getAvailableTroop() if c dummy = tr.addTo(t) if c goto mainLoop echo "TOTAL TROOPS:\n" + TroopBeanToString(t, "\n") }}} |
---- ScriptExamples |
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 3145T OR LATER.
For older bots use the script in the second code box below.
// ====== Find total troops across all cities ======== total = GetTroops("a:0") cities.forEach(CreateFunction("city,ind,arr", "total.add(city.cityManager.getAvailableTroop())")) echo "Total troops in all cities is:\n" + TroopBeanToString(total, "\n")
FOR OLDER NEATBOT VERSIONS:
// ======================================================= // Troop & Resource Totals For Each City & Entire Account // Originally by romulus // Requires NeatBot 3010 or later // ======================================================= // set this to 1 if you want individual city troop/res counts 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==========================="