[Include] Proxy Detector - UserFriendly, Stable. (Originaly by Gnikllort)
#1

Proxy Detector

(Last Updated: 2018/01/07 03:17PM)
Hello,

What is this?


This is an include that offers to you a full proxy detection.

What the difference between this and this?

This include give you more advantages like checking toggling the kick feature and also an external callback to use as you wish! nothing controlled and improved the rapidity and stability a bit.

What are the functions/Callbacks?

PHP код:
    Functions:
        - 
bool:IsPlayerUsingProxy(playerid)
        - 
ProxyDetectKick(bool:toggle) (Default use under OnGameModeInit)
    
Callback:
        - 
OnPlayerProxyCheck(playeridbool:proxy
Download

Credits:

Author: Gnikllort
Rewritten by: Xeon
Reply
#2

Well first off its good seeing you release since i haven't seen you release anything since i came here lol so +rep to you but come on guys this will not detect all vpns, isn't the concept based on ip tables? this can't contain all vpns and to me, the only use for this IF IT DOES detect all vpns (which is in my honest opinion wont happen) would only be used to just see who is using a vpn to keep an eye on him, but that is detectable through high ping players.
Reply
#3

Quote:
Originally Posted by RogueDrifter
Посмотреть сообщение
Well first off its good seeing you release since i haven't seen you release anything since i came here lol so +rep to you but come on guys this will not detect all vpns, isn't the concept based on ip tables? this can't contain all vpns and to me, the only use for this IF IT DOES detect all vpns (which is in my honest opinion wont happen) would only be used to just see who is using a vpn to keep an eye on him, but that is detectable through high ping players.
Yes, I know that.

this is why in this include the auto kick is togglable (ProxyDetectKick & IsPlayerUsingProxy function).

I let the user choose since it's not a big deal.

and thanks, its been a long time since last release.
Reply
#4

Do u know shroomery.org ain't working anymore? You could check original thread and see that.
Reply
#5

http://check.getipintel.net/check.ph...ssHere&flags=m

this returns 1 or 0

or

https://proxycheck.io/api/

Get your api key and get precise information
Reply
#6

PHP код:
        if(ProxyAutoKick)
        {
            new 
string[89];
            
GetPlayerName(playeridstringsizeof(string));
            
format(stringsizeof(string), "[Proxy Detector]: %s (%d) has been kicked for using a vpn/proxy."stringplayerid);
            
SendClientMessageToAll(0xFF0000FFstring);
        } 
Only saying player is kicked but actually not kicking.

PHP код:
default: return printf("The request failed! The response code was: %d"response_code); 
response_code is always 200 there.

@gurmani11, these sites have limits on requests :O

@iLearner, it works only moved on new domain http://proxy.mind-media.com/block/pr...?ip=ipgoeshere

Giving 3 stars due to scripting mistakes :-p
Reply
#7

Nice.

Also, you can use:
static bool:IsUsingProxy[MAX_PLAYERS] = {false, ...}; // Set all index to false

Instead of creating a loop in OnGameModeInit
Reply
#8

Oh, sorry didn't pay attention to those little parts.

Fixed! updated.

- Domain updated.
- bool: tag added to IsUsingProxy
- Kick is now working!

Thank you everyone!
Reply
#9

Good job @Xeon :3
sume reps fur yu :-v
Reply
#10

Uhm... i decided to try and compile this and...
Код:
(5349) : error 017: undefined symbol "IsUsingProxy"
(5349) warning 215: expression has no effect
(5349) : error 001: expected token: ";", but found "]" 
(5349) : error 029: invalid expression, assumed zero
(5349) : fatal error 107: too many error messages on one line
Line:
PHP код:
if(IsPlayerUsingProxy(playerid)) format(pbstring,sizeof(pbstring,".: %s Is on a proxy:.",idname); 
Did anyone even try to use this yet?
EDIT: i included the include, just to clear out doubts about that, can you check this out xeon?
Reply
#11

Good job mate.
Reply
#12

Skimmed through this, one thing that caught my eye:
Quote:

new ip[16];
GetPlayerIp(playerid, ip, sizeof(ip));
if(strcmp(ip, "127.0.0.1", true) == 0) return 1;

Why check this in the HTTP response, when you're already getting their IP address within OnPlayerConnect? Also I'd suggest making some more things more dynamic, the delay kick for example. Something such as:

Код:
SetTimerEx(...PROXY_KICK_DELAY,...

#if !defined PROXY_KICK_DELAY
     #define PROXY_KICK_DELAY (1000)
#endif
You should also prefix the function, something such as "PROXY_DelayedKick" to avoid potential script conflicts.
Reply
#13

Quote:
Originally Posted by RogueDrifter
Посмотреть сообщение
Uhm... i decided to try and compile this and...
Код:
(5349) : error 017: undefined symbol "IsUsingProxy"
(5349) warning 215: expression has no effect
(5349) : error 001: expected token: ";", but found "]" 
(5349) : error 029: invalid expression, assumed zero
(5349) : fatal error 107: too many error messages on one line
Line:
PHP код:
if(IsPlayerUsingProxy(playerid)) format(pbstring,sizeof(pbstring,".: %s Is on a proxy:.",idname); 
Did anyone even try to use this yet?
EDIT: i included the include, just to clear out doubts about that, can you check this out xeon?
Fixed that, updated.

Now, everything must be fine!

@Abagail: removed since someone proved that playerip param in OnPlayerProxyCheck is useless, and thanks for your reply, I did edit that.

thanks! this include reached 1,5K views in less than 48 hours I'm so excited!
Reply
#14

PHP код:
bool:IsUsingProxy[MAX_PLAYERS
Char-array!


PHP код:
    if(proxy)
    {
        if(
ProxyAutoKick)
        { 
Could've been one-statement... Anyways, good work.
Reply
#15

Quote:
Originally Posted by Logic_
Посмотреть сообщение
PHP код:
bool:IsUsingProxy[MAX_PLAYERS
Char-array!


PHP код:
    if(proxy)
    {
        if(
ProxyAutoKick)
        { 
Could've been one-statement... Anyways, good work.
Done and done! thank you.

The script is now very stable.
Reply
#16

IsUsingProxy's value is never changed to true...
Reply
#17

You changed "IsUsingProxy" array to char-array, you need to switch [] for brackets {}, example:

IsUsingProxy{playerid} = true/false;

Read about char array, by Slice: https://sampforum.blast.hk/showthread.php?tid=216730
Reply
#18

Update:

Fixed all the previous bugs.
Reply
#19

All of your releases get fixed by posters lul
Reply
#20

Quote:
Originally Posted by iLearner
Посмотреть сообщение
All of your releases get fixed by posters lul
Think before shitposting, all these guys were like a 'beta testers' and reported the possible bug or example for the code improvement.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)