|
|
| Какой вам нужен скрипт для SourceMod? |
|
_wS_ |
Дата: Понедельник, 26.12.2011, 03:45:27 | Сообщение # 1 |
 |
Offline
Сообщений: 1081
Репутация: 161 [ +/- ]
|
|
В последнее время я стараюсь добавлять новые скрипты под SourceMod - если у вас есть какие-то идеи, можете дать описание скрипта, который вы бы хотели (подробное), и я постараюсь сделать его в ближайшее время (если он в моих силах и нормальный по смыслу). Здесь уже есть более 50-ти SM плагинов - я не добавляю чьи-либо чужие, только те, которые делал сам и которые точно работают. Все подобные скрипты будут доступны для скачивания ВСЕМ, если хотите приватный скрипт, то лучше сделайте ЗАКАЗ.
|
| |
| | |
|
Scarface6748 |
Дата: Суббота, 07.01.2012, 09:52:25 | Сообщение # 2 |
 |
Offline
Сообщений: 14
Репутация: 0 [ +/- ]
|
|
Сможешь сделать плагин nsbans как у eventscripts, только на sourcemod? ПЛИЗ -------------- Делаю (Schmidt)
Сообщение отредактировал Scarface6748 - Суббота, 07.01.2012, 09:52:58 |
| |
| | |
|
_wS_ |
Дата: Суббота, 07.01.2012, 16:52:53 | Сообщение # 3 |
 |
Offline
Сообщений: 1081
Репутация: 161 [ +/- ]
|
|
Столкнулся с единственной и главной проблемой, которая весь код делает бесполезным, не удается изменить клиенту переменную xbox_throttlespoof. Возможно, раньше это и можно было сделать, но сейчас видимо нет. Вот как делал это автор snbans: Code es_xusermsg create nsbans_motd VGUIMenu es_xusermsg write string nsbans_motd info es_xusermsg write byte nsbans_motd 1 es_xusermsg write byte nsbans_motd 4 es_xusermsg write string nsbans_motd type es_xusermsg write string nsbans_motd 0 es_xusermsg write string nsbans_motd msg es_xusermsg write string nsbans_motd "......script/load...... failed" es_xusermsg write string nsbans_motd cmd es_xusermsg write string nsbans_motd "xbox_throttlespoof 201; quit" es_usermsg send nsbans_motd server_var(nsbans_user) es_xusermsg delete nsbans_motd На SM это выглядит так и оно не работает: Code new Handle:h = StartMessageOne("VGUIMenu", i); if (h == INVALID_HANDLE) { PrintToChat(i, "INVALID_HANDLE"); return; } BfWriteString(h, "info"); BfWriteByte(h, 1); BfWriteByte(h, 4); BfWriteString(h, "type"); BfWriteString(h, "0"); BfWriteString(h, "msg"); BfWriteString(h, "......script/load...... failed"); BfWriteString(h, "cmd"); BfWriteString(h, "xbox_throttlespoof 201; quit"); EndMessage(); Ты уверен, что Eventscript'овская версия работает? Я сомневаюсь (не проверял). И даже если бы это работало, этот способ ненадежен. Игрок сам просто сможет изменить xbox_throttlespoof на 200 и спокойно снова войти в игру (правда только если знает об этом, а узнать это через гугл не трудно, и другим рассказать). Хотя, я же проверяю на SteaM сервере, и клиент у меня SteaM, может на каких-то пиратках это и будет работать.
|
| |
| | |
|
Scarface6748 |
Дата: Воскресенье, 08.01.2012, 13:31:21 | Сообщение # 4 |
 |
Offline
Сообщений: 14
Репутация: 0 [ +/- ]
|
|
nsbans работает на v34 100% а многие дети не дадумаються изменить команду xbox_throttlespoof а я так хочу написать его и перейти на sourcemod удалив eventscripts единственное что я смог написать это проверку если 201 то бан, если 200 то зайдет и к сожеленнию я не умею создавать меню в sp=( Да и у меня стоит nsbans но негде нету ничего напоминающего его, убрал названние и назвал ban-ip вместо кика постоянного, бан дает и вообщем весь текст я изменил чтоб никто не шарил в поисковиках)
Сообщение отредактировал Scarface6748 - Воскресенье, 08.01.2012, 14:25:03 |
| |
| | |
|
_wS_ |
Дата: Воскресенье, 08.01.2012, 15:15:29 | Сообщение # 5 |
 |
Offline
Сообщений: 1081
Репутация: 161 [ +/- ]
|
|
Держи скрипт (прикрепил), все вроде в нем уже есть, но только нет функции, которая меняет переменную xbox_throttlespoof. Там в самом низу добавил несколько комментариев для ясности.
|
| |
| | |
|
Scarface6748 |
Дата: Среда, 11.01.2012, 11:16:40 | Сообщение # 6 |
 |
Offline
Сообщений: 14
Репутация: 0 [ +/- ]
|
|
Спасибо тебе огромное!!!!!!! Доделал все работает спасибо за помошь) -------------- 
Сообщение отредактировал Scarface6748 - Среда, 11.01.2012, 11:16:59 |
| |
| | |
|
udde |
Дата: Суббота, 14.01.2012, 17:47:06 | Сообщение # 7 |
 |
