InCommand - versatile, adaptable command execution

Part of the Elttob Suite - Built in collaboration with @boatbomber

Reclass-Convert ReclassImiji-x32 ImijiAtmos-Pro AtmosPick-Pro-x32 PickInCommand-Dark-x32 InCommand


I’m very pleased to announce the release of InCommand! Made together with the masterful @Elttob as part of his incredible plugin suite. He has, as usual, done a fantastic job making this plugin have some of the nicest UX a plugin can offer.


InCommand is a versatile, adaptable command bar replacement, designed with power users in mind.


InCommand features a script editor on the right, and a list of saved scripts on the left.

gallery-firstRun

If you prefer the script editor to be separate, you can pop-out the editor into its own widget using the pop-out button in the top-right. Additionally, to quickly clear the script editor, you can use the Clear button underneath the pop-out button.

gallery-popout

You can write Lua code in the editor, and run it using the Run button in the bottom-left.

Additional run options will appear if you’re testing your game with Accurate Play Solo. Using these run options, you can easily run your code on the client side or server side in one click. This is a huge advantage over the Studio command line, as you can run your code on either end of the network with a single click.

gallery-runAPS

Next to the Run button is the Save button, which lets you choose a name for your script and save it to the script list. From this list, you can load a script into the editor, or delete scripts from the list. Scripts saved here will persist across games, places, and studio sessions as it it stored within the plugin, so you’ll be able to use this anywhere.

gallery-savedScripts


Getting Started:

Intro animation, music, voice-over, and recording all done by our one and only @Elttob


A couple of the many example usages:
  • Testing your remotes on both the server and client side, from one place, utilizing the APS abilities.

For example, say you have a remote event being listened to on the client, and which is fired by the server.
Normally, to test that remote event, you have to switch the entire studio instance from the client side to the server side and then use the command bar to write a really long line of code which traverses the data model to find the remote event, then calls the function with all the arguments on that one long line.

With InCommand, you don’t have to switch Studio to the server side, as you can run the script on the server directly and you get a multi-line development environment that lets you properly use variables to separate out each part of the process. Furthermore, the IDE enables you to define the arguments to pass as constants at the top of the script, which makes the arguments easy to modify without having to go in and change the method call directly.

To top it all off, you can then save your tests as a script to be used again later without having to retype the entire thing out again the next time you’re working on that.

  • Automating procedural tasks/Batch operations

Going through many parts to make alterations in an algorithmic fashion is tedious, but InCommand can make that super clean and easy.

Say you needed to change all the PointLights in your game to match the Color of their parent part. Doing that by hand is a pain in the neck, but creating a loop in InCommand makes that super simple.

  • Testing animations

You need a script to run your animations and handle the positioning, and using the command line with multiple lines squished into one can be very annoying especially if it’s longer than the size of the width of the command line. InCommand is great for writing a quick script to execute your animations, being that you’re able to easily view and edit it.

  • Generic testing

Anything you might have used the command bar for, this plugin can do better. The IDE allows you to edit with syntax highlighting and multiple lines, and can even run the code as the client. Whatever use case you can think of for the command bar, InCommand is there for you.


Here’s what some other developers think of InCommand:

Additionally, AlvinBlox made a great video endorsing and showcasing it!


Get InCommand now and bolster your workflow:


As always, feel free to reply to this thread if you have any feedback, feature requests or bugs! :smiley:

Known Issue: Saved scripts occasionally get cleared for unknown reasons. Save a backup while we work out what’s causing this issue and resolve it.

337 Likes

Wow! What an amazing plugin! What handsome fellows could have developed this work of art :thinking:

99 Likes

Nice! This command will sure make command execution easier, especially when figuring out the cause of errors since it tells me that it’s line 1. No more having to create a script, type it in, copy it and paste it to the command bar, and execute it!

12 Likes

This really looks nice! So, i yet not see how it can help me, but really was interessing.

4 Likes

Very useful! One of my biggest issues with the command bar is debugging an error since everything is usually on one line. This will make my life so much better!

5 Likes

