• Your Script is the Game’s Command

    BlueStacks Script is a powerful automation tool that runs a set of commands to automate the boring tasks in your favorite android games. Any sequence of actions that require repetition can be executed by running a script and binding it to one key.
  • If you must repeat it, you can ‘Script’ it

    Enter and exit shooting mode in PUBG. Pick resources in RAID: Shadow Legends. Do daily quests or farm endless dungeons in King’s Raid. Do all this and more with the BlueStacks Script feature, without having to repeat all the actions (keystrokes, mouse clicks, and so on) again and again.

How to Create and Run a Script?

Steps
  • Launch a game for which you want to create a script

  • Click on the keyboard icon (Or press CTRL+Shift+A) to open the Advanced Game Controls section

  • Left click or Drag and drop the ‘Script’ control scheme anywhere on the screen

  • Click on the '' icon under the script button, the cursor coordinates will be displayed on the screen. When you left click, the Script Editor opens.

  • Start adding the commands for the Script

  • Click on ‘Done’ and then ‘Save Changes’

See script to enter and exit shooting mode in PUBG

Script

Command

  • Tap 07.0390.08

    ‘Tap’ against the coordinates means that when we press ‘tab’ it will tap once on the bag icon.

  • exitShoot

    ‘exitShoot’ against the coordinates means that when we press ‘tab’ it will exit Shooting mode in the game.

Commands Available for Scripts in BlueStacks

Keyword

Syntax

Command

  • tap

    tap x1 y1 x2 y2 …xn yn delay

    This does a tap gesture. Single or multiple touchpoints can be specified. The touchpoint(s) are held for a specified delay. If the delay is not specified it is assumed to be 50msec.

    Up to 16 touchpoints are supported. But keep in mind that other touchpoints from other controls are aggregated before sending to android.

  • swipe

    swipe x1 y1 x2 y2… xn yn delay

    e.g.

    # swipe 4,5 to 40,45

    # take 100msecs

    swipe 4 5 40 45 100

    Do a swipe gesture. Multiple points may be specified which the swipe goes through.

    Delay is specified in milliseconds. This is the amount of time the entire swipe gesture takes.

  • loop / loopEnd

    loop n

    .

    .

    loopEnd

    Commands following loop command until loopEnd are executed n times.

    If n is not specified the loop continues indefinitely or until the macro trigger key is released.

  • onRelease

    onRelease

    This provides finer control over the execution of the script. A different set of commands can be provided for executing when the trigger key is pressed and released.

    All commands from the top of the script until the onrelease command are executed when trigger key is pressed. Commands following the onRelease command are executed when the trigger key is released.

  • enterShoot

    enterShoot

    Enter shooting mode used to play FPS games. If a Pan control does not exist in the current scheme this is ignored. If shooting mode is already enabled this has no effect.

  • exitShoot

    exitShoot

    Exit shooting mode. If a Pan control does not exist in the current scheme this is ignored. If shooting mode is disabled this is ignored.

  • toggleShoot

    toggleShoot

    Toggle shooting mode. If a Pan control does not exist in the current scheme this is ignored.

  • #

    # this is a comment

    Comments begin with #. Everything until the end of the line is considered comment and is ignored. A comment can be on a line by itself or can be placed at the end of a command on the same line.

  • keyDown

    keyDown key

    e.g.

    keyDown TAB

    Exit shooting mode. If a Pan control does not exist in the current scheme this is ignored. If shooting mode is disabled this is ignored.

  • keyDown2

    keyDown2 key

    e.g.

    keyDown2 TAB

    Key is pressed and is not released until the keyup is encountered for the same key.

    Mapping is not executed and key down input is forwarded to android.

  • keyUp

    keyUp key

    e.g.

    keyUp TAB

    Key is released. Mapping is executed if one exists; otherwise, key up input is forwarded to android.

  • keyUp2

    keyup2 key

    e.g.

    keyUp2 TAB

    Key is released. Mapping is not executed and key up input is forwarded to android.

  • mouseDown

    mouseDown x y

    e.g.

    mouseDown 44.0 55.5

    Mouse left button is pressed at location x, y. All locations are in screen percentages so that the same script can work across different resolutions.

  • mouseUp

    mouseUp

    Mouse left button is released. No coordinates are required.

  • mouseMove

    mouseMove x y

    e.g.

    mouseMove 4.56 5.67

    Mouse moves to new location x, y

  • touch

    touch x1 y1 x2 y2 x3 y3

    e.g.

    # 3 fingers

    touch 4 5 6 7 8 9

    # 3rd finger lifted

    touch 4 5 6 7

    # fingers 1 and 2 move

    touch 5 6 7 8

    # fingers 1 and 2 lifted

    touch

    Touch input with the current set of touchpoints specified. Series of touch commands can be used to create arbitrary multi-touch input.

    Up to 16 touchpoints are supported. But keep in mind that other touchpoints from other controls are aggregated before sending to android.

  • text

    text 'text'

    text backspace 2

    e.g.

    text “hello world”

    Send text input to android. This can be in any language.

    The format should be utf8.

  • mouseWheel

    mouseWheel x y d

    mouseWheel 44.0 55.5 1

    mouseWheel 44.0 55.5 -1

    Send mouseWheel event to keymapping which will convert it to zoom or scroll accordingly

  • wait

    wait msecs

    e.g.

    wait 24

    Waits for a specified number of milliseconds before executing the next command.

Script Works Best With

  • Game Controls

    Play with preset controls or customize them.

    View Details
  • MOBA Mode

    Move your hero freely or cast different skills with your mouse and keyboard.

    View Details
  • Macros

    Record and replay actions with a single keypress.

    View Details
  • Multi-Instance

    Play multiple games simultaneously.

    View Details
  • Multi-Instance Sync

    Replicate actions in multiple instances in real-time.

    View Details