Offline
Сообщений: 4
Репутация: 0 [ +/- ]
|
|
есть класный мод/плагин SurfTimer(могу дать ип сервера где можно глянуть его) в сети его нигде нет, не то что паблик версий но даже и приват... вот небольшая инфа surftimer или же вот surftimer хотелось бы замутить его... но в програмирование особо не шарю.. немножно инфы от меня... суть плагина/мода засекать время прохождения карты surf в целом/по леволам/бонус... есть своя статистика там думаю вот начать писать только пока обычный таймер без записи всяких результатов и с началом/концом отсчета времени в определенных местах... чуть позже буду задаваться вопросами... и еще вот подумал может можно как-то переделать bhop timer(взять что-то там за основу) он помойму есть на sm это же будет проще чем писать с 0
Сообщение отредактировал udde - Суббота, 14.01.2012, 18:55:32 |
| |
| | |
|
_wS_ |
Дата: Суббота, 14.01.2012, 22:00:27 | Сообщение # 8 |
 |
Offline
Сообщений: 1081
Репутация: 161 [ +/- ]
|
|
Я бы даже, если бы это был заказ, скорее всего не брался за это. Чтобы сделать такой скрипт, надо понимать Surf, а я в него вообще не играл (ну или несколько раз заходил посмотреть). Например, как определить, что игрок прошел первый уровень? Там телепорты? Если да, то скорее всего это делается с помощью output'ов. Извини, но у меня нет желания изучать Surf карты и делать такой большой мод, так как он меня просто не привлекает.
А владелец сервера правильно поступил. Сделал скрипт и никому не дает.
|
| |
| | |
|
udde |
Дата: Воскресенье, 15.01.2012, 01:45:53 | Сообщение # 9 |
 |
Offline
Сообщений: 4
Репутация: 0 [ +/- ]
|
|
дык их не надо изучать... можно сделать как в бхоп плагине там специальная админка которая раставляет кординаты начала и конца... или так не вариант?
что за output?)
|
| |
| | |
|
Scarface6748 |
Дата: Четверг, 19.01.2012, 17:24:30 | Сообщение # 10 |
 |
Offline
Сообщений: 14
Репутация: 0 [ +/- ]
|
|
У меня вопрос) когда то я играл в 1.6 и помню такой плагин играешь определенное время и пишет это:
"Вы играете уже 3 ч. подряд и награждаетесь 1800$ бонусом" такое сделать возможно на SP?
|
| |
| | |
|
_wS_ |
Дата: Четверг, 19.01.2012, 17:28:38 | Сообщение # 11 |
 |
Offline
Сообщений: 1081
Репутация: 161 [ +/- ]
|
|
Quote (Scarface6748) такое сделать возможно на SP? На S M* ? Конечно. Идею понял, позже, наверно, сделаю.
|
| |
| | |
|
Scarface6748 |
Дата: Четверг, 19.01.2012, 19:48:34 | Сообщение # 12 |
 |
Offline
Сообщений: 14
Репутация: 0 [ +/- ]
|
|
Сделаешь? О_о думал сам буду париться, СПАСИБО ЖДУ) и еще можно вместо Banned sv_cheats чтоб писал его стим ид Code BanClient(client, 0, BANFLAG_AUTO, "sv_cheats", "Banned sv_cheats", "xd", client); Я как понял что так нельзя сделать
Сообщение отредактировал Scarface6748 - Пятница, 20.01.2012, 05:53:17 |
| |
| | |
|
_wS_ |
Дата: Суббота, 21.01.2012, 23:52:12 | Сообщение # 13 |
 |
Offline
Сообщений: 1081
Репутация: 161 [ +/- ]
|
|
Quote (Scarface6748) и еще можно вместо Banned sv_cheats чтоб писал его стим ид Я как понял что так нельзя сделать Хм, почему нельзя. "Banned sv_cheats" - это причина бана, const String:kick_message[]="". Просто используй Format функцию, чтобы составить нужную тебе строку, например: Code decl String:f[75]; GetClientAuthString(client, f, sizeof(f)); Format(f, sizeof(f), "Banned sv_cheats. Steam: %s", f); BanClient(client, 0, BANFLAG_AUTO, "sv_cheats", f, "xd", client);
|
| |
| | |
|
Scarface6748 |
Дата: Воскресенье, 22.01.2012, 16:47:09 | Сообщение # 14 |
 |
Offline
Сообщений: 14
Репутация: 0 [ +/- ]
|
|
Спасибо получилось=) Quote (_wS_) На SM* ? Конечно. Идею понял, позже, наверно, сделаю. Это возможно сделать через CreateTimer? от делать нечего хочу сам попробывать=)
Сообщение отредактировал Scarface6748 - Воскресенье, 22.01.2012, 16:47:24 |
| |
| | |
|
_wS_ |
Дата: Воскресенье, 22.01.2012, 17:00:15 | Сообщение # 15 |
 |
Offline
Сообщений: 1081
Репутация: 161 [ +/- ]
|
|
Quote (Scarface6748) Это возможно сделать через CreateTimer? Да, но не все так просто. Надо подумать о том, что делать, если карта сменилась и игрок во время смены нажал 'выход' - я попробовал, не получилось поймать этот момент. Так что надо что-то придумывать.
|
| |
| |
|
|
|