Is there a way to make a printing output?

is there a way to make a printing output that drop lines like this ?

im asking because i never found out how to make something that drop lines

1 Like

I believe there is a way. I’m quite bad at scripting, but it might go something like this?

print (Hello!)

I have no idea even if that’s remotely correct, but to my knowledge that’s how I imagine it’d work like.

I can help you but it’s quite hard to explain for me, you can add me on discord repxrd#0347

well ugh there are no Drop command or line sadly so it wouldnt be like this

1 Like

If you really do not know how to solve OP’s question, then I’d advise not replying. It’s pointless and just creates spam.


I believe another way to do this would be…

TextLabel.Text = "Line1\nLine2" 

Apart from that, that’s all I found. I found something here on the Forum too that may help you. Of course you’d have to use…

  print (your text)
  TextLabel.Text = "Line1/nLine2"

But that’s all I found, and all I know how to do from here.

Here’s an example I whipped up. I tried to comment and explain as much as I could. I can’t immediately think of another way to tackle this particular problem (at least more elegantly), but this is what the finished product looks like:

-- LocalScript in StarterPlayerScripts
-- Path to the text label whose text you wish to modify
local textLabel = game.Players.LocalPlayer.PlayerGui:WaitForChild("ScreenGui").TextContainer.lbl_TextPlaceholder

-- This is a placeholder string I used for testing purposes
local str = "This is a very long string that doesn't have an ending because this is a very long string that doesn't have an ending because this is a very long string that doesn't have an ending because this is a very long string."

-- The number of characters at which point you would like to insert a new line character "\n"

-- Modify 'str' to insert a newline character at the specified index and return that string
local function insertNewLineIntoString(str, index)
	return str:sub(1, index) .. "\n" .. str:sub(index + 1) 
-- Iterate over the string, starting from the beginning until the end
for i = 1, #str + #str % CHARACTERS_PER_LINE do -- The (+ #str % CHARACTERS_PER_LINE) is necessary to account for the length of the string updating below. I'm sure there's a more elegant way to do this :shrug:
	wait() -- tiny yield to give a 'typing' effect, just so it doesn't appear instantly
	textLabel.Text = str:sub(1, i) -- set the textlabel's text to the string's substring from the starting character to the current index
	if i % CHARACTERS_PER_LINE == 0 then -- simple demonstration, will not check for things like spaces/puncuation, etc. just makes a new line every `specified` characters
		str = insertNewLineIntoString(str, i) -- reassign string to insert the newline character

I know that there is already a solution, but I’m thinking that you could use the ClipDecendants property of UI in order to get the desired effect, unless of course you just want it to be character by character, in which it has already been solved.

im sorry but that has been solved, but thank you really much for your answer !