I have these nameless, formless, evil abominations in my community, and I NEED to get rid of them already!
https://i.imgur.com/jPNT24l.jpg
The reason those players look like that is because of a bug caused by them swapping to Horde.
I can’t click on them-- Like, at ALL-- the mouse highlights them, but they are ENTIRELY unclickable. This means, even as the owner of the community, I cannot access the normal menu to remove them.
I have tried asking GMs and CMs for help multiple times but they REFUSE to do so. Idk if its because they think this task is beneath them or what…
Anyway, I have been playing around with Lua, and even though I can’t kick them using the game’s ui, I DO have their memberIDs! So, for example, what I want to do is this:
/run C_Club.KickMember(371820531,532)
371820531 is the community ID, and 532 is the member ID of one of those players. The trouble is that C_Club.KickMember is protected, and I cant call it at all… Anyone have any ideas how I can get around this “protection”?
The reason I need to do this is because it is supposed to be an alliance only community, but the unnamed players being Horde prevent us from listing in the finder as an Alliance community period!
It doesn’t look like I can see their guid. When I do:
/dump C_Club.GetMemberInfo(371820531,532)
Where 371820531 is the communityId and 532 is the memberId, the table I get back looks like:
[1]={
clubType=1,
presence=3,
role=4,
memberId=532,
isSelf=false
}
That said, when I do: /dump C_Club.GetMemberInfo(371820531,736) where 736 is a player currently online, I DO get back a lot more info, such as the guid, ClassID, level, name, memberNote, race.
Possibly generated a new guid on transfer which is why it was just a shot
.
Made an effort to adapt this technique here, credit to Linaori. And came up with this monster:
SLASH_COMKICK1 = '/comkick'
print("|cFF4682B4" .. "/comkick [clubId] [memberId] to kick a member from a community" .. "|r")
local receivedKICKCommand = false
local kickListener = CreateFrame('Frame', nil, UIParent)
kickListener:SetPropagateKeyboardInput(true)
kickListener:HookScript('OnKeyDown', function ()
if not receivedKICKCommand then return end
C_Club.KickMember(clubId, memberId)
receivedKICKCommand = false
end)
SlashCmdList["COMKICK"] = function(msg)
local args = {}
for word in msg:gmatch("%S+") do
table.insert(args, word)
end
if #args ~= 2 then
print("Usage: /comkick <community_id> <member_id>")
return
end
clubId = tonumber(args[1])
memberId = tonumber(args[2])
receivedKICKCommand = true
print("KICK Command Recieved")
end
Sadly, while I could get certain “protected” functions like changing titles, and /follow to work, I could not make this work (although the “Forced Taint Strong” error no longer comes up, so maybe its gettin there?).
If anyone has any ideas, I would appreciate them.
Another shot in the dark.
Removed: also not going to work without a valid guid
Ah… Too bad. Would have been able to try it in another couple of hours.