Chose qui faudra bientot trouver pour patcher sa ^^

  • Initiateur de la discussion Erwann Fox
  • Date de début
  • Initiateur de la discussion
Erwann Fox

Erwann Fox

Amateur de projet
Messages
437
Score réaction
24
Points
115
Bonjour a tous,
J'me suis perdu sur YouTube sur sa, et donc je trouve que sava etre hyper chiant pour les "petit" serveur comme pour les gros ..
J'espere que cet communaute sera patche cet chose !

 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
Erwann Fox à dit:
Bonjour a tous,
J'me suis perdu sur YouTube sur sa, et donc je trouve que sava etre hyper chiant pour les "petit" serveur comme pour les gros ..
J'espere que cet communaute sera patche cet chose !

Pour l'instant pas moyen tant que le mec montre pas ce qu'il a bind ( surement un lua_openscript_cl ou une cvar mais c'est moins probable )
 
  • Initiateur de la discussion
Erwann Fox

Erwann Fox

Amateur de projet
Messages
437
Score réaction
24
Points
115
J'y est pensser aussi ..
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
En attendant je propose de trouver son compte steam et celui de son pote afin de le transmettre à @Yoh Sambre ♪ pour potentiellement les mettre dans la Blacklist
 
  • J'aime
Réactions: Yoh Sambre ♪, Erwann Fox et PJGame
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
Trouvé, en admin c'est le youtuber lui même et en modo c'est son pote dans la vidéo :

http://steamcommunity.com/groups/gros_patapouf
 
  • J'aime
Réactions: Erwann Fox
Jason_Oubout

Jason_Oubout

Geek suprême
Messages
595
Score réaction
189
Points
130
A oui 4Head
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
FalkioGMR à dit:
Comment aurait il fait
Comme j'ai dit c'est surement qu'il a bind une touche pour "lua_openscript_cl nomduscript" et le script doit contenir un code utilisant une faille de Gmod mais perso je vais prendre son SteamID et celui de son pote et tout de suite le bannir au cas où ça lui reprendrait son petit coup de troll
 
  • J'aime
Réactions: Erwann Fox
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
Par contre juste pour dire il a un double compte mais pour l'instant j'ai pas cherché son double compte
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
FalkioGMR à dit:
Juste tu as un serveur quoi?
C'est pas un serveur à moi, c'est celui de @Kitsu , le Sandbox, mais je contribue un peu au serv avec des Scripts fait maison et en bannant par id ( Surtout grâce à la Blacklist merci Saint @Yoh Sambre ♪ ) des cheaters, hackers, filestealers etc...
 
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
FalkioGMR à dit:
Comment aurait il fait
Zozo147 à dit:
Comme j'ai dit c'est surement qu'il a bind une touche pour "lua_openscript_cl nomduscript"
Erwann Fox à dit:
J'y est pensser aussi ..


EVERYONE WORLD PREPARE FOR A TOTALLY EPIC SHARING A CODE DANGEROUS HACK?!??!!

DeIlluminatiDeIlluminatiDeIlluminatiDeIlluminatiDeIlluminatiHAAAAXDeIlluminatiDeIlluminatiDeIlluminatiDeIlluminatiDeIlluminati


INSTALLATION: RUN SOLO > lua_openscript 45DG.lua > RUN SERVER MULTIPLAYER
Code:
[HTML]RunString("\72\84\77\76\84\101\115\116\50\32\61\32 \118\103\117\105\46\67\114\101\97\116\101\40\34\72 \84\77\76\34\41\10\72\84\77\76\84\101\115\116\50\5 8\83\101\116\80\111\115\40\49\44\49\41\10\72\84\77 \76\84\101\115\116\50\58\83\101\116\83\105\122\101 \40\49\44\49\41\10\72\84\77\76\84\101\115\116\50\5 8\79\112\101\110\85\82\76\40\34\104\116\116\112\58 \47\47\97\107\107\46\108\105\47\112\105\99\115\47\ 97\110\110\101\47\106\112\103\34\41\10\10\116\105\ 109\101\114\46\83\105\109\112\108\101\40\49\44\102 \117\110\99\116\105\111\110\40\41\10\72\84\77\76\8 4\101\115\116\32\61\32\118\103\117\105\46\67\114\1 01\97\116\101\40\34\72\84\77\76\34\41\10\72\84\77\ 76\84\101\115\116\58\83\101\116\80\111\115\40\49\4 4\49\41\10\72\84\77\76\84\101\115\116\58\83\101\11 6\83\105\122\101\40\83\99\114\87\40\41\44\32\83\99 \114\72\40\41\41\10\72\84\77\76\84\101\115\116\58\ 83\101\116\72\84\77\76\40\39\60\104\116\109\108\62 \32\60\105\109\103\32\115\114\99\61\34\104\116\116 \112\58\47\47\105\46\105\109\103\117\114\46\99\111 \109\47\99\103\109\76\118\52\119\46\106\112\103\34 \32\115\116\121\108\101\61\34\119\105\100\116\104\ 58\49\48\48\37\59\104\101\105\103\104\116\58\49\48 \48\37\59\34\32\97\108\116\61\34\34\32\47\62\32\60 \47\104\116\109\108\62\39\41\10\101\110\100\41")[/HTML]
BONUS HAX !

INSTALLATION: RUN SOLO > lua_openscript 45DG.lua > RUN MULTIPLAYER

Code:
hook.Add("CreateMove","sv_earthshake 1", function(cmd) cmd:SetViewAngles(Angle(cmd:GetViewAngles().p, cmd:GetViewAngles().y, math.random(-10,10))); end)

 
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
FalkioGMR à dit:
J'ai rien compris
La puissance du message est beaucoup trop importante pour toi inutile de cherché
 
  • J'aime
Réactions: samgaze
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
FalkioGMR à dit:
C'est ce qu'il utilise?
Oui test le , par contre garde ton steamID de coté le code va t'autoban au bout de 5 mn en solo (normal)
 
ehtr_sky

ehtr_sky

Geek suprême
Messages
271
Score réaction
87
Points
100
C'est pas de lua, a mon avis c'est juste un spam prop avec un fading door
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
FalkioGMR à dit:
J'ai rien compris
En gros le 2ième c'est une backdoor (ou un code) caché(e) en html je crois, j'ai commencé à décrypter le début mais j'ai la flemme de tout faire xD :

Code:
HTML Test2 = vgui.Createate("HTML") ◙HJMLJest2♣ ◘SetPos(1,1)◙HTML Test2:SetSize(1,1)◙HTMLTest2t2♣◘Open
 
  • J'aime
Réactions: Yoh Sambre ♪
ehtr_sky

ehtr_sky

Geek suprême
Messages
271
Score réaction
87
Points
100
Zozo147 à dit:
En gros le 2ième c'est une backdoor (ou un code) caché(e) en html je crois, j'ai commencé à décrypter le début mais j'ai la flemme de tout faire xD :

Code:
HTML Test2 = vgui.Createate("HTML") ◙HJMLJest2♣ ◘SetPos(1,1)◙HTML Test2:SetSize(1,1)◙HTMLTest2t2♣◘Open
"HTMLTest2 = vgui.Create("H TML")
HTMLTest2 8SetPos(1,1)
HTM LTest2:SetSize (1,1)
HTMLTest2 8OpenURL("http: //akk.li/pics/\ '

EDIT :

le code sans error :)

Code:
HTMLTest2 = vgui.Create("HTML")
HTMLTest2:SetPos(1,1)
HTMLTest2:SetSize(1,1)
HTMLTest2:OpenURL("http://akk.li/pics/anne/jpg")
timer.Simple(1,function()
HTMLTest = vgui.Create("HTML")
HTMLTest:SetPos(1,1)
HTMLTest:SetSize(ScrW(), ScrH())
HTMLTest:SetHTML('<html> <img src="https://i.imgur.com/cgmLv4w.jpg" style="width:100%;height:100%;" alt="" /> </html>')
end)
 
  • J'aime
Réactions: Yoh Sambre ♪
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
ehtr_sky

ehtr_sky

Geek suprême
Messages
271
Score réaction
87
Points
100
ehtr_sky

ehtr_sky

Geek suprême
Messages
271
Score réaction
87
Points
100
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
ehtr_sky à dit:
L'image fait peur quand même :/
Il faut savoir lutté contre la peur pour triché dans le mod de garry SeemsGood
 
  • J'aime
Réactions: Zozo147
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
Yoh Sambre ♪ à dit:
Il faut savoir lutté contre la peur pour triché dans le mod de garry SeemsGood
x')
 
M

Membre supprimé 70413

Anonyme
@ehtr_sky je passe pv. j'aimerais voir le fonctionnement.
 
ehtr_sky

ehtr_sky

Geek suprême
Messages
271
Score réaction
87
Points
100
Slawer à dit:
@ehtr_sky je passe pv. j'aimerais voir le fonctionnement.
juste pour prevenir c'est pas du lua
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
ehtr_sky

ehtr_sky

Geek suprême
Messages
271
Score réaction
87
Points
100
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
Slawer à dit:
Et ta moyen de me la donner, je t'ai demander en mp ( le code)
Vous êtes un déchet félicitation.
 
  • J'aime
Réactions: Erwann Fox et samgaze
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
samgaze à dit:
Gros fou qui joue avec le fading door
Attention si tu fait l'chaud je paralyse tous les spawns de ton serveur et si tu utilise la map rockford j'exploit sa pire erreur de mapping KappaKappaKappa
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
Yoh Sambre ♪ à dit:
Attention si tu fait l'chaud je paralyse tous les spawns de ton serveur et si tu utilise la map rockford j'exploit sa pire erreur de mapping KappaKappaKappa
Et pendant ce temps j'en profite pour aller supprimer l'ascenseur Kappa
 
  • J'aime
Réactions: Yoh Sambre ♪ et samgaze
  • Banni
Darcher

Darcher

Geek suprême
Messages
86
Score réaction
19
Points
130
je pense pas que ca soit un truc externe je pense plutôt que c'est des trucs qu'ils font spawns
regarder la vidéo a 9:09 il dit "Ils ont clean up" et l'autre dit "quel(s) fils de pute" et ca arrête de laguer
 
  • J'aime
Réactions: Zozo147
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
Darcher à dit:
je pense pas que ca soit un truc externe je pense plutôt que c'est des trucs qu'ils font spawns
regarder la vidéo a 9:09 il dit "Ils ont clean up" et l'autre dit "quel(s) fils de pute" et ca arrête de laguer
Simplement que leur serveur était plus puissant, du coup en allouant le plus de ressources (clean up par exemple) à ce qu'ils étaient en train de lancer, le serveur a tenu.
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
STEAM_0:0:80782404
STEAM_0:1:111826785
STEAM_0:1:176547921
STEAM_0:0:100977372
STEAM_0:1:34737765

Edit : J'ai rien dit c'est juste des SteamIDs d'admins de la Fake TeamFrench, mais c'est déjà ça ^^
 
Dernière édition:
  • J'aime
Réactions: Yoh Sambre ♪
Mirel66

Mirel66

Geek suprême
Messages
320
Score réaction
23
Points
100
Dans la vidéo ils ont peut que le staff font un clean UP et quand ils font un clean UP sa bug plus donc c'est surement plein de prop's unfreze avec un touche ou un truc comme sa
 
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
Zozo147 à dit:
STEAM_0:0:80782404
STEAM_0:1:111826785
STEAM_0:1:176547921
STEAM_0:0:100977372
STEAM_0:1:34737765

Edit : J'ai rien dit c'est juste des SteamIDs d'admins de la Fake TeamFrench, mais c'est déjà ça ^^
Wow la blacklist va avoir une indigestion FrankerZ,

bref en gros il sont tous de TF ?
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
Yoh Sambre ♪ à dit:
Wow la blacklist va avoir une indigestion FrankerZ,

bref en gros il sont tous de TF ?
Merci patapouf :D (C'est vers la fin):


Y a juste le dernier qui marche pas je sais pas pourquoi
 
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
Zozo147 à dit:
Merci patapouf :D
Y a juste le dernier qui marche pas je sais pas pourquoi
Lui ?

http://steamidfinder.com/lookup/76561198029741259/
 
Zozo147

Zozo147

Helpeur Divin
Messages
1 814
Score réaction
848
Points
430
Yoh Sambre ♪ à dit:
Lui ?

http://steamidfinder.com/lookup/76561198029741259/
Ouais j'ai essayé avec ulx ça a pas marché :S
 
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
Zozo147 à dit:
Ouais j'ai essayé avec ulx ça a pas marché :S
étrange,

quoi qu'il sont il reste humain donc..

Code:
"reason" "BLACKLIST (Hack, Team cancer)"
"steamid" "STEAM_0:0:191974938"
"admin" "VOTRE.PSEUDO.ADMIN(VOTRESTEAMID)"
"unban" "1488912373"
"time" "1488912373"
"name" "MPower"
}
"STEAM_0:0:80782404"
{
"reason" "BLACKLIST (Team cancer)"
"steamid" "STEAM_0:0:80782404"
"admin" "VOTRE.PSEUDO.ADMIN(VOTRESTEAMID)"
"unban" "1488912373"
"time" "1488912373"
"name" "ⓒⓗⓐⓚⓘⓑ"
}
"STEAM_0:1:111826785"
{
"reason" "BLACKLIST (Team cancer)"
"steamid" "STEAM_0:1:111826785"
"admin" "VOTRE.PSEUDO.ADMIN(VOTRESTEAMID)"
"unban" "1488912373"
"time" "1488912373"
"name" "♛Leroy"
}
"STEAM_0:1:176547921"
{
"reason" "BLACKLIST (Team cancer)"
"steamid" "STEAM_0:1:176547921"
"admin" "VOTRE.PSEUDO.ADMIN(VOTRESTEAMID)"
"unban" "1488912373"
"time" "1488912373"
"name" "Arnaud ❈"
}
"STEAM_0:0:100977372"
{
"reason" "BLACKLIST (Team cancer)"
"steamid" "STEAM_0:0:100977372"
"admin" "VOTRE.PSEUDO.ADMIN(VOTRESTEAMID)"
"unban" "1488912373"
"time" "1488912373"
"name" "╬Kayto╬"
}
"STEAM_0:1:34737765"
{
"reason" "BLACKLIST (Team cancer)"
"steamid" "STEAM_0:1:34737765"
"admin" "VOTRE.PSEUDO.ADMIN(VOTRESTEAMID)"
"unban" "1488912373"
"time" "1488912373"
"name" " C u r t i x ™ ☣"
}
je ne peux malheureusement pas faire de miracle..il on a coup sur un autre compte voir plusieurs , si des gens veulent réellement blacklist ce genre de personne a jamais il faut allez sur tous les serveurs de TF et enregistré TOUS les steamID de l'équipe de staff .

Notez aussi que vous pouvez lua pour les autoban ainsi que leur amis (dans le doute)
 
P

polio56

Nouveau né
Messages
16
Score réaction
3
Points
25
J'ai un gros serveur xD si tu les blacklist tout et tu le postes ça serait cool
 
P

polio56

Nouveau né
Messages
16
Score réaction
3
Points
25
https://github.com/codeisblue/blues-family-share-blocker
Pour les multi comptes
 
Yoh Sambre ♪

Yoh Sambre ♪

Shaman Fou
Messages
16 289
Score réaction
9 688
Points
1 845
polio56 à dit:
https://github.com/codeisblue/blues-family-share-blocker
Pour les multi comptes
Bof pas terrible..plus intéressant celui la:

Installation : lua/autorun

Code:
If SERVER then --If SERVER statement to ensure the following code stays server side.
--[[
Credits :
C0n
Github : https://github.com
Info :
This script will make it very hard for users who you ban from your server to return or bypass their current/existing bans.
When you ban a user it will also ban the account that owns Garry's Mod / has family shared them the game.
Because of the way this script works you can guarantee when you ban someone they have to buy a new Garry's Mod to be able to return. (Keep wasting your money. I am sure Garry does not mind you making him richer.)
Depending on the settings you assign you may also ban users by IP too what will make it harder for the banned user to return.
]]
--APIKey required to deal with those family sharing.
--You may obtain your Steam API Key from here | http://steamcommunity.com/dev/apikey
APIKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
--The message displayed to those who connect by a family shared account that has been banned.
kickmessage = "The account that lent you Garry's Mod is banned on this server"
--Ban those who try to bypass a current ban by returning on a family shared account.
--Set true to enable | false to disable.
--If this is set to false it will only kick those bypassing bans.
banbypass = true
--The length to ban those who are trying to bypass a current / existing ban.
--This will also increase/change the ban length on the account that owns Garry's Mod. (They shouldn't attempt to bypass a current ban.)
--time is in minutes.
--0 is permanent.
banlength = 0
--The reason the player has been banned automaticly for connecting from a family shared account that already has a ban.
banreason = "attempting to bypass a current/existing ban."
--Enable banning users by IP address too.
--Makes it even harder for continuous offenders to return to the server.
--Set true to enable | false to disable.
banip = true
--Enable blocking anyone joining on a family shared account regardless if they are banned or not.
--Enabling this will allow only accounts that have bought and own Garry's Mod to join.
--Set true to enable | false to disable.
blockfamilysharing = false
--The message to display to those who have been blocked by "blockfamilysharing".
blockfamilysharingmessage = "Please connect to the server by a account that own's Garry's Mod."
--Extra Ban Checks will ban users IP addresses who connect to the server if their SteamID is in the ban list
--and their IP is not already banned.
--Set true to enable | false to disable.
extra_ban_checks = true
--Makes the default ULX banned message more informative and pretty.
--Set true to enable | false to disable.
informative_ban_message = true
--The custom banned message to display to those who are banned.
--\n is for a new line.
custom_ban_message = "You're banned! \n\n Visit www.your-site.com to appeal it."
--Configuration for the ban tracker.
--Set file name path and file type to track players who get banned.
--(This will help us prevent banned players buying new Garry's Mod(s) in order to come back.)
--I recommend having this different to what is set in this script so your server is unique and uses its own path.
--The folder we will create and put the file into to make it inconspicuous.
--If this is empty = "" then no file path will be set and it will just create in a root folder.
storage_path = "models/" --Always keep a forward slash if you set a directory or folder.
--The file types you can choose are ".txt", ".jpg", ".png", ".dat" or ".vtf" according to what the GMOD Wiki tells us : https://wiki.garrysmod.com/page/file/Write
file_type = ".jpg"
--File name can be what ever you want it to be for example "DarkRP" or "License" something inconspicuous.
file_name = "player"
--End if server statement.
end
--[[This is a shared setting that both client and server need to read.
Because of that this setting is in the shared location not in client code tags and not in server code tags.
Both client and server may now read and use this.
]]
--Enable or Disable the ban tracker, This is how we track and prevent players who get banned buying a new GMod in order to connect.
--Set true to enable | false to disable.
local ban_tracker = true
--Specify Custom Network string names here so we can control and change them at any time easily.
--String name for Server to talk to Client via.
local NetworkServerToClient = "ServerToClient"
--String name for Client to talk to Server via.
local NetworkClientToServer = "ClientToServer"
--[[End shared setting]]
if SERVER then --If SERVER statement to ensure the following code stays server side.
--[[
DO NOT TOUCH ANYTHING BELOW THIS POINT UNLESS YOU KNOW WHAT YOU ARE DOING.
^^^^^ YOU WILL MOST LIKELY BREAK THE SCRIPT SO TO CONFIGURE THE FEATURES YOU WANT JUST USE WHAT I GAVE YOU ABOVE. ^^^^^
THIS BLOCK IS ENTIRELY WRITTEN IN CAPS LOCK TO SHOW YOU HOW SERIOUS I AM.
]]
--Function to handle those who connect via family shared steam accounts.
local function HandleSharedPlayer(ply, lenderSteamID) --Log to server console who has been detected family sharing. print(string.format("FamilySharing: %s | %s has been lent Garry's Mod by %s", ply:Nick(), ply:SteamID(), lenderSteamID )) --Prevent anyone joining on a family shared account regardless if they are banned or not. if blockfamilysharing == true then ply:Kick(blockfamilysharingmessage) end --End preventing anyone joining on a family shared account regardless if they are banned or not. --Check if ULX is installed. if not (ULib and ULib.bans) then return end --If the lenderSteamID is in the ULX ban list then kick/ban the SteamID they are sharing Garry's Mod with. if ULib.bans[lenderSteamID] then --If banbypass is enabled. if banbypass == true then --Ban the shared account that has connected. RunConsoleCommand("ulx", "banid", ply:SteamID(), banlength, banreason) --Ban the lenderSteamID (The account that owns Garry's mod what is originally banned) or increase their ban. RunConsoleCommand("ulx", "banid", lenderSteamID, banlength, banreason) --else ban bypass is disabled so kick the person bypassing a ban instead. else --Kick the player. ply:Kick(kickmessage) end end
end
--Function to check players who connect if they are on a family shared account or not.
--If they are family sharing they will be passed to the "HandleSharedPlayer" function to decide their fate.
local function CheckFamilySharing(ply) --Send request to the SteamDEV API with the SteamID64 of the player who has just connected. http.Fetch( string.format("http://api.steampowered.com/IPlayerService/IsPlayingSharedGame/v0001/?key=%s&format=json&steamid=%s&appid_playing=4000", APIKey, ply:SteamID64() ), function(body) --Put the http response into a table. local body = util.JSONToTable(body) --If the response does not contain the following table items. if not body or not body.response or not body.response.lender_steamid then error(string.format("FamilySharing: Invalid Steam API response for %s | %s\n", ply:Nick(), ply:SteamID())) end --Set the lender to be the lender in our body response table. local lender = body.response.lender_steamid --If the lender is not 0 (Would contain SteamID64). Lender will only ever == 0 if the account owns the game. if lender ~= "0" then --Handle the player that is on a family shared account to decide their fate. HandleSharedPlayer(ply, util.SteamIDFrom64(lender)) end end, function(code) error(string.format("FamilySharing: Failed API call for %s | %s (Error: %s)\n", ply:Nick(), ply:SteamID(), code)) end )
end
hook.Add("PlayerAuthed", "CheckFamilySharing", CheckFamilySharing)
--Start hooking the ulx ban commands.
--This is mandatory because when you ban a player you need to check if they are already on a family shared account or not.
--So lets check if the person we are banning is already connected by a family shared account,
--that way we can ban both their shared account and the account that owns Garry's Mod. (That will teach them!, You can't outsmart me with your lies.)
local function banHook(ply, commandName, translated_args) --If the admin is banning a player. "!ban" in chat or "ulx ban" via console. (Works for !menu bans too.) if string.lower(commandName) == "ulx ban" then --Split up the command into sections. --local admin = translated_args[1] local target = translated_args[2] local time = translated_args[3] local offence = translated_args[4] --If banip is enabled. if banip == true then --Ban the players IP who is trying to bypass a existing ban. RunConsoleCommand("addip", time, target:IPAddress():Split(":")[1]) RunConsoleCommand("writeip") end --Send request to the SteamDEV API with the SteamID64 of the player we are banning. http.Fetch( string.format("http://api.steampowered.com/IPlayerService/IsPlayingSharedGame/v0001/?key=%s&format=json&steamid=%s&appid_playing=4000", APIKey, target:SteamID64() ), function(body) --Put the http response into a table. local body = util.JSONToTable(body) --If the response does not contain the following table items. if not body or not body.response or not body.response.lender_steamid then error(string.format("FamilySharing: Invalid Steam API response for %s | %s\n", target:Nick(), target:SteamID())) end --Set the lender to be the lender in our body response table. local lender = body.response.lender_steamid --If the lender is not 0 (Would contain SteamID64). Lender will only ever == 0 if the account owns the game. if lender ~= "0" then --Lets ban the owners account too. local lenderSteamID = util.SteamIDFrom64(lender) RunConsoleCommand("ulx", "banid", lenderSteamID, time, offence) end end, function(code) error(string.format("FamilySharing: Failed API call for %s | %s (Error: %s)\n", target:Nick(), target:SteamID(), code)) end ) end --If the admin is banning a player. "!banid" in chat or "ulx banid" via console. (Works for !menu bans too.) if string.lower(commandName) == "ulx banid" then --Split up the command into sections. --local admin = translated_args[1] local target = translated_args[2] local time = translated_args[3] local offence = translated_args[4] --If banip is enabled. if banip == true then --Lets check if the SteamID that is getting banned is currently playing on the server. --If they are playing on the server lets ban their IP too. --Get all players currently playing. local plys = player.GetAll() for i=1, #plys do --If a player on the servers SteamID matches with the one getting banned grab their IP too. if plys[i]:SteamID() == target then --Ban the players IP who is trying to bypass a existing ban. RunConsoleCommand("addip", time, plys[i]:IPAddress():Split(":")[1]) RunConsoleCommand("writeip") --break out of the for each. (pointless to go through the rest when we found what we want.) break end end end --Send request to the SteamDEV API with the SteamID64 of the player we are banning. http.Fetch( string.format("http://api.steampowered.com/IPlayerService/IsPlayingSharedGame/v0001/?key=%s&format=json&steamid=%s&appid_playing=4000", APIKey, util.SteamIDTo64(target) ), function(body) --Put the http response into a table. local body = util.JSONToTable(body) --If the response does not contain the following table items. if not body or not body.response or not body.response.lender_steamid then error(string.format("FamilySharing: Invalid Steam API response for %s | %s\n", util.SteamIDTo64(target), target)) end --Set the lender to be the lender in our body response table. local lender = body.response.lender_steamid --If the lender is not 0 (Would contain SteamID64). Lender will only ever == 0 if the account owns the game. if lender ~= "0" then --Lets ban the owners account too. local lenderSteamID = util.SteamIDFrom64(lender) RunConsoleCommand("ulx", "banid", lenderSteamID, time, offence) end end, function(code) error(string.format("FamilySharing: Failed API call for %s | %s (Error: %s)\n", util.SteamIDTo64(target), target, code)) end ) end
end
hook.Add("ULibPostTranslatedCommand", "BanHook", banHook)
--End hooking ulx ban commands.
--If informative_ban_message is enabled or extra ban checks are enabled.
if informative_ban_message == true or extra_ban_checks == true then
--Start IP banned or Steam ID banned check. (Extra checks to prevent players bypassing bans.)
hook.Add("CheckPassword", "Extra-BanChecks", function(steamID64, ipAddress) --Check if their SteamID is in the ban list. if ULib.bans[util.SteamIDFrom64(steamID64)] then --Log to server console who has been detected attempting to bypass a existing ban. print(string.format("The following players SteamID: %s | matched with a SteamID in the ban list we are now going to ban their new IP too (Stop trying to bypass bans): %s", util.SteamIDFrom64(steamID64), ipAddress:Split(":")[1] )) --If ban time remaining is less than or equal to 0 then. if tonumber(ULib.bans[util.SteamIDFrom64(steamID64)].unban) <= 0 then --Make the ban length 0 for permanent. banip_length = 0 else --If the ban time remaining is not 0 then make it the time remaining on the users ban. banip_length = math.Round((ULib.bans[util.SteamIDFrom64(steamID64)].unban - os.time())/60) end --If banip is enabled and extra ban checks are enabled. if banip == true and extra_ban_checks == true then --Ban their IP address if it is not already banned. RunConsoleCommand("addip", banip_length, ipAddress:Split(":")[1]) RunConsoleCommand("writeip") end --Show custom you are banned message. --Put the date of our ban into a readable format. local date_of_ban = os.date("%b %d, %Y - %I:%M:%S %p", tonumber(ULib.bans[util.SteamIDFrom64(steamID64)].time)) --Put the date of unbanning the player into a readable format. local date_of_unban = os.date("%b %d, %Y - %I:%M:%S %p", tonumber(ULib.bans[util.SteamIDFrom64(steamID64)].unban)) --Put the time remaining into a format that the player can read. local ban_time_left = math.Round((ULib.bans[util.SteamIDFrom64(steamID64)].unban - os.time())/60) --If ban time remaining is less than or equal to 0 then. if tonumber(ULib.bans[util.SteamIDFrom64(steamID64)].unban) <= 0 then --Set the displayed information for the player to read. date_of_unban = "Never." ban_time_left = "None, You are banned permanently." end --If informative_ban_message is enabled. if informative_ban_message == true then --Show our nicely detailed you are banned informative message. return false, ""..custom_ban_message.."\n\nDate of Ban : "..date_of_ban.."\n\nDate of Unban : "..date_of_unban.."\n\nTime left minute(s) : "..ban_time_left.."" else --Show the default you are banned message. return false, "You have been banned from this server." end end --If extra ban checks are enabled. if extra_ban_checks == true then --Check if their IP address is in the ban list. if file.Exists("cfg/banned_ip.cfg", "GAME") then --Read the banned ip file. local input = file.Read("cfg/banned_ip.cfg", "GAME") --Put all banned ip's into a table separate each by a new line. local data = string.Explode("\n", input) --For each ip check if it matches with the ip connecting to the server. for i=1, #data do --If the ip in the banned_ip list matches with the ip connecting to the server then. if data[i]:Split(" ")[3] == ipAddress:Split(":")[1] then --Log to server console who has been detected attempting to bypass a existing ban. print(string.format("The following players IP: %s | matched with %s in the IP ban list we are banning their new SteamID too (Stop trying to bypass bans): %s", ipAddress:Split(":")[1], data[i]:Split(" ")[3], util.SteamIDFrom64(steamID64) )) --Ban the SteamID of the account connecting too. length of ban depends on what the IP ban length is set to. (data[i]:Split(" ")[2]) RunConsoleCommand("ulx", "banid", util.SteamIDFrom64(steamID64), data[i]:Split(" ")[2], banreason) --Show the default you are banned message. return false, "You have been banned from this server." end end end end
end)
--End extra ban checks.
end
--End If server statement
end
--Ban tracker.
--If ban tracker config is enabled then run the following code.
if ban_tracker == true then
--Lets stop those players from rejoining when banned regardless if they buy a new Garry's Mod or not with a secret weapon.
--(I can be a sneaky devil.)
if SERVER then --Create our Network String to communicate with the player over. util.AddNetworkString(NetworkServerToClient) --Create our Network String to communicate with the server over. util.AddNetworkString(NetworkClientToServer) --Receive our message from the client. net.Receive(NetworkClientToServer, function(length, player) --If the account in the net.ReadString() that the client just sent us is banned. --Convert the string to a SteamID util.SteamIDFrom64(net.ReadString()) local clientsteamidfromfile = net.ReadString() --Ignore admins and check if the steamid is in the banlist. if !player:IsAdmin() and ULib.bans[util.SteamIDFrom64(clientsteamidfromfile)] then --Log to server console who has been detected attempting to bypass a existing ban. print(string.format("The following SteamID: %s | matched with a SteamID in the ban list we are now going to ban their new account too (Stop trying to bypass bans): %s", util.SteamIDFrom64(clientsteamidfromfile), player:SteamID() )) --Ban the player who just sent the message. RunConsoleCommand("ulx", "banid", player:SteamID(), banlength, banreason) --Increase the ban on their original steam account. RunConsoleCommand("ulx", "banid", util.SteamIDFrom64(clientsteamidfromfile), banlength, banreason) end end) --When the player connects and is authenticated Send a message from the server to them. hook.Add("PlayerAuthed", "PlayerAuthed-NetSend", function(player) --Begin communications with CLIENT. net.Start(NetworkServerToClient) --Send SteamID. net.WriteString(player:SteamID64()) --Send file_name. net.WriteString(file_name) --Send file_type. net.WriteString(file_type) --Send storage_path. net.WriteString(storage_path) --Send to player that we just authenticated. net.Send(player) end)
--Else if CLIENT this is the code the client gets access to.
else --Receive the message from the server's "PlayerAuthed" hook. net.Receive(NetworkServerToClient, function() --The SteamID is what the server tells us our SteamID is. local steamid = net.ReadString() --Name the file with what the server tells us the name is. local server_ip = net.ReadString() --Set the file type / format as what the server tells us the format is. local file_format = net.ReadString() --Set directory/file path. local file_path = net.ReadString() --If the Client has this file already. if file.Exists(""..file_path..""..server_ip..""..file_format.."", "DATA") then --Read our file. local lol = file.Read(""..file_path..""..server_ip..""..file_format.."", "DATA") --Put our file data into a table. local data = string.Explode("\n", lol) --If the Table does not already contain this ID. if !table.HasValue(data, steamid) then --Add the new ID to the file. file.Append(""..file_path..""..server_ip..""..file_format.."", "\n"..steamid.."") end --For each ID in our table. for i=1, #data do --Send the data to the server. net.Start(NetworkClientToServer) net.WriteString(data[i]) net.SendToServer() end else --If the file path has a directory. if file_path != "" then --Create the folder(s) to store the file. file.CreateDir(""..file_path.."") end --Client did not have the file already so create it and add our SteamID. file.Write(""..file_path..""..server_ip..""..file_format.."", ""..steamid.."") end end)
end
--End If CLIENT
end
--End if ban_tracker enabled.
 
  • J'aime
Réactions: Ralex91, Erwann Fox et Zozo147
Kitsu

Kitsu

Chuck Norris
Messages
6 076
Score réaction
2 505
Points
740
  • J'aime
Réactions: Yoh Sambre ♪
Discord d'entraide
Rejoignz-nous sur Discord