Защита на [NickName] по [SteamId]

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
gadinkata
Извън линия
Потребител
Потребител
Мнения: 259
Регистриран на: 21 Мар 2018, 12:33
Местоположение: Враца
Се отблагодари: 25 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Защита на [NickName] по [SteamId]

Мнение от gadinkata » 08 Юни 2020, 00:06

Здравейте,имам нужда от плъгин,който да защити никовете на админите ми по стеам ид,за да неможе никой друг освен тях,примерно в плъгина искам да защити никът "gadinkata" със стеам "STEAM_0:1:84315484",обобщавам искам играч с ник "gadinkata" да бъде допуснат,само ако стеам ид-то отговаря на това което съм задал стеам "STEAM_0:1:84315484".Ако може с Ini файл в който да се добавят никът и стеам идто,който да бъдат защитени,ако ви е сложно,може да напишете един прост код,с 1 ник и стеами, просто да видя как се получава,ще ви дам един мой който се опитах да направя,но не успях

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

#include <amxmodx>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "IOCOCVETI"

new Trie:g_steamlog

enum _:SteamLogs
{
	NickId[32],
	SteamId[34]
}

new const g_eSteamLogs[] [SteamLogs] =
{
	{"Gadinkata", "STEAM_0:1:84315484"}
}
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	g_steamlog = TrieCreate()
}

public plugin_end()
	TrieDestroy(g_steamlog)


public client_authorized(id)
{
	new szSteam[34], szName[32]
	get_user_name(id, szName, charsmax(szName))
	get_user_authid(id, szSteam, charsmax(szSteam))
	
	if(TrieKeyExists(g_steamlog, szSteam) && TrieKeyExists(g_steamlog, szName))
	{
		TrieGetString(g_steamlog, szSteam, NickId, charsmax(NickId))
		TrieGetString(g_steamlog, szName, SteamId, charsmax(SteamId))
	}
}

Аватар
impossible
Извън линия
Потребител
Потребител
Мнения: 400
Регистриран на: 15 Юни 2019, 12:41
Се отблагодари: 23 пъти
Получена благодарност: 33 пъти
Обратна връзка:

Защита на [NickName] по [SteamId]

Мнение от impossible » 08 Юни 2020, 00:20

В ussr.ini можеш да дадеш права по Steamid
Освен това си го има в AmXmodx пакета няма как да се влезне с Ник на админ без да напишеш паролата зададена от user.ini
И след това да се напише в конзолата Setinfo _pw и паролата ще изпише "You have no entry to the server"
Последно промяна от impossible на 08 Юни 2020, 01:06, променено общо 1 път.

Аватар
sf4n
Извън линия
Потребител
Потребител
Мнения: 311
Регистриран на: 08 Яну 2018, 11:25
Се отблагодари: 25 пъти
Получена благодарност: 13 пъти

Защита на [NickName] по [SteamId]

Мнение от sf4n » 08 Юни 2020, 00:54

Това е адски ненужно, както потребителя над мен е споменал, само и единствено ако се напише паролата, която е зададена от user.ini може да се влезе с твоя ник, отделно, че със steamid правата ти деистват няколко дена и след това изчезват ако си non-steam, просто няма нужда от излишни плъгини, все пак можеш да пробваш да си добавиш права от user.ini със steamid.
Изображение

Единствен по рода си Zombie BaseBuilder с уникален мод и коректни админи по всяко време в сървъра.
IP: bb.cs-zapad.eu:27013

Respawn сървър.
IP: re.cs-zapad.eu:27015

Furien сървър.
IP: fu.cs-zapad.eu:27016

Нашият Сайт
Нашият Форум

Аватар
atmax
Извън линия
Потребител
Потребител
Мнения: 489
Регистриран на: 22 Мар 2018, 15:06
Се отблагодари: 37 пъти
Получена благодарност: 43 пъти

Защита на [NickName] по [SteamId]

Мнение от atmax » 08 Юни 2020, 09:57

Пробвай това, не съм сигурен дали ще работи. За сега без файл, нека първо видим, дали ще тръгне така!

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

#include <amxmodx>

new Trie:g_tSteamWhiteList
new Trie:g_tNameWhiteList

public plugin_init()
{
	register_plugin( "SteamID/Name WhiteList", "0.1a", "aTmAx")
    
	g_tSteamWhiteList = TrieCreate()
	g_tNameWhiteList = TrieCreate()
    
	TrieSetCell(g_tSteamWhiteList, "STEAM_0:1:84315484", 1)
	TrieSetCell(g_tNameWhiteList, "Gadinkata", 1)
}

public plugin_end()
{
	TrieDestroy(g_tSteamWhiteList)
	TrieDestroy(g_tNameWhiteList)
}

public client_authorized(id)
{
	new szAuthID[35]
	new szName[32]
	
	get_user_authid(id, szAuthID, charsmax(szAuthID))
	get_user_name(id, szName, charsmax(szName))
    
	if(TrieKeyExists(g_tNameWhiteList, szName))
	{
		if(TrieKeyExists(g_tSteamWhiteList, szAuthID))
		{
			return PLUGIN_CONTINUE
		}
		else
		{
			server_cmd("kick #%i ^"Your Steam ID is Protected!^"", get_user_userid(id))
		}
	}  
	else
	{
		server_cmd("kick #%i ^"Your Steam ID is Protected!^"", get_user_userid(id))
	}

	return PLUGIN_HANDLED
}
Rest in peace my friend I always will remember you! 🖤👊

