GetPlayerACInfo: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
No edit summary  | 
				No edit summary  | 
				||
| Line 1: | Line 1: | ||
{{Server function}}  | {{Server function}}  | ||
__NOTOC__  | __NOTOC__  | ||
{{New feature/item|3.0140|1.3.3|5523|  | {{New feature/item|3.0140|1.3.3|5523|  | ||
This function returns anti-cheat info for a player. It can be used to script a white/blacklist of custom d3d9.dll files, or a white/blacklist of players with certain anti-cheat codes. The relevant anti-cheat code has to be disabled (or not enabled) in the server [[Mtaserver.conf#disableac|mtaserver.conf]] to be of use here.  | This function returns anti-cheat info for a player. It can be used to script a white/blacklist of custom d3d9.dll files, or a white/blacklist of players with certain anti-cheat codes. The relevant anti-cheat code has to be disabled (or not enabled) in the server [[Mtaserver.conf#disableac|mtaserver.conf]] to be of use here.  | ||
{{Note|The info returned by this function can change over time, so it should be called every few seconds rather than just when the player joins.}}  | {{Note|The info returned by this function can change over time, so it should be called every few seconds rather than just when the player joins. See example.}}  | ||
}}  | }}  | ||
==Syntax==  | ==Syntax==  | ||
| Line 21: | Line 20: | ||
==Example==    | ==Example==    | ||
This   | This example checks getPlayerACInfo for changes every 3 seconds  | ||
<syntaxhighlight lang="lua">  | <syntaxhighlight lang="lua">  | ||
lastDetectedACList = {}  | lastDetectedACList = {}  | ||
addEventHandler( "onResourceStart", resourceRoot,  | |||
    function()  | |||
        for _,plr in ipairs( getElementsByType("player") ) do  | |||
            lastDetectedACList[plr] = ""  | |||
        end  | |||
    end  | |||
)  | |||
addEventHandler( "onPlayerJoin", root,  | addEventHandler( "onPlayerJoin", root,  | ||
Revision as of 16:24, 1 February 2014
This function returns anti-cheat info for a player. It can be used to script a white/blacklist of custom d3d9.dll files, or a white/blacklist of players with certain anti-cheat codes. The relevant anti-cheat code has to be disabled (or not enabled) in the server mtaserver.conf to be of use here.
Syntax
table getPlayerACInfo( element thePlayer )
Required Arguments
- thePlayer: The player whose anti-cheat info you want to check.
 
Returns
Returns a table with the following entries:
- DetectedAC: A string containing a comma separated list of anti-cheat codes the player has triggered.
 - d3d9MD5: A string containing the MD5 of any custom d3d9.dll the player may have installed.
 - d3d9Size: A number representing the file size of any custom d3d9.dll the player may have installed.
 
Example
This example checks getPlayerACInfo for changes every 3 seconds
lastDetectedACList = {}
addEventHandler( "onResourceStart", resourceRoot,
    function()
        for _,plr in ipairs( getElementsByType("player") ) do
            lastDetectedACList[plr] = ""
        end
    end
)
addEventHandler( "onPlayerJoin", root,
    function()
        lastDetectedACList[source] = ""
    end
)
addEventHandler( "onPlayerQuit", root,
    function()
        lastDetectedACList[source] = nil
    end
)
function checkPlayersACInfo()
    for plr,lastAC in pairs( lastDetectedACList ) do
        local info = getPlayerACInfo(plr)
        if info.DetectedAC ~= lastAC then
            lastDetectedACList[plr] = info.DetectedAC
            outputServerLog( "AC-INFO: "
                .. " Player:" .. tostring(getPlayerName(plr))
                .. " DetectedAC:" .. tostring(info.DetectedAC)
                .. " d3d9MD5:" .. tostring(info.d3d9MD5)
                .. " d3d9Size:" .. tostring(info.d3d9Size)
                )
        end
    end
end
setTimer( checkPlayersACInfo, 3000, 0 )
Requirements
This template will be deleted.
Example
See Also
- getPlayerTeam
 - getPlayerBlurLevel
 - setPlayerBlurLevel
 - getPlayerSerial
 - forcePlayerMap
 - getPlayerScriptDebugLevel
 - getPlayerFromName
 - getPlayerMoney
 - getPlayerName
 - getPlayerNametagColor
 - getPlayerNametagText
 - getPlayerPing
 - getPlayerWantedLevel
 - givePlayerMoney
 - isPlayerMapForced
 - isPlayerNametagShowing
 - setPlayerHudComponentVisible
 - setPlayerMoney
 - setPlayerNametagColor
 - setPlayerNametagShowing
 - setPlayerNametagText
 - takePlayerMoney
 - countPlayersInTeam
 - getPlayersInTeam
 - isVoiceEnabled
 - setControlState
 - getControlState