Bot Land Cheat Sheet | Décio Montanhani

Décio Montanhani

Desenvolvedor Mobile

Bot Land Cheat Sheet

The purpose of this page is to allow quick lookups on specific things about Bot Land game mechanics. I wanted to consolidate this information in one place, since it was scattered all over the internet (some of the docs were available only in-game, some information only in Discord chat, etc.) You can edit this page here.


Comparison of weapon types

ClassDamageMin-rangeMax-rangeDirectionalityDelayBlind-fireableReflectable
Melee300-55011-2Only cardinal0NoNo
Lasers100-40013-5Only cardinal0YesYes
Missiles200-30013-4Any direction0NoYes
Artillery250-50057-7Any direction2NoNo
Zappers100-350---0--
Landmines600-600---0--

Melee

  • Melee can hit in only cardinal directions (left, right, up, down).
  • Melee hits the target immediately.
  • Melee can not be blind-fired (you can not hit cloaked enemies).
  • Melee has the ability to charge (simultaneously move and attack from 2 tiles distance in a cardinal direction).
  • Melee has no cooldown, but charge does.
WeaponDamageCharge cooldown
Melee I3007
Melee II4504
Melee III5504

Lasers

  • All lasers only fire in cardinal directions (left, right, up, down).
  • All lasers hit the target immediately.
  • All lasers can be blind-fired (you can hit cloaked enemies).
  • All lasers can be reflected.
  • All lasers have no cooldown (can be used again every turn).
  • Inferno Lasers ignite the target, causing 100 damage per turn for the duration of the ignition and causing a cloaked unit to become visible for the duration of the ignition (the cloak buff stays on, so the unit may become invisible after the ignition is over). Ignition persists across rounds.
  • Stunning Lasers stun the target for 1 turn.
  • Stunning Lasers can not stun the same target 2 turns in a row.
  • Stunning Lasers’ damage can be reflected but the stun can not.
  • Vampiric Lasers heal for 30% of damage inflicted (is this correct?)
WeaponDamageRangeSpecial effectSpecial duration
Lasers I2003--
Lasers II3004--
Lasers III4005--
Inferno Lasers I1003Ignite1
Inferno Lasers II1504Ignite2
Inferno Lasers III2005Ignite3
Stunning Lasers I1003Stun1
Stunning Lasers II1504Stun1
Stunning Lasers III2005Stun1
Vampiric Lasers I1503Heal 30%-
Vampiric Lasers II2254Heal 30%-
Vampiric Lasers III3005Heal 30%-

Missiles

  • Any missile can be fired in any direction.
  • Any missile hit the target immediately.
  • No missile can be blind-fired (you can not hit cloaked enemies).
  • Any missile can be reflected.
  • Regular Missiles and Multi Missiles have no cooldown.
  • Acceleration Missiles have a cooldown which is reduced by consecutive firing and reset by other actions.
  • Multi Missiles fire at every enemy in range.
WeaponDamageRangeCooldownAcceleration rate
Missiles I2003--
Missiles II2503--
Missiles III3004--
Multi Missiles I663--
Multi Missiles II833--
Multi Missiles III1004--
Acceleration Missiles I20031.7 → 0.60.3
Acceleration Missiles I25031.7 → 0.60.3
Acceleration Missiles III30031.7 → 0.60.3

Artillery

  • Artillery is the only weapon in the game which does not hit immediately (it takes 2 turns to land a shot).
  • Artillery is the only weapon in the game with a minimum range (5 tiles).
  • Although artillery has maximum range 7, sensors must be activated to fire further than 5 tiles. Activating sensors costs an action and the duration of sensors enables only 2 consecutive artillery shots.
  • Artillery can be fired in any direction.
  • Due to the inability to blind-fire and the delay in landing shots, artillery shots can be easily dodged.
  • Artillery shots cause splash damage to adjacent squares (including diagonally adjacent?)
  • Artillery can not be reflected.