Аватар
gadinkata
Извън линия
Потребител
Потребител
Мнения: 259
Регистриран на: 21 Мар 2018, 12:33
Местоположение: Враца
Се отблагодари: 25 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Защита на [NickName] по [SteamId]

Мнение от gadinkata » 08 Юни 2020, 21:22

atmax написа:
08 Юни 2020, 09:57
Пробвай това, не съм сигурен дали ще работи. За сега без файл, нека първо видим, дали ще тръгне така!

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

#include <amxmodx>

new Trie:g_tSteamWhiteList
new Trie:g_tNameWhiteList

public plugin_init()
{
	register_plugin( "SteamID/Name WhiteList", "0.1a", "aTmAx")
    
	g_tSteamWhiteList = TrieCreate()
	g_tNameWhiteList = TrieCreate()
    
	TrieSetCell(g_tSteamWhiteList, "STEAM_0:1:84315484", 1)
	TrieSetCell(g_tNameWhiteList, "Gadinkata", 1)
}

public plugin_end()
{
	TrieDestroy(g_tSteamWhiteList)
	TrieDestroy(g_tNameWhiteList)
}

public client_authorized(id)
{
	new szAuthID[35]
	new szName[32]
	
	get_user_authid(id, szAuthID, charsmax(szAuthID))
	get_user_name(id, szName, charsmax(szName))
    
	if(TrieKeyExists(g_tNameWhiteList, szName))
	{
		if(TrieKeyExists(g_tSteamWhiteList, szAuthID))
		{
			return PLUGIN_CONTINUE
		}
		else
		{
			server_cmd("kick #%i ^"Your Steam ID is Protected!^"", get_user_userid(id))
		}
	}  
	else
	{
		server_cmd("kick #%i ^"Your Steam ID is Protected!^"", get_user_userid(id))
	}

	return PLUGIN_HANDLED
}
Работи,но допуска само играч отговарящ на никът и стеамид-то,а аз искам всеки да може да влиза,но,ако играч се опита да влезе с тоя ник,да провери дали неговото стеамид съвпада с горе посоченото,ако съвпада да го допусне с този ник,ако не съвпада да го кикне

Аватар
Drea<M>40BG ;]]
Извън линия
Рекламатор
Рекламатор
Мнения: 727
Регистриран на: 11 Окт 2016, 11:35
Се отблагодари: 103 пъти
Получена благодарност: 55 пъти
Обратна връзка:

Защита на [NickName] по [SteamId]

Мнение от Drea<M>40BG ;]] » 08 Юни 2020, 22:52

Тема: Automatic Command Executor защо не пробваш с това?

Аватар
atmax
Извън линия
Потребител
Потребител
Мнения: 489
Регистриран на: 22 Мар 2018, 15:06
Се отблагодари: 37 пъти
Получена благодарност: 43 пъти

Защита на [NickName] по [SteamId]

Мнение от atmax » 09 Юни 2020, 12:43

Знам та, че си пробваш някакви плъгинчета, защото ти е кеф, но не можа ли толкоз да смениш 1-2 реда..

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

#include <amxmodx>

new Trie:g_tSteamWhiteList
new Trie:g_tNameWhiteList

public plugin_init()
{
	register_plugin( "SteamID/Name WhiteList", "0.1a", "aTmAx")
    
	g_tSteamWhiteList = TrieCreate()
	g_tNameWhiteList = TrieCreate()
    
	TrieSetCell(g_tSteamWhiteList, "STEAM_0:1:84315484", 1)
	TrieSetCell(g_tNameWhiteList, "Gadinkata", 1)
}

public plugin_end()
{
	TrieDestroy(g_tSteamWhiteList)
	TrieDestroy(g_tNameWhiteList)
}

public client_authorized(id)
{
	new szAuthID[35]
	new szName[32]
	
	get_user_authid(id, szAuthID, charsmax(szAuthID))
	get_user_name(id, szName, charsmax(szName))
    
	if(TrieKeyExists(g_tSteamWhiteList, szAuthID))
	{
		if(TrieKeyExists(g_tNameWhiteList, szName))
		{
			return PLUGIN_CONTINUE
		}
		else
		{
			server_cmd("kick #%i ^"Your SteamID/Name is Protected!^"", get_user_userid(id))
		}
	}  
	else
	{
		return PLUGIN_CONTINUE
	}

	return PLUGIN_HANDLED
}
Пробвай това, дали ще отговори на очакванията ти..
Rest in peace my friend I always will remember you! 🖤👊

Аватар
gadinkata
Извън линия
Потребител
Потребител
Мнения: 259
Регистриран на: 21 Мар 2018, 12:33
Местоположение: Враца
Се отблагодари: 25 пъти
Получена благодарност: 7 пъти
Обратна връзка:

Защита на [NickName] по [SteamId]

Мнение от gadinkata » 09 Юни 2020, 20:47

atmax написа:
09 Юни 2020, 12:43
Знам та, че си пробваш някакви плъгинчета, защото ти е кеф, но не можа ли толкоз да смениш 1-2 реда..

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

#include <amxmodx>

new Trie:g_tSteamWhiteList
new Trie:g_tNameWhiteList

public plugin_init()
{
	register_plugin( "SteamID/Name WhiteList", "0.1a", "aTmAx")
    
	g_tSteamWhiteList = TrieCreate()
	g_tNameWhiteList = TrieCreate()
    
	TrieSetCell(g_tSteamWhiteList, "STEAM_0:1:84315484", 1)
	TrieSetCell(g_tNameWhiteList, "Gadinkata", 1)
}

public plugin_end()
{
	TrieDestroy(g_tSteamWhiteList)
	TrieDestroy(g_tNameWhiteList)
}

public client_authorized(id)
{
	new szAuthID[35]
	new szName[32]
	
	get_user_authid(id, szAuthID, charsmax(szAuthID))
	get_user_name(id, szName, charsmax(szName))
    
	if(TrieKeyExists(g_tSteamWhiteList, szAuthID))
	{
		if(TrieKeyExists(g_tNameWhiteList, szName))
		{
			return PLUGIN_CONTINUE
		}
		else
		{
			server_cmd("kick #%i ^"Your SteamID/Name is Protected!^"", get_user_userid(id))
		}
	}  
	else
	{
		return PLUGIN_CONTINUE
	}

	return PLUGIN_HANDLED
}
Пробвай това, дали ще отговори на очакванията ти..
Опитай пак,сега дапуска всички други,останали играчим,допуска и мен,но само ако въведа никът gadinkata,неми позволява, да играя с друг ник,също така и другите играчи ги до пуска с никът gadinkata,не може ли да се ползва и TrieSetString TrieGetString и същевременно equal за сравнение никове или стеам.Дай друго предложение,ще ти взема 2 каси с бира :DИ хвани ми пиши в скайп малко
Нужно ми е за админите,че някой играчи влизат с техните никове,а аз съм ги направил по стеам,ако съм искал да ги направя по ник,че да ги защитя,но set info _pw командата е лесно за хакване във всеки един сървър който влезеш,за това предпочитам стеам,трудно се копира стеама на играч

Аватар
atmax
Извън линия
Потребител
Потребител
Мнения: 489
Регистриран на: 22 Мар 2018, 15:06
Се отблагодари: 37 пъти
Получена благодарност: 43 пъти

Защита на [NickName] по [SteamId]

Мнение от atmax » 09 Юни 2020, 21:19

Размени мястото на тези двете условия:

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

if(TrieKeyExists(g_tSteamWhiteList, szAuthID))
	{
		if(TrieKeyExists(g_tNameWhiteList, szName))
		{
А и много по-лесно се копира steamid отколкото да му вземеш паролата.. Даже за steamid не е нужно да ги викам в други сървъри мога за минута да копирам всяко едно id в игра..
Ако искаш може да пробваш по IP, по-добре от steamid
Rest in peace my friend I always will remember you! 🖤👊

Аватар
JackEyedJones
Извън линия
Потребител
Потребител
Мнения: 399
Регистриран на: 10 Сеп 2018, 17:26
Местоположение: Plovdiv, Bulgaria, Europe, Entire World
Се отблагодари: 4 пъти
Получена благодарност: 69 пъти
Обратна връзка:

Защита на [NickName] по [SteamId]

Мнение от JackEyedJones » 09 Юни 2020, 21:24

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

#include <amxmodx>

enum _:iNames
{
	g_szNickName[63],
	g_szSteamId[63]
}

new const g_iSteamNamesWhitelist[][iNames] = 
{
	{	"Gadinkata",	"STEAM_0:1:84315484"	},
	{	"DrugoIme",	"STEAM_0:1:84315485"	},
	{	"TretoIme",	"STEAM_0:1:84315486"	}
}

public plugin_init()
	register_plugin( "SteamID/Name WhiteList", "", "");

public client_authorized(id)
{
	new szAuthID[63], szName[63];
	get_user_authid(id, szAuthID, charsmax(szAuthID));
	get_user_name(id, szName, charsmax(szName));
    
	for(new i; i < sizeof(g_iSteamNamesWhitelist); i++)
	{
		if( equal(szName, g_iSteamNamesWhitelist[i][g_szNickName]) && !equal(szAuthID, g_iSteamNamesWhitelist[i][g_szSteamId]) )
		{
			server_cmd("kick #%i ^"This Name is protected by Steam ID!^"", get_user_userid(id));

			return PLUGIN_HANDLED;
		}	
	}

	return PLUGIN_CONTINUE;
}
Въобще защо си тръгнал с Trie структура да го правиш не знам. :huh:
До автора на темата, през users.ini се защитава най-лесно. Хората са го казали. Инак, почти си го направил. 50% само.
Untested, but give it a shot. :gamer1:

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

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

Кой е на линия

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