I love this. For example, if you make a weld script you can save it as a script in this plugin and essentially have a welder plugin. This is like the plugin of plugins for programmers. This rocks.

10 Likes

This plugin is amazing! I get so frustrated when I have to open a script editor, type the code I want, and have to go back and paste it into the command bar. I like this plugin, however, I have 2 major problems.

  1. Once you run a command, there is no possible way you can undo what you did. It makes it hard if you wanted to run the command bar in studio; it makes the changes permanent

  2. Sometimes I prefer to have a smaller screen for the plugin, but the code will go off the screen, so I would have to make the window bigger. I know there is a horizontal scroll bar but I find it annoying having to keep scrolling back and forth. A solution to this would be an option to wrap text, so no text will go off screen if the window is small.

That’s all! Keep up the good work.

7 Likes

Thanks for the feedback! We’ve noted these two points down and we’ll see what we can do :slightly_smiling_face:

edit: Just had a word with boatbomber and, due to the way that the syntax highlighter works, it doesn’t appear to be feasible at the moment to support text wrapping. Roblox doesn’t give enough information about how text wraps currently to allow for correct syntax highlighting across wrapped lines.

However, we’re still looking into undo support! Thanks for the feedback again :grinning:

8 Likes

Brilliant plugin!

Two things I will say:

  1. The text editor doesn’t really work well for those of us who are tab-indentation master-race and not knuckle dragging troglodyte space indenters. For the most part it’s not really a big issue as for I typically end up copy pasting into the editor. However, one place that it does bother me is when I want to copy from the editor to something else. It forcibly sets my code to space indentation like I’m some kind of heathen.

  2. I’m not sure you guys will have an answer to this, but is there a limitation on how many scripts we can save in this plugin? Even if there is, I would be suprised if it’s ever a limit that a regular person would ever reach.

Side note: I’d really like a history waypoint to be added as mentioned above. That would make this plugin even more useful than it is.

Anyways, good work!

14 Likes

Thanks for the kind words!

To address your first point, we feel your pain. As a fellow tabs-over-spaces guy, I’m equally frustrated! Unfortunately, for some reason, Roblox doesn’t seem to understand how to render tab characters in text labels (in fact, it renders them thinner than regular spaces!).

As a workaround to this issue, we decided (at least for now) to concede to the tyranny of the space-indenters and simply replace any typed tab characters with four spaces. We’re not closed off to the idea of changing this behaviour, but for now we decided it’s more viable to simply work around the issue. Even if it means we have to use those cursed spaces.

Secondly, there shouldn’t be a hard limit on the number of scripts you save. As long as each script you save has a unique name, you shouldn’t run into any problems. Of course, there’s other limitations on the number of saved scripts, for example the amount of space available in your computer’s memory.

Again, thanks for the kind words! We’re definitely going to prioritise working on an undo system for InCommand - it seems to be a popular idea :slightly_smiling_face:

12 Likes

Saw this on Twitter before release and I was immediately interested, flipping to the server constantly was a pain.

I’ll definitely be buying this and using it.

4 Likes

Thank you a lot for making this plugin. It is probably one of the most useful plugin I have seen in a while. I bought the plugin as it will come useful many times in the future.

4 Likes

Before I use this in a game, I have a few questions:
Are you able to use this in-game?
How does it run the code?

2 Likes

One of the most useful plugins I’ve seen thus far! Amazing.

2 Likes

If this was an actual application i would love it and kinda use it 24/7 :thinking:

3 Likes

Really awesome! Been using for some things already.

5 Likes

Thank you so much for this! The design and all is perfect!

Great job done right there!
This is really worth the 125 Robux!

4 Likes

This is outstanding! Many developers would be vary appreciative of your hard work to release something like this. Keep it up!

3 Likes

Community Resources is for free/open-source resources, so moved this to Cool Creations. Cool Creations is visible to TL0+ (anyone with a Roblox account of appropriate age, just need 1 click to login) so should be alright with visibility.

5 Likes

Alright, thanks for clearing that up :slightly_smiling_face:

What about under 13 users?

2 Likes