Set Variable | BotGhost Documentation (2024)

The Set Variable action when triggered sets or changes the value of any custom variable. It can be referenced in any action or condition throughout your bot's commands and events. All variables and options can be used in the content of the value.

Custom Variable

In this section, you can manage which variable the bot will set. You can select from a dropdown that will display the bot's variables. Variables on this list can be added, edited, and removed using the Data Storage module.

Targets

When using the Run Equation on Variable action on a user or channel variable, a Targets section will be displayed. This will allow you to set the user or channel to set the variable for.

User Target

Note: User Target only appears for user variables.

The Set Variable action has three options that change to whom the variable of the action is stored. Below you can find detailed information about each option and how it can be used.

By selecting this option your Variable will be stored to the user who used the most recent interaction; for example, the most recent button press, select menu choice, command run or the user who triggered the custom event.

In commands, by selecting this option your Variable will be stored to a user selected in a user option.

User Option

Here you can set the option variable for the User option (purple blocks) you are using. These can be easily added through the variable selector by clicking the Clipboard button.

By selecting this option your Variable will be stored to a user specified via their user ID.

User ID

Here you can set the ID of the user to set a variable for. You can do this by pasting an ID directly from Discord (learn how here) or using a variable that returns a user ID. These can be easily added through the variable selector by clicking the Clipboard button.

Channel Target

The Set Variable action has two options that change to which channel the variable of the action is stored. Below you can find detailed information about each option and how it can be used.

By selecting this option your Variable will be stored to a channel specified via its ID.

Channel ID or Variable

Here you can set the ID of the channel to set a variable for. You can do this by pasting an ID directly from Discord (learn how here) or using a variable that returns a channel ID. These can be easily added through the variable selector by clicking the Clipboard button.

By selecting this option your Variable will be stored to the channel the most recent interaction was used in; for example, the most recent button press, select menu choice, command run or the channel of the custom event.

Some Variable Types will display differently than others. Below you may find some general information about each type. Click on its name for more information on setting it.

Variable TypeInformation

Text Variables

A text variable stores a string of text for a server or the bot.

Number Variables

A number variable stores a number for a server or the bot.

Collection Variables

A collection variable stores multiple text values as an array. These arrays can be managed by their values and the positions of values.

Object Variables

An object variable stores a string of text by setting key value pairs. These strings can be accessed by dot notations.

Text Variables

A text variable stores a string of text for a server or the bot.

Value

The value of the action is the actual message that the bot should store when the action is triggered. You can use any variable or option in the content of this value. These can be easily added through the variable selector by clicking the Clipboard button.

Number Variables

A number variable stores a number for a server or the bot.

Value

The value of the action is the actual number that the bot should store when the action is triggered. You can use any variable or option in the content of this value. These can be easily added through the variable selector by clicking the Clipboard button.

Collection Variables

Collections start at position 0.

A collection variable stores multiple values as an array. These arrays can be managed by their values and the positions of values.

Collection Operation

The manipulation type with the provided 'Custom Variable' field. There are several operations to choose from. Below you can find detailed information about each operation and how it can be used.

The Push value to front operation allows you to add a value at the first position, 0, of a collection. This will increase the position of each value ahead of it by 1.

Value

The value of the action is the actual message or number that the bot should store when the action is triggered. You can use any variable or option in the content of this value. These can be easily added through the variable selector by clicking the Clipboard button.

Examples

BeforeValueAfter

[Value 0,Value 1]

Hello

[Hello,Value 0,Value 1]

[Hello,Value 0,Value 1]

{user_name}

[User,Hello,Value 0,Value 1]

[User,Hello,Value 0,Value 1]

I was stored from {channel_name}

[I was stored from general,User,Hello,Value 0,Value 1]

The Push value to end operation allows you to add a value at the last position of a collection.

Value

The value of the action is the actual message or number that the bot should store when the action is triggered. You can use any variable or option in the content of this value. These can be easily added through the variable selector by clicking the Clipboard button.

Examples

BeforeValueAfter

[Value 0,Value 1]

Hello

[Value 0,Value 1,Hello]

[Value 0,Value 1,Hello]

{user_name}

[Value 0,Value 1,Hello,User]

[Value 0,Value 1,Hello,User]

I was stored from {channel_name}

[Value 0,Value 1,Hello,User,I was stored from general]

