1. sayfa (Toplam 3 sayfa)

Oto Steam id kick

Gönderilme zamanı: Pzt Mar 29, 2021 9:28 pm
gönderen xMaster25
cs 1.6 serverim için steam id ban yerine oto bir şekilde log dosyası üzerinden çalışacak bir steam id kick plugini arıyorum

Oto Steam id kick

Gönderilme zamanı: Pzt Mar 29, 2021 9:51 pm
gönderen Colditz
Tam olarak amacı ne?

Oto Steam id kick

Gönderilme zamanı: Pzt Mar 29, 2021 10:35 pm
gönderen xMaster25
Colditz yazdı: Pzt Mar 29, 2021 9:51 pm Tam olarak amacı ne?
bir serverda görmüştüm steam id ban atmak yerine bir log dosyasi üzerinden kayıtlı olan steam id leri servera sokmuyordu böyle bir plugin di.
aradıgım pluginde log dosyasına steam id oyun chatinden bir komutla eklenebilsin

mesela /*****ban nick yazdıgımda nick yerinde yazan nick'e sahip olan kullanıcının steam id'si o log dosyasına eklenebilsin

Log Dosyasında da "Nick STEAM_0:4565155151 192.168.1.1 29/03/2021 12:00" şeklinde olan bir plugin olursa güzel olur

Oto Steam id kick

Gönderilme zamanı: Sal Mar 30, 2021 5:31 am
gönderen Colditz
Denemedim, test etmeden kullanmayın.

Kod: Tümünü seç

#pragma semicolon 1

#include <amxmodx>
#include <amxmisc>

new const g_szFileName[] = "addons/amxmodx/logs/authidbans.ini";

public plugin_init() {
    register_plugin("AuthID-IP Permanent Ban", "0.0.1", "PurposeLess");

    register_concmd("amx_apban", "@concmd_authidban", ADMIN_BAN|ADMIN_BAN_TEMP, "<name or #userid>");
}

public client_authorized(pPlayer, const szAuthid[]) {
    new szIP[MAX_IP_LENGTH];
    get_user_ip(pPlayer, szIP, charsmax(szIP), 1);

    if(ReadFile(szAuthid, szIP)) {
        server_cmd("kick #%d ^"Sunucudan kalici olarak yasaklandin!", get_user_userid(pPlayer));
    }
}

@concmd_authidban(pPlayer, iLevel, iCid) {
    if(!cmd_access(pPlayer, iLevel, iCid, 2)) {
        return PLUGIN_HANDLED;
    }

    new szTarget[32];
    read_argv(1, szTarget, charsmax(szTarget));

    new pTarget = cmd_target(pPlayer, szTarget, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS | CMDTARGET_ALLOW_SELF);

    if(!pTarget) {
        return PLUGIN_HANDLED;
    }

    Write_File(pPlayer, pTarget);

    server_cmd("kick #%d ^"Sunucudan kalici olarak yasaklandin!", get_user_userid(pTarget));

    client_print_color(0, print_team_red, "^3Admin ^4%n^1, ^3%n ^1adli oyuncuyu ^4kalici yasakladi!", pPlayer, pTarget);
    return PLUGIN_HANDLED;
}

Write_File(const pPlayer, const pTarget) {
    new iFile = fopen(g_szFileName, "a+");

    if(iFile) {
        new szAuthid[MAX_AUTHID_LENGTH], szIP[MAX_IP_LENGTH], szDate[20];
        get_user_authid(pTarget, szAuthid, charsmax(szAuthid));
        get_user_ip(pTarget, szIP, charsmax(szIP), 1);
        get_time("%m/%d/%Y - %H:%M", szDate, charsmax(szDate));

        fprintf(iFile, "[%n][%s][%s][%s] -> Banlayan admin %n", pTarget, szAuthid, szIP, szDate, pPlayer);
        fclose(iFile);
    }
}

bool:ReadFile(const szgAuthid[], const szgIP[]) {
    new iFile = fopen(g_szFileName, "r");

    if(iFile) {
        new szBuffer[MAX_FMT_LENGTH], szName[MAX_NAME_LENGTH], szAuthid[MAX_AUTHID_LENGTH], szIP[MAX_IP_LENGTH];

        while(fgets(iFile, szBuffer, charsmax(szBuffer))) {
            trim(szBuffer);

            if(szBuffer[0] == EOS || szBuffer[0] == ';') {
                continue;
            }

            parse(szBuffer, szName, charsmax(szName), szAuthid, charsmax(szAuthid), szIP, charsmax(szIP));

            if(equali(szgAuthid, szAuthid) || equali(szgIP, szIP)) {
                fclose(iFile);
                return true;
            }
        }
        fclose(iFile);
    }

    return false;
}

Oto Steam id kick

Gönderilme zamanı: Sal Mar 30, 2021 10:22 pm
gönderen xMaster25
Colditz yazdı: Sal Mar 30, 2021 5:31 am Denemedim, test etmeden kullanmayın.

Kod: Tümünü seç

#pragma semicolon 1

#include <amxmodx>
#include <amxmisc>

new const g_szFileName[] = "addons/amxmodx/logs/authidbans.ini";

public plugin_init() {
    register_plugin("AuthID-IP Permanent Ban", "0.0.1", "PurposeLess");

    register_concmd("amx_apban", "@concmd_authidban", ADMIN_BAN|ADMIN_BAN_TEMP, "<name or #userid>");
}

public client_authorized(pPlayer, const szAuthid[]) {
    new szIP[MAX_IP_LENGTH];
    get_user_ip(pPlayer, szIP, charsmax(szIP), 1);

    if(ReadFile(szAuthid, szIP)) {
        server_cmd("kick #%d ^"Sunucudan kalici olarak yasaklandin!", get_user_userid(pPlayer));
    }
}

@concmd_authidban(pPlayer, iLevel, iCid) {
    if(!cmd_access(pPlayer, iLevel, iCid, 2)) {
        return PLUGIN_HANDLED;
    }

    new szTarget[32];
    read_argv(1, szTarget, charsmax(szTarget));

    new pTarget = cmd_target(pPlayer, szTarget, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS | CMDTARGET_ALLOW_SELF);

    if(!pTarget) {
        return PLUGIN_HANDLED;
    }

    Write_File(pPlayer, pTarget);

    server_cmd("kick #%d ^"Sunucudan kalici olarak yasaklandin!", get_user_userid(pTarget));

    client_print_color(0, print_team_red, "^3Admin ^4%n^1, ^3%n ^1adli oyuncuyu ^4kalici yasakladi!", pPlayer, pTarget);
    return PLUGIN_HANDLED;
}

Write_File(const pPlayer, const pTarget) {
    new iFile = fopen(g_szFileName, "a+");

    if(iFile) {
        new szAuthid[MAX_AUTHID_LENGTH], szIP[MAX_IP_LENGTH], szDate[20];
        get_user_authid(pTarget, szAuthid, charsmax(szAuthid));
        get_user_ip(pTarget, szIP, charsmax(szIP), 1);
        get_time("%m/%d/%Y - %H:%M", szDate, charsmax(szDate));

        fprintf(iFile, "[%n][%s][%s][%s] -> Banlayan admin %n", pTarget, szAuthid, szIP, szDate, pPlayer);
        fclose(iFile);
    }
}

bool:ReadFile(const szgAuthid[], const szgIP[]) {
    new iFile = fopen(g_szFileName, "r");

    if(iFile) {
        new szBuffer[MAX_FMT_LENGTH], szName[MAX_NAME_LENGTH], szAuthid[MAX_AUTHID_LENGTH], szIP[MAX_IP_LENGTH];

        while(fgets(iFile, szBuffer, charsmax(szBuffer))) {
            trim(szBuffer);

            if(szBuffer[0] == EOS || szBuffer[0] == ';') {
                continue;
            }

            parse(szBuffer, szName, charsmax(szName), szAuthid, charsmax(szAuthid), szIP, charsmax(szIP));

            if(equali(szgAuthid, szAuthid) || equali(szgIP, szIP)) {
                fclose(iFile);
                return true;
            }
        }
        fclose(iFile);
    }

    return false;
}
Test Ettim fakat plugini çalıştıramadım kod icindeki amx_apban komutunu kullandım olmadı bunun saydan calısması icin ne yapabilirim ?

Oto Steam id kick

Gönderilme zamanı: Çrş Nis 28, 2021 6:43 pm
gönderen xMaster25
Yardım edebilecek kimse yokmu :D

Oto Steam id kick

Gönderilme zamanı: Çrş Nis 28, 2021 6:53 pm
gönderen bestcore
xMaster25 yazdı: Çrş Nis 28, 2021 6:43 pm Yardım edebilecek kimse yokmu :D
Yukarıda eklentide nasıl bir sorun var ? Eklentiyi aktif ettiniz mi ? Konsola "amx_apban oyuncu" şeklinde girdiğinizde bir hata veriyor mu ? ( Hatadan kastım Unknown Command gibi.) ? Eğer böyle bir hata alıyorsanız konsola "amx_plugins" yazıp çıktıyı buraya "code" şeklinde atar mısınız ?

Oto Steam id kick

Gönderilme zamanı: Çrş Nis 28, 2021 7:08 pm
gönderen tekbirlik
Sadece o nicke sahip olan kişileri kicklemiyor değil mi ? Yani steam id'nin de eşleşmesi gerek. Ve kicklediğinde ki uyarıyı aşağıdaki şekilde yapabilir
miyiz?

Kod: Tümünü seç

Selected Gaming sunucularından hile, küfür, saygısızlık veya taşkınlık sebeplerinden birinin dolayısıyla yasaklısınız!
"amx_apban oyuncu" yazan adminin kayıdı tutulabilir mi .ini dosyası şeklinde?

Oto Steam id kick

Gönderilme zamanı: Çrş Nis 28, 2021 7:12 pm
gönderen bestcore
tekbirlik yazdı: Çrş Nis 28, 2021 7:08 pm Sadece o nicke sahip olan kişileri kicklemiyor değil mi ? Yani steam id'nin de eşleşmesi gerek. Ve kicklediğinde ki uyarıyı aşağıdaki şekilde yapabilir
miyiz?

Kod: Tümünü seç

Selected Gaming sunucularından hile, küfür, saygısızlık veya taşkınlık sebeplerinden birinin dolayısıyla yasaklısınız!
"amx_apban oyuncu" yazan adminin kayıdı tutulabilir mi .ini dosyası şeklinde?
Evet oyuncunun steamid'si doğrulanması gerekiyor, kiclediğindeki uyarıyı "Satır 19"'dan düzenleyebilirsiniz, ek olarak "addons/amxmodx/logs/authidbans.ini" burada banlayan adminlerin kayıtları zaten tutuluyor.

Oto Steam id kick

Gönderilme zamanı: Çrş Nis 28, 2021 7:14 pm
gönderen tekbirlik
Çok teşekkür ederim, eklentiyi iftardan sonra bir deneyip dönüş yapacağım. Sağolun ilginiz ve alakanız için efendim.