Hey there. So I am an owner of a relatively successful darkrp server. I really hate getting treated like an owner sometimes though, and have thought of a solution. Spoofing my name. For my scoreboard it was easy. Just a simple if v:SteamID then name:SetText......... But changing default gmod/darkrp stuff is a bit more difficult.
Any tips?
Could always hide yourself from the scoreboard completely and have no issue.
Or use family sharing on a different account? Unless you want to have your rank meanwhile? What Willy suggested is also a solution, though there are many other ways to see players.
[lua] local p = FindMetaTable("Player")
local oldfuncn = p.Name
local oldfuncg = p.GetName
local oldfuncni = p.Nick
function p:Name(...)
if !IsValid(self) then return end
if (steamid == blah) then
return name u want
end
return oldfuncn(...)
end
function p:GetName(...)
if !IsValid(self) then return end
if (steamid == blah) then
return name u want
end
return oldfuncg(...)
end
function p:Nick(...)
if !IsValid(self) then return end
if (steamid == blah) then
return name u want
end
return oldfuncni(...)
end[/lua]
Like this?
[QUOTE=zerothefallen;45607393][lua] local p = FindMetaTable("Player")
local oldfuncn = p.Name
local oldfuncg = p.GetName
local oldfuncni = p.Nick
function p:Name(...)
if !IsValid(self) then return end
if (steamid == blah) then
return name u want
end
return oldfuncn(...)
end
function p:GetName(...)
if !IsValid(self) then return end
if (steamid == blah) then
return name u want
end
return oldfuncg(...)
end
function p:Nick(...)
if !IsValid(self) then return end
if (steamid == blah) then
return name u want
end
return oldfuncni(...)
end[/lua]
Like this?[/QUOTE]
[lua]local Player = FindMetaTable("Player")
local oNick = Player.Nick
local spoofs = {
["STEAM_0:0:0"] = "Botman 4000"
}
function Player:Nick()
if not self:IsValid() then return end
return spoofs[self:SteamID()] or oNick(self)
end
Player.Name = Player.Nick
Player.GetName = Player.Nick[/lua]
Awesome guys. Thanks for this! I still want to show up on the scoreboard because I just want to role play and be treated like any other player. As an owner, players are afraid to raid me, always give me special deals on weapons shipments, etc. But at the same time, id still like fadmin/ulx powers to keep the server clean and friendly.
[QUOTE=Luni;45607788][lua]local Player = FindMetaTable("Player")
local oNick = Player.Nick
local spoofs = {
["STEAM_0:0:0"] = "Botman 4000"
}
function Player:Nick()
if not self:IsValid() then return end
return spoofs[self:SteamID()] or oNick(self)
end
Player.Name = Player.Nick
Player.GetName = Player.Nick[/lua][/QUOTE]
That works too, I was just covering all 3 funcs in a generic way for readability.
[QUOTE=Luni;45607788][lua]local Player = FindMetaTable("Player")
local oNick = Player.Nick
local spoofs = {
["STEAM_0:0:0"] = "Botman 4000"
}
function Player:Nick()
if not self:IsValid() then return end
return spoofs[self:SteamID()] or oNick(self)
end
Player.Name = Player.Nick
Player.GetName = Player.Nick[/lua][/QUOTE]
This worked well. Only problem is when I chat or voice chat my normal name pops up. I think this is based off of steam name. Where can I change it to hard RP name and not a steam name?
[QUOTE=imMrAnarchy;45616381]This worked well. Only problem is when I chat or voice chat my normal name pops up. I think this is based off of steam name. Where can I change it to hard RP name and not a steam name?[/QUOTE]
The code has to be serverside and clientside.
Ahh okay! Guessing that's my issue. I was running it server side only.
Sorry, you need to Log In to post a reply to this thread.