Skip to content

Conversation

@Liriosha
Copy link

This fork attempts to fix #4 by processing commands separately if the namespace is not the command.
This fork also fixes #7 replacing the --TODO placeholder.

@techs-sus
Copy link
Collaborator

changes look good so far, gonna test in studio

@techs-sus
Copy link
Collaborator

output gives "Not a valid command string." when typing "i see a delay"??? seems like namespaces aren't properly handled

@Liriosha
Copy link
Author

I'll check it out

@techs-sus
Copy link
Collaborator

found a fix, gonna commit it

@ewd3v
Copy link
Member

ewd3v commented Jul 18, 2025

Really cool contribution, though I don't exactly agree with some of the changes made.

The traceback messages that have been added to :WaitForChild and the :Connect warnings aren't 1:1 to Roblox, nor do they filter out internal sb stacktraces.

The new command system is interesting, and does solve an issue related to #4, but it also allows for things like c x/print("hi") (will run on client & server, which is interesting syntax). Although it still relies on this weird prefix system for namespaces. As said in #4, we should use specific commands to run commands under other namespaces, as this allows for extra logic to be ran before (an example would be a permission check before running things like mod commands).
The new command parser is ok on the client side, but the server is now just blindly trusting that the client actually parsed the command correctly. Someone could if they wanted send to the server that they inputted "g/dummy", but actually contain the parsed data for somthing completely different.
How I would solve this would be by moving the logic for splitting and running multiple commands into :ProcessClient (on client), and :Process (on server), then just sending the command input to the server like normal. Though this would require some changes to :ProcessClient so that it can return multiple messages & command contexts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

There is no get/ command WaitForChild warnings and :Connect errors don't have stacktraces.

3 participants