WeaponDamageSplash damage
Artillery I25010
Artillery II40020
Artillery III50030

Zappers

  • When activated, zapper creates an electric field around your bot, dealing damage to adjacent enemies.
  • Diagonally adjacent enemies receive only 50% damage.
  • Inferno Zapper ignites the target, causing 100 damage per turn for the duration of the ignition and causing a cloaked unit to become visible for the duration of the ignition (the cloak buff stays on, so the unit may become invisible after the ignition is over). Ignition persists across rounds.
WeaponDamageDurationCooldownSpecial effectSpecial duration
Zapper I25049--
Zapper II30059--
Zapper III35069--
Inferno Zapper I10038Ignite2
Inferno Zapper II15048Ignite2
Inferno Zapper III15058Ignite3

Landmines

  • A bot can lay landmines under itself.
  • A mine will explode when enemy steps on it or if its duration expires.
  • There is some limit to the amount of mines a bot can lay before their earlier mines begin to disappear.
  • There is some limit to the total amount of mines which can be on the battlefield at any time.
  • Mines can not be directly detected by the enemy.
  • You can not stack mines on the same tile.
  • Landmines persist across rounds.
WeaponDamageDuration
Landmines I60011
Landmines II60014
Landmines III60017


Cloaking

  • When activated, makes your bot invisible.
  • Moving and attacking are possible while cloaked. Other actions will decloak you.
  • While you are cloaked, your damage is reduced by 80%.
  • Your enemy might decloak you by attempting to move or teleport into your tile.
  • If a friendly unit attempts to teleport onto your tile, it will simply teleport into an adjacent free tile.
  • Ignition makes you visible for the duration, but does not decloak you. This means you may become invisible again if the ignition wears off but the cloak remains. Inferno Zapper and Inferno Lasers can ignite bots.
SupportDurationDamage reduction
Cloaking I380%
Cloaking II480%
Cloaking III580%

Regen

  • Passively regenerates life each turn.
SupportHeal
Regen I10
Regen II25
Regen III50

Teleport

  • When activated, teleports you to the target location.
  • If the target location is occupied, attempts to teleport to an adjacent tile.
  • Teleporting on top of a cloaked enemy unit will decloak it. Teleporting on top of a cloaked friendly unit will simply teleport to an adjacent tile.
  • Note that the canTeleport API — despite its name — does not tell you if you can teleport on a tile.
SupportRangeCooldown
Teleport II510

Thrusters

  • Passively increases haste-after-movement. Note that the haste bonus is applied only after movement, not after other actions.
SupportNext turn haste bonus
Thrusters I17%
Thrusters II34%
Thrusters III50%

Reflect

  • When activated, grants a chance to reflect missiles and lasers.
  • A reflected missile or laser can be reflected onto any nearby enemy bot (not only to the bot which fired it).
  • A missile or laser can not be reflected more than once (projectiles can not bounce between targets).
SupportReflect chanceDurationCooldown
Reflect I50%49
Reflect II65%59
Reflect III75%69

Shield

  • When activated, casts a shield on yourself or a nearby bot, chip or CPU (you can target the desired entity).
  • A shield will absorb all damage up to a certain limit.
  • Shields can be stacked infinitely.
SupportDamage absorbedDurationCooldownRange
Shield I150983
Shield II3001284
Shield III4001285

Armor

  • Passively decreases all incoming damage.
SupportDamage reduction
Armor I5%
Armor II10%
Armor III15%

EMP

  • When activated, disables the specified hardware for all enemies around you within range.
  • If an enemy attempts to use the disabled hardware, they will lose their turn.
  • The following hardware can be disabled: LASERS, MISSILES, MELEE, ARTILLERY, ZAPPER, REPAIR, CLOAKING, SHIELD, REFLECT, TELEPORT, LANDMINES, and EMP.
  • Does not disable an effect which has been previously activated, only prevents the enemy from activating new effects. For example, if the enemy has already activated zapper, you can not disable it with your EMP.
SupportDurationCooldownRange
EMP III285

Repair

  • When activated, heals yourself or a nearby bot, chip or CPU (you can target the desired entity).
SupportHeal amountRange
Repair I501
Repair II1001
Repair III1501

Area Repair

  • When activated, heals all allies within a certain range (is this targeted or does it repair everything aroudn you?)
SupportHeal amountRangeCooldown
Area Repair I5038
Area Repair II10038
Area Repair III15038


General information

  • Although the game looks like bots are acting real-time, they are actually acting in turns.
  • The order that you place your bots on the map defines the order in which they begin to act.
  • Acting order is affected by haste (thrusters, haste chips, etc.) TODO explain better.
  • Friendly fire is not possible.
  • Matchmaking is restricted to players who have logged in during the past 3 days.
  • Matchmaking prioritizes defenders who have not had a match in 5 hours (after a new version of the game is deployed, all players are prioritized).
EntityLife
Bot2000
Chip4000
CPU12000

Open questions

  • Is ignition damage affected by cloak damage reduction?

Game limits

  • Maximum script length is 16500 characters for Botlandscript and 99000 characters for Blockly.
  • Action limit per round: 3000 opportunities-to-act in total from all bots on the map (currently there is no way to accurately gauge how close to the limit you are).
  • Computational limit: ?? (bots can time-out)
  • When you use arrays, you have to name them array1 and array2. You can not use more than 2 arrays per bot.
  • Arrays can have at most 100 elements.
  • You can share information between bots by utilizing shared variables sharedA to sharedE.

Related links

All top-level APIs

  • The following top-level APIs exist (thanks to Ron for this list!)

"init", "update", "x", "y", "life", "lifePercent", "isAttacker", "closestDistanceToWaypointAchieved", "CHIP_CPU_BOT", "CHIP_BOT_CPU", "BOT_CHIP_CPU", "BOT_CPU_CHIP", "CPU_CHIP_BOT", "CPU_BOT_CHIP", "REDUCE_BY_MISSING_LIFE", "ENEMY", "IS_OWNED_BY_ME", "CHIP", "CPU", "BOT", "ANYTHING", "SORT_BY_DISTANCE", "SORT_BY_LIFE", "SORT_ASCENDING", "SORT_DESCENDING", "arenaWidth", "arenaHeight", "sharedA", "sharedB", "sharedC", "sharedD", "sharedE", "getX", "getY", "array1", "array2", "getLife", "getLifePercent", "canTeleport", "canMove", "canMoveTo", "canEMP", "canEmp", "canCloak", "canCharge", "canZap", "canReflect", "canShield", "willRepair", "canActivateSensors", "canLayMine", "isCloaked", "isOnFire", "waypointExists", "isZapping", "areSensorsActivated", "isReflecting", "isShielded", "distanceTo", "getDistanceTo", "getEntityAt", "isEnemyMineAt", "percentChance", "randInt", "randomInteger", "willMoveWork", "willMissilesHit", "willArtilleryHit", "willLasersHit", "willMeleeHit", "isAdjacent", "filterEntities", "reduceEntities", "size", "count", "findEntity", "findEntities", "findEntitiesInRange", "findClosestEnemyBot", "findClosestEnemyCpu", "findClosestFriendlyChip", "findClosestEnemyChip", "findClosestAlliedBot", "findMyCpu", "findMyClosestBot", "setAttackPriority", "getNumMinesLaid", "add", "canSense", "canSenseEntity", "exists", "isDefined", "abs", "floor", "ceil", "min", "max", "round", "clampNumber", "checkTime", "move", "teleport", "figureItOut", "figureItOutDefense", "layMine", "moveTo", "moveToMiddle", "emp", "EMP", "cloak", "zap", "reflect", "shield", "activateSensors", "pursueBot", "pursueWaypoint", "revealMines", "pursue", "melee", "repair", "fireLasers", "fireArtillery", "fireMissiles"

© Décio Montanhani 2026