Why are shorthand commands non-existent on Sponge?

I’m just noticing this theme throughout plugins and Sponge itself… all commands include long or excessive commands… e.g on Bukkit, to reload plugins, type… /reload
On sponge, /sponge plugins reload

to check plugins on Bukkit, /pl
On sponge, /sponge plugins.

For Plugins, such as pex, commands are complicated and vague… and long / out of order…

I’m just curious. I love Sponge and its plugins and community but this is a theme I am evidently not fond of.

*Note I know Sponge isn’t Bukkit. But I expect the same quality or superior from Sponge. Which is the reason for this post.

1 Like

I prefer this style of commands since it avoid plugins collisions and it’s more hierarchised and clean.
If pex’s commands are complicated it’s not the fault of Sponge, it’s the “fault” (or the choice) of pex’s owner

They are not excessive, they are, as @Yeregorix said, meant to avoid collision and maintain a hierarchy.

Although this could be argued, commands of this type are of higher quality due to the advantages they offer.

1 Like

It probably has a lot to do with tab completion being available and in heavy use when plugins first released.

I agree though some tools that can alias commands would be helpful, I’m tempted to help port CommandHelper or something if it’s reasonable to do so.

1 Like

As the one developer that completely and utterly over-engineers commands, I’d like to say that just because a command is long, does NOT mean it’s bad.

FoxGuard has commands that are really really long, but they take me only a second or two to type, because of on-click text and extremely thorough tab completion.

I also make aliases for most commands and all command flags, which shortens things down a lot.

Really it is the decision of plugin developers on how they want their commands to work, although here’s the truth: Plugins with just a few simple short commands are usually VERY limited in what they are capable of doing. Unless that plugin is VoxelSniper. That thing was forged in the firey pits of hell.

If Sponge had a feature that allowed a server admin to remap commands to new aliases, this would be less of a problem. It would assist greatly in migrating from other platforms to Sponge, and also permit admins to simplify their command systems. I suggested as much to the other staff relatively recently, and last I heard it is being seriously considered.

1 Like

Most my plugins contain shorthand aliases, I just don’t list them in the posts. Seen a few other plugins do the same.

I use a custom alias plugin for my server and it works well. Just need to set it all up and you can avoid all the long commands with whatever plugins you are using, in this case Pex

I’m just saying… Most Sponge plugins* don’t seem to be very user-friendly… to use Pex as an example:

Before: /pex group admin user add Maneo
Now: /pex user maneo parent admin true

… what?

How did /pex group admin user add Maneo - A very straightforward command line… turn into
/pex user maneo parent admin true, a very vague command which appears at first glance to be handling parents between groups and not moving an actual user into a specific group…

Of course this isn’t just with Pex. I am simply saying it seems to be a theme with Sponge plugin development and I’m really not a fan of it.

except that’s wrong, the correct command is:
/pex user maneo parent add admin
which makes perfect sense to me as you are editing a user named maneo’s parents to add the group admin

3 Likes

For Pex at least the reason why it’s confusing is that every time you specify a subject, you need to specify the subject type.

This allows pex to treat the commands for groups and users and custom subject types with exactly the same command layout.

The error messages are confusing, and it’s different compared to pex1 but it’s really intuitive once you understand this.

pex subjecttype subjectname operation value

subject type are things like “user” or “group”

operation is stuff like permission, parent, etc

value depends on the operation, but if specifying a subject, it’s subjecttype subject

But shouldn’t groups have parents––Not users? Confused.

It treats all subjects in the same way - groups and users can have parents. A user having a group as a parent is basically the same as being a member of that group, inheriting all their permissions.

1 Like

Just so you know, some of the shorthand commands are up to the dev anyway.