The Remove first value operation allows you to remove a value at the first position, 0, of a collection. This will decrease the position of each value ahead of it by 1.

Examples

BeforeAfter

[I was stored from general,User,Hello,Value 0,Value 1]

[User,Hello,Value 0,Value 1]

[User,Hello,Value 0,Value 1]

[Hello,Value 0,Value 1]

[Hello,Value 0,Value 1]

[Value 0,Value 1]

The Remove last value operation allows you to remove a value at the last position of a collection.

Examples

BeforeAfter

[Value 0,Value 1,Hello,User,I was stored from general]

[Value 0,Value 1,Hello,User]

[Value 0,Value 1,Hello,User]

[Value 0,Value 1,Hello]

[Value 0,Value 1,Hello]

[Value 0,Value 1]

The Set value at position operation allows you to add a value at any position of a collection. This will increase the position of each value ahead of it by 1.

Value

The value of the action is the actual message or number that the bot should store when the action is triggered. You can use any variable or option in the content of this value. These can be easily added through the variable selector by clicking the Clipboard button.

Position

The position of the action is the numbered location of the value you're adding. Collection values start at 0 and increase by 1 for each value before them. You can use any variable or option in the content of this position. These can be easily added through the variable selector by clicking the Clipboard button.

Examples

BeforeValuePositionAfter

[Value 0,Value 1]

Hello

[Hello,Value 0,Value 1]

[Hello,Value 0,Value 1]

{user_name}

2

[Hello,Value 0,User,Value 1]

[Hello,Value 0,User,Value 1]

I was stored from {channel_name}

4

[Hello,Value 0,User,Value 1,I was stored from general]

The Remove value at position operation allows you to remove a value at any position of a collection. This will decrease the position of each value ahead of it by 1.

Position

The position of the action is the numbered location of the value you're removing. Collection values start at 0 and increase by 1 for each value before them. You can use any variable or option in the content of this position. These can be easily added through the variable selector by clicking the Clipboard button.

Examples

BeforePositionAfter

[Hello,Value 0,User,Value 1,I was stored from general]

4

[Hello,Value 0,User,Value 1]

[Hello,Value 0,User,Value 1]

2

[Hello,Value 0,Value 1]

[Hello,Value 0,Value 1]

[Value 0,Value 1]

The Remove value in collection operation allows you to remove the first occurrence of a value in a collection. This will decrease the position of each value ahead of it by 1.

Value

The value of the action is the actual message or number that the bot should remove from the collection when the action is triggered. You can use any variable or option in the content of this value. These can be easily added through the variable selector by clicking the Clipboard button.

Examples

BeforeValueAfter

[Value 0,Value 1,Hello,User,I was stored from general]

I was stored from {channel_name}

[Value 0,Value 1,Hello,User]

[Value 0,Value 1,Hello,User]

Hello

[Value 0,Value 1,User]

[Value 0,Value 1,User]

Value 1

[Value 0,User]

a

The Clear a collection operation allows you to empty, or remove all values of, a collection variable.

Examples

BeforeAfter

[Value 0,Value 1,Hello,User,I was stored from general]

[]

[Value 0,Value 1,Hello,User]

[]

[Value 0,Value 1,User]

[]

Object Variables

An object variable stores a string of text by setting key value pairs. These strings can be accessed by dot notations.

Key

The key of the object property to change the value from. You can use any existing or new key from the object variable to set a value.

Value

The value of the action is the actual message that the bot should store when the action is triggered. You can use any variable or option in the content of this value. These can be easily added through the variable selector by clicking the Clipboard button.

Set Variable | BotGhost Documentation (2024)
Top Articles
Latest Posts
Article information

Author: Rev. Leonie Wyman

Last Updated:

Views: 5263

Rating: 4.9 / 5 (59 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Rev. Leonie Wyman

Birthday: 1993-07-01

Address: Suite 763 6272 Lang Bypass, New Xochitlport, VT 72704-3308

Phone: +22014484519944

Job: Banking Officer

Hobby: Sailing, Gaming, Basketball, Calligraphy, Mycology, Astronomy, Juggling

Introduction: My name is Rev. Leonie Wyman, I am a colorful, tasty, splendid, fair, witty, gorgeous, splendid person who loves writing and wants to share my knowledge and understanding with you.