0-BuTaJIuK-0
Участник
- Сообщения
- 235
- Реакции
- 57
Да, все равно не даёт, пока все не выйдутЧерез setconvar не ставится чтоли пароль
Да, все равно не даёт, пока все не выйдутЧерез setconvar не ставится чтоли пароль
Так, а в чем смысл, ты хочешь их кикать, но не хочешь выключать GOTV из-за того, что они выйдут после этого, в чем логика?Да, все равно не даёт, пока все не выйдут
Нужно поставить пароль на сервер для турниров по окончанию.Так, а в чем смысл, ты хочешь их кикать, но не хочешь выключать GOTV из-за того, что они выйдут после этого, в чем логика?
Нужно поставить пароль на сервер для турниров по окончанию.
Как проходит финал для gotv (timer 40 sec). Нужно кикнуть всех и запаролить сервер.
НО! Следующий турнир может быть через несколько минут на том же сервере и той же карте.
Пока вижу вариант кикать всех с ботом через 40 сек после окончания, паролить и после менять карту (что бы бот появился заново)
"Games"
{
"csgo"
{
"Signatures"
{
// void SvPasswordChangeCallback( IConVar *pConVar, const char *pOldValue, float flOldValue )
"SvPasswordChangeCallback"
{
"library" "engine"
"windows" "\x55\x8B\xEC\x83\xE4\xF8\x8B\x45\x08\x85\xC0\x8B\x4D\x0C"
"linux" "\x55\x89\xE5\x56\x31\xF6\x53\x83\xEC\x20\x8B\x45\x08"
/*
Windows
Signature for sub_101B7980: 55 8B EC 83 E4 F8 8B 45 08 85 C0 8B 4D 0C
Linux
Signature for sub_1DA6B0: 55 89 E5 56 31 F6 53 83 EC 20 8B 45 08
*/
}
}
}
}
/*
[CS:GO] sv_password - bypass players and reserved cookie check
23.2.2021
- Works until Valve update breaks signature
https://forums.alliedmods.net/showthread.php?t=330847
*/
#include <dhooks>
public Plugin myinfo =
{
name = "[CS:GO] sv_password - bypass players and reserved cookie check",
author = "Bacardi",
description = "Allow set server password even players are in game",
version = "23.2.2021",
url = "https://forums.alliedmods.net/showthread.php?t=330847"
};
Handle hSvPasswordChangeCallback;
public void OnPluginStart()
{
GameData temp = new GameData("csgo_sv_password.games");
if(temp == null) SetFailState("Why you no has csgo_sv_password.games.txt gamedata?");
// Function - engine
// void SvPasswordChangeCallback( IConVar *pConVar, const char *pOldValue, float flOldValue )
// Build DHooks DHookCallback type (go look under typeset DHookCallback)
// - Can be Address_Null if you want to load the address from gamedata using DHookSetFromConf.
hSvPasswordChangeCallback = DHookCreateDetour(Address_Null, CallConv_CDECL, ReturnType_Void, ThisPointer_Ignore);
if (!hSvPasswordChangeCallback)
SetFailState("Failed to setup detour for SvPasswordChangeCallback DHookCallback"); // You build Dhook callback wrong! Try fix it.
if (!DHookSetFromConf(hSvPasswordChangeCallback, temp, SDKConf_Signature, "SvPasswordChangeCallback"))
SetFailState("Failed to load SvPasswordChangeCallback signature from csgo_sv_password.games.txt gamedata"); // Bad gamedata format ?
delete temp;
DHookAddParam(hSvPasswordChangeCallback, HookParamType_ObjectPtr); // IConVar *pConVar
DHookAddParam(hSvPasswordChangeCallback, HookParamType_StringPtr); // const char *pOldValue
DHookAddParam(hSvPasswordChangeCallback, HookParamType_Float); // float flOldValue
if (!DHookEnableDetour(hSvPasswordChangeCallback, false, Detour_OnCSWeaponDrop))
SetFailState("Failed to detour hSvPasswordChangeCallback.");
// Post callback
// if (!DHookEnableDetour(hSvPasswordChangeCallback, true, Detour_OnCSWeaponDrop_Post))
// SetFailState("Failed to detour hSvPasswordChangeCallback post.");
//PrintToServer("hSvPasswordChangeCallback detoured!");
}
public MRESReturn Detour_OnCSWeaponDrop(DHookParam hParams)
{
//PrintToServer("hSvPasswordChangeCallback Pre");
// Skip real function. Bypass player and reserved cookie check.
return MRES_Supercede;
}
// Not in use
public MRESReturn Detour_OnCSWeaponDrop_Post(DHookParam hParams)
{
//PrintToServer("hSvPasswordChangeCallback Post");
return MRES_Supercede;
}
кто нибудь может переписать плагин на новом синтаксисе для CSGO?
на csgo не работает, ошибок в логах нет, файлы скинов качает, но не меняет ни у кого... отключал все плагины, конфликтов с другими плагинами не оказалось. Пришли пожалуйста твой исходник, который без ошибок компилится под последний билд SM
с ошибками, я исправил их, скомпилировал, все равно не заменяет скины@gam19980, а что, новыми версиями SM не компилится?
Напиши в лс тзНужен плагин ночной дм, с отключением некоторых плагинов в ночное время и автоматическим включением подробности в лс
Писать в лс, цена до 1500
АктуальноНужен плагин ночной дм, с отключением некоторых плагинов в ночное время и автоматическим включением подробности в лс
Писать в лс, цена до 1500
Нужен плагин, который при Победе террористов перекидывает всех игроков на сервере в наблюдатели. Может кто написать?
#include <cstrike>
public void OnPluginStart() { HookEvent("round_end", EventEnd, EventHookMode_Post); }
public void EventEnd(Event hEvent, const char[] sEvent, bool bdb)
{
if(view_as<CSRoundEndReason>(hEvent.GetInt("reason")) == CSRoundEnd_TerroristWin)
for(int i = 0; i <= MaxClients; i++)
if(IsClientInGame(i) && !IsFakeClient(i) && GetClientTeam(i) != 1) CS_SwitchTeam(i, 1);
}
AutoExecConfig(true, "autodemo_simpleuploader");
public void OnPluginStart() { AddCommandListener(Event_Drop, "drop"); }
public Action Event_Drop(int client, const char[] command, int args)
{
int weapon = GetEntPropEnt(client, Prop_Data, "m_hActiveWeapon");
if(IsValidEntity(weapon))
{
char szbuffer[15];
GetEdictClassname(weapon, szbuffer, sizeof(szbuffer));
if(StrEqual(szbuffer, "weapon_snowball", false))
return Plugin_Handled;
}
return Plugin_Continue;
}
Работать то работает, но теперь не работает баланс и не пишет, что Т прожал кнопку.Я видимо не так понял, я думал ему вообще выключить нужно скорость. А ему получается просто с его повышенной скорости - нужно поставить дефолтную
Сообщения автоматически склеены:
!mycommand ставит тшнику стандартную скорость - может поставить только он сам себе
public OnPluginStart()
{
HookEvent("round_end", Event_RoundEnd, EventHookMode_Pre);
}
public Action:Event_RoundEnd(Handle:hEvent, const String:sEvName[], bool:bDontBroadcast)
{
if(!bDontBroadcast)
{
return Plugin_Handled;
}
return Plugin_Continue;
}