[Release] /me but the text is 3D printed

Love this, but can you make it so the text doesn’t overlap? For example if /me is done while another one is active it will disable the first one and show the latest one. Not sure if that made sense…

I just edited it so that the text floats upwards. Next I’ll probably make it so that the text also fades in opacity as it moves up.

Does it write in chat and in 3d bubble or what?

Yep I could try that but atm I’m working on another resource and too lazy to spend an hour on this one. :stuck_out_tongue:

@Knight_Marsha Interesting, feel free to share. There are also other ways you can modify the text (shadow, outline …).

@Orel240hz In a 3D bubble but also in a log.txt for the admins (not in chat).

Would this potentially conflict with nametag scripts over the head and cause overlap? If so can I make it higher or lower to avoid this?

It could overlap the playertag but personnaly I had no problems with that. At least you can adjust that line 26 of client.lua : DrawText3D(coords['x'], coords['y'], coords['z']+1, text) just change the +1 on the z value.

You could make the text display for an exact amount of time instead of “roughly” 13 seconds with variance on frame rate with a pretty easy separate thread. A function similar to Display below may be considered, which would display for exactly 500ms. If you want to keep the current display time of 13 seconds, change time to 13000.

function Display(mePlayer, text)
	local displaying = true
	Citizen.CreateThread(function()
		Citizen.Wait(time)
		displaying = false
	end)
	Citizen.CreateThread(function()
		while displaying do
			Citizen.Wait(0)
			local coords = GetEntityCoords(GetPlayerPed(mePlayer), false)
			DrawText3D(coords['x'], coords['y'], coords['z']+1, text)
		end
	end)
end
1 Like

Updated ! (thanks to @SaltyGrandpa)

Update

  • The text display an exact amount of time
  • Added “the person” at the beginning of the text (Line 7 if you want to change the language)
  • Using /me multiple times doesn’t make it unreadable
1 Like

hey great scripts I have it on my server quick question though

my players want to do this and a /me in the chat so that they can scroll back through the chat in game if need be is there a way to do this, I was going to run this along side a standard /me script but that doesn’t work only the 3d text shows

Maybe you can try to change the command of my script then your players can choose between the normal way and the 3D way. Or if you want to run them both with one command, you can add the chatMessage event of the other script into my script.

On the server I use this on, we have it so that /me does the bubble text (this), and /gme does the normal /me but in chat (do to we don’t use it in a set radius)

One thing I noticed when using this, if a player is dead it won’t show anything… is there any way to fix this?

I’d give it a quick guess. If the player is dead the ped is also laying down and that will make the location of the text appear in the ground.

I think @P4NDA_GamingV2 is right. Maybe you can try : if IsEntityDead(ped) then change the way the coordinates work for example by using the last coordinates the client used.

i have problem. When somebody use /me it shows above all players head

Sorry for the late response. Do you use the last version I uploaded ? Maybe I broke something
Does anyone have the same issue ?

I have 6 servers. IT happening sometime after restarts, sometimes IT works very well, but sometimes it just shows above all users head.

Is there a way you could create a webhook to post the log.txt to a discord via webhook

Also what is your time scale can you place that in comments for people who what to reduce time,
how does 500=13 seconds?

I fixed that on the last update now the timer is on ms. I will not do a webhook as i don’t hot enough time tout atm but I posted a link on how to make it work a few post above. :wink: