Cmdr: A fully extensible and type safe command console for Roblox Developers

This is incredible! Easily customizable and safe. This is really useful! :smiley:

7 Likes

This looks very nice, but I came across an issue:

14:54:42.076 - Infinite yield possible on 'Players.chrisopdemobiel.PlayerGui.Cmdr:WaitForChild("Frame")'
14:54:42.082 - Stack Begin
14:54:42.084 - Script 'ReplicatedStorage.CmdrClient.CmdrInterface.Window', Line 21
14:54:42.085 - Stack End

image
And indeed, there’s no frame anywhere.

3 Likes

Works just fine for me, how was this issue created?

2 Likes

The demo video is not loading, when I got to the video’s address I get this:

2 Likes

I think you might have set up Cmdr incorrectly. Please refer to the README for the setup instructions.

5 Likes

I like this alot, especially the interface.

2 Likes

Could there be a testing placefile with Cmdr installed only? The community can use it to easily test it out to determine if it’s fitting the needs of them.

5 Likes

Cmdr now has a fancy new documentation website!

Using a VuePress plugin I wrote, the API Reference section is especially beautiful and much more detailed than before. Complete with hyperlinks to Cmdr and even Roblox types!

14 Likes

Hello, I’ve been looking through the code and I can’t seem to find where it makes sure that the player sending the command is an Admin. (Sorry for the bump)

2 Likes

I had the same question when I installed cmdr. This is what worked for me.

On the server (you can get the player inside the hook with context.Executor):

local rs = game:GetService("ReplicatedStorage");
local resources = require(rs:WaitForChild("Resources"));
local cmdr = resources:LoadLibrary("Cmdr");

cmdr:RegisterDefaultCommands();

cmdr.Registry:AddHook("BeforeRun", function(context)
	if (check if user isnt admin here) then
		return "You're not an admin!";
	end
end)

On the client:

local rs = game:GetService("ReplicatedStorage");
local resources = require(rs:WaitForChild("Resources"));
local cmdr = resources:LoadLibrary("CmdrClient");

if (check if user is admin) then
	cmdr:SetActivationKeys({Enum.KeyCode.Semicolon});
else
	cmdr:SetActivationKeys({});
end
4 Likes

A better way to disable Cmdr from being used by a non-admin is to use CmdrClient.SetEnabled. Setting the activation keys to a blank table probably isn’t a good idea.

3 Likes

Wow this is amazing. I am discovering a lot of new tools to help speed up my game development. This and Aurora is gonna help me a lot.

5 Likes

How do I install this? Can someone tell me?

3 Likes

Wow that is a lot of work, and it’s did very well, you did an awesome job, there aren’t so many admins commands setups in roblox so you did a great contribute for developers too.

2 Likes

Hello, apologies for the late reply. Here is the Set-up Guide to help you install it.

3 Likes

This looks very intriguing! I hope to get my hands on it sometime.

2 Likes

This is a great system, it’s just been implemented into an admin system for a game that I play and moderate in. @JohnnyMorganz

2 Likes

Just started using this in my game. I absolutely love the idea of custom-made commands and it works great. Highly recommend.

2 Likes

Kinda confused, sorry. But how would I toggle the command bar?

3 Likes

Hello, to toggle the command bar you would press the activation key(s) you have set in LocalScript where you required the CmdrClient module. By default, it would be Semicolon if you copied and pasted the code on the setup guide.

2 Likes