How would I make a GUI that works just like the Windows cmd prompt?

Probably just a textLabel which can be resized (when changing directories) with a textBox attached to it will do the trick.

Not sure how to do multi line inputs with this method though

But I don’t know how I would do such a project though. That’s why I am asking for help.

Just have a black Frame with a vertical UIListLayout and some TextLabels.

I’d look for tutorials that talk about anchor points and gui scaling as that’s what you’ll need to perfect if you want it to look somewhat okay.

You are in the wrong category. No worries, though—just move the post to the #help-and-feedback:scripting-support category by clicking on the pencil icon on your post and I’ll be happy to help.

I searched though, no tutorials on it.

I’ve definitely seen some tutorials on the forums.

Post moved to the other category.

in cmd, there are no multiline commands, when the user presses enter, make the last line into a label and add a new input field, also parent uilistlayout to the window

I’d recommend you just start working on it and trying out different anchor points and scaling techniques.


Talking about this

I do understand anchor points. But right now I am trying to figure out how to make that terminal for a game I am making.

The GUI is the hard part (would be for me at least). The commands and everything should be the easiest part. Afaik you’re struggling with the part where the terminal shows your directory.
An easy way to do this is just to make a lot of folder instances and use their names to concatenate a directory string which you display in the console.

Then you’d attach a textBox to the end of the textLabel which displays the directory.


I have worked on the UI part. It’s the code that I’m struggling with.

Just google whatever issue your having and if you cant find a solution anywhere then make a topic on it and repeat this until everything is complete. This is my usual workflow.

1 Like

So, when you mean “just like the Windows cmd prompt”, do you mean:

  • you want a terminal emulator in Roblox, interpreting streams of text, or
  • you just want something that looks a bit like a terminal emulator

The latter case is really easy. It’s just a load of text in a row.

To handle inputs, I would have the user focus an off-screen TextBox (TextBox.CaptureFocus docs), then listen to the text changed event on that TextBox to get the user’s input.

1 Like

automatic size is y
chair limit 30

Well you could either do the TextLabel cloning method the others are talking about or just use one textbox and get the last line using string.split()

Your text box must have the Multiline property set to true and ClearTextOnFocus set to false
Here is an example with text inside the textbox:

kill John
kick John Bypassing and harassing.
teleport me Jane ← command we are focusing on (last line)

local Split = string.split(TextBox.Text, '\n')
local FocusedLine = Split[#Split]
print(FocusedLine)

And then the output will be:

teleport me Jane

But I’d also suggest to use the TextLabel method since it supports RichText