DayZ-Stat-Server/README.md

128 lines
3.8 KiB
Markdown
Raw Normal View History

2021-02-03 11:40:07 +01:00
## Hi Dayz Survivor !!
2021-02-05 23:27:57 +01:00
## 🔥 STILL in Development
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
2021-02-05 23:24:31 +01:00
Download last archive https://git.echosystem.fr/Erreur32/DayZ-Stat-Server/archive/0.32.zip
2021-02-04 22:36:07 +01:00
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-06 13:51:08 +01:00
- Set the *config.php* file in *config* directory 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
2021-02-05 13:21:22 +01:00
> -- Adminer 4.7.8 MySQL dump
2021-02-04 23:42:11 +01:00
>
2021-02-05 13:21:22 +01:00
> SET NAMES utf8;
> SET foreign_key_checks = 0;
> SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
2021-02-04 23:42:11 +01:00
>
2021-02-05 13:21:22 +01:00
> SET NAMES utf8mb4;
2021-02-04 23:42:11 +01:00
>
2021-02-05 13:21:22 +01:00
> 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,
> `mod` 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-05 10:22:08
2021-02-04 23:42:11 +01:00
>
2021-02-06 13:51:08 +01:00
- **2 Differents way for your crontab** with Shell or php (recommended).
2021-02-04 23:42:11 +01:00
### #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)
2021-02-06 13:51:08 +01:00
> */5 * * * * /usr/sbin/sh /pathto/config/statserver_json.sh 2>&1
2021-02-04 23:42:11 +01:00
2021-02-05 23:27:57 +01:00
OR (recommended)
2021-02-01 18:41:36 +01:00
2021-02-04 23:42:11 +01:00
>#### For php (SQL insert)
2021-02-06 13:51:08 +01:00
> */5 * * * * /usr/local/bin/php -f /yourpath.../config/dayz2json_parser_sql.php 2>&1
2021-02-01 14:45:18 +01:00
2021-02-04 23:02:00 +01:00
2021-02-05 23:27:57 +01:00
Check your time zone here. https://www.php.net/manual/en/timezones.others.php and adapt in dayz2json_parser_sql.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-05 23:27:57 +01:00
- Need to finish SQL part for stat USER NAME ;)
2021-02-04 22:30:40 +01:00
- 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-02-05 23:27:57 +01:00
> Morris - library for graph
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-01-31 13:43:54 +01:00
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