How can we improve Discord?

Discord embeds 2.0

im developing a discord bot and doing a lot of creative stuff with the discord embeds, but they are very limited. Had a look @ the slack embeds and what you can do with them (e.g. buttons in an embed) and thats the reason I am proposing:

- rebuild the discord embeds to give the bot developers more ability to code cool additions for the discord app.
- make the embed system like the new css grid system and let the developers use stuff like buttons and that responsive so it looks good on all mobile devices
- embeds should give flexibility to the developers to make the best possible experience for users that use bots within discord

After all discord would not be as popular as it is right now, if there were no discord bots (playing music, doing moderation stuff, polls, gaming stats, etc.)

2,857 votes
Sign in
Signed in as (Sign out)

We’ll send you updates on this idea

pedall shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →

127 comments

Sign in
Signed in as (Sign out)
Submitting...
  • SyntaxPrime commented  ·   ·  Flag as inappropriate

    I like the idea, would be useful for embeds that do polls and stuff - at the moment having to rely on reactions as "buttons" on those sorts of things, and reactions aren't the most reliable of things to use as buttons. With the up coming UI changes across discord I would like to see this implimented.

  • pedall commented  ·   ·  Flag as inappropriate

    discordapp just forked facebook/yoga. Maybe they are evaluating on how to design new embeds ;-)

  • TeenAngst commented  ·   ·  Flag as inappropriate

    While I completely agree on the idea - Discord would still be popular without bots, bots are just frills.

  • Perzeussッ commented  ·   ·  Flag as inappropriate

    This! Whenever I ask people why they use discord, it's about the bot/webhook system.

    Buttons with event bindings and pagination support would be really awesome and for those who don't want to see complex embeds: opt-out for embed-elements like buttons/links/media.

    As a developer I think it's not a big deal to enable custom css values passed as a json object attached to each field entry.

  • Jiaf commented  ·   ·  Flag as inappropriate

    Pressing a button would make you say some message f.ex. command, and bot would know what button you pressed.

  • LupineDream commented  ·   ·  Flag as inappropriate

    The EmbedBuilder class is something that really needs a nice update, especially in regards to reactions/pagination. Instead of having to have to code it manually, making an instance of the EmbedBuilder class able to register Event Risers or Paginated Tasks would be super helpful.

    Example:
    d.net

    // Add some reaction handlers
    Discord.EmbedBuilder.ReactHandle leftButton = new Discord.EmbedBuilder.ReactHandle(eb => (x => x.AddReaction([string]MyApp.Enums.IconHelper.ArrowLeft, D_REACT_POSITION_AVAILABLE)) { return this.OutReactHandle; } )
    Discord.EmbedBuilder.ReactHandle rightButton = new Discord.EmbedBuilder.ReactHandle(eb => (x => x.AddReaction([string]MyApp.Enums.IconHelper.ArrowRight, D_REACT_POSITION_AVAILABLE)) { return this.OutReactHandle; } )
    Discord.EmbedBuilder.ReactHandle cancelButton = new Discord.EmbedBuilder.ReactHandle(eb => (x => x.AddReaction([string]MyApp.Enums.IconHelper.RedCross, D_REACT_POSITION_AVAILABLE)) { return this.OutReactHandle; } )

    // Add the handlers to the event registrar
    eb.ReactEvents += new Discord.EmbedBuilder.ReactEventRegistrar(leftButton, OnPageLeftClick);
    eb.ReactEvents += new Discord.EmbedBuilder.ReactEventRegistrar(cancelButton, OnCancelClick);
    eb.ReactEvents += new Discord.EmbedBuilder.ReactEventRegistrar(rightButton, OnPageRightClick);

    // the events
    event OnPageLeftClick (object e, var args[]) {
    // some stuff
    }

    event OnPageRightClick (object e, var args[]) {
    // some stuff
    }

    event OnCancelClick (object e, var args[]) {
    // some stuff
    }

  • Roxxers commented  ·   ·  Flag as inappropriate

    One thing missing from this is finally opening up the videos section. It's been a part of the API for rich embeds for years, yet has been inaccessable for bots the whole time. And now we have support for videos in normal embeds with webms and mp4 files, but no support in rich embeds. Wtf.

  • kat commented  ·   ·  Flag as inappropriate

    The amount of magic that I've seen from bot developers (like grabbing a certain users interaction with a reaction placed by a bot to indicate a button press) has been insane. Giving these creative individuals the power to really do anything with embeds would open up a world of possibilities. Maybe give it some half-n-half html/css or try some more limited logic structure just to be safe. Either way this would be a massive change to the bot culture of Discord and a lot of people would welcome the change.

  • h0r1zon commented  ·   ·  Flag as inappropriate

    This could really open up a whole new thing for bots, it'd be really nice to have. (69th comment
    ( ͡° ͜ʖ ͡°))

  • Aki commented  ·   ·  Flag as inappropriate

    I could see a werewolf game bot making use of buttons that display based on which user is seeing them, allowing the night roles to stay in the game chat instead of requiring a DM conversation with the bot.

  • zeograd commented  ·   ·  Flag as inappropriate

    Now that peertube has reached 1.0.0beta, it could be useful to support embedding video hosted there too.

  • DarthStroyer commented  ·   ·  Flag as inappropriate

    @ReKT how do you suppose a button could be malicious? Slack, Telegram and Line all support embeds with buttons.

  • CmdData commented  ·   ·  Flag as inappropriate

    The buttons would be amazing, but also interactive screens inside the embeds would be amazing. It would allow for things like tic tac toe, or animated coin flip, etc.

  • Nostalgia Ninja commented  ·   ·  Flag as inappropriate

    Personally, I would want the option to use buttons for responses since my bot uses options to give specific details about a result.

← Previous 1 3 4 5 6 7

Feedback and Knowledge Base