The City objects can reference details about the city the script is run in.

City objects can be referenced as:

The .property at the end is how you will specify which detail you are referencing. Using the table below, you can for example get the name of the city with city.name.

Properties

Property

Type

Description

brokenGates

boolean

Returns true if the current cities gates are broken.

buildCityLocations

array

Contains the FieldId of each coordinates scheduled for a (real) city to be built.

buildings

object

Contains information about the buildings in your city.

buffs

object

Returns an object of the current cities buffs.

Castle

checkFeastingHallSpace

Boolean

Looks to see if you have an open slot in your Feasting Hall. NOTE: Counts one spot in Hall for Training Hero if not in that town. Returns True / False

cityHasGoalErrors

Boolean

Is set to true in case if there was an exception (internal error) during goal processing OR if there are no goals at all (e.g. only comments)... i.e. simple syntax error will not set it to true...

cityNameCoords()

string

Returns the city name and (coords) in the format shown on the city tabs.

coords

String

Gives the coordinates of the city

debugMask

int

Returns the (bitmask?) numeric showing which debug options are currently enabled.

directionChange

Boolean

Internal bot usage only. Used by medal hunting to set to true every time army is recalled, and then it forces citymanager to do 1 cycle without auto-recalling troops from valleys. Returns: True / False

distanceSettings

Array

Returns all 5 values of DistancePolicy for the city. distanceSettings[0] through distanceSettings[4] will return the value for npc farming, npc building, medal hunting, valley acquisition, and map scanning in order.

enemyArmies

ArrayCollection

Contains information about incoming enemy armies.

estResource

(type is EstimateResource)

fields

ArrayCollection

Array of Field Objects representing fields (valleys and flats) owned by current city.

fieldId

int

fieldId of current city coords.

findHeroByName("heroname")

object

if the hero is found it will display the heroes object. Else it will return null.

fortification

object

Contains information about the wall defences in your city.

fortificationProduceQueue

fortificationQueueStatus

int

Tells if wall building status has started up or not. 0 = ready 1 = not ready

fortificationRequirement

friendlyArmies

object

Contains information about incoming alliance armies.

furtherInitNeeded

Boolean

Tells True / False if town has had the first focus set on a town.

GateControl

int

Shows current status of the city gates. 0 = Auto 1 = Open 2 = Closed

getActiveBuilding()

object

If you're building it will return the object of that building, otherwise it will return null.

getActiveResearch()

object

If you're researching it will return the object of that research, otherwise it will return null.

getConfig("")

int

Outputs value of a config goal. Example: echo city.getConfig("hero") will echo the status of 'config hero' goal.

getMaxArmySize()

object

Shows the maximum amount of army troops possible.

GetTechLevel()

int

Returns the current level of the tech provided.

getTravelTime

int

Returns the time in seconds it takes to march from point A to point B using a particular type of troops, taking into account player's relevant tech levels for compass or horseback riding.

hasEnemyArmies

boolean

Returns true if the city has enemy armies, otherwise returns false.

hasEnemyArmiesWithin()

Boolean

Returns true if there are enemy armies incoming within x seconds. Optionally use hasEnemyArmiesWithin(x, true) to return true if there are enemy armies incoming within x seconds, or if the beacon is too low to see the time. Returns false if not.

hasResourceForArmy()

Boolean

Shows if you have the resources to build the army specified.

haunted

Boolean

Returns true if the current city has a haunted or Christmas castle item applied.

Heroes

object

Contains information about the heroes in your city.

id

int

Gives the number ID of town that is ran in

incomingResources(sec)

object

Contains information about resources incoming to the city within specified time in seconds

innheroes

object

Contains information about the heroes in the inn.

innStatus

int

Returns the ready / not ready status for the inn in that town. 0 = ready 1 = not ready

isDebugging(32768)

Boolean

Shows if script debugging is On or Off (True or False).

mapInitState

int

Tells if map screen has loaded yet. 0 - OK 1 - pending 2 - init needed

myArmies

object

Contains information about your own armies. Same as selfArmies.

name

String

Gives the name of the town it's run in.

NumberOfRealAttacks

int

Returns the number of real (non-junk) attacks incoming to the city.

pendingProductionRates

array

?

PRFactor

rallySpotAvailable()

Boolean

Shows if you have a rally spot free. Optional parameters: (reserveSlotForTH, optional extraSlots).

researches

(array coll.)

reservedResource

(type is resource bean)

resource

object

Contains information about the resources in your city.

resourceFieldType

int

Returns the numeric type of valley the city will acquire with valley acquisition, based on resource fields built.

ResourceProduction

string

Returns the current % distribution of workers for resource production.

selfArmies

object

Contains information about your own armies. Same as myArmies.

timeSlot

int

Gives the order of towns that the bot reads from 0-X, where X = The number of towns you have starting at 0

tradesArray

TrainingHeroIsHere

trainingHeroName

String

Returns the name of the town's listed training hero.

transingTradesArray

troop

object

(object type is TroopBean)

troopQueueStatus

int

Tells if troop building status has started up or not. 0 = ready 1 = not ready

troopStillInProduction

x

int

Outputs the cities x location on the map.

y

int

Outputs the cities y location on the map.

Examples


ScriptObjects

City (last edited 2015-09-08 02:07:47 by Inanna)