DayZ-Stat-Server/README.md

138 lines
4.4 KiB
Markdown
Raw Normal View History

2021-02-03 11:40:07 +01:00
## Hi Dayz Survivor !!
## 🔥 STILL in Devlopment ... not ready yet
2021-01-31 13:16:02 +01:00
2021-01-31 19:09:32 +01:00
![https://dayz.echosystem.fr](https://git.echosystem.fr/repo-avatars/191)
2021-02-04 23:42:11 +01:00
☠ TEAM DayZ 🆃🅾🆇 https://dayz.echosystem.fr ☠
2021-01-31 19:09:32 +01:00
2021-01-31 13:16:02 +01:00
2021-02-04 23:42:11 +01:00
# Simple live Stat for Dayz Standalone server.
2021-02-04 22:30:40 +01:00
Inspired by Omega namager template.
> *The [OmegaManager](https://cftools.de/) is a local application to run your DayZ servers. It automatically deploys, runs, watches, restarts and updates your server.*
2021-02-01 18:41:36 +01:00
2021-02-04 23:42:11 +01:00
This page will show your **DayZ server live stat**. It's working with directly on editing **config.php** file and if you have crontab and sql you can have some graph.
2021-01-31 13:16:02 +01:00
2021-02-04 23:42:11 +01:00
## Installation
2021-02-04 22:36:07 +01:00
2021-02-04 23:42:11 +01:00
### #1 Download Archive
2021-02-04 22:36:07 +01:00
Download last archive https://git.echosystem.fr/Erreur32/DayZ-Stat-Server/archive/0.32.zip
2021-02-04 23:42:11 +01:00
# or Use the lastest version with git
git clone https://git.echosystem.fr/Erreur32/DayZ-Stat-Server.git
2021-02-03 11:26:47 +01:00
2021-02-04 23:42:11 +01:00
### #2 Configuration Required
2021-01-31 13:16:02 +01:00
2021-02-01 18:48:19 +01:00
- Set the *config.php* file and fill your `ip` , `port` , `query` and `omega server port mod`.
2021-02-01 18:41:36 +01:00
2021-02-01 18:48:19 +01:00
> $ipserv = "6.6.6.6"; // IP server game
> $portserv = "2302" ; // Game Server Port
> $modport = "2312" ; // Mod port omega (+10)
> $queryport= "27016"; // Queryport
2021-02-04 22:36:07 +01:00
- Omega manager (to check list mod only, but higly suggered !)
2021-02-01 18:41:36 +01:00
2021-02-04 23:42:11 +01:00
### #3 Create SQL `dayzstat` database and insert SQL/table.sql .
- mysql database (to store status server for graph)
Create `dayzstat` database first + user privilege. Checkout Schema database in SQL/table.sql
> -- Adminer 4.7.8 MySQL dump
>
> SET NAMES utf8;
> SET time_zone = '+00:00';
> SET foreign_key_checks = 0;
> SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
>
> SET NAMES utf8mb4;
>
> DROP DATABASE IF EXISTS `dayzstat`;
> CREATE DATABASE `dayzstat` /*!40100 DEFAULT CHARACTER SET utf8mb4 */;
> USE `dayzstat`;
>
> DROP TABLE IF EXISTS `StatServer_5`;
> CREATE TABLE `StatServer_5` (
> `id` int(11) NOT NULL AUTO_INCREMENT,
> `date` datetime DEFAULT NULL ON UPDATE current_timestamp(),
> `name` varchar(74) NOT NULL DEFAULT 'Offline',
> `players` varchar(32) NOT NULL DEFAULT '0',
> `maxplayers` varchar(4) DEFAULT NULL,
> `map` varchar(19) DEFAULT NULL,
> `game` varchar(4) DEFAULT NULL,
> `version` varchar(15) DEFAULT NULL,
> `timeserver` varchar(12) DEFAULT NULL,
> `timespeed` varchar(5) DEFAULT NULL,
> `timespeedn` varchar(5) DEFAULT NULL,
> `battleye` tinytext DEFAULT NULL,
> `hive` varchar(11) DEFAULT NULL,
> `connect` varchar(32) DEFAULT NULL,
> `secure` tinytext DEFAULT NULL,
> `ping` varchar(3) DEFAULT '0',
> PRIMARY KEY (`id`),
> KEY `timeserver` (`timeserver`),
> KEY `date` (`date`)
> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
>
> -- 2021-02-02 14:33:07
- **2 Differents way for your crontab** with Shell or php. Put *statserver_json.sh* in your crontab for mysql insert & creation of json file.
### #4 Crontab to fill Database.
2021-02-01 18:41:36 +01:00
2021-02-04 23:42:11 +01:00
>#### For Shell (SQL insert + json)
> */5 * * * * /usr/sbin/sh /pathto/SQL/statserver_json.sh 2>&1
OR
2021-02-01 18:41:36 +01:00
2021-02-04 23:42:11 +01:00
>#### For php (SQL insert)
> */5 * * * * /usr/local/bin/php -f /your/path/SQL/dayz2json_parser_sql.php 2>&1
2021-02-01 14:45:18 +01:00
2021-02-04 23:02:00 +01:00
2021-02-04 23:42:11 +01:00
Check your time zone here. https://www.php.net/manual/en/timezones.others.php
2021-02-04 18:10:15 +01:00
2021-01-31 13:16:02 +01:00
2021-02-04 23:42:11 +01:00
## Et Voilà !
ENJOY :)
2021-02-03 11:26:47 +01:00
2021-02-04 22:14:31 +01:00
2021-02-03 11:26:47 +01:00
### TODO
2021-02-04 22:30:40 +01:00
- make ~~Regex to catch~~ time serv to auto detect it, and it's fucking hard :p)
- Need to finish SQL part for stat USER
- Admin section with usefull info from your log server.
2021-02-03 11:26:47 +01:00
2021-02-01 18:48:19 +01:00
### Library used:
2021-01-31 13:16:02 +01:00
2021-02-04 23:42:11 +01:00
> [PHP-Source-Query](https://github.com/xPaw/PHP-Source-Query) - PHP library to query servers that implement Steam query protocol (also known as Source Engine Query protocol)
2021-01-31 13:36:35 +01:00
2021-02-01 18:41:36 +01:00
2021-02-01 18:48:19 +01:00
2021-01-31 13:36:35 +01:00
2021-02-01 18:50:33 +01:00
### sample:
2021-01-31 13:44:49 +01:00
2021-02-04 23:42:11 +01:00
> [example live page](https://dayz.echosystem.fr/git-DayZ-server-stat/)
2021-02-01 18:50:33 +01:00
2021-02-04 22:56:54 +01:00
![https://git.echosystem.fr/Erreur32/DayZ-Stat-Server/raw/master/assets/Screenshot_2021-02-04.png](https://git.echosystem.fr/Erreur32/DayZ-Stat-Server/raw/master/assets/Screenshot_2021-02-04.png)
2021-01-31 13:43:54 +01:00
2021-01-31 13:16:02 +01:00
2021-02-03 11:40:07 +01:00
## 🔥 STILL in Devlopment ... not ready for production.
2021-01-31 13:16:02 +01:00
2021-01-31 13:43:54 +01:00
2021-01-31 13:16:02 +01:00
-----
Website: [dayz.echosystem.fr](https://dayz.echosystem.fr)
2021-02-01 16:06:56 +01:00
Author : Erreur32