Автоматично издаване на флаг по IP

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1357
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 275 пъти
Получена благодарност: 44 пъти

Re: Автоматично издаване на флаг по IP

Мнение от cgozzie » 10 Юни 2024, 14:52

ExT!n^T!0n написа: 10 Юни 2024, 14:48 Всичко точно ли е сега?

Не знам как това ти се вижда разумно но всеки играч които е с стеам и влезе в сървъра ще получи бан права!
Аз правата ги промених на флаг t исках само да потвърдиш че само стийм ще го получат..

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <fvault>

new const g_szVault[] = "flagH_players.txt";
new const g_Flag[] = "t";

new szData[254];
new szName[MAX_PLAYERS + 1][MAX_PLAYERS +1];
new szAuthID[MAX_PLAYERS + 1][MAX_PLAYERS +1], ip[16];

new g_keys[64][32];
new g_numKeys;

public plugin_init()
{
    register_plugin("Flag Defender", "1.0", "ExT!n@T!0n");
    register_clcmd("say /show", "show_flags");
}

public client_putinserver(id)
{
    if (get_user_flags(id) & read_flags(g_Flag)) return;

    get_user_authid(id, szAuthID[id], charsmax(szAuthID[]));

    if (szAuthID[id][0] == 'S' && szAuthID[id][1] == 'T' && szAuthID[id][2] == 'E' && szAuthID[id][3] == 'A' && szAuthID[id][4] == 'M')
    {
        get_user_name(id, szName[id], charsmax(szName[]));
        get_user_ip(id, ip, charsmax(ip), 1);

        formatex(szData, charsmax(szData), "AuthID: %s | IP: %s | Added flag: %s", szAuthID[id], ip, g_Flag);
        fvault_set_data(g_szVault, szName[id], szData);

        copy(g_keys[g_numKeys++], charsmax(g_keys[]), szName[id]);

        set_user_flags(id, get_user_flags(id) | read_flags(g_Flag));
    }
}

public show_flags(id)
{
    if (get_user_flags(id) & ADMIN_KICK) return;

    new szPlayers[1024];
    new iLen = 0;

    formatex(szPlayers, charsmax(szPlayers), "<body style='background-color: #191C24; color: #fff; font-size: 13px; font-family: Verdana'>");
    iLen += strlen(szPlayers);

    new szKey[32], szValue[254];
    for (new i = 0; i < g_numKeys; i++)
    {
        copy(szKey, charsmax(szKey), g_keys[i]);
        fvault_get_data(g_szVault, szKey, szValue, charsmax(szValue));

        new AuthID[32];
        new IP[16];
        parse(szValue, AuthID, charsmax(AuthID), IP, charsmax(IP), g_Flag, charsmax(g_Flag));

        iLen += formatex(szPlayers[iLen], charsmax(szPlayers) - iLen, "<div style='display: block; padding: 10px;'>%s | %s | IP: %s | Added Flag [ADMIN_LEVEL_H]</div>", szKey, IP, ip);
    }

    formatex(szPlayers[iLen], charsmax(szPlayers) - iLen, "</body>");
    show_motd(id, szPlayers, "Flagged Players");
Изображение

Аватар
ByteWizard
На линия
Модератор
Модератор
Мнения: 251
Регистриран на: 04 Юни 2022, 21:18
Се отблагодари: 24 пъти
Получена благодарност: 96 пъти

Re: Автоматично издаване на флаг по IP

Мнение от ByteWizard » 10 Юни 2024, 15:02

Да, най-лесно можеш да провериш като прегледаш статистиката с командата /show. Ако има някой, на когото Steam не се вижда, но никът му е там, тогава плъгинът не работи добре. Ако всички са със Steam, значи работи.
Изображение

Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1357
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 275 пъти
Получена благодарност: 44 пъти

Re: Автоматично издаване на флаг по IP

Мнение от cgozzie » 10 Юни 2024, 15:09

ExT!n^T!0n написа: 10 Юни 2024, 15:02 Да, най-лесно можеш да провериш като прегледаш статистиката с командата /show. Ако има някой, на когото Steam не се вижда, но никът му е там, тогава плъгинът не работи добре. Ако всички са със Steam, значи работи.
Аз съм с Steam отварям мотд виждам се ще гледам с други играчи които не са стийм значи не би трябвало да са в мотд ли така ли да го разбирам или всички ще ми излизат няма значение кой с къв клиент е..

"Bogdanovic" "AuthID: STEAM_1:0:987895377 | IP: 178.221.182.8 | Added flag: t" 1718019427
"milan tata kantera" "AuthID: STEAM_1:0:384500935 | IP: 46.17.151.41 | Added flag: t" 1718019529
Последно промяна от cgozzie на 10 Юни 2024, 15:13, променено общо 1 път.
Изображение

Аватар
ByteWizard
На линия
Модератор
Модератор
Мнения: 251
Регистриран на: 04 Юни 2022, 21:18
Се отблагодари: 24 пъти
Получена благодарност: 96 пъти

Re: Автоматично издаване на флаг по IP

Мнение от ByteWizard » 10 Юни 2024, 15:13

Би трябвало само стем играчите да се записват, ако някой се е записал които не е стеам знаеш че не е или просто в файла стеам липства значи не работи ..
Изображение

Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1357
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 275 пъти
Получена благодарност: 44 пъти

Re: Автоматично издаване на флаг по IP

Мнение от cgozzie » 10 Юни 2024, 15:14

ExT!n^T!0n написа: 10 Юни 2024, 15:13 Би трябвало само стем играчите да се записват, ако някой се е записал които не е стеам знаеш че не е или просто в файла стеам липства значи не работи ..
Тук некви 2-ма са записани но не знам с стийм ли са били или не са..

"Bogdanovic" "AuthID: STEAM_1:0:987895377 | IP: 178.221.182.8 | Added flag: t" 1718019427
"milan tata kantera" "AuthID: STEAM_1:0:384500935 | IP: 46.17.151.41 | Added flag: t" 1718019529
Изображение

Аватар
ByteWizard
На линия
Модератор
Модератор
Мнения: 251
Регистриран на: 04 Юни 2022, 21:18
Се отблагодари: 24 пъти
Получена благодарност: 96 пъти

Re: Автоматично издаване на флаг по IP

Мнение от ByteWizard » 10 Юни 2024, 15:33

Изглежда, че са
Изображение

Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1357
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 275 пъти
Получена благодарност: 44 пъти

Re: Автоматично издаване на флаг по IP

Мнение от cgozzie » 10 Юни 2024, 15:44

ExT!n^T!0n написа: 10 Юни 2024, 15:33 Изглежда, че са
Сега проверих с 3-те ми цс-са имам стийм гсклиент и стария ревему 47/48 протокол лошо дава на всички флага а тук се стремим да е само на стийм..
Изображение

Аватар
ByteWizard
На линия
Модератор
Модератор
Мнения: 251
Регистриран на: 04 Юни 2022, 21:18
Се отблагодари: 24 пъти
Получена благодарност: 96 пъти

Re: Автоматично издаване на флаг по IP

Мнение от ByteWizard » 10 Юни 2024, 17:11

Пробвай така добавил съм различен метод за прихващане на стийм, пробвай и чат командата /show

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <fvault>

new const g_szVault[] = "flagD_players.txt";
new const g_Flag[] = "d";

new szData[254];
new szName[MAX_PLAYERS + 1][MAX_PLAYERS +1];
new szAuthID[MAX_PLAYERS + 1][MAX_PLAYERS +1], ip[16];

new g_keys[64][32];
new g_numKeys;

public plugin_init()
{
    register_plugin("Flag Defender", "1.0", "ExT!n@T!0n");
    register_clcmd("say /show", "show_flags");
}

public show_flags(id)
{
    if (get_user_flags(id) & ADMIN_KICK) return;

    new szPlayers[1024];
    new iLen = 0;

    formatex(szPlayers, charsmax(szPlayers), "<body style='background-color: #2a3338'><head><style> .stat {border: 1px solid #333; font-size: 12px; font-family: Verdana; color: #FFFFFF; padding-bottom: 5px; } </style></head>");
    iLen += strlen(szPlayers);

    new szKey[32], szValue[254];
    for (new i = 0; i < g_numKeys; i++)
    {
        copy(szKey, charsmax(szKey), g_keys[i]);
        fvault_get_data(g_szVault, szKey, szValue, charsmax(szValue));

        new AuthID[32];
        new IP[16];

        parse(szValue, AuthID, charsmax(AuthID), IP, charsmax(IP));

        iLen += formatex(szPlayers[iLen], charsmax(szPlayers) - iLen, "<div class='stat'>%s | %s | IP: %s | Added Flag [%s]</div>", szKey, IP, ip, g_Flag);
    }

    formatex(szPlayers[iLen], charsmax(szPlayers) - iLen, "</body>");
    show_motd(id, szPlayers, "Flagged Players");
}


public client_authorized(id) 
{
    if (get_user_flags(id) & read_flags(g_Flag)) return;

    if (is_valid_steam_id(id)) 
    {
        get_user_authid(id, szAuthID[id], charsmax(szAuthID[]));
        get_user_name(id, szName[id], charsmax(szName[]));
        get_user_ip(id, ip, charsmax(ip), 1);

        formatex(szData, charsmax(szData), "AuthID: %s | IP: %s | Added flag: %s", szAuthID[id], ip, g_Flag);
        fvault_set_data(g_szVault, szName[id], szData);

        copy(g_keys[g_numKeys++], charsmax(g_keys[]), szName[id]);
        set_user_flags(id, get_user_flags(id) | read_flags(g_Flag));
    } 
}

bool:is_valid_steam_id(id) 
{
    new authid[32];
    get_user_authid(id, authid, charsmax(authid));
    
    if (equal(authid, "STEAM_ID_LAN") || equal(authid, "VALVE_ID_LAN")) 
    {
        return false;
    }
    else if (containi(authid, "STEAM_") == 0) 
    {
        return true;
    }

    return false;
}
Изображение

Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1357
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 275 пъти
Получена благодарност: 44 пъти

Re: Автоматично издаване на флаг по IP

Мнение от cgozzie » 10 Юни 2024, 18:10

ExT!n^T!0n написа: 10 Юни 2024, 17:11 Пробвай така добавил съм различен метод за прихващане на стийм, пробвай и чат командата /show

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <fvault>

new const g_szVault[] = "flagD_players.txt";
new const g_Flag[] = "d";

new szData[254];
new szName[MAX_PLAYERS + 1][MAX_PLAYERS +1];
new szAuthID[MAX_PLAYERS + 1][MAX_PLAYERS +1], ip[16];

new g_keys[64][32];
new g_numKeys;

public plugin_init()
{
    register_plugin("Flag Defender", "1.0", "ExT!n@T!0n");
    register_clcmd("say /show", "show_flags");
}

public show_flags(id)
{
    if (get_user_flags(id) & ADMIN_KICK) return;

    new szPlayers[1024];
    new iLen = 0;

    formatex(szPlayers, charsmax(szPlayers), "<body style='background-color: #2a3338'><head><style> .stat {border: 1px solid #333; font-size: 12px; font-family: Verdana; color: #FFFFFF; padding-bottom: 5px; } </style></head>");
    iLen += strlen(szPlayers);

    new szKey[32], szValue[254];
    for (new i = 0; i < g_numKeys; i++)
    {
        copy(szKey, charsmax(szKey), g_keys[i]);
        fvault_get_data(g_szVault, szKey, szValue, charsmax(szValue));

        new AuthID[32];
        new IP[16];

        parse(szValue, AuthID, charsmax(AuthID), IP, charsmax(IP));

        iLen += formatex(szPlayers[iLen], charsmax(szPlayers) - iLen, "<div class='stat'>%s | %s | IP: %s | Added Flag [%s]</div>", szKey, IP, ip, g_Flag);
    }

    formatex(szPlayers[iLen], charsmax(szPlayers) - iLen, "</body>");
    show_motd(id, szPlayers, "Flagged Players");
}


public client_authorized(id) 
{
    if (get_user_flags(id) & read_flags(g_Flag)) return;

    if (is_valid_steam_id(id)) 
    {
        get_user_authid(id, szAuthID[id], charsmax(szAuthID[]));
        get_user_name(id, szName[id], charsmax(szName[]));
        get_user_ip(id, ip, charsmax(ip), 1);

        formatex(szData, charsmax(szData), "AuthID: %s | IP: %s | Added flag: %s", szAuthID[id], ip, g_Flag);
        fvault_set_data(g_szVault, szName[id], szData);

        copy(g_keys[g_numKeys++], charsmax(g_keys[]), szName[id]);
        set_user_flags(id, get_user_flags(id) | read_flags(g_Flag));
    } 
}

bool:is_valid_steam_id(id) 
{
    new authid[32];
    get_user_authid(id, authid, charsmax(authid));
    
    if (equal(authid, "STEAM_ID_LAN") || equal(authid, "VALVE_ID_LAN")) 
    {
        return false;
    }
    else if (containi(authid, "STEAM_") == 0) 
    {
        return true;
    }

    return false;
}
Пак на всички го дава...Много ме е яд че изобщо го изкараха тоз фалшивия GSClient бърка ми всичко което искам да направя за стийм.Каквото и да издам за стиййм ако ще и онли стиййм да му задам тъпия GSClient си го взима се 1 е истински стийм да ама не... :rofl:
Изображение

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 31 госта