Плагин автозаписи демо на клиенте!

ICE

Участник
Сообщения
122
Реакции
27
Привет всем, только учусь кодить на этом движке, вот накрапал код но он не хочет работать, подскажите что не так и как все оптимизировать!

public Plugin:myinfo = {name = "DemoRecord",author = "im"}

public OnMapEnd()
{
for(new i = 1; i <= MaxClients; i++)
if(IsClientInGame(i))
ClientCommand(i, "stop");
}

public OnPlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast)
{
new client = GetClientOfUserId(GetEventInt(event, "userid"));
if(client > 0 && IsClientInGame(client) && GetClientTeam(client) > 0)
{
ClientCommand(client, "record mydem.dem");
PrintToChat(client, " \x04[demo] \x03Внимание!!! Начата запись демо!");
}
}
public OnClientDisconnect(client)
{
ClientCommand(client, "stop");
}

PS. чего-то не нашел спойлера и тега код
PSS Ошибся разделом просьба перенести :(
 
Последнее редактирование:

oxoTHuk

Участник
Сообщения
49
Реакции
18
Тоже долго думал по этому поводу, наконец отписался по этому поводу тут, и меня огорчили, CS:GO не 1.6, нельзя посылать клиентам команды.
Ну и первый линк из гугла:
https://forums.alliedmods.net/showthread.php?t=134158
 

ICE

Участник
Сообщения
122
Реакции
27
И чего теперь как быть?
 

ICE

Участник
Сообщения
122
Реакции
27
Писать демки автоматом на сервере, выкладывать их в общий доступ.
Кому будет надо - найдет и скачает.
Можете ткнуть носом в пример который можно взять? Видел тему здесь, но там нужно очень много всего ставить. Мне нужно плагин который пишет демо по времени и карте, и отсылает на мое фтп. Дело в том что игровые сервера стоят на одной машине, а веб сервер на другой... Где такой плагин найти?
--- Добавлено позже ---
Попробуйте с помощью этого плагина писать демо
PHP:
new bool:g_bIsRecording = false;
#define DEMOPATH "/var/www/danyas/v34_demo/" // Оставьте пустым для записи в папку с игрой
#define DEMOPREFIX "autodemo"
public Plugin:myinfo = {name = "SourceTV Demo Recorder + Uploader",author = "Danyas [Original plugin by Stevo.TVR]"}
public OnPluginStart(){StopRecord();CheckStatus();}
public OnMapEnd(){StopRecord();}
public OnClientPutInServer(client){CheckStatus();}
public OnClientDisconnect_Post(client){CheckStatus();}
public CheckStatus(){if(GetClientCount(true) >= 4){StartRecord();}else if(g_bIsRecording){StopRecord();}}
public StartRecord()
{
    if(!g_bIsRecording)
    {
        decl String:sTime[16], String:sMap[32];
        FormatTime(sTime, sizeof(sTime), "%Y%m%d-%H%M%S", GetTime());GetCurrentMap(sMap, sizeof(sMap));
        ServerCommand("tv_record %s%s-%s-%s", DEMOPATH, DEMOPREFIX, sTime, sMap); //ty R1KO for help define replace
        LogMessage("Recording to %s%s-%s-%s.dem", DEMOPATH, DEMOPREFIX, sTime, sMap); //ty R1KO for help define replace
        g_bIsRecording = true;
    }
}
public StopRecord(){ServerCommand("tv_stoprecord");g_bIsRecording = false;}


В конфиге сервера должно быть:

Видел такой код, но он не отсылает на другой ресурс...
 

Tallanvor

НЕ ПИШУ я плагины!!! И не правлю! И ваще...
Сообщения
1,352
Реакции
554
Можете ткнуть носом в пример который можно взять? Видел тему здесь, но там нужно очень много всего ставить. Мне нужно плагин который пишет демо по времени и карте, и отсылает на мое фтп. Дело в том что игровые сервера стоят на одной машине, а веб сервер на другой... Где такой плагин найти?
Если конкретно под ГО, то тут где-то был шикарный плагин с вебмордой, базой, отправкой на фтп и т.д.

Если не только ГО или неохота париться с веб-частью, то тоже есть способ, при наличии shell-доступа на хост с игровыми серваками
 

ICE

Участник
Сообщения
122
Реакции
27
Если конкретно под ГО, то тут где-то был шикарный плагин с вебмордой, базой, отправкой на фтп и т.д.

Если не только ГО или неохота париться с веб-частью, то тоже есть способ, при наличии shell-доступа на хост с игровыми серваками
Можете дать 2 варианта? Или подскажите по каким запросам делать поиск?
 

Tallanvor

НЕ ПИШУ я плагины!!! И не правлю! И ваще...
Сообщения
1,352
Реакции
554
Сейчас с телефона, искать неудобно.
А второй вариант заклбчается в написании шелл-скрипта, который будет отслеживать состояние демки и по окончанию записи, будет отправлять на фтп.
 

ICE

Участник
Сообщения
122
Реакции
27
Сейчас с телефона, искать неудобно.
А второй вариант заклбчается в написании шелл-скрипта, который будет отслеживать состояние демки и по окончанию записи, будет отправлять на фтп.
Можете, пожалуйста, если вас не затруднит найти и дать мне ссылки? Я думаю много кому интересен данный вопрос!
 

oxoTHuk

Участник
Сообщения
49
Реакции
18
Сам сервер на VDS или на игровом хостинге?
На vds можно легко поднять nginx и расшарить ему папку с демками
 

ICE

Участник
Сообщения
122
Реакции
27
[CS:GO] Автозагрузка демок на сайт - это только для ГО

Скрипт не писал, просто в общих чертах представляю, как он должен выглядеть/работать.

Хотелось бы плагин с веб мордой)))

Сам сервер на VDS или на игровом хостинге?
На vds можно легко поднять nginx и расшарить ему папку с демками

На вдс, подробнее можно?
 

ICE

Участник
Сообщения
122
Реакции
27
Ой я ссылку провтыкал, Спасибо буду пробовать
--- Добавлено позже ---
Подскажите что это // ftp путь до папки со stage
"ftp" "ftp://thresh.hlmod.ru/stage" ?
 

oxoTHuk

Участник
Сообщения
49
Реакции
18
Хотелось бы плагин с веб мордой)))



На вдс, подробнее можно?
Я себе делал так:
кроном собираю демки, и перемещаю их в папку вебсервера.
Если надо, скину скрипт. Можно не переносить ничего, а настроить nginx на отображение только .dem из папки сервера.
Второе делать лень, и вот скрипт:
Это перенос демок в другую папку
Оффтоп
Это плагин записи демок, чтобы сурств нормально писало:
Оффтоп
 
  • Мне нравится
Реакции: ICE

ThreshHNS

Участник
Сообщения
248
Реакции
87
Ой я ссылку провтыкал, Спасибо буду пробовать
--- Добавлено позже ---
Подскажите что это // ftp путь до папки со stage
"ftp" "ftp://thresh.hlmod.ru/stage" ?

Это путь от юзера до папки stage (когда зальешь архив с системой). Прочитай "Усатновку" и вопросы лучше задавать в той теме. :)
 
  • Мне нравится
Реакции: ICE
Сверху Снизу