Sign inSign up

evilru/quake3-vsp-stats

By evilru

•Updated over 1 year ago

Quake III Arena log analyzer/stats generator

Image
1

1.3K

evilru/quake3-vsp-stats repository overview

⁠VSP - Quake 3 ExcessivePlus Community version

VSP Stats Game Log Processor - Quake 3 ExcessivePlus Community version 0.45-xp-1.1.2, based on the VSP Stats Processor 0.45 by Myrddin.

Related GitHub repository: https://github.com/evilru/quake3-vsp-stats⁠.

⁠How To run the Docker Compose Stack

  1. copy docker-compose.yml⁠ to your disk
  2. configure the container (see below)
  3. run the docker compose stack (from the folder where you placed docker-compose.yml)
docker compose up -d

The configured games.log will be checked every 15 minutes for new games.

⁠Configuration

The following configuration options need to be done in the docker-compose.yml⁠.

⁠Logfile

Mount your games.log.
Needs to be placed in the volumes section of the web service.

services:
  web:
    volumes:
        - /path/to/your/games.log:/vsp/games.log
⁠DB configuration

Make sure to set username and password for the database!

services:
  db:
    environment:
      MYSQL_USER:
      MYSQL_PASSWORD:
  web:
    environment:
      DB_USERNAME:
      DB_PASSWORD:
⁠VSP configuration

The parser can be configured with the following ENV variabels. They need to be placed in environment section of the web service.

⁠LOGTYPE

default: q3a-osp
The parser supports the following values:

q3a              Quake 3 Arena
q3a-battle       Quake 3 Arena BattleMod
q3a-cpma         Quake 3 Arena CPMA (Promode)
q3a-freeze       Quake 3 Arena (U)FreezeTag etc.
q3a-lrctf        Quake 3 Arena Lokis Revenge CTF
q3a-osp          Quake 3 Arena OSP
q3a-ra3          Quake 3 Arena Rocket Arena 3
q3a-threewave    Quake 3 Arena Threewave
q3a-ut           Quake 3 Arena UrbanTerror
q3a-xp           Quake 3 Arena Excessive Plus
⁠CHECK_UNIQUE_GAMEID

default: 1
Check uniqueness of game start date, set to 0 if log doesn't have server date information

⁠TABLE_PREFIX

default: vsp_
The table prefix used in the database

⁠DB_HOSTNAME

default: db
This is the internal hostname of the dockerhost, no need to change that

⁠DB_NAME

default: vsp
If not available, this database will be created on the first run.
Should be the same as MYSQL_DATABASE.

⁠DB_USERNAME

Username used to connect to the database.
Should be the same as MYSQL_USER.

⁠DB_PASSWORD

Password used to connect to the database.
Should be the same as MYSQL_PASSWORD.

⁠VSP_WEB_PASSWORD

No default value, to enable this feature, set a password with at least 6 characters.

All VSP commands can be called from the commandline and from the browser. The docker image comes with the following cronjob⁠.

The webinterface is available under the following url: http://yourserver.com/vsp.php⁠. Make sure to set a password in password.inc.php⁠.

⁠VSP Stats page configuration

The VSP Stats page can be configured with the following ENV variabels. They need to be placed in environment section of the web service.

⁠SERVER_TITLE

default: HERE GOES YOUR SERVER TITLE

⁠SERVER_NAME_IP

default: Your Server Name and IP goes here

⁠SERVER_GAME_MOD

default: Your Game and Mod type goes here

⁠SERVER_ADMINS

default: List your admins here

⁠SERVER_EMAIL_IM

default: List your E-Mail and/or IM account here

⁠WEB_SITE_ADDRESS

default: http://my.web_site_goes_here.com

⁠WEB_SITE_NAME

default: My web site name goes here

⁠SERVER_QUOTE

default: My quote goes here

⁠DEFAULT_SKIN

default: fest
The skin value will be stored in a cookie, this value will be used if no cookie is present.

The theme supports the following values:

  • avalanche
  • avalanche-b
  • avalanche-i
  • camo
  • cyber
  • evilsmurfs
  • f8tal-b
  • fest
  • ignited
  • sssp
  • swat
  • twat
  • xp
⁠Header images

Mount your own images.
Needs to be placed in the volumes section of the web service.

services:
  web:
    volumes:
      - /path/to/your/server.gif:/vsp/pub/images/server.gif
      - /path/to/your/logo.gif:/vsp/pub/images/logo.gif

⁠Extended configuration with multiple logfiles

You can configure the vsp container like you would do it without docker by adding additional configuration files.
Please note: only the cfg-default.php in the container will pickup the environment variables.

  1. Create a copy of pub/configs/cfg-default.php⁠, update the database configuration and set a different table_prefix.
    Mount it into the image.

    services:
      web:
        volumes:
          - /path/to/your/cfg-ra3.php:/vsp/pub/configs/cfg-ra3.php
    
  2. Mount your games.log

    services:
      web:
        volumes:
            - /path/to/your/ra3.log:/vsp/ra3.log
    
  3. Copy the import script⁠ and add a call for your configuration

    php /vsp/vsp.php -c /vsp/pub/configs/cfg-ra3.php -l q3a-ra3 -p savestate 1 ra3.log
    
  4. Mount your import script

    services:
      web:
        volumes:
            - /path/to/your/import.sh:/vsp/docker/import.sh
    
  5. Call it from the browser

    http://yourserver.com/pub/themes/bismarck/index.php?config=cfg-ra3.php⁠

Tag summary

Content type

Image

Digest

sha256:f59ff44cc…

Size

192.3 MB

Last updated

over 1 year ago

docker pull evilru/quake3-vsp-stats