discord-giveaways icon indicating copy to clipboard operation
discord-giveaways copied to clipboard

Giveaway Description Message

Open fictivecreations opened this issue 3 years ago • 3 comments

Is your feature request related to a problem? Please describe.
Right now there isn't a good option on the messages option object to specify a description on the giveaway without over-riding the 'prize' field. And over-riding prize gives you confusing messaging if you then try to output the prize as a part of the win message.

As an example if I wanted my giveaway embed to be formatted like:

The GenericDiscordServer Team is giving away a month of discord nitro as a part of our ongoing anniversary event!
{inviteToParticipate, etc}

It would mean setting prize to that message and the win message would look something like:

Congrats @/user ! You've won **The GenericDiscordServer Team is giving away a month of discord nitro as a part of our ongoing anniversary event!**

Which is confusing.

Describe the solution you'd like

A 'description' message option that can be specified like: The GenericDiscordServer Team is giving away {prize} as a part of our ongoing anniversary event!

and would replace where prize would normally go by itself in the main embed.

Describe alternatives you've considered

I thought about over-riding the 'inviteToParticipate' message with additional content, but since that would still have the title of the embed with just the prize, that would look pretty strange too. I'm also considering overwriting the generateEmbed functions with something custom myself to provide myself with the solution I described above, but obviously it'd be nice if it was included in this package.

fictivecreations avatar Feb 03 '22 23:02 fictivecreations

For the win message problem: You could just save the real prize into extraData and write {this.extraData.prize}.

specify a description on the giveaway without over-riding the 'prize' field.: Are you confusing description with title? Because the prize does not appear in the desc by default. If I'm not mistaken your issue primarily is that you want the title to say something different than the prize. And put the prize in the description

A 'description' message option: This will probably not be happening, because it would add more confusion. (even if we rename it to "customDescription" or smth), since the user then doesn't know more than before. since it would either be optional + the other 2 desc msgs, or it would be the only desc property, but then we would have a \n string which ↓↓↓

Also splitting the desc into parts was probably done for more overview. / A new user will not get thrown a long string option into the face.

For general desc editing, working with \n in inviteToParticipate or drawing is recommended. And as you yourself implied: If, in ^^ case, the property naming confuses you, then you will just have to use the generator functions themself.

that is of cource my opinion. If a majority of the userbase agress on a new naming convention for prize/messages then that is a different matter naturally

Nico105 avatar Feb 04 '22 12:02 Nico105

Yes, I recognize that it shows up as the title of the embed, but conceptually it would act as a description for the giveaway which is why I went with that naming convention. That said I'm not great at naming either so I could easily see calling something like title instead if that seems clearer to others.

I don't want the prize in the description of the embed, I just want it to be stored separately from any messaging in the embed and not used directly, so that if you want to add extra text around the prize you can do so without ruining other messages (like the win message).

I didn't realize I could use extraData in that way, and it would be less redundant than copying the generator methods, but it unfortunately has the downside that if I want to allow the messages to be configurable by the admins using my bot, they'd have to be aware that it's stored there as well, or I'd have to build some additional code to swap out {this.prize} for {this.extraData.prize} in the messages that are sent in, neither of which is ideal.

fictivecreations avatar Feb 04 '22 17:02 fictivecreations

So the title message was added in v6. Could you tell if that would satisfy your request?

Nico105 avatar Aug 25 '22 15:08 Nico105