Character limit on SlashCommand strings #4070
Replies: 5 comments 9 replies
-
I have the same problem. Since you have to be putting all the short descriptions and if it is not enough you are forced to create a subcommand with the same name but with something different. For example command-name reached the limit by the group of subcommands so now you are forced to create a command command-name-2 in order to achieve your goal. Because you don't create another command with a different name if the group of subcommands is about the same thing as the previous subcommand. So my idea is for that limit to be individual per subcommand in a command. You can see this example:
In this way it is possible to use all the subcommands that a command can have calmly and without worrying about having names, options, command descriptions. Because for now what you have to do is have all those properties much lower than their real limit (32 characters, 100 characters, etc). Also, it would be great if they explained why that limit, and I hope they can pay attention to this issue and be able to reach a solution. |
Beta Was this translation helpful? Give feedback.
-
I still believe this limit should be increased. I've unfortunately reached this limit by accident, now im having to go out of my way to resolve this problem. Personally, there are a lot of limitations with slash commands. they rushed this. There is some concerns i do have when changing to slash commands. Some of the problems: Please, if im wrong. please correct me. |
Beta Was this translation helpful? Give feedback.
-
please, increase this limit to 6-8k, or decouple it by subcommand or subcommand group: it's incredibly inconsistent with the rest of the limits:
i'm now forced to either split some of the settings off to a secondary command, causing confusing user experience. i tried to cut text already, but unless my descriptions were just a few characters long (i.e. "denyrole" as opposed to "set roles where this feature will be disabled for"), it's just not possible to fit it in the limit. i also considered making it so that each of these settings were done via non-command interactions, but settings involving @user input can't be done graciously outside of slash at the moment, and modals are still missing a lot of input types. slash commands work well in terms of user experience if done right - this is just one of the limits that need a raise 🙏 |
Beta Was this translation helpful? Give feedback.
-
Quoting my previous comment This character limit also reduces user-friendliness when migrating all existing commands (no character limit) (e.g. /foo, /bar) to be under multiple command groups (character limit: 4000) (/game1 foo, /game1 bar) to accommodate other features due to functionality expansion. Built-in auto-suggestion also does not work well for the mentioned /config-xxx /config-yyy workaround, as typing /config xxx would return no results. Also, it is unreasonable not to have raised the limit when localization was introduced. If the character count comes close to 4000, the incentive for localization becomes weak as there probably exists a language in which several names after translation result in more characters, thus exceeding the limit. Some dumb workarounds include setting the subcommand description (invisible from the client) as something like |
Beta Was this translation helpful? Give feedback.
-
Has this been changed? Recently only encountered this problem one and never had it again and I keep adding more commands. |
Beta Was this translation helpful? Give feedback.
-
So today I unsuspectingly wanted to add another sub command to my slash command and i was prompted with this error:
DiscordAPIError: Invalid Form Body APPLICATION_COMMAND_TOO_LARGE: Command exceeds maximum size (4000)
and the friendly people in Discord Devs told me I can't have over 4000 characters total in my command.
I'm trying to keep my descriptions short but since I have a few options with choices while still having them as helpful and detailed as possible to easily use my bot I unfortunately reached that limit.
Then the theoretical limit that is always being talked about (25 sub command groups and 25 sub-commands which is 625 sub commands total) came to my mind and I calculated the limit. So 4000 characters divided by all the possible commands being 625 is 6.4 characters per sub command. WITHOUT ANY ARGUMENTS.
So you need to fit all your arguments plus descriptions plus choices into those 6 characters per sub command which would result in only being able to have 4 arguments with each description and name only having one character...
I'm really struggling to fit a helpful and descriptive description and argument names into those few characters.
Also I tried putting all related commands into one top level command with sub command groups and this would require me to create a separate top level command to keep the descriptions as they are now to keep the current user friendlyness.
But taking those new sub commands and creating a new top level command would reduce user friendliness and terminating the whole point of using sub commands (making commands more organized).
I ended up removing tips such as "The role shouldn't be managed and above me".
Now user get prompted with this error when they already went through the pain of setting up their beautiful multi-line embed and formatted everything making them frustrated (i even got feedback that the more detailed descriptions help get it right the first time.
I was planning on adding another sub command with the same characters as the other sub commands
but I guess I wont...
I will attach my shortened command below (which now barely fits into the limit). It has 9 out of the 625 (theoretical) sub command and already is scratching the limit.
I'm probably the first and only person to run into this issue of not being able to fit the strings into the 4000 characters but a different system (such as 1500k per sub command) or a raised limit or even a good alternative (in comments) would be appreciated.
(I'm very sorry if this is all over the place, this is my first discussion about a problem I ran into and english isn't my native language)
Btw when speaking about top level commands I mean the ones limited to 100 global ones.
Command: https://gist.github.com/ZeldaFan0225/8101ef0c4454ac92c9416658b25c95b9
Beta Was this translation helpful? Give feedback.
All reactions