vCommand Admin Panel

Welcome to vCommand Admin Panel! Control your game using this panel!

⚠️ NOTE

Very little moderation capabilities currently exist in vCommand

image

The home page of vCommand
Use vCommand to modify experiences at runtime and moderate against bad actors! You can also use gear to make advanced modifications to your experience.

⚙️ Setup

  1. Get the model here.
  2. Place it in StarterGui
  3. Edit permissions in the PermedUsers ModuleScript.
  4. Optionally add extra Command Packs

Once you do that, press [ to open the menu. The fly keybind is E.


📦 Packs

To install a pack, add it to the CommandPacks folder.

To use packs, you’ll need a ModuleScript. All packs need a configuration named PackMeta, with a string attribute named Name. It should also have a Number attribute named Icon and a Boolean attribute named ColoredIcon. Packs should go in the CommandPacks folder.

List of required pack components:

  • ModuleScript
  • PackMeta
  • GUI

To make a pack, start by making it’s UI. In the SafeZone frame, there’s a frame called BlankTemplate. Build your UI in a duplicate of that. When your UI is complete, disable the Visible property and add it to the pack. The highest frame of the custom UI should have the same name as the pack.

Then, you can begin coding the commands. When making a command, add it to the ModuleScript as a function, making sure the function is in the module table. The arguments have to be this: plr:Player, args. You can name the arguments anything, but the first argument is a player and the second argument is a table that can be used to hold multiple arguments.

Once you’re satisfied with the commands, you should create the client-side interface. To run a command, fire the command remote. Here’s an example command in an example pack: Command:FireServer("ExampleCommandPack", "warn", {"Hello, World"}). Argument 1 is the command pack, argument 2 is the command, and argument 3 is the argument table.


You can use anything from the default packs as reference or as a part of your own pack.
Update Log

Packs Release

Added packs to vCommand and migrated all existing commands to packs

Moderation Pack

Added a moderation pack to vCommand

Icon Update

Migrated all icons to Fluency Icon Pack and added sidebar icons to packs. They can be colored or monochrome.

TopBarPlus Support

vCommand now supports TopBarPlus! If you're a mobile player, you can now use this admin panel! Added FreeForAll to permissions and slightly bugfixed default fly.

BRUH MOMENT:



WHY!!!

5 Likes

vCommand’s icon is extremely similar to InCommand’s one…

InCommand:
image

vCommand:
image

2 Likes

Strange. I’ve never heard of InCommand so this must be a coincidence. Oh and BTW, I have no logo with text, I added it in using Inspect Element on the post preview :rofl:

1 Like

Shouldn’t you post this once you have some actual moderation content?


image

For commands, you should not use an if condition for each one of them. This isn’t scalable and would make updating and adding additional commands a pain.

You should store them in a table like so, with a function that’s called when they’re used:

-- Example
local CMDS = {
   {
      Name = "fly", -- the name of the command
      Callback = function(self, ...) -- the actual functionality of the command
         --...
      end
   }
}

For the functions, depending the amount of commands, I would recommend making them separate ModuleScripts in a specified folder to make it easier to navigate.


Please use UserIds instead of Usernames, since Usernames can be changed


Buttons shouldn’t have individual LocalScripts, you should have a system where one primary script can loop through each of the buttons and dynamically connect to them.

Usually, I would provide a code sample that you could use (like I did above), but with the way your buttons are setup, what I was thinking wouldn’t be good performance wise (loops within loops within loops).

Holy moly that Parent chain


Same thing with the MenuChange scripts, they could be centralized to one singular script to automate all of them


You should utilize the gameProcessed parameter (after input) to make sure the user isn’t typing in chat or a TextBox, because they’ll accidentally open the menu because it’s binded to the same key they pressed

Also, you’re doing the check on the client, even though the server will kick the player if they fire the admin remote without being an admin, you should at least make the server manually place the GUI into the correct player’s PlayerGui when they join the game.

1 Like

I will fix these tomorrow in a revamp update. If I don’t I probably forgot.

🎉PACKS ARE NOW RELEASED!🎉

Use packs to upgrade vCommand and add extra functionality!
1 Like

🛡️MODERATION PACK RELEASED🛡️

Use the moderation pack to moderate in your experience using vCommand!
1 Like

image
i don’t see why you would need this.
if YOU have access to it, then you’re an admin.

1 Like

It’s both to fill space and because this panel’s UI is partially inspired by the first version of Admin Panel, aka CanaryAdmon, aka Cmdr. The other inspiration is MY Windows 11 UI. I changed accent colors, which is why the topbar is red.

1 Like

what makes this better to use than other panels?

Nothing, as least so far. I actually had this clearly stated in a previous version, BTW.