Server/Gamemode protection
#1

Are there any possibilities that can protect GM from copy from other scripters? Because my friend work on one project that will be something new in SAMP world, something doesn't seen so far. And he wouldn't want that somebody steals his ideas.

I actually think,maybe authorized rights or something else..

Edit: Explain better what I actually think: Maybe SA:MP team have something authorized rights system and who copy your unique system, he banned from "SAMP world" and his server go down. And to protect your rights(or system), you have to pay for it to SAMP team but a system that is copied must be completely identical.
Reply
#2

This works well against DeAMX.
PHP код:
@___If_u_can_read_this_u_r_nerd(); // 10 different ways to crash DeAMX
@___If_u_can_read_this_u_r_nerd() // and also a nice tag for exported functions table in the AMX file
// by Daniel_Cortez, exclusively for pro-pawn.ru (who cares anyway? -_-)
#emit stack 0x7FFFFFFF // wtf (1) (stack over... overfuck!?)
#emit inc.s cellmax // wtf (2) (this one should probably make DeAMX allocate all available memory and lag forever)
static const ___[][] = {"pro-pawn"".ru"}; // pretty old anti-deamx trick
#emit retn
#emit load.s.pri ___ // wtf (3) (opcode outside of function?)
#emit proc // wtf (4) (if DeAMX hasn't crashed already, it would think it is a new function)
#emit proc // wtf (5) (a function inside of another function!?)
#emit fill cellmax // wtf (6) (fill random memory block with 0xFFFFFFFF)
#emit proc
#emit stack 1 // wtf (7) (compiler usually allocates 4 bytes or 4*N for arrays of N elements)
#emit stor.alt ___ // wtf (8) (...)
#emit strb.i 2 // wtf (9)
#emit switch 4
#emit retn // wtf (10) (no "casetbl" opcodes before retn - invalid switch statement?)
L1:
#emit jump L1 // avoid compiler crash from "#emit switch"
#emit zero cellmin // wtf (11) (nonexistent address)
}
AuthorDaniel_Cortez (http://*******/member.php?100-Daniel_Cortez) 
Reply
#3

Quote:
Originally Posted by Alex1990
Посмотреть сообщение
This works well against DeAMX.
PHP код:
@___If_u_can_read_this_u_r_nerd(); // 10 different ways to crash DeAMX
@___If_u_can_read_this_u_r_nerd() // and also a nice tag for exported functions table in the AMX file
// by Daniel_Cortez, exclusively for pro-pawn.ru (who cares anyway? -_-)
#emit stack 0x7FFFFFFF // wtf (1) (stack over... overfuck!?)
#emit inc.s cellmax // wtf (2) (this one should probably make DeAMX allocate all available memory and lag forever)
static const ___[][] = {"pro-pawn"".ru"}; // pretty old anti-deamx trick
#emit retn
#emit load.s.pri ___ // wtf (3) (opcode outside of function?)
#emit proc // wtf (4) (if DeAMX hasn't crashed already, it would think it is a new function)
#emit proc // wtf (5) (a function inside of another function!?)
#emit fill cellmax // wtf (6) (fill random memory block with 0xFFFFFFFF)
#emit proc
#emit stack 1 // wtf (7) (compiler usually allocates 4 bytes or 4*N for arrays of N elements)
#emit stor.alt ___ // wtf (8) (...)
#emit strb.i 2 // wtf (9)
#emit switch 4
#emit retn // wtf (10) (no "casetbl" opcodes before retn - invalid switch statement?)
L1:
#emit jump L1 // avoid compiler crash from "#emit switch"
#emit zero cellmin // wtf (11) (nonexistent address)
}
AuthorDaniel_Cortez (http://*******/member.php?100-Daniel_Cortez) 
He's talking about copyright etc, not physical protection against his script being stolen lol.
Reply
#4

No such thing as protection. Go with a trusted host, never give someone your passwords or access to the script, and never hire developers off the street that you don't know.

Only way to protect your script from leakers.
Reply
#5

There is nothing that can stop a scripter to copy a server.I have myself copied many scripts :P
Reply
#6

Quote:
Originally Posted by ChromeAmazing
Посмотреть сообщение
No such thing as protection. Go with a trusted host, never give someone your passwords or access to the script, and never hire developers off the street that you don't know.

Only way to protect your script from leakers.
Is anyone even reading the thread before replying
Reply
#7

You can't.
Reply
#8

Well you cant but u can make protection in your gamemode that if someone steals it and uses/runs it, it will close the server
Reply
#9

PHP код:
AntiDeAMX(){
    new 
UAX[][] = { "Unarmed (Fist)""Brass K" };
    
#pragma unused UAX
}
#define FILE_SERVERIP        "127.0.0.1"
#define FILE_SERVERPORT        (7777)
#define FILE_LICENSEID        (20160201)        //01.02.2016
public OnGameModeInit(){ //or OnFilterScriptInit
    
AntiDeAMX();
    
    
    
//IP and PORT check
    
new serverIP[16];
    
GetServerVarAsString("bind",serverIPsizeof serverIP);
    if(
strcmp(serverIP,FILE_SERVERIP,false)!=|| isnull(serverIP)){
        if((
strcmp(serverIP,"127.0.0.1",false)!=0) || (strcmp(serverIP,"localhost",false)!=0) || isnull(serverIP)){
            
//local allow ?
        
} else {
            
//stolen
            
SendRconCommand("exit");
        }
    } else if(
GetServerVarAsInt("port") != FILE_SERVERPORT){
        
        
//stolen
        
SendRconCommand("exit");
    }
    
    
    
//Date Check
    
new tmpdatetmpyeartmpmonthtmpday;
    
getdate(tmpyear,tmpmonth,tmpday);
    
    
tmpdate = (10000*tmpyear)+(100*tmpmonth)+tmpday;
    
    if(
tmpdate FILE_LICENSEID){
        
//license time out
        
SendRconCommand("exit");
    }
    
    return 
1;

Reply
#10

Quote:
Originally Posted by Potassium
Посмотреть сообщение
He's talking about copyright etc, not physical protection against his script being stoled lol.
Quote:
Originally Posted by Potassium
Посмотреть сообщение
Is anyone even reading the thread before replying
I give you reputation for this comment. (Y)

@AbyssMorgan
I know what you mean, but that isn't problem, read theard.

Explain better what I actually think: Maybe SA:MP team have something authorized rights system and who copy your unique system, he banned from "SAMP world" and his server go down. And to protect your rights(or system), you have to pay for it to SAMP team but a system that is copied must be completely identical.
Reply


Forum Jump:


Users browsing this thread: