- Совместимость
-
- Лицензия
- Пиратская [Null]
- Плагин CS:GO который напрямую уже работает с системой, но нужно доработать некоторые функции, а именно где будет получен matchid и произойдет удаление из БД путем срабатывания функции в плагине. Написать нее сложно. Если прям нужно будет, выложу пример =
У вас нет разрешения на просмотр ссылки. Вход или Регистрация
- Плагин CS 1.6 надо пилить новые функции, сама система готова =
У вас нет разрешения на просмотр ссылки. Вход или Регистрация
- Плагин CS:S надо допиливать функции преобразования матча =
У вас нет разрешения на просмотр ссылки. Вход или Регистрация
Всем привет, я являюсь разработчиком данной системы.
Мой пользовательский ник x777xx либо FEGG ))
Кто желает узнать что то подробно про его работу и тому подобное, есть даже вариант показать как это все работает))
Пишите мне в Telegram: @admfegg
Сейчас ведется разработка под CS2, будет полный пакет готов в марте месяце я думаю.
Пока не могу сказать на сколько все будет работать классно. Хотелось бы от Вас услышать предложения по дополнениям данной системки))
Шапка сайта с виджетом поиска!
Страница с игровыми комнатами:
Страница просмотра лайв игры комнат
Сама комната запущенного матча от лица игрока:
Полное описание данного модуля так сказать вот:
- Система поиска матча с игроками
- Система игровых комнат
— Модель отдельного чата для каждой игровой комнаты матча
- Система автовыдачи игрового свободного сервера
- Плагин проверяющий подключение игроков которые регались на матч: это щас актуально под CS:GO (Идет реконструкция под CS2)
- Система бэкапов
- Полное управление матчами и комнатами, играми в целом
- Вывод статистики игроков по определенному матчу
- Вывод статистики матча
- Просмотр сыгранных последних матчей
-LiveTIme просмотр комнаты любым пользователем
-Система автоматическая, сервера работают те которые добавлены в список серверов через сам UniGCMS либо GCMS | - обязательно должны быть rcon пароли на серверах.
-Данный модуль не будет работоспособен без основного плагина CS:GO SourceMod - переделанный с просторов интернета шаровый плагин WarMod )) (Если найду Сурс и плагин в дампах выложу сюда)
Если вдруг у кого то есть желание поддержать мою работу, предложить что то еще, то прошу Вас сюда: Telgram @admfegg
Хочу добавить от себя. Если вдруг кто то желает открыть проект с данной системой под CS2 CS:S - "любой каприс за Ваши деньги" могу помочь с реализацией, не бесплатно "Бесплатный сыр - только в мышеловке".
- Установка и настройка
-
Дополнение: Перейдя в БД а именно в таблицу config в структуре в конце есть поле queue_status -переключение 1 или 0, где 1 - не доступна кнопка "ПОИСК" - будет писать ЗАКРЫТО, для тех работ; Где 0 - Доступна кнопка "ПОИСК" и доступна очередь) Кто смышленый сможет вывести кнопку в админ центр)
А теперь пожалуй начнем с установки и разборов полетов:
Что за что отвечает и как оно работает:
1.Все основные файлы хранятся в папке ваш_сайт/ajax/queue
1.1. Файл: action_a.php - отвечает за преобразование пользователей в игровой комнате, выводит список согласно регистрированному матчу.
1.2.Файл: action_b.php - отвечает за выгрузку сообщений в чат игровой комнаты. С ним связующий файл action_c.php - отвечающий за отправку сообщений в чат в игровой комнате.
1.3.Файл: action_play.php - файл отвечающий за срабатывание клавиши "Поиск", данный файл делает соответствующие записи в БД и запускает очередь.
1.4.Файл: action_play_stop.php - отвечает за срабатывание клавиши "Отменить", данный файл убирает Вас из очереди и удаляет соответствующие записи из БД.
1.5.Файл: check_queue.php - проверяет число пользователей в очереди, и выводит на главную страницу число игроков находящихся в очереди.
1.6.Файл: check_user_queue.php - проверяет ники пользователей вставших в очередь (может отображать, при наведении на число пользователей в поиске, список ников в очереди). изначально отключено. Прикрутить не сложно через редактор шаблона.
1.7.Файл: counts.php - файл отвечающий за привязку игрового сервера к игровой комнате - файл лучше оставить без изменений
1.8.Файл: get_queue_count.php - вот этот файл отвечает за регистрацию комнаты и игроков путем выбора 10 человек из поиска. И он же выдает уникальный код для игровой комнаты
1.9.Файл: match_room.php - отвечает за вывод информации в игровой комнате. А именно статус матча: "Запущен", "Окончен".
1.10.Файл: match_score.php - файл говорит сам за себя. Выводит онлайн счет игры в игровую комнату матча.
1.11.Файл: mess.php - вывод списка сообщений комнаты.
1.12.Файл: queue_cheker.php - проверка на пользователя в очереди, доп.файл к check_queue.php : не важно))
1.13.Файл: set_status_queue.php - задает пользователям статус игры: "Запущен,Играет,Окончен" - не на что не влияет, хотя могу ошибаться не помню)
1.14.Файл: start_match.php - очень важный файл, он выдает игровой сервер, выполняет функцию автоматического запуска игры на сервере через RCON запросы, а также записывает игровой сервер в статус матча по уникальному коду. - НАСТРАИВАЕМЫЙ ФАЙЛ!
1.15.Файл: start_match_server.php - файл отвечает за создания .json файла для дальнейшей подгрузки матча с указанными игроками из игровой комнаты. Он создает в папке matchs файл с уникальным кодом xxxxx.json - где указываются все настройки матча: Карты для выбора, стим ид, список игроков, команд и тд тп! Файл срабатывает с файлом start_match.php
1.20A. Интересные папки находиться в ajax/queue/ - и эти папки SourceQuery и Vendor - это библиотеки которые выполняют функцию запросов RCON На сервер. Актуально по сей день))
2.0. Игровые комнаты: Они выдаются каждому матчу со своим уникальным кодом, и номером комнаты, также эти комнаты отслеживаются по адресу: https://ваш_сайт.xx/playmm - на этой старнице, пользователи с флагами администратора, могут удалять игровые комнаты, пользователи с обычными правами могут просматривать в лайве комнаты, работает по принципу запроса через ID комнаты - https://ваш_сайт.xx/elo_stats?id=10001 где id= это айди созданной комнаты!
2.1. Виджет на сайте с выводом информации о наличии игроков в поиске, о наличии игровых серверов и их количество, а также сколько сейчас проходит матчей.
2.2. Используется основной плагин под CS:GO - GET5 System - от разработчика splewis и работает она только под ксго. Но мною была система немного переделана под этот модуль. И исходных файлов возможно не осталось, ни плагина и самого source кода. (Вообще данный модуль можно реализовать спокойной под любую версию игры, от CS1.6 до CS2)
НА ЭТОМ ПОЖАЛУЙ ВСЕ! - основные файлы указаны, и расписаны. В дампе который выложили ранее, есть некоторые лишние файлы, не суть)
Переходим на установку данной системы
1.Нам нужны прямые руки, и голова на плечах - шутка.... А может и нет!
2.Исходные файлы модуля, загружаются согласно расположению файлов по папке ajax/queue/
3.В базу данных вноситься 4-основных таблицы для работы модуля. это match_room, queue, queue_match, match_room_message.
4.Создается через базу данных 3 новые страницы системные это: elo_stats и match_room, и playmm
5.Загружаем в шаблон также 3 основных файла аналогичные страницам - адаптировано под шаблон DarkMound
6.Добавляем этот код где хотим видеть виджет с кнопкой "Поиск", а также информацию о серверах.
ВОТ САМ КОД!:<li class="balance" style="border-style: solid 1px;"> <?php $STHX = $pdo->prepare("SELECT * FROM `servers` WHERE `game` = 'Counter-Strike: Global Offensive'"); $row = $STHX->fetch(); $STHX->execute(); $insertedRows = $STHX->rowCount(); ?> <i class="fa-solid fa-server fa-beat" aria-hidden="true" style="margin-right:10px;color:#05eefe;"></i><?php echo $insertedRows;?> <?php $STH = $pdo->query("SELECT * FROM `queue` ORDER BY `id` DESC ");$STH->execute(); $list = $STH->fetchAll(PDO::FETCH_ASSOC);?> <?php $STHZ = $pdo->prepare("SELECT * FROM `match_room` WHERE `status` = 4"); $STHZ->setFetchMode(PDO::FETCH_OBJ); $STHZ->execute(); $insertedRows = $STHZ->rowCount();?> <i class="fa-solid fa-gamepad fa-beat" aria-hidden="true" style="margin-right:10px;margin-left:10px;color:#05eefe;"></i><?php echo $insertedRows;?> <i class="fas fa-spinner fa-spin" aria-hidden="true" style="margin-right:10px;margin-left:10px; color:#05eefe;"></i><b id="count_queue"></b> <?php $STHQQ = $pdo->prepare("SELECT * FROM `config` WHERE `id` = '1'"); $STHQQ->execute(); $STHQQ->setFetchMode(PDO::FETCH_OBJ); $rowa = $STHQQ->fetch(PDO::FETCH_ASSOC); $queue_status = $rowa['queue_status']; $STHZ = $pdo->prepare("SELECT * FROM `queue` WHERE `login`= '{login}' LIMIT 1"); $STHZ->setFetchMode(PDO::FETCH_OBJ); $row = $STHZ->fetch(); $STHZ->execute(); $insertedRows = $STHZ->rowCount(); $STHA = $pdo->prepare("SELECT * FROM `queue_match` WHERE `login`= '{login}' AND `status` = 1 LIMIT 1"); $STHA->setFetchMode(PDO::FETCH_OBJ); $rows = $STHA->fetch(); $STHA->execute(); $insertedRowses = $STHA->rowCount(); if($insertedRows <= 0 && $insertedRowses <= 0 && $queue_status != 0) { ?> <a href="../" id="button" class="pursee-button" style="width: auto;height: 30px;text-align: center;padding: 10px;background:#009000;">▶ ИГРАТЬ</a> <?php } else if($insertedRows > 0 && $queue_status != 0){ ?> <a href="../" id="buttons" class="pursee-button" style="width: auto;height: 30px;text-align: center;padding: 10px;">🗙 ОТМЕНИТЬ</a> <?php } else if($insertedRowses > 0 && $insertedRows <= 0){ ?> <a href="../match_room" class="pursee-button" style="width: auto;height: 30px;text-align: center;padding: 10px; background:orange;">▶ В МАТЧЕ</a> <?php } else if ($queue_status != 1) { ?> <a class="pursee-button" style="width: auto;height: 30px;text-align: center;padding: 10px; background:#681c23;">🛠 ЗАКРЫТО</a> <?php } ?> </li>
<!-- ОЧЕРЕДЬ СКРИПТЫ -->
<script src="{site_host}ajax/queue/queue.js"></script>
<!--ОООООО-->
Вуаля, и у нас все готово.