Web Stats for Half-Life Server
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
2.7 KiB

6 months ago
# HLState <img align="right" width="56" height="56" src="https://github.com/YGGverse/hl-customs/blob/main/icons/yggdrasil/128x128.png?raw=true" alt="HLState" />
6 months ago
6 months ago
Web monitor for Half-Life game servers based on [Xash3D FWGS](https://github.com/FWGS/xash3d-fwgs) masters crawler.
6 months ago
Project initially written to explore [Yggdrasil](https://github.com/yggdrasil-network) servers, but compatible with any other network
6 months ago
6 months ago
## Features
* Live scrape of each server for online status, active map, players total
* Game session info: names, frags, time in game, etc
* Subscription for online updates and players join to server with RSS
* History keeping in SQLite DB for any charts building
* New instances crawler based on multiple master nodes
* Flexible environment settings
## Examples
* `http://94.140.114.89/hl/` - Clearnet
* `http://[201:5eb5:f061:678e:7565:6338:c02c:5251]/hl/` - Yggdrasil
* `http://hl.ygg` - Alfis DNS
6 months ago
## Install
* `apt install git composer curl memcached php php-xml php-intl php-mbstring php-curl php-sqlite3 php-memcached`
6 months ago
* `git clone https://github.com/YGGverse/HLState.git`
* `cd HLState`
* `composer install`
6 months ago
* `php bin/console doctrine:migrations:migrate`
6 months ago
### Setup
6 months ago
* `chown -R www-data:www-data var`
6 months ago
* `cp .env .env.local`
* `crontab -e` > `* * * * * /usr/bin/curl --silent http://localhost/crontab/index &> /dev/null`
6 months ago
6 months ago
### Update
6 months ago
6 months ago
* `git pull`
6 months ago
* `git merge`
6 months ago
* `composer update`
* `php bin/console doctrine:migrations:migrate`
6 months ago
* `APP_ENV=prod APP_DEBUG=0 php bin/console cache:clear`
6 months ago
6 months ago
## Contribution
Please create new branch from main before make PR
* `git checkout main`
* `git checkout -b 'new-commit-branch'`
6 months ago
## License
* Engine sources [MIT License](https://github.com/YGGverse/HLState/blob/main/LICENSE)
## Versioning
[Semantic Versioning 2.0.0](https://semver.org/#semantic-versioning-200)
## Components
* [Symfony Framework](https://symfony.com)
* [SVG icons](https://icons.getbootstrap.com)
* [PHP Source Query](https://github.com/xPaw/PHP-Source-Query)
6 months ago
* [HL-PHP](https://github.com/YGGverse/hl-php)
* [JS-less Graphs PHP](https://github.com/YGGverse/graph-php)
* [Memcached API for PHP](https://github.com/YGGverse/cache-php)
6 months ago
* [Favicons](https://realfavicongenerator.net)
6 months ago
## Support
* [Issues](https://github.com/YGGverse/HLState/issues)
## Blog
* [Mastodon](https://mastodon.social/@YGGverse)
## See also
* [Xash3D FWGS builds for Yggdrasil](https://github.com/YGGverse/xash3d-fwgs/releases)
6 months ago
* [hl-customs](https://github.com/YGGverse/hl-customs) - Media resources for Half-Life customization
* [hl-server](https://github.com/YGGverse/hl-server) - Half-Life server edition by YGGverse
6 months ago
* [pymaster](https://github.com/YGGverse/pymaster) - Refactored master server written in Python