Cuberite Forum
How to get player's name at the ping screen - Printable Version

+- Cuberite Forum (https://forum.cuberite.org)
+-- Forum: Cuberite (https://forum.cuberite.org/forum-4.html)
+--- Forum: Development (https://forum.cuberite.org/forum-13.html)
+--- Thread: How to get player's name at the ping screen (/thread-3195.html)

Pages: 1 2


How to get player's name at the ping screen - MGlolenstine - 08-13-2018

Ok, so I'm trying to get player's username to display in the server's description when the player pings my server, as I'd like to show personalised description.

I've read the description, but it would appear that on some servers(not using Cuberite) they're able to get the username.
How would I be able to reproduce this?


RE: How to get player's name at the ping screen - NiLSPACE - 08-14-2018

Do you mean something like this?:

function OnServerPing(ClientHandle, ServerDescription, OnlinePlayers, MaxPlayers, Favicon)
	local newDescription = "";
	cRoot:ForEachPlayer(function(player)
		newDescription = newDescription .. player:GetName();
	end);
	
	return false, newDescription, OnlinePlayers, MaxPlayers, Favicon
end



RE: How to get player's name at the ping screen - MGlolenstine - 08-14-2018

(08-14-2018, 01:25 AM)NiLSPACE Wrote: Do you mean something like this?:

function OnServerPing(ClientHandle, ServerDescription, OnlinePlayers, MaxPlayers, Favicon)
 local newDescription = "";
 cRoot:ForEachPlayer(function(player)
 newDescription = newDescription .. player:GetName();
 end);
 
 return false, newDescription, OnlinePlayers, MaxPlayers, Favicon
end

No, I'm sorry, but I don't see it working... I get the following [img]data:image/png;base64,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[/img]
even tho I wanted to have pinging player's name shown in there.

Thanks anyways.

EDIT: Hmm it'd appear that the image system is broken(it works fine in the editor).
Putting it again:
[Image: Screenshot_at_2018_08_13_21_17_59.png]


RE: How to get player's name at the ping screen - NiLSPACE - 08-14-2018

I tried the code I provided (as I didn't test it beforehand) and it seems I made a slight error. cRoot has to be replaced with cRoot:Get(). Afterwards it works for me.


RE: How to get player's name at the ping screen - MGlolenstine - 08-20-2018

(08-14-2018, 07:05 PM)NiLSPACE Wrote: I tried the code I provided (as I didn't test it beforehand) and it seems I made a slight error. cRoot has to be replaced with cRoot:Get(). Afterwards it works for me.

Sadly it doesn't do what I wanted it to. It lists all of the players online, but I want to get the "pinging's player" name.

EDIT: Yeah, I've noticed the skipped ":Get()"


RE: How to get player's name at the ping screen - NiLSPACE - 08-23-2018

Ah, then I misunderstood you. the cClientHandle has a GetPlayer method which returns a cPlayer object, but it might not be filled yet which would mean it returns nil.


RE: How to get player's name at the ping screen - MGlolenstine - 08-23-2018

(08-23-2018, 03:48 AM)NiLSPACE Wrote: Ah, then I misunderstood you. the cClientHandle has a GetPlayer method which returns a cPlayer object, but it might not be filled yet which would mean it returns nil.

So in short, there is no way?


RE: How to get player's name at the ping screen - NiLSPACE - 08-23-2018

It might be. You'll have to try it. What happens in the console when you use
function OnServerPing(ClientHandle, ServerDescription, OnlinePlayers, MaxPlayers, Favicon)
    local name = ClientHandle:GetPlayer():GetName();
    print(name)
end



RE: How to get player's name at the ping screen - MGlolenstine - 08-23-2018

(08-23-2018, 05:19 AM)NiLSPACE Wrote: It might be. You'll have to try it. What happens in the console when you use
function OnServerPing(ClientHandle, ServerDescription, OnlinePlayers, MaxPlayers, Favicon)
    local name = ClientHandle:GetPlayer():GetName();
    print(name)
end

Just a lot of errors...

Code:
[09:35:36] LUA: Plugins/BanPlus/BanPlus.lua:52: attempt to index a nil value
[09:35:36] Stack trace:
[09:35:36]   Plugins/BanPlus/BanPlus.lua(52): (no name)
[09:35:36] Stack trace end
[09:35:36] Error in <attached> calling function <callback>()

So it would appear as it isn't possible?


RE: How to get player's name at the ping screen - bearbin - 08-23-2018

Yes, it is not possible. The player is only added to the client handle once it has logged in, and I don't believe the username is even sent in ping packets. Can you link to an example of another server that implements this feature?