CS-bg.info - форумът на CS-bg :: Counter-Strike фен сайт

Block Nicknames

Тук е мястото да представите плъгин(и), написани от вас!

Модератори: Екип C-Strike, Помощник-модератори

Block Nicknames

Мнениеот RideeR » 07 Юли 2016, 16:52

Block Nicknames

Версия 1.0



Описание:

  • Това е плъгин, който блокира даден nickname от влизане в сървъра.


Инсталация:

  • Слагате плъгина в сървъра си.
  • В"configs" папката на сървъра ви ще се появи нов ини файл под името "block_nicks".
  • Добавете нежелания nickname на нов ред в този файл и при следващото зареждане на плъгина той ще бъде блокиран.


Изтегляне:

RideeR

Аватар
Сървър Отговорник
Сървър Отговорник
 
Регистриран на: 17 Мар 2015, 19:04
Skype: ЛС!
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот LAWLIET » 15 Юли 2016, 07:53

Кода е добър като изключиме, че си забравил да destroy-неш array-a в plugin_end. :)
LAWLIET

Аватар
CS-GOLD Owner
CS-GOLD Owner
 
Регистриран на: 06 Ное 2010, 19:09
Местоположение: В cs-bg.info
Skype: LawlietBG
Профил в Steam
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот OciXCrom » 15 Юли 2016, 19:09

Код: Избери целия код
szName[25], szNames[30], szLine[64]


Това няма никаква логика. Защо за едно и също нещо ползваш три различни размери, и то произволни числа? Името на един играч не може да надхвърля 32 символа, съответно всички тези трябва да са [32].
OciXCrom

Аватар
OciXCrom™ Official Profile
OciXCrom™ Official Profile
 
Регистриран на: 21 Мар 2013, 14:21
Местоположение: jb.iplay.bg:27015
Skype: doctor.crom1234
Профил в Steam
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот RideeR » 15 Юли 2016, 23:48

LAWLIET написа:Кода е добър като изключиме, че си забравил да destroy-неш array-a в plugin_end. :)

Не е задължително, по принцип е автоматично.

OciXCrom написа:
Код: Избери целия код
szName[25], szNames[30], szLine[64]


Това няма никаква логика. Защо за едно и също нещо ползваш три различни размери, и то произволни числа? Името на един играч не може да надхвърля 32 символа, съответно всички тези трябва да са [32].

Код: Избери целия код
new szName[25], szNames[30]

Това е кодът ми.Ако си погледнал szName е за символите, а szNames е стринг за array-а.
Код: Избери целия код
ArrayGetString(g_szNames, i, szNames, charsmax(szNames))
Погледни хубаво кода и пак пиши :wink:
RideeR

Аватар
Сървър Отговорник
Сървър Отговорник
 
Регистриран на: 17 Мар 2015, 19:04
Skype: ЛС!
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот OciXCrom » 16 Юли 2016, 13:51

За какви символи става дума?! Всички strings вършат една и съща функция, а именно държат име на играч, съответно всички трябва да имат еднакъв размер, именно 32.

szLine[64] - това се ползва за един ред от файла. Щом в един ред се слага един никнейм, който има максимум 32 символа, останалите 32 от това 64 са неизползваеми.
szNames[30] - когато играч влезне в сървъра, никовете биват копирани в този масив. Ако във файла е въведен никнейм, който има 32 символа, същият няма да бъде блокиран, тъй като последните 2 символа няма да бъдат прочетени.
szName[25] - това е името на играча. Ако то надхвърля 25 символа, последните 7 отново няма да бъдат прочетени от плъгина, тъй като името му бива "съкратено" в самия код.


Код: Избери целия код
if (equal(szName, szNames)) 


По този начин достатъчно е играчът да смени големината на една буква в името си за да може да влезне в сървъра. Ползвай equali.


B7W написа:Не е задължително, по принцип е автоматично.


Силно препоръчително е, тъй като е възможно автоматичното destroy-ване да не успее.

AlliedMods.net написа:All handles should be cleaned automatically, but depending on context this may fail. Also, it is considered good practice to free anything you used.



Код: Избери целия код
server_cmd("kick #%d ^"You are not allowed to this server!^""szID


on this server, а не to.
OciXCrom

Аватар
OciXCrom™ Official Profile
OciXCrom™ Official Profile
 
Регистриран на: 21 Мар 2013, 14:21
Местоположение: jb.iplay.bg:27015
Skype: doctor.crom1234
Профил в Steam
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот RideeR » 16 Юли 2016, 23:13

OciXCrom написа:За какви символи става дума?! Всички strings вършат една и съща функция, а именно държат име на играч, съответно всички трябва да имат еднакъв размер, именно 32.

szLine[64] - това се ползва за един ред от файла. Щом в един ред се слага един никнейм, който има максимум 32 символа, останалите 32 от това 64 са неизползваеми.
szNames[30] - когато играч влезне в сървъра, никовете биват копирани в този масив. Ако във файла е въведен никнейм, който има 32 символа, същият няма да бъде блокиран, тъй като последните 2 символа няма да бъдат прочетени.
szName[25] - това е името на играча. Ако то надхвърля 25 символа, последните 7 отново няма да бъдат прочетени от плъгина, тъй като името му бива "съкратено" в самия код.


Код: Избери целия код
if (equal(szName, szNames))


По този начин достатъчно е играчът да смени големината на една буква в името си за да може да влезне в сървъра. Ползвай equali.


B7W написа:Не е задължително, по принцип е автоматично.


Силно препоръчително е, тъй като е възможно автоматичното destroy-ване да не успее.

AlliedMods.net написа:All handles should be cleaned automatically, but depending on context this may fail. Also, it is considered good practice to free anything you used.



Код: Избери целия код
server_cmd("kick #%d ^"You are not allowed to this server!^"", szID)


on this server, а не to.

Съгласен съм за стринговете, но плъгинът не прави проблеми, тествах всичко, а съобщението, което си поправил, е примерно :)
RideeR

Аватар
Сървър Отговорник
Сървър Отговорник
 
Регистриран на: 17 Мар 2015, 19:04
Skype: ЛС!
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот OciXCrom » 17 Юли 2016, 02:12

Тествай с по-дълъг ник и ще видиш проблема. Няма нужда от тестове, проблемът се вижда в самия код. Просто ги направи 32 и няма да има проблеми.
OciXCrom

Аватар
OciXCrom™ Official Profile
OciXCrom™ Official Profile
 
Регистриран на: 21 Мар 2013, 14:21
Местоположение: jb.iplay.bg:27015
Skype: doctor.crom1234
Профил в Steam
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот LAWLIET » 18 Юли 2016, 19:09

В алиедмодс ако тръгнеш да го пускаш ще ти направят проблем за това :)
LAWLIET

Аватар
CS-GOLD Owner
CS-GOLD Owner
 
Регистриран на: 06 Ное 2010, 19:09
Местоположение: В cs-bg.info
Skype: LawlietBG
Профил в Steam
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот KiLLeR. » 22 Юли 2016, 13:27

LAWLIET написа:В алиедмодс ако тръгнеш да го пускаш ще ти направят проблем за това :)

Като гледам има още боб да изяде, преди да тръгне да пуска там плъгини.

А това:
Код: Избери целия код
new szID = get_user_userid(id)
server_cmd("kick #%d ^"You are not allowed to this server!^"", szID

Можеше просто ето така:
Код: Избери целия код
server_cmd("kick #%d ^"You are not allowed to this server!^"", get_user_userid(id));
KiLLeR.

Аватар
Потребител
Потребител
 
Регистриран на: 06 Мар 2011, 22:46
Местоположение: Тук-там!?!
Skype: ЛС
Профил в Steam
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот RideeR » 23 Юли 2016, 07:10

KiLLeR. написа:
LAWLIET написа:В алиедмодс ако тръгнеш да го пускаш ще ти направят проблем за това :)

Като гледам има още боб да изяде, преди да тръгне да пуска там плъгини.

А това:
Код: Избери целия код
new szID = get_user_userid(id)
server_cmd("kick #%d ^"You are not allowed to this server!^"", szID)

Можеше просто ето така:
Код: Избери целия код
server_cmd("kick #%d ^"You are not allowed to this server!^"", get_user_userid(id)); 

Кaкво пречи променливaтa? :D
RideeR

Аватар
Сървър Отговорник
Сървър Отговорник
 
Регистриран на: 17 Мар 2015, 19:04
Skype: ЛС!
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот OciXCrom » 23 Юли 2016, 14:18

Не пречи, но не е правилно да се добавят променливи за неща, които се ползват само един път.
OciXCrom

Аватар
OciXCrom™ Official Profile
OciXCrom™ Official Profile
 
Регистриран на: 21 Мар 2013, 14:21
Местоположение: jb.iplay.bg:27015
Skype: doctor.crom1234
Профил в Steam
[ Профил в сайта ]

Re: Block Nicknames

Мнениеот RideeR » 23 Юли 2016, 17:22

Добре време е дa спрем дa спaмим, скоро ще нaпрaвя новa версия и ще изчистя всички грешки :)
RideeR

Аватар
Сървър Отговорник
Сървър Отговорник
 
Регистриран на: 17 Мар 2015, 19:04
Skype: ЛС!
[ Профил в сайта ]



Ето че в края на този месец се навършват точно 10 години от официалното пускане на българския CS фен сайт.
ESEA имат удоволствието да обявят сезон 25 на своята лига, който ще включва повече дивизии за някои региони, както и редица подобрения базирани на обратната връзка от сезон 24.
DreamHack потвърдиха, че Ninjas in Pyjamas и Virtus.pro са получили покани за тяхното събитие Masters в Малмьо.

Назад към Ваши плъгини

Кой е на линия

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

Creative Commons License

Valve, Steam, поредицата Counter-Strike и логото на всяко от изброените са търговски марки и/или
регистрирани търговски марки на Valve Corporation. Всички други търговски марки са собственост на съответните им собственици.

Design: iVoka • Special thanks: VaRkOlAKA
За сайта | Екип | За реклама | Карта на сайта | За контакти

Powered by phpBB® Forum Software © phpBB Group | Theme by A1ex, edit by iVoka
Превод: Йоан Арнаудов | Корекции: Ивомир Петров
Условия за ползване | Политика на поверителност