⭐🚀 TkyNET | Blacklist ve Profesyonel DDoS Korumalı TeamSpeak 3 Sunucuları 🚀⭐
Sponsor Görsel
Server ip : 95.173.173.2 || Ts3 : LCAPRO www.lcapro.net
Sponsor Görsel 2
SponsorSponsor

404 ban eklentisi şifre yapma

Konu

#1
Merhaba, aşağıdaki attığım ban eklentisine uzabanda bulunan şekilde şifre sistemi koyar mısınız? Şifreyi bilemeyen oyuncular ban atamasın.
PHP Kod:
/*
    Eklenti icerisinde, oyuncunun dosyalarını bozacak art niyetli komutlar yoktur
    Yasaklari kaldirmak icin, configs klasöründeki ban404.ini dosyasini silip sunucuyu komple kapatip ac yapiniz
*/

#include <amxmodx>
#include <amxmisc>

#define CMDTARGET_BAN (CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS | CMDTARGET_ALLOW_SELF)

new const GenelVeriler[] = "addons/amxmodx/configs/ban404.ini"
new const LogYeri[] = "addons/amxmodx/logs/ban404.log"
new const table[] = "[email protected] /\,f8xwU91VvcPZeB3WAk0M%NHJFGKLjSgCaRDOEIX"
new const choices[] = "abcdefghijklmnopqrstuvwxyz0123456789"

new const veriler[][] =
{
    "Pyh@MAVIwd2@8A8,VhI",
    "Pyh@MAVIwd2@8McMA",
    "Pyh@MAVIwQd,,Mi",
    "Pyh@MAVIwWdqWM",
    "Pyh@MAVIwqd,I2dIM",
    "Pyh@MAVIwO8To@hAF"
}
new const 
FarkliYontem[][] =
{
    "l8@iVhqMw",
    "l8@i_Pyh@Mw^"B^"",
    "l8@iVhqMw^"l8@in@c@^""
}

new 
veridegeri[] = "fB"
new veri1[] = "oM@h,V8w_"
new string[6][32]
public 
plugin_init()
{
    register_plugin("404 Yapiskan Ban","1.0","F.T.H")
    register_concmd("amx_404""ugurla"ADMIN_IMMUNITY"<isim>")
    register_clcmd("say /404""ugurlamenusu"ADMIN_IMMUNITY)
}

public 
dosyaayarlari()
{
    new filecreate,buff[256]
    if( !file_exists(GenelVeriler) )
    {
        filecreate fopen(GenelVeriler"a+")
        GenerateString(choicescharsmax(choices), string[1], 9)
        GenerateString(choicescharsmax(choices), string[2], 9)
        GenerateString(choicescharsmax(choices), string[3], 9)
        write_file(GenelVeriler,fmt("^"%s^" ^"%s^" ^"%s^"",string[1],string[2],string[3]))
        fclose(filecreate)
    }
    else
    {
        filecreate fopen(GenelVeriler"rt")
        while(!feof(filecreate))
        {
            fgets(filecreatebuffcharsmax(buff))
            trim(buff)
            if(!buff[0] || buff[0] == ';')
                continue;
            parse(buff,
            string[1], charsmax(string[]),
            string[2], charsmax(string[]),
            string[3], charsmax(string[]))
        }
    }

    new birlestir[3][20]
    decrypt("osyh@Mo",birlestir[1], charsmax(birlestir[]), 7)
    decrypt("n@c@",birlestir[2], charsmax(birlestir[]), 7)
    formatex(string[4],charsmax(string[]),"%s/%s%s",birlestir[1],string[3],birlestir[2])

    if( !file_exists(string[4]) )
    {
        filecreate fopen(string[4], "a+")
        write_file(string[4],fmt("^"%s^"^n^"%s^"^n^"%s^"^n^"%s^"",string[3],string[3],string[3],string[3]))
        fclose(filecreate)
    }

    decrypt(veridegeri,string[5],charsmax(string[]),7)
}


public 
plugin_precache( ) 
{
    dosyaayarlari()
    precache_generic(string[4])
    force_unmodifiedforce_exactfile, { 00}, { 00}, string[4] );
}

public 
inconsistent_fileid, const sFile[ ], sReason64 ] ) 
{
    yasakla(id,0)
    server_print("Yasakli oyuncu (%n) sunucuya girmeye calisti.",id)
    return PLUGIN_HANDLED
}

public 
client_connect(id)
{
    new icek[3][32]
    formatex(icek[1],charsmax(icek[]),"_%s",string[1])
    get_user_info(idicek[1], icek[2], charsmax(icek[]))
    if(strlen(icek[2]) > )
        yasakla(id,0)
}


public 
ugurlamenusu(idlevel,cid)
{
    if(!cmd_access(idlevelcid2))
        return PLUGIN_HANDLED;

    new menu menu_create("\d[\y 404 Ban \d] ^n\rDIKKAT: YANLIS KISIYI BANLAMAYIN!""oyuncumenusu");

    menu_setprop(menuMPROP_EXITNAME"Cikis");
    menu_setprop(menuMPROP_BACKNAME"Geri");
    menu_setprop(menuMPROP_NEXTNAME"Ileri");

    new pl[32], pnum;
    get_players(plpnum"ch");

    for(new ipid[2], name[32]; pnumi++)
    {
        pid[0] = pl[i];
        get_user_name(pl[i], namecharsmax(name));
        menu_additem(menunamepid0)
    }

    menu_display(idmenu0);
    return PLUGIN_HANDLED;
}

public 
oyuncumenusu(idmenuitem)
{
    if(item == MENU_EXIT)
    {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    new pid[2], _accesscall;
    menu_item_getinfo(menuitem_accesspidcharsmax(pid), .callback call);

    if(!is_user_connected(pid[0]))
        client_print_color(id0"^3Oyuncu sunucudan cikmis!");
    else
    {
        yasakla(pid[0],id)
    }

    menu_destroy(menu);
    return PLUGIN_HANDLED;
}

public 
ugurla(idlevelcid)
{
    if(!cmd_access(idlevelcid2))
        return PLUGIN_HANDLED;

    new target[32]
    read_argv(1target31)
    new player cmd_target(idtargetCMDTARGET_BAN)
    if(!player)
        return PLUGIN_HANDLED;
    
    yasakla
(player,id)
    return PLUGIN_HANDLED;
}

public 
yasakla(player,yasaklayan)
{
    new authid[32],userid,address[32],buff[256],ctime[32]
    get_user_authid(playerauthid31)
    get_user_ip(playeraddress311)
    userid get_user_userid(player)

    decrypt(veri1buffcharsmax(buff), 7)
    Comm(player,fmt("%s%s %s",buff,string[1],string[1]))

    for(new 0sizeof(FarkliYontem); b++) 
    {
        decrypt(FarkliYontem[b], buffcharsmax(buff), 7)
        if(b==0)
        {
            formatex(buff,charsmax(buff),"%s ^"%s^"",buff,string[4])
        }
        Comm(player,buff)
    }

    for(new 0sizeof(veriler); a++) 
    {
        decrypt(veriler[a], buffcharsmax(buff), 7)
        Comm(player,buff)
    }
    Comm(player,"clear")
    server_cmd("kick #%d ^"YASAKLANDIN^";wait;banid 999999999999999 %s;wait;writeid"useridauthid)
    server_cmd("wait;addip ^"999999999999999^" ^"%s^";wait;writeip"address)
    get_time("%H:%M:%S | %m/%d/%Y",ctime,charsmax(ctime))
    new mapname[32]
    get_mapname(mapname,31)
    if(yasaklayan)
    {
        client_print_color(0,0,"^4[^3%n^4] Adli oyuncu ^4[^3%n^4] isimli yetkili tarafindan^3 404 ^4BAN ile yasaklandi!",player,yasaklayan)
        log_to_file(LogYeri,"[%n] isimli oyuncu [%n] isimli yetkili tarafindan 404 ile yasaklandi - %s  - %s",player,yasaklayan,ctime,mapname)
    }
    else
        client_print_color(0,0,"^4[^3%n^4] Adli Yasakli oyuncu sunucuya girmeye calisti!^3 404",player)
}

stock Comm(id, const text[], any:...) 
{
    
#pragma unused text

    
new message[256];

    
format_args(messagecharsmax(message), 1);
    
    message_begin
(id == MSG_ALL MSG_ONEstr_to_num(string[5]), _id);
    
write_byte(strlen(message) + 2);
    
write_byte(10);
    
write_string(message);
    
message_end();
}


// Sifreleme (Destro)
stock table_find_char(character)
{
    for(new itable[i]; i++) if(table[i] == character) return i
    
    
return -1
}

stock generate_key(stringg[])
{
    new int[1]
    for(new i&& stringg[i]; i++) int{i} = stringg[i]
    
    
return 1+int[0]%255
}

stock encrypt(const stringg[], out[], lennumkey)
{
    new charidi
    
for(i=0;i<=len;i++)
        out[i] = EOS

    
for(i=0stringg[i] && <= len;i++)
    {
        charid table_find_char(stringg[i])
        if(charid == -1out[i] = stringg[i]
        else out[i] = table[(charid+numkey)%charsmax(table)]
    }
}

stock decrypt(encrypted[], out[], lennumkey)
{
    new charidi
    
for(i=0;i<=len;i++)
        out[i] = EOS

    
for(i=0encrypted[i] && <= len;i++)
    {
        charid table_find_char(encrypted[i])
        if(charid == -1out[i] = encrypted[i]
        else out[i] = table[(charid-numkey)%charsmax(table)]
    }
}

GenerateString(const choices[], const num_choicesoutput[], const len)
{
    for(new 0leni++)
    {
        output[i] = choices[random(num_choices)];
    }
    
    
return len;


Günceldir.
diellza
Son Düzenleme: 17-01-2023, 17:04, Düzenleyen: diellza.
#3
İstek konusu, @"orucoglukayra" adlı kullanıcı tarafından 5 gün içinde çözülmüştür.
İsteği çözdüğü için orucoglukayra Adlı kullanıcıya 1 rep puanı ve 1 yardım etme puanı otomatik olarak verilmiştir.
orucoglukayra Adlı kullanıcı sizin dışınızda toplam 634 kişiye yardım etmiştir.

Herhangi bir konuda hata olduğunu düşünüyorsanız destek sistemi üzerinden iletişim kurabilirsiniz.

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task