A set of tools to help you with running a Project Zomboid game server (Linux only)

Overview

Project Zomboid Server Tools

A set of tools to help you with running a Project Zomboid game server (Linux only).

Features

  • Install Project Zomboid Dedicated Server easily in a single command.
  • Restart Project Zomboid Dedicated Server automatically when a mod is updated on Steam workshop.
  • Manage multiple Project Zomboid Dedicated Server running on the same machine.

Tools

Once Project Zomboid Server Tools have been installed successfully, you will have access to following commands:

  • pzinstall: Install Project Zomboid Dedicated Server for the current user
  • pzserver: Start Project Zomboid Dedicated Server
  • pzlog: Show console output of Project Zomboid Dedicated Server
  • pzrestarter: Restart Project Zomboid Dedicated Server when it detects a mod has been updated on Steam workshop

Install

To install Project Zomboid Server Tools, run the following commands:

cd "${HOME}"
git clone https://github.com/quarantin/pz-server-tools
cd pz-server-tools
./bin/install

Configuration

Edit the file /etc/pz-server-tools/config.json as root:

sudo nano /etc/pz-server-tools/config.json

Add each system user that is running a Project Zomboid Dedicated Server to the list under "pzserver". For example if you have two servers running with users pzuser1 and pzuser2, the config.json should look like this:

{
	"pzservers": [
		"pzuser1",
		"pzuser2
	]
}

One you're done editing the configuration, run the following command to check for syntax errors:

cd "${HOME}"
cd pz-server-tools
./bin/checkconfig

By default, Project Zomboid Server Tools are configured to check for mod updates once per hour. If that doesn't suit you, edit the file /etc/cron.d/pz-server-tools as root:

sudo nano /etc/cron.d/pz-server-tools

Update

To update Project Zomboid Server Tools, run the following commands:

cd "${HOME}"
cd pz-server-tools
./bin/update

Uninstall

If you want to uninstall Project Zomboid Server tools, run the following commands:

cd "${HOME}"
cd pz-server-tools
./bin/uninstall
Comments
  • Error installing Project Zomboid Server Tools

    Error installing Project Zomboid Server Tools

    When installing on a Ubuntu server (#31~20.04.1-Ubuntu SMP Fri Jan 14 14:37:50 UTC 2022)

    [email protected]:~$ sudo useradd --create-home --shell /bin/bash pzstadmin
    [email protected]:~$ sudo passwd pzstadmin
    New password:
    Retype new password:
    passwd: password updated successfully
    [email protected]:~$ sudo usermod -aG sudo pzstadmin
    

    The ./pzst/pzst install command outputs a permission denied error after new shell.

    [email protected]:~$ sudo -i -u pzstadmin
    To run a command as administrator (user "root"), use "sudo <command>".
    See "man sudo_root" for details.
    
    [email protected]:~$ git clone https://github.com/quarantin/pz-server-tools
    Cloning into 'pz-server-tools'...
    remote: Enumerating objects: 1768, done.
    remote: Counting objects: 100% (830/830), done.
    remote: Compressing objects: 100% (436/436), done.
    remote: Total 1768 (delta 562), reused 596 (delta 362), pack-reused 938
    Receiving objects: 100% (1768/1768), 224.06 KiB | 8.96 MiB/s, done.
    Resolving deltas: 100% (1133/1133), done.
    [email protected]:~$ cd pz-server-tools
    [email protected]:~/pz-server-tools$ ./pzst/pzst install
    [sudo] password for pzstadmin:
    [*] Updating package cache
    [*] Upgrading packages
    Extracting templates from packages: 100%
    [*] Installing new package `jq`
    [*] Installing new package `python3-venv`
    [*] Installing new package `sqlite3`
    [*] Installing new package `unzip`
    [*] Adding system user: pzst
    [*] Creating virtual environment
    [*] Installing Project Zomboid Server Tools
    mkdir: cannot create directory ‘/home/pzst’: Permission denied
    /usr/local/bin/pzst_config: line 19: /home/pzst/.pzst/config.json: No such file or directory
    [email protected]:~/pz-server-tools$
    
    opened by danilo1105 12
  • Auto restart not working

    Auto restart not working

    I just installed pzst tools on a new server. Everything is working except the auto restart schedule in the config.json isn't taking effect. I'm been having to manually restart the server.

    opened by smithers54 11
  • ProjectZomboid64.json and crontab are resetting to factory settings on planned restarts

    ProjectZomboid64.json and crontab are resetting to factory settings on planned restarts

    After moving servers and reinstalling pz-server-tool on the new one, we noticed that other jobs we add to the pzserver1 crontab AND ProjectZomboid64.json are being reset frequently to factory settings. (EDIT Jul 5: it happens on the planned restarts defined at /etc/pzst/config.json).

    This is causing Xmx to reset to 8 GB (we have 128 GB, I'm using 96 GB) and server ends up crashing after a restart.

    opened by johnstsimoes 4
  • Cron error for pzserver1

    Cron error for pzserver1

    This is a clean install on a fresh ubuntu vps and yes, there are some errors.

    I noticed that the cron for pzserver1 is not installed so I took the luxury to input manually myself but when during daily restart, this error pop up and then removed the crons job that I have added.

    OK
    cp: cannot stat '/home/pzstadmin/pz-server-tools/cron/pzserver': Permission denied
    cat: '/home/pzserver1/.pzst/crontabs/*': No such file or directory
    find: The argument to -user should not be empty
    OK
    

    Evidently, it cannot access pzstadmin's home dir which make sense because the permission is "pzstadmin:pzstadmin" w/ 750 and not "pzstadmin:pzst"

    opened by Lu5ck 4
  • restart_delay always zero is causing restarts to take a bit too long

    restart_delay always zero is causing restarts to take a bit too long

    I'm not sure if this is an issue or just a question, but when a mod change is detected and server stops (after the normal countdown) it's taking way longer (maybe close to 10 minutes) than usual for the server to start again. What is the best way to configure restart_delay to, let's say, 1 minute? Thanks!

    opened by johnstsimoes 4
  • unlisted mods

    unlisted mods

    i have mods that are unlisted and apparently checkmod is unable to get the details of the unlisted mods is it possible to fix that or do i hve to make those mods public?

    opened by Lu5ck 3
  • Restarts are hanging

    Restarts are hanging

    pzstartloop seems to be hanging on the daily restart and mod updates.

    It's a fresh install from a few days ago. Until June 12th it was working flawlessly (I've been using pz-server-tools since March) but with the last commits it seems unstable.

    When it's a daily restart or mod update, I see the server shuts down correctly but it doesn't come up. Is there any way I can help looking into it?

    We're using Ubuntu 20.04.

    opened by johnstsimoes 3
  • Don't run this command as root

    Don't run this command as root

    Firstly, The cron jobs for pzst isn't installed, I believe because pzst isn't a user. In any case, I manually added those cron jobs.

    This line is returning an error, not allowing to run as root so what am I suppose to run it as? */10 * * * * root /usr/local/bin/pzstclearbackups

    opened by Lu5ck 3
  • Daily auto restart doesn't seem to be working

    Daily auto restart doesn't seem to be working

    I checked crontab, it seems to be there * * * * * pzupdate

    I checked the /etc/pzst/config.json on both pzstadmin and pzserver1 too Also used pzst checkconfig command. { "daily-restarts": [ "03:00", "09:00", "15:00", "21:00" ], "editor": "nano", "max-backups": 5, "pzservers": [ "pzserver1" ], "restart-sequence": [ 10, 5, 2, 1 ], "user": "pzstadmin", "install": "/home/pzstadmin/pz-server-tools" }

    What am I missing? Some kind of permissions?

    opened by Lu5ck 3
  • Stop command doesn't completely stop server

    Stop command doesn't completely stop server

    Whenever stop command is manually entered, the server will stop but it will also boot itself again. Can you make it completely stop and not boot itself?

    opened by Lu5ck 2
  • Maxmen reset to default every restart

    Maxmen reset to default every restart

    I have increased the maxmem from default 8g to 13g but every restart of the server, it simply reset back to default again.

    According to the official, the json shouldn't reset to default unless the server update or check for new version

    opened by Lu5ck 2
Releases(0.0.1)
A classic alien shooting game.

Space-Invaders A classic alien shooting game. Description An open source game created by me and friends. How to play Install the latest python version

Phạm Thanh Sơn 1 Feb 08, 2022
Game Boy emulator written in Python

If you have any questions, or just want to chat, join us on Discord. It is highly recommended to read the report to get a light introduction to Game B

Mads Ynddal 3.7k Dec 30, 2022
Memory game in Python

Concentration - Memory Game Concentration is a memory game written in Python, inspired by memory-game. Description As stated in the introduction of th

Marco Colonna 0 Jul 21, 2022
WordleHelper suggests words to help players better enjoy the hit game Wordle

WordleHelper Introduction WordleHelper suggests words to help players better enjoy the hit game Wordle. Both the general mode and the hard mode are su

Shao-Yu, Chu 5 Jun 02, 2022
Simple Covid-19 shooter game in python.

Covid_game 🍹 Simple Single Player Covid Game Using Python. 🍹 Has amazing background music theme. 😄 Game Instructions: Initial Health is 5, try to s

Tanya Yadav 2 Aug 05, 2022
A solution program of 24. game.

A solution program of 24. game.

1 Dec 12, 2022
Wordle is a web-based word game. Players have six attempts to guess a five-letter word;

Wordle is a web-based word game. Players have six attempts to guess a five-letter word; feedback is given for each guess, in the form of colored tiles, indicating when letters match or occupy the cor

Abhishek 2 May 21, 2022
Rock Paper Scissors Game with PyQt5

Rock-Paper-Scissors-Game rock paper scissors is a old game that all of us played it but this time let's play with computer Description This is Rock Pa

MohammadAli.HBA 4 Nov 11, 2021
made a life sim game because i was tired of a astray gamedev company, everything here is open-source

Srel made a life sim game because i was tired of a astray gamedev company, everything here is open-source Progress Currently making the cmd-line versi

2 Nov 14, 2021
This is an interactive MiniMap made with Python, PyQT5 & Pytesseract for the game

NWMM-New-World-MiniMap Features: Automatically grabs position from "New World" Instance Live visualisation of player position on MiniMap Circular & re

Nezzquikk 18 Sep 21, 2022
Brax is a differentiable physics engine that simulates environments made up of rigid bodies, joints, and actuators

Brax is a differentiable physics engine that simulates environments made up of rigid bodies, joints, and actuators. It's also a suite of learning algorithms to train agents to operate in these enviro

Google 1.5k Dec 31, 2022
Lutris desktop client in Python / PyGObject

Lutris Lutris is an open source gaming platform that makes gaming on Linux easier by managing, installing and providing optimal settings for games. Lu

Lutris 6.1k Dec 30, 2022
This Country Hangman game written in Python.

country-name-guess-hangman-game This Country Hangman game written in Python. Visit https://example.com to play the game. Description How to play this

Aytaç Kaşoğlu 1 Oct 30, 2021
A Tetris Game for programming education

Tetris Game プログラミング学習を目的とした、ブロックを操作してスコアを競うゲームです。 FAQはこちら。 tutorialはこちら。 実行環境準備 Mac環境 Finder→Application→Utility→Terminalから、ターミナルを起動して以下コマンドを実行する。 # i

11 Dec 01, 2022
AXI Combat is a networked multiplayer game built on the AXI Visualizer 3D engine.

AXI_Combat AXI Combat is a networked multiplayer game built on the AXI Visualizer 3D engine. https://axi.x10.mx/Combat AXI Combat is released under th

. 0 Aug 02, 2022
Play a game of Phazed with a bot or with other players or watch bots play with each other

Phazed Game and Player play a game of Phazed with a bot or with other players or watch bots play with each other Live Demo hosted on repl.it (makes su

Xin Yu 0 Aug 28, 2021
WIP python/pygame 2D zombie shooter

2d-shooter project A single/multiplayer co-op survival small space zombie shooter. If you'd like to contribute, feel free to join the discord! INSTALL

36 Dec 08, 2022
Average Clicker Game (AVG) is a Python made game using tkinter

Average-Clicker-Game Average Clicker Game (AVG) is a Python clicker game not made with pygame but with tkinter, it has worker, worker upgrades, times

Zacky2613 1 Dec 21, 2021
Minecraft Bedrock Server Control GUI

A control dashboard to monitor and control your minecraft bedrock dedicated server through an easy user interface. Created by Nathan-Busse 13 January 2022 Made with Python 3.8

Nathan Busse 3 Dec 11, 2022
Frets on Fire X: a fork of Frets on Fire with many added features and capabilities

Frets on Fire X - FoFiX This is Frets on Fire X, a highly customizable rhythm game supporting many modes of guitar, bass, drum, and vocal gameplay for

FoFiX 377 Jan 02, 2023