In-Studio Script Executor

Hello! This is my first resources post so I apologize if it isn’t well explained.

I made a In-Studio script executor plugin to use as a replacement for the command bar!

Screenshots

How to use

Just simply type your code into the code box and press the “Execute” Button!

Planned Updates

  • Auto complete
    I’ve heard that this is difficult to implement due to having to have a database of all the functions and statements but I would really love to add this to the plugin. If you know of a good way to implement this please let me know!

  • Upgraded UI

  • Settings

Please note this is still in beta and is subject to change. If you have any ideas of how to improve this plugin please feel free to let me know!

You can get the plugin here:

If you would like to view the source code run this code in the command bar:

game:GetService("InsertService"):LoadAsset(10492949928).Parent = workspace

Thanks!

6 Likes

Why use this over the command bar?

1 Like

here are a few things:

UI sucks,
No use,
its not efficient,
Hard to work with,
not using tabs,
no use of indents,
no autofill.

All these things may be hard but not impossible.

1 Like

Cool module, but I think InCommand does this better.

2 Likes

Using the command bar has the advantage of auto complete but it is difficult to use it due to it being just a single line and having to write code like this

If true then print("Hi") end
1 Like

Hello! Thanks for the comment!

I apologize as I am not the greatest at UI design and probably will make it look better in the future.

In my personal experience I’ve found it quite useful but it may not be to others. I apologize if you do not find it useful.

If you have any ideas of how to make this more efficient please let me know as I would love to improve this plugin as much as I can

If there is anything I can do to make it easier to use I would love to know so I can improve the user experience.

If you don’t mind me asking what exactly do you mean by tabs? Do you mean like having the ability to have more than one script open and being able to save and load them? If that’s the case I would love to add that!

As for the indentation I’m planning on adding it soon but am unsure of how I would go about doing that. If you have any ideas please let me know!

I would like to add auto complete but I’ve heard that it is very difficult to implement due to having to have a database of all the different functions and statements. But if I find out a good way of implementing it I will definitely do that!

Thanks!

2 Likes

Yes after completing this plugin I actually found out that Boat Bomber has made a In-Studio script executor and I have to say I am quite impressed with it! I mainly published this plugin not to replace InCommand but to try to get my name out there.

Have you tried using GetPropertyChangedSignal? You can check for changes in code and apply auto-indentation when necessary.

1 Like

Hello! Thanks for the suggestion. I’ve been doing some research on how to do auto indentation and I’ve found out that concatenating the text with “\n” supposedly adds a new line allowing me to do something like this:

CodeBox.FocusLost:Connect(function()
     CodeBox.Text..="\n" --adds new line
     CodeBox.Text..="     "  --indents
     CodeBox:CaptureFocus()
end

But the issue I’ve come across with this method is that “\n” for some reason is adding 3 new lines instead of 1.

EDIT: I realized that is because it was firing multiple times so I added a debounce and it seems to be working. Now I just need to detect when it should indent and make a few other adjustments and it should be ready!

Update v1.1.0

Additions:

  • Added Syntax Highlighting
    Highlights the code based off of what you are typing
    Credit goes to: Dark_Hero on ScriptBlox
    image

  • Added Auto Indentation
    This can detect when to indent and does so accordingly. (If I have forgotten places where it needs to indent please let me know)

Next Update

Next update I will be adding settings such as Font Size, Font Color (doesn’t work for code), And the ability to change the color of the executor.
If you have any settings suggestions please feel free to share and I will look into adding them!

Thank you all for the constructive criticism needed to make this plugin better! :grin:

EDIT: I have come across a bug with the auto indentation and am currently working on fixing it. Sorry for the inconvenience

Update v1.1.1

Fixed the issue where going back a line or removing a line caused the executor to throw an error and break.

There are still a couple issues with the auto indentation that I will be fixing in a later update but I have fixed the main critical error allowing the executor to be usable again.

Sorry for the inconvenience :sweat_smile:

Ah i forgot what makes this plugin useless. SCRIPTS. Just make a quick script in workspace type your command copy it and paste it! You got auto complete and it may be 10 TIMES faster than your plugin.

This reminds me of synapse x but in studio

2 Likes

That is sort of what I was going for. I’m hoping to improve this plugin as much as I can to make it even better!

if we simply click to not focus on the codebox, it will create a new line and indents, and refocus on the textbox again, if you want it to be only working when enter is hit, here

CodeBox.FocusLost:Connect(function(enterPressed)
   if enterPressed then
      CodeBox.Text..="\n   "
      CodeBox:CaptureFocus()
   end
end)

also I would recommend camelCase over PascalCase. But its your choice.

1 Like

is this thing client side. I wanna use this to test an anti cheat in my game.

It is server sided due to it being a plugin but I might be able to make a model for you to use to test your anti exploit as long as you do not use it for your own personal gain

ive tested, its client sided whilst playtesting, but serversided when not.

2 Likes

I keep getting the error that loadstring is not available. Is there a fix I can do?

You could just go into a script, write out your code, then paste it into the command bar without the cost of worrying about it being organized. This is just the command bar but not as good.