Reaction Bot that allows message to appear after reacting to it

Hello, I am trying to find a Discord bot or create one that will let a user react to the reaction and another message appears right after it. I am thinking in a guided format. For example:

How to crack eggs:
First, take egg out of carton. Click react when you are finished this step.
“User clicks react” “Message appears in same channel under this message”
Next, hold egg lightly in hand and tap on a surface gently. Click react when you are finished step.
“User clicks react” “Message appears in same channel under this message”

Does this exist or could anyone direct me on how to do this myself! Thank you so much!

Hi there. I’m relatively new to Discord bot development but I have been doing it for some months so I know the basic lay of the land. One thing you will encounter is that the “conversation” isn’t limited to the person who initiated it. So (for instance) I can press the emoji for “how to crack eggs” and anyone else can press either the original emoji again or any emoji that appeared (or) add any reaction emoji they wish to the messages.

There are lots of limitations. Private conversations can occur though, you would need to use what are called “slash commands” through what is called an “interaction”. These provide a mechanism called “ephemeral messages” which are directed to the person who issued the command.

If you haven’t done so already my advice is to just start a bot project and play with it all. Good luck.

1 Like

Hey there!

There does seem to be messages sent by bots which are visible to only certain users/the author of the command, but there isn’t any popular guide to it as this feature is relatively new.
However, you can follow a different approach to this concept : instead of using messages, I would suggest that you distribute the messages in different channels instead and lock each channel with a role gained only after reacting to the message in the previous channel.

For further clarifying what I mean, let’s take an example.
Let’s say you create 3 channels, for a guide with 3 steps.
You can name these channels however you want but for now let’s name them step-1, step-2 & step-3 respectively.
You will need to make it such that the step-1 channel is visible to the @everyone role so everyone can get started off with the guide.
You can then set-up the remaining channels locked to particular roles.
The role will be given when the user reacts to the message in the channel, which can be easily set-up with a majority of public bots (I recommend using the “reaction roles” feature on https://carl.gg)

Although, if you really need it in the message format, you could try the following:

  • You can use reaction collectors or await reactions (if you’re developing with JavaScript)
  • However these messages will be visible to all when a user reacts.
  • You will also need to code this kind of bot yourself as I do not know of any public bot with similar functionality.

Hope this helped clear your doubts! :slightly_smiling_face: