Иконка ресурса

DemoLapse 2 beta

Нет прав для скачивания

xtance

Участник
Сообщения
453
Реакции
723
  • Автор ресурса
  • #1
⚡xtance добавил(а) новый ресурс:

DemoLapse - Запись демок по команде, скачивание их с сайта

По команде /start или /record запишет демку в csgo/demos. Админ с флагом z может остановить запись через /stop
Открывает меню с выбором продолжительности демки (1,2,3,4,5,8 минут).
Каждые 3 дня демки удаляются автоматически. Как и папка, настраивается в исходнике, конфига у плагина нет.
Также умеет автоматически записывать короткую демку, если игрок дал 5 фрагов подряд.

Веб-скрипт требует Linux и SFTP доступ для загрузки демо. Установка его может...

Узнать больше об этом ресурсе...
 

Kruzya

Rust как смысл жизни
Сообщения
12,919
Реакции
10,822
  • Команда форума
  • #3
Запилите под сорсv91?
Там ничего такого специфичного для CS:GO не используется, потому должно и на Сурсе работать. Но. При начале записи сервак будет подфризиваться. Это особенность работы SourceTV в старом движке.
 

xtance

Участник
Сообщения
453
Реакции
723
  • Автор ресурса
  • #4
⚡xtance обновил(а) ресурс DemoLapse новой записью:

Поддержка FTP, поддержка нескольких серверов

Обновилась только веб-часть.
Файл download.php от 1 версии больше не нужен, можно удалить.
В файле demo.php сильно изменился конфиг, стало понятнее. Подробнее опишу в "установке плагина"

Узнать больше об этом обновлении...

Оффтоп
 
Последнее редактирование:

Mr_panica

XenForo one 💖
Сообщения
859
Реакции
414
@⚡xtance, в чём может быть проблема?
На сайте не выводит демку, решил протестить, записал одну.

Данные (тестовый сервер)
Скрытое содержимое для пользователей:


Демка записалась и .txt файл тоже.
Немного запутался в FTP_PATH, в FTP клиенте выглядит так: (пробовал по разному)
1591614868633.png

В .txt <tr><td>Nerf</td><td>14:00, 08/06</td><td>ba_jail_wildwest_v8a1</td><td>60</td><td><button onClick=a()>1400-0806</button></td></tr>

Сайт: https://progameszet.su/demos/demo.php?sk=1

Игра: Team Fortress 2
Хост: MyArena

В php логах:
C-подобный:
[08-Jun-2020 14:09:04 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:14 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:14 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:15 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:15 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:23 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:23 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:24 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:24 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:42 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:42 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:43 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:43 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:43 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:43 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:09:43 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:09:43 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96
[08-Jun-2020 14:15:10 Europe/Moscow] PHP Warning:  ftp_nlist(): listen() failed: Operation not permitted (1) in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 94
[08-Jun-2020 14:15:10 Europe/Moscow] PHP Warning:  Invalid argument supplied for foreach() in /home/m/mrpanica/progameszet.su/public_html/demos/demo.php on line 96

И да, с phpseclib надо что-то делать?)
 

xtance

Участник
Сообщения
453
Реакции
723
  • Автор ресурса
  • #7
@⚡xtance, в чём может быть проблема?
Немного запутался в FTP_PATH, в FTP клиенте выглядит так: (пробовал по разному)
Посмотреть вложение 59744
И да, с phpseclib надо что-то делать?)
Ну я сейчас эти настройки ввёл к себе в конфиг (сейчас удалю, просто на тест) и файл вывелся и скачать получилось
1591629432030.png
Видимо, проблема в хостинге, где находится скрипт, может он не разрешает подобные подключения или ещё что-нибудь ограничивает
Можно попробовать заменить ftp_pasv($ftp, true); на ftp_pasv($ftp, false); (встречается 2 раза в скрипте и отвечает за пассивный режим FTP)

Phpseclib нужен для SFTP, если подключение по FTP то можно его не загружать на сервер.

а автоматически демки могут записываться ?
Каждый матч чтобы писало? Ну, я могу такое добавить, но будет сильно отжирать место на диске. В принципе этот функционал уже был в Auto Recorder от Stevo.TVR (можно поискать на alliedmodders), я это вырезал
 

Mr_panica

XenForo one 💖
Сообщения
859
Реакции
414
Видимо, проблема в хостинге, где находится скрипт, может он не разрешает подобные подключения или ещё что-нибудь ограничивает
Можно попробовать заменить ftp_pasv($ftp, true); на ftp_pasv($ftp, false); (встречается 2 раза в скрипте и отвечает за пассивный режим FTP)
С ftp_pasv($ftp, true); не получилось.
Хостинг - beget, может можно как-то разрешить эти подключения?
Доступ к php.ini есть.

Если нет, то в ТП пойду)
 
Последнее редактирование:
Сообщения
166
Реакции
32
Ну я сейчас эти настройки ввёл к себе в конфиг (сейчас удалю, просто на тест) и файл вывелся и скачать получилось
Посмотреть вложение 59769
Видимо, проблема в хостинге, где находится скрипт, может он не разрешает подобные подключения или ещё что-нибудь ограничивает
Можно попробовать заменить ftp_pasv($ftp, true); на ftp_pasv($ftp, false); (встречается 2 раза в скрипте и отвечает за пассивный режим FTP)

Phpseclib нужен для SFTP, если подключение по FTP то можно его не загружать на сервер.


Каждый матч чтобы писало? Ну, я могу такое добавить, но будет сильно отжирать место на диске. В принципе этот функционал уже был в Auto Recorder от Stevo.TVR (можно поискать на alliedmodders), я это вырезал
это было бы круто
 

LEII4A

Участник
Сообщения
741
Реакции
135
⚡xtance добавил(а) новый ресурс:

DemoLapse - Запись демок по команде, скачивание их с сайта



Узнать больше об этом ресурсе...
Укажите пожалуйста, какой пункт в исходнике отвечает за автозапись демки после пяти фрагов. Что менять и на что?

Там ничего такого специфичного для CS:GO не используется, потому должно и на Сурсе работать. Но. При начале записи сервак будет подфризиваться. Это особенность работы SourceTV в старом движке.
Фризы были, на этом плагине. И писал он демо как то непонятно, захватывая только респавн игрока, пока он выбирал команду. А вот на данном, к удивлению, записывая через меню я фризов не увидел. Единственное, не разобрался как включить автозапись демок. Игра CSS91
 
Последнее редактирование:

justice

Участник
Сообщения
92
Реакции
21
Игрок не записывает демку, но ему пишет "Демка уже пишется"
 

Flames

Flute is coming.
Сообщения
661
Реакции
375
Как он точно работает? Получается игрок пишет /record и пишется демка на сервер? А плагин может писать каждую карту без этой функции? Если да, то замучу одну веб штучку для LR.
 
  • Клоун
Реакции: NaN

fenix28rn

Участник
Сообщения
723
Реакции
72
Укажите пожалуйста, какой пункт в исходнике отвечает за автозапись демки после пяти фрагов. Что менять и на что?
Присоединяюсь
Так это делается?
C-подобный:
for (int i = 0; i <= MaxClients; i++) iFrags[i] = 5;
 

xtance

Участник
Сообщения
453
Реакции
723
  • Автор ресурса
  • #18
@fenix28rn, только это
C-подобный:
bFrags = false;
поменять на
C-подобный:
bFrags = true;
, больше ничего трогать не надо
Прошу обратить внимание что такие демки будут писаться в случае, если от 1 фрага до 5го прошло не более 15 секунд
Сами демки будут складываться в папку /frags а не /demos (см. #define PATH_FRAGS)
Не думал что эта функция будет использоваться, поэтому мало про неё написал
 

fenix28rn

Участник
Сообщения
723
Реакции
72
И можно добавить возможность разных серверов?
То бишь я указал путь для демок в вэб

sFTP
csgo/demos

но хочу ещё и для CS:S

Так будет работать, если я добавлю переменную пути и код дополню?
PHP:
else {
                    $file = $sftp->get(SFTP_PATH_CSS. '/' . $_GET['file'] . '.dem');
                    header('Content-Type: application/download');
                    header('Content-Disposition: attachment; filename="' . $_GET['file'] . '.dem' . '"');
                    header("Content-Length: " . strlen($file));
                    echo $file;
                }

--------------
Если на одной и той же карте игрок делает несколько раз превышение килов, то демка перезаписывается.
Можно чтобы все демки сохраняло?

--------------
демки торможено как-то появляются на сайте.
на сервере на одном нормально, на другом тоже торможено

--------------
и можно дату по-красивее сделать, например так
03-55_21.02.2021
 
Последнее редактирование:

xtance

Участник
Сообщения
453
Реакции
723
  • Автор ресурса
  • #20
Так будет работать, если я добавлю переменную пути и код дополню?
Ну если всё правильно прописано то будет, почему нет, попробовать в любом случае можно)

Про перезапись демки. Да, сейчас заглянул в код и понял почему так происходит.
В функции Record_Frags в названии демо только карта и ник игрока. Можно добавить дату и будет нормально (примерно так):

C-подобный:
void Record_Frags(int iClient){
    if (!bRecording){
        char text[256], time[16];
        FormatTime(time, sizeof(time), "%H%M-%d%m", GetTime());
        FormatEx(text, sizeof(text), "%s_%N_FRAGS_%s", sMap, iClient, time);
        ReplaceString(text, sizeof(text), "/", "-", false);
        ReplaceString(text, sizeof(text), "/", "-", false);
        ReplaceString(text, sizeof(text), ".", "", false);
        CreateTimer(15.0, StopDemo);
        ServerCommand("tv_record \"%s/%s\"", PATH_FRAGS, text);
        bRecording = true;
    }
}

демки торможено как-то появляются на сайте

Ну, веб-скрипт на их появление никак не влияет, он просто читает директорию по FTP/SFTP, если файл существует он там будет виден.

дату по-красивее сделать

Можно, см. в плагине строчки с FormatTime
Но с этим надо осторожно, надо учитывать запрещенные символы в названии файла, а также то, что ксго может не открывать демо с символами в названии (придется ручками переименовывать)
Точный список таковых символов не помню.
 
Сверху Снизу