diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 000000000..ef3ef8bd9
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,13 @@
+# EditorConfig helps developers define and maintain consistent coding styles between different editors and IDEs.
+# Atom: Please assure your Atom's config setting Tab Type is set to auto, otherwise Atom-EditorConfig may not work as expected. Also disable whitespace package.
+# http://editorconfig.org/
+
+root = true
+
+[*]
+charset = utf-8
+indent_style = tab
+indent_size = 4
+trim_trailing_whitespace = true
+end_of_line = lf
+insert_final_newline = true
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 000000000..802343b27
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,22 @@
+# crlf line endings for text files
+* text eol=lf
+
+# Denote all files that are truly binary and should not be modified.
+*.png binary
+*.jpg binary
+*.so.6 binary
+
+# Custom for Visual Studio
+*.cs diff=csharp
+
+# Standard to msysgit
+*.doc diff=astextplain
+*.DOC diff=astextplain
+*.docx diff=astextplain
+*.DOCX diff=astextplain
+*.dot diff=astextplain
+*.DOT diff=astextplain
+*.pdf diff=astextplain
+*.PDF diff=astextplain
+*.rtf diff=astextplain
+*.RTF diff=astextplain
\ No newline at end of file
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 000000000..e6555a40e
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,46 @@
+---
+name: Bug report
+about: Found a bug? Raise a report
+
+---
+Follow **[this guide](https://linuxgsm.com/support/#guide)** to make sure you post the correct info.
+For general support visit the **[LinuxGSM-Support](https://github.com/GameServerManagers/LinuxGSM-Support)**.
+
+Issues here are **ONLY** for:
+* LinuxGSM bugs
+* feature suggestions
+* code contributions
+
+Issues here are **NOT** for:
+* General support
+* Specific game server issues (e.g CS:GO, TF2)
+* Dedicated server issues (e.g Ubuntu, CentOS)
+* Anything not directly related to LinuxGSM development
+
+Any general support issues on GitHub will be migrated to [LinuxGSM-Support](https://github.com/GameServerManagers/LinuxGSM-Support).
+
+*Please use the template below*
+
+## User Story
+
+As a [user description], I want [desired action] so that [desired outcome].
+
+## Basic info
+
+* Distro: [Ubuntu 18.04]
+* Game: [Garry's Mod]
+* Command: [Monitor]
+
+## Further Information
+
+A clear description of what the bug is and any ideas on how to resolve it. Plus any further context that might be relevant to the issue.
+
+## To Reproduce
+
+Steps to reproduce the behaviour:
+1. Go to '...'
+2. Click on '....'
+3. Scroll down to '....'
+4. See error
+
+## Expected behaviour
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644
index 000000000..0f2ccde58
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,40 @@
+---
+name: Feature request
+about: Suggest an idea for this project
+
+---
+Follow **[this guide](https://linuxgsm.com/support/#guide)** to make sure you post the correct info.
+For general support visit the **[LinuxGSM-Support](https://github.com/GameServerManagers/LinuxGSM-Support)**.
+
+Issues here are **ONLY** for:
+* LinuxGSM bugs
+* feature suggestions
+* code contributions
+
+Issues here are **NOT** for:
+* General support
+* Specific game server issues (e.g CS:GO, TF2)
+* Dedicated server issues (e.g Ubuntu, CentOS)
+* Anything not directly related to LinuxGSM development
+
+Any general support issues on GitHub will be migrated to [LinuxGSM-Support](https://github.com/GameServerManagers/LinuxGSM-Support).
+
+*Please use the template below*
+
+## User Story
+
+As a [user description], I want [desired action] so that [desired outcome].
+
+## Basic info
+
+* Distro: [Ubuntu 18.04]
+* Game: [Garry's Mod]
+* Command: [Monitor]
+
+## Further Information
+
+A clear description of what the feature is and any ideas on how to achieve this.
+
+## Further Reading
+
+Provide any useful documentation or resources that might help.
diff --git a/.github/ISSUE_TEMPLATE/new-server-request.md b/.github/ISSUE_TEMPLATE/new-server-request.md
new file mode 100644
index 000000000..d27b3b497
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/new-server-request.md
@@ -0,0 +1,29 @@
+---
+name: New server request
+about: Suggest a new game server to be added
+
+---
+
+## What game server would you like adding?
+
+[game server]
+
+## Can you link to any tutorials or guides?
+
+Provide any useful documentation or resources that might help.
+
+## Is the server on Steam?
+
+* [ ] Yes
+* [ ] No
+
+If yes Use SteamDB to get the appid. (https://steamdb.info).
+
+[appid]
+
+## Is the server supported on Linux?
+
+We only support Linux servers and do not support Wine.
+
+* [ ] Yes
+* [ ] No
\ No newline at end of file
diff --git a/.github/lock.yml b/.github/lock.yml
new file mode 100644
index 000000000..dd136ecdc
--- /dev/null
+++ b/.github/lock.yml
@@ -0,0 +1,38 @@
+# Configuration for Lock Threads - https://github.com/dessant/lock-threads
+
+# Number of days of inactivity before a closed issue or pull request is locked
+daysUntilLock: 365
+
+# Skip issues and pull requests created before a given timestamp. Timestamp must
+# follow ISO 8601 (`YYYY-MM-DD`). Set to `false` to disable
+skipCreatedBefore: false
+
+# Issues and pull requests with these labels will be ignored. Set to `[]` to disable
+exemptLabels: []
+
+# Label to add before locking, such as `outdated`. Set to `false` to disable
+lockLabel: false
+
+# Comment to post before locking. Set to `false` to disable
+lockComment: >
+ This thread has been automatically locked since there has not been
+ any recent activity after it was closed. Please open a new issue for
+ related bugs.
+
+# Assign `resolved` as the reason for locking. Set to `false` to disable
+setLockReason: false
+
+# Limit to only `issues` or `pulls`
+# only: issues
+
+# Optionally, specify configuration settings just for `issues` or `pulls`
+# issues:
+# exemptLabels:
+# - help-wanted
+# lockLabel: outdated
+
+# pulls:
+# daysUntilLock: 30
+
+# Repository to extend settings from
+# _extends: repo
\ No newline at end of file
diff --git a/.github/no-response.yml b/.github/no-response.yml
new file mode 100644
index 000000000..34cf8d447
--- /dev/null
+++ b/.github/no-response.yml
@@ -0,0 +1,10 @@
+# Configuration for probot-no-response - https://github.com/probot/no-response
+
+# Number of days of inactivity before an Issue is closed for lack of response
+daysUntilClose: 60
+# Label requiring a response
+responseRequiredLabel: "needs more info"
+# Comment to post when closing an Issue for lack of response. Set to `false` to disable
+closeComment: >
+ This issue has been automatically closed because there has been no response
+ to this issue and is now stale.
\ No newline at end of file
diff --git a/.github/potential-duplicates.yml b/.github/potential-duplicates.yml
new file mode 100644
index 000000000..9c973de06
--- /dev/null
+++ b/.github/potential-duplicates.yml
@@ -0,0 +1,13 @@
+# Label name and color to set, when potential duplicates are detected
+issueLabel: "duplicate"
+labelColor: 579e01
+
+# If similarity is higher than this threshold, issue will be marked as duplicate
+threshold: 0.60
+
+# Comment to post when potential duplicates are detected
+referenceComment: >
+ Potential duplicates:
+ {{#issues}}
+ - [#{{ number }}] {{ title }} ({{ accuracy }}%)
+ {{/issues}}
\ No newline at end of file
diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml
new file mode 100644
index 000000000..1387c5e19
--- /dev/null
+++ b/.github/release-drafter.yml
@@ -0,0 +1,4 @@
+template: |
+ ## Changelog
+
+ $CHANGES
\ No newline at end of file
diff --git a/.github/request-info.yml b/.github/request-info.yml
index a1441d5cc..1b354d9f7 100644
--- a/.github/request-info.yml
+++ b/.github/request-info.yml
@@ -2,7 +2,9 @@
# *Required* Comment to reply with
requestInfoReplyComment: >
- We require more information for this issue.
+ 
+ More data is required to assist with this issue
+ or issue template was not used correctly.
https://linuxgsm.com/support/#guide
# *OPTIONAL* default titles to check against for lack of descriptiveness
@@ -12,4 +14,4 @@ requestInfoReplyComment: >
# - updates
# *OPTIONAL* Label to be added to Issues and Pull Requests with insufficient information given
-requestInfoLabelToAdd: Status: needs more info
\ No newline at end of file
+requestInfoLabelToAdd: "needs more info"
\ No newline at end of file
diff --git a/.github/support.yml b/.github/support.yml
index 01cde2963..2f45e92ec 100644
--- a/.github/support.yml
+++ b/.github/support.yml
@@ -1,14 +1,14 @@
# Configuration for support-requests - https://github.com/dessant/support-requests
# Label used to mark issues as support requests
-supportLabel: "Type: support"
+supportLabel: "Outcome: wrong forum"
# Comment to post on issues marked as support requests. Add a link
# to a support page, or set to `false` to disable
supportComment: >
We use the issue tracker exclusively for bug reports and feature requests.
However, this issue appears to be a support request. Please use our
support channels to get help with the project.
- https://linuxgsm.com/support/
+ https://linuxgsm.com/support
# Whether to close issues marked as support requests
close: true
# Whether to lock issues marked as support requests
diff --git a/.github/topissuebot.yml b/.github/topissuebot.yml
new file mode 100644
index 000000000..b02540a2d
--- /dev/null
+++ b/.github/topissuebot.yml
@@ -0,0 +1,4 @@
+# Configuration for top-issue-bot
+labelName: ":thumbsup: Top Issue!"
+labelColor: "f442c2"
+numberOfIssuesToLabel: 5
\ No newline at end of file
diff --git a/.github/welcome.yml b/.github/welcome.yml
index 3d0c15e7d..7a120a2fa 100644
--- a/.github/welcome.yml
+++ b/.github/welcome.yml
@@ -4,18 +4,18 @@
# Comment to be posted to on first time issues
newIssueWelcomeComment: >
- Thanks for opening your first issue. Be sure to follow the issue template! and guide for posting. https://linuxgsm.com/support/#guide
+ Thank you for opening your first issue. Be sure to follow the issue template! and guide for posting. https://linuxgsm.com/support/#guide
# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome
# Comment to be posted to on PRs from first time contributors in your repository
newPRWelcomeComment: >
- Thanks for opening this pull request! Please check out our contributing guidelines.
+ Thank you for opening this pull request! Please check out our contributing guidelines.
# Configuration for first-pr-merge - https://github.com/behaviorbot/first-pr-merge
# Comment to be posted to on pull requests merged by a first time user
firstPRMergeComment: >
- Congrats on merging your first pull request! Thank you for supporting LinuxGSM!
+ Congratulations on merging your first pull request! Thank you for supporting LinuxGSM!
# It is recommend to include as many gifs and emojis as possible
\ No newline at end of file
diff --git a/.github/write-good.yml b/.github/write-good.yml
new file mode 100644
index 000000000..2bdb512ad
--- /dev/null
+++ b/.github/write-good.yml
@@ -0,0 +1,4 @@
+# .github/write-good.yml
+writeGood: true
+alex: true
+spellchecker: true
\ No newline at end of file
diff --git a/.travis.yml b/.travis.yml
index c5bfa204d..c966220f8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,14 +1,15 @@
language: bash
-dist: trusty
+dist: xenial
sudo: required
-
+language: node_js
+node_js:
+ - 10
before_script:
- curl -L "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/shunit2/shunit2-2.1.6.tgz" | tar zx
-
+install:
+ npm install gamedig
addons:
apt:
- sources:
- - ubuntu-toolchain-r-test
packages:
- mailutils
- postfix
@@ -24,6 +25,7 @@ addons:
- ca-certificates
- binutils
- bc
+ - jq
- tmux
- lib32gcc1
- libstdc++6
diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
new file mode 100644
index 000000000..7fe220357
--- /dev/null
+++ b/CODE_OF_CONDUCT.md
@@ -0,0 +1,73 @@
+# Contributor Covenant Code of Conduct
+
+## Our Pledge
+
+In the interest of fostering an open and welcoming environment, we as
+contributors and maintainers pledge to making participation in our project and
+our community a harassment-free experience for everyone, regardless of age, body
+size, disability, ethnicity, sex characteristics, gender identity and expression,
+level of experience, education, socio-economic status, nationality, personal
+appearance, race, religion, or sexual identity and orientation.
+
+## Our Standards
+
+Examples of behavior that contributes to creating a positive environment
+include:
+
+* Using welcoming and inclusive language
+* Being respectful of differing viewpoints and experiences
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Showing empathy towards other community members
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery and unwelcome sexual attention or advances
+* Trolling, insulting/derogatory comments, and personal or political attacks
+* Public or private harassment
+* Publishing others' private information, such as a physical or electronic address, without explicit permission
+* Other conduct which could reasonably be considered inappropriate in a professional setting
+
+## Our Responsibilities
+
+Project maintainers are responsible for clarifying the standards of acceptable
+behavior and are expected to take appropriate and fair corrective action in
+response to any instances of unacceptable behavior.
+
+Project maintainers have the right and responsibility to remove, edit, or
+reject comments, commits, code, wiki edits, issues, and other contributions
+that are not aligned to this Code of Conduct, or to ban temporarily or
+permanently any contributor for other behaviors that they deem inappropriate,
+threatening, offensive, or harmful.
+
+## Scope
+
+This Code of Conduct applies both within project spaces and in public spaces
+when an individual is representing the project or its community. Examples of
+representing a project or community include using an official project e-mail
+address, posting via an official social media account, or acting as an appointed
+representative at an online or offline event. Representation of a project may be
+further defined and clarified by project maintainers.
+
+## Enforcement
+
+Instances of abusive, harassing, or otherwise unacceptable behavior may be
+reported by contacting the project team at me@danielgibbs.co.uk. All
+complaints will be reviewed and investigated and will result in a response that
+is deemed necessary and appropriate to the circumstances. The project team is
+obligated to maintain confidentiality with regard to the reporter of an incident.
+Further details of specific enforcement policies may be posted separately.
+
+Project maintainers who do not follow or enforce the Code of Conduct in good
+faith may face temporary or permanent repercussions as determined by other
+members of the project's leadership.
+
+## Attribution
+
+This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
+available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
+
+[homepage]: https://www.contributor-covenant.org
+
+For answers to common questions about this code of conduct, see
+https://www.contributor-covenant.org/faq
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 5a13b7644..764f21e19 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -9,20 +9,17 @@ Before working on a project we recommend that you create a issue in regards to t
Here are some important resources:
* [Issues Page](https://github.com/GameServerManagers/LinuxGSM/issues) provides a list of areas that could use some work,
- * [Developing LinuxGSM](https://github.com/GameServerManagers/LinuxGSM/wiki/Developing-LGSM) gives a detailed guide on developing LGSM,
- * [LinuxGSM Exit Codes](https://github.com/GameServerManagers/LinuxGSM/wiki/LGSM-Exit-Codes) describes and gives an explanation for exit codes,
- * [gsquery](https://github.com/GameServerManagers/LinuxGSM/wiki/gsquery.py) describes the uses of the gsquery.py file, and
- * [Branching](https://github.com/GameServerManagers/LinuxGSM/wiki/Branching) is our final guide to submitting changes.
+ * [Developer Wiki](https://github.com/GameServerManagers/LinuxGSM/wiki) gives a detailed guide on developing LGSM,
## Testing
Please make sure all the code you write is working properly **before** you create a pull request. Information on debugging can be found in the following document:
+
[Developer Commands](https://github.com/GameServerManagers/LinuxGSM/wiki/Developer-Commands)
-[Debugging your code](https://github.com/GameServerManagers/LinuxGSM/wiki/Developing-LGSM#testing-and-debugging-your-code)
## Submitting changes
-Please send a [GitHub Pull Request to LinuxGSM](https://github.com/GameServerManagers/LinuxGSM/pull/new/develop) with a clear list of what you've done (read more about [pull requests](https://help.github.com/articles/about-pull-requests/)). Please follow our coding conventions (below) and make sure all of your commits are atomic (one feature per commit).
+Please send a [GitHub Pull Request to LinuxGSM](https://github.com/GameServerManagers/LinuxGSM/pull/new/develop) with a clear list of what you've done (read more about [pull requests](https://help.github.com/articles/about-pull-requests)). Please follow our coding conventions (below) and make sure all of your commits are atomic (one feature per commit).
Always write a clear log message for your commits. One-line messages are fine for small changes, but bigger changes should look like this:
diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md
index 7f503c4db..c08b7705a 100644
--- a/ISSUE_TEMPLATE.md
+++ b/ISSUE_TEMPLATE.md
@@ -1,17 +1,15 @@
-Please select the "Preview" tab above to view this message correctly.
-
Follow **[this guide](https://linuxgsm.com/support/#guide)** to make sure you post the correct info.
-For general support visit the **[steam group](https://linuxgsm.com/steam)**
+For general support visit the **[LinuxGSM-Support](https://github.com/GameServerManagers/LinuxGSM-Support)**.
-GitHub is **ONLY** for:
+Issues here are **ONLY** for:
* LinuxGSM bugs
* feature suggestions
* code contributions
-GitHub is **NOT** for:
+Issues here are **NOT** for:
* General support
* Specific game server issues (e.g CS:GO, TF2)
* Dedicated server issues (e.g Ubuntu, CentOS)
* Anything not directly related to LinuxGSM development
-**Any general support issues on GitHub will be closed.**
\ No newline at end of file
+Any general support issues on GitHub will be closed.
diff --git a/LICENSE b/LICENSE
index c6ad3cd89..9bcd64251 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
The MIT License (MIT)
-Copyright (c) 2017 Daniel Gibbs
+Copyright (c) 2018 Daniel Gibbs
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/PULL_REQUEST_TEMPLATE.md b/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 000000000..8e4d37045
--- /dev/null
+++ b/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,23 @@
+# Description
+
+Please include a summary of the change and which issue is fixed.
+
+Fixes #\[issue]
+
+## Type of change
+
+* [ ] Bug fix (change which fixes an issue)
+* [ ] New feature (change which adds functionality)
+* [ ] New Server (new server added)
+* [ ] Refactor (restructures existing code)
+* [ ] This change requires a documentation update
+
+## Checklist
+
+* [ ] My code follows the style guidelines of this project
+* [ ] This pull request links to an issue
+* [ ] This pull request uses the `develop` branch as its base
+* [ ] I have performed a self-review of my own code
+* [ ] I have squashed commits
+* [ ] I have commented my code, particularly in hard to understand areas
+* [ ] I have made corresponding changes to the documentation if required
diff --git a/README.md b/README.md
index c7d0c8beb..7466cc0f9 100644
--- a/README.md
+++ b/README.md
@@ -1,63 +1,52 @@
-
-
-[](https://linuxgsm.com)
-[](https://travis-ci.org/GameServerManagers/LinuxGSM)
-[](http://waffle.io/GameServerManagers/LinuxGSM)
-[](https://linuxgsm.com/discord)
-[](https://github.com/GameServerManagers/LinuxGSM/blob/master/LICENSE)
-[](https://www.gnu.org/software/bash/)
-
-LinuxGSM is the command line tool for quick, simple deployment and management of dedicated game servers.
-
-
Hassle-Free Dedicated Servers
-Game servers traditionally are not easy to manage yourself. Admins often have to spend hours just messing around trying to get their server working. LinuxGSM is designed to be a simple as possible allowing admins to spend less time on management and more time gaming.
-
-Main features
-
- - Backup
- - Console
- - Details
- - Installer (SteamCMD)
- - Monitor
- - Alerts (Email, Pushbullet)
- - Update (SteamCMD)
- - Start/Stop/Restart server
-
-Compatibility
-The Linux Game Server Managers are tested to work on the following Linux distros.
-
- - Debian based (Ubuntu, Mint etc.).
- - Redhat based (CentOS, Fedora etc.).
-
-Other distros are likely to work but are not fully tested.
-Specific Requirements
-
-FAQ
-All FAQ can be found here.
-
-https://github.com/GameServerManagers/LinuxGSM/wiki/FAQ
-Donate
-If you want to donate to the project you can via PayPal. I have had a may kind people show their support by sending me a donation. Any donations you send help cover my server costs and buy me a drink. Cheers!
-
-Useful Links
-
-Social
-
- - Steam Group
- - Discord
- - Twitter
- - Facebook
- - Google+
-
\ No newline at end of file
+
+
+
+
+
+ [](https://linuxgsm.com) [](http://waffle.io/GameServerManagers/LinuxGSM) [](https://travis-ci.com/GameServerManagers/LinuxGSM) [](https://app.codacy.com/app/GameServerManagers/LinuxGSM?utm_source=github.com&utm_medium=referral&utm_content=GameServerManagers/LinuxGSM&utm_campaign=Badge_Grade_Dashboard) [](https://linuxgsm.com/discord) [](https://github.com/GameServerManagers/LinuxGSM/blob/master/LICENSE) [](https://www.gnu.org/software/bash/)
+
+[LinuxGSM](https://linuxgsm.com) is the command line tool for quick, simple deployment and management of dedicated game servers.
+
+## Hassle-Free Dedicated Game Servers
+
+Traditionally game servers are not easy to manage yourself. Admins often have to spend hours just messing around trying to get their server working. LinuxGSM is designed to be as simple as possible allowing admins to spend less time on management and more time gaming.
+
+## Main features
+
+80+ game servers supported
+
+* :truck: Installer
+* :mag: Monitor
+* :phone: Alerts
+* :cloud: Updater
+* :blue_book: Server Details
+* :floppy_disk: Backup
+* :computer: Console
+
+## :penguin: Compatibility
+
+Linux Game Server Managers are tested to work on the following Linux distros.
+
+* Debian based (Ubuntu, Mint etc.)
+* Red Hat based (CentOS, Fedora etc.)
+
+Other distros are likely to work but are not fully tested.
+
+## :wrench: Requirements
+
+Each game server has its own specific dependency requirements, but most require GLIBC and Tmux. Visit the specific game server installation page on the [LinuxGSM](https://linuxgsm.com) website to see dependencies.
+
+* [GLIBC](https://docs.linuxgsm.com/requirements/glibc) >= 2.15 recommended [[specific requirements]](https://docs.linuxgsm.com/requirements/glibc#server-requirements)
+* [Tmux](https://docs.linuxgsm.com/requirements/tmux) >= 1.6 recommended (Avoid Tmux 1.8)
+
+## :blue_book: Documentation
+
+Documentation is found at [linuxgsm.com](https://linuxgsm.com) and [docs.linuxgsm.com](https://docs.linuxgsm.com)
+
+## :question: Support
+
+There are a various ways to get support, check out the [support](https://linuxgsm.com/support/) page to the right support.
+
+## :heart: Donate
+
+If you would like to [donate](https://linuxgsm.com/donate) to the project there are several ways you can, via [PayPal](https://www.paypal.me/dgibbs64), [Patreon](https://www.patreon.com/dgibbs) and [Flattr](https://flattr.com/@dgibbs). I would like to thank everyone who has previously sent a donation. LinuxGSM has been going since 2012 and I have spent 1000s of hours developing and improving the project and continue to regularly add support for new servers.
diff --git a/lgsm/config-default/config-lgsm/arkserver/_default.cfg b/lgsm/config-default/config-lgsm/arkserver/_default.cfg
index 708167946..47189ae12 100644
--- a/lgsm/config-default/config-lgsm/arkserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/arkserver/_default.cfg
@@ -8,16 +8,18 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="7777"
queryport="27015"
rconport="27020"
+# Default Map: TheIsland, Ragnarok, CrystalIsles, Aberration_P, ScorchedEarth_P
+defaultmap="TheIsland"
maxplayers="70"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
-parms="\"TheIsland?listen?MultiHome=${ip}?MaxPlayers=${maxplayers}?QueryPort=${queryport}?RCONPort=${rconport}?Port=${port}?\""
+parms="\"${defaultmap}?AltSaveDirectoryName=${defaultmap}?listen?MultiHome=${ip}?MaxPlayers=${maxplayers}?QueryPort=${queryport}?RCONPort=${rconport}?Port=${port} -automanagedmods\""
}
#### LinuxGSM Settings ####
@@ -25,60 +27,67 @@ parms="\"TheIsland?listen?MultiHome=${ip}?MaxPlayers=${maxplayers}?QueryPort=${q
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="376030"
diff --git a/lgsm/config-default/config-lgsm/arma3server/_default.cfg b/lgsm/config-default/config-lgsm/arma3server/_default.cfg
index 319d73304..c7f9f1187 100644
--- a/lgsm/config-default/config-lgsm/arma3server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/arma3server/_default.cfg
@@ -8,11 +8,11 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="2302"
@@ -31,7 +31,7 @@ servermods=""
# Leave empty for default
bepath=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-ip=${ip} -port=${port} -cfg=${networkcfgfullpath} -config=${servercfgfullpath} -mod=${mods} -servermod=${servermods} -bepath=${bepath} -autoinit -loadmissiontomemory"
}
@@ -41,60 +41,67 @@ parms="-ip=${ip} -port=${port} -cfg=${networkcfgfullpath} -config=${servercfgful
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="233780"
diff --git a/lgsm/config-default/config-lgsm/bb2server/_default.cfg b/lgsm/config-default/config-lgsm/bb2server/_default.cfg
index 8e4b71a98..17014193d 100644
--- a/lgsm/config-default/config-lgsm/bb2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/bb2server/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -21,7 +21,7 @@ maxplayers="20"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game brainbread2 -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +sv_setsteamaccount ${gslt} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -31,60 +31,67 @@ parms="-game brainbread2 -strictportbind -ip ${ip} -port ${port} +clientport ${c
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="475370"
@@ -125,4 +132,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/bbserver/_default.cfg b/lgsm/config-default/config-lgsm/bbserver/_default.cfg
new file mode 100644
index 000000000..0002910f9
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/bbserver/_default.cfg
@@ -0,0 +1,130 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+ip="0.0.0.0"
+port="27015"
+clientport="27005"
+defaultmap="bb_chp4_slaywatch"
+maxplayers="16"
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+parms="-game brainbread -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Updating | https://docs.linuxgsm.com/commands/update
+updateonstart="off"
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="90"
+appidmod="cstrike"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="BrainBread"
+engine="goldsource"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}/brainbread"
+executabledir="${serverfiles}"
+executable="./hlds_run"
+servercfg="${servicename}.cfg"
+servercfgdefault="server.cfg"
+servercfgdir="${systemdir}"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${rootdir}/backups"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${systemdir}/logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/bdserver/_default.cfg b/lgsm/config-default/config-lgsm/bdserver/_default.cfg
index 6aefdd42e..ad5bc4a7b 100644
--- a/lgsm/config-default/config-lgsm/bdserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/bdserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="pve_tomb"
maxplayers="3"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game bdef -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game bdef -strictportbind +ip ${ip} -port ${port} +clientport ${clientpo
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="817300"
@@ -115,4 +122,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/bf1942server/_default.cfg b/lgsm/config-default/config-lgsm/bf1942server/_default.cfg
index 449fa84ac..0323fa414 100644
--- a/lgsm/config-default/config-lgsm/bf1942server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/bf1942server/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+hostServer 1 +dedicated 1"
}
@@ -18,60 +18,67 @@ parms="+hostServer 1 +dedicated 1"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Battlefield: 1942"
diff --git a/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg b/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg
index d291dffd4..d3036144e 100644
--- a/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/bmdmserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -21,7 +21,7 @@ maxplayers="16"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game bms -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +sv_setsteamaccount ${gslt} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -31,60 +31,67 @@ parms="-game bms -strictportbind -ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="346680"
@@ -125,4 +132,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/boserver/_default.cfg b/lgsm/config-default/config-lgsm/boserver/_default.cfg
index 790eb20fc..d9bfd65b2 100644
--- a/lgsm/config-default/config-lgsm/boserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/boserver/_default.cfg
@@ -14,10 +14,7 @@
gslt=""
ip=""
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
-ip=""
-
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-batchmode -nographics -dedicated -configfile=${servercfgfullpath}"
}
@@ -27,60 +24,67 @@ parms="-batchmode -nographics -dedicated -configfile=${servercfgfullpath}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="416880"
@@ -121,4 +125,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/bsserver/_default.cfg b/lgsm/config-default/config-lgsm/bsserver/_default.cfg
index 4de2c7cb2..eacfe5900 100644
--- a/lgsm/config-default/config-lgsm/bsserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/bsserver/_default.cfg
@@ -8,11 +8,11 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -20,7 +20,7 @@ sourcetvport="27020"
defaultmap="duel_winter"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-autoupdate -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -30,60 +30,67 @@ parms="-autoupdate -strictportbind -ip ${ip} -port ${port} +clientport ${clientp
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="228780"
@@ -124,4 +131,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/bt1944server/_default.cfg b/lgsm/config-default/config-lgsm/bt1944server/_default.cfg
index 82befb17c..22b3f4e4d 100644
--- a/lgsm/config-default/config-lgsm/bt1944server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/bt1944server/_default.cfg
@@ -8,12 +8,12 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="7777"
queryport="7780"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="/Game/Maps/Final_Maps/Derailed?Game=/Script/ShooterGame.BombGameMode?listen -log -broadcastip=\"${ip}\" -PORT=${port} -QueryPort=${queryport} -defgameini=\"${servercfgfullpath}\""
}
@@ -23,60 +23,67 @@ parms="/Game/Maps/Final_Maps/Derailed?Game=/Script/ShooterGame.BombGameMode?list
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="805140"
diff --git a/lgsm/config-default/config-lgsm/ccserver/_default.cfg b/lgsm/config-default/config-lgsm/ccserver/_default.cfg
index 898c48558..c85af6137 100644
--- a/lgsm/config-default/config-lgsm/ccserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ccserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="cbe_bunker"
maxplayers="6"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game cure -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-game cure -strictportbind -ip ${ip} -port ${port} +clientport ${clientpo
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="383410"
@@ -120,4 +127,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/cod2server/_default.cfg b/lgsm/config-default/config-lgsm/cod2server/_default.cfg
index ca622987f..c6a7c27f7 100644
--- a/lgsm/config-default/config-lgsm/cod2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/cod2server/_default.cfg
@@ -8,13 +8,13 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="28960"
defaultmap="mp_leningrad"
maxplayers="20"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap}"
}
@@ -24,57 +24,64 @@ parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +se
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Call of Duty 2"
@@ -107,4 +114,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/cod4server/_default.cfg b/lgsm/config-default/config-lgsm/cod4server/_default.cfg
index fd740266a..b87a8ef76 100644
--- a/lgsm/config-default/config-lgsm/cod4server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/cod4server/_default.cfg
@@ -8,15 +8,15 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="28960"
defaultmap="mp_crossfire"
maxplayers="32"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
-parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap}"
+parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set fs_homepath ${serverfiles} +set sv_authorizemode "-1" +set dedicated 1 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap}"
}
#### LinuxGSM Settings ####
@@ -24,57 +24,64 @@ parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +se
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Call of Duty 4"
@@ -107,4 +114,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/codserver/_default.cfg b/lgsm/config-default/config-lgsm/codserver/_default.cfg
index aa1796779..5f1d480c2 100644
--- a/lgsm/config-default/config-lgsm/codserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/codserver/_default.cfg
@@ -8,13 +8,13 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="28960"
defaultmap="mp_neuville"
maxplayers="20"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap}"
}
@@ -24,57 +24,64 @@ parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +se
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Call of Duty"
@@ -107,4 +114,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/coduoserver/_default.cfg b/lgsm/config-default/config-lgsm/coduoserver/_default.cfg
index ba33a4e83..9ed50228e 100644
--- a/lgsm/config-default/config-lgsm/coduoserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/coduoserver/_default.cfg
@@ -8,13 +8,13 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="28960"
defaultmap="mp_cassino"
maxplayers="20"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap}"
}
@@ -24,57 +24,64 @@ parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +se
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Call of Duty: United Offensive"
@@ -107,4 +114,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/codwawserver/_default.cfg b/lgsm/config-default/config-lgsm/codwawserver/_default.cfg
index b9d373e2d..39d21e37e 100644
--- a/lgsm/config-default/config-lgsm/codwawserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/codwawserver/_default.cfg
@@ -8,13 +8,13 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="28960"
defaultmap="mp_castle"
maxplayers="20"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap}"
}
@@ -24,57 +24,64 @@ parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +se
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Call of Duty: World at War"
@@ -107,4 +114,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/csczserver/_default.cfg b/lgsm/config-default/config-lgsm/csczserver/_default.cfg
index 0f7fcdf06..363d82e6b 100644
--- a/lgsm/config-default/config-lgsm/csczserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/csczserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="de_dust2"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game czero -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game czero -strictportbind +ip ${ip} -port ${port} +clientport ${clientp
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
diff --git a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg
index 034d46ae1..fd9865e17 100644
--- a/lgsm/config-default/config-lgsm/csgoserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/csgoserver/_default.cfg
@@ -8,15 +8,17 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
# https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers#Starting_the_Server
-# [Game Modes] gametype gamemode
-# Arms Race 1 0
-# Classic Casual 0 0
-# Classic Competitive 0 1
-# Custom 3 0
-# Deathmatch 1 2
-# Demolition 1 1
+# [Game Modes] gametype gamemode mapgroup (you can mix these across Game Modes, but use only one)
+# Arms Race 1 0 mg_armsrace
+# Classic Casual 0 0 mg_casualsigma, mg_casualdelta
+# Classic Competitive 0 1 mg_active, mg_reserves, mg_hostage, mg_de_dust2
+# Custom 3 0
+# Deathmatch 1 2 mg_deathmatch
+# Demolition 1 1 mg_demolition
+# Wingman 0 2
+# Danger Zone (FreeForAll) 6 0 mg_dz_blacksite
gametype="0"
gamemode="0"
mapgroup="mg_active"
@@ -33,16 +35,15 @@ tickrate="64"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Optional: Workshop Parameters
-# https://developer.valvesoftware.com/wiki/CSGO_Workshop_For_Server_Operators
-# To get an authkey visit - http://steamcommunity.com/dev/apikey
-authkey=""
-ws_collection_id=""
-ws_start_map=""
+## Workshop Parameters | https://developer.valvesoftware.com/wiki/CSGO_Workshop_For_Server_Operators
+# To get an API key visit - https://steamcommunity.com/dev/apikey
+wsapikey=""
+wscollectionid=""
+wsstartmap=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
-parms="-game csgo -usercon -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +sv_setsteamaccount ${gslt} -tickrate ${tickrate} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers_override ${maxplayers} +mapgroup ${mapgroup} +game_mode ${gamemode} +game_type ${gametype} +host_workshop_collection ${ws_collection_id} +workshop_start_map ${ws_start_map} -authkey ${authkey} -nobreakpad"
+parms="-game csgo -usercon -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +sv_setsteamaccount ${gslt} -tickrate ${tickrate} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers_override ${maxplayers} +mapgroup ${mapgroup} +game_type ${gametype} +game_mode ${gamemode} +host_workshop_collection ${wscollectionid} +workshop_start_map ${wsstartmap} -authkey ${wsapikey} -nobreakpad"
}
#### LinuxGSM Settings ####
@@ -50,60 +51,67 @@ parms="-game csgo -usercon -strictportbind -ip ${ip} -port ${port} +clientport $
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="740"
diff --git a/lgsm/config-default/config-lgsm/csserver/_default.cfg b/lgsm/config-default/config-lgsm/csserver/_default.cfg
index 36accf304..c3f087a0f 100644
--- a/lgsm/config-default/config-lgsm/csserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/csserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="de_dust2"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game cstrike -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game cstrike -strictportbind +ip ${ip} -port ${port} +clientport ${clien
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
@@ -120,4 +127,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/cssserver/_default.cfg b/lgsm/config-default/config-lgsm/cssserver/_default.cfg
index b2bce516d..47ba05037 100644
--- a/lgsm/config-default/config-lgsm/cssserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/cssserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -21,7 +21,7 @@ maxplayers="16"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game cstrike -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +sv_setsteamaccount ${gslt} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -31,60 +31,67 @@ parms="-game cstrike -strictportbind -ip ${ip} -port ${port} +clientport ${clien
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="232330"
diff --git a/lgsm/config-default/config-lgsm/dabserver/_default.cfg b/lgsm/config-default/config-lgsm/dabserver/_default.cfg
index bee302e3d..efa06c0a0 100644
--- a/lgsm/config-default/config-lgsm/dabserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/dabserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="da_rooftops"
maxplayers="10"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_por
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="317800"
diff --git a/lgsm/config-default/config-lgsm/dmcserver/_default.cfg b/lgsm/config-default/config-lgsm/dmcserver/_default.cfg
index 0c9363314..008ebfe60 100644
--- a/lgsm/config-default/config-lgsm/dmcserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/dmcserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="dcdm5"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game dmc -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game dmc -strictportbind +ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
diff --git a/lgsm/config-default/config-lgsm/dodserver/_default.cfg b/lgsm/config-default/config-lgsm/dodserver/_default.cfg
index 37dde5b38..09eb2eb1d 100644
--- a/lgsm/config-default/config-lgsm/dodserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/dodserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="dod_Anzio"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game dod -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game dod -strictportbind +ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
diff --git a/lgsm/config-default/config-lgsm/dodsserver/_default.cfg b/lgsm/config-default/config-lgsm/dodsserver/_default.cfg
index 60b8c84bf..5e9438356 100644
--- a/lgsm/config-default/config-lgsm/dodsserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/dodsserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="dod_Anzio"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game dod -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-game dod -strictportbind -ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="232290"
diff --git a/lgsm/config-default/config-lgsm/doiserver/_default.cfg b/lgsm/config-default/config-lgsm/doiserver/_default.cfg
index d0660be38..cb507f756 100644
--- a/lgsm/config-default/config-lgsm/doiserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/doiserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -18,7 +18,7 @@ maxplayers="16"
tickrate="64"
workshop="0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game doi -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} -tickrate ${tickrate} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers} +sv_workshop_enabled ${workshop}"
}
@@ -28,60 +28,67 @@ parms="-game doi -strictportbind -ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="462310"
diff --git a/lgsm/config-default/config-lgsm/dstserver/_default.cfg b/lgsm/config-default/config-lgsm/dstserver/_default.cfg
index 960643c43..645826951 100644
--- a/lgsm/config-default/config-lgsm/dstserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/dstserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Installation Variables | https://github.com/GameServerManagers/LinuxGSM/wiki/Don't-Starve-Together
+## Installation Variables | https://docs.linuxgsm.com/game-servers/dont-starve-together
sharding="false"
master="true"
shard="Master"
@@ -19,7 +19,7 @@ cave="false"
persistentstorageroot="${HOME}/.klei"
confdir="DoNotStarveTogether"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-persistent_storage_root ${persistentstorageroot} -conf_dir ${confdir} -cluster ${cluster} -shard ${shard}"
}
@@ -29,60 +29,67 @@ parms="-persistent_storage_root ${persistentstorageroot} -conf_dir ${confdir} -c
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="343050"
@@ -96,7 +103,7 @@ branch=""
gamename="Don't Starve Together"
engine="dontstarve"
-## Service Name | https://github.com/GameServerManagers/LinuxGSM/wiki/Multiple-Servers
+## Service Name | https://docs.linuxgsm.com/features/multiple-game-servers
servicename="dst-server-${shard}"
#### Directories ####
diff --git a/lgsm/config-default/config-lgsm/ecoserver/_default.cfg b/lgsm/config-default/config-lgsm/ecoserver/_default.cfg
new file mode 100644
index 000000000..10908f448
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/ecoserver/_default.cfg
@@ -0,0 +1,119 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+ parms="-nogui"
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+
+## Updating | https://docs.linuxgsm.com/commands/update
+updateonstart="off"
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="739590"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta 7.3.0"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="Eco"
+engine="unity3d"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}"
+executabledir="${serverfiles}"
+executable="mono ./EcoServer.exe"
+servercfg="Network.eco"
+servercfgdefault="Network.eco"
+servercfgdir="${systemdir}/Configs"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${rootdir}/backups"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${logdir}/server"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
+gamelogdate="${gamelogdir}/${servicename}-game-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/emserver/_default.cfg b/lgsm/config-default/config-lgsm/emserver/_default.cfg
index 3a579deb6..3188dcf47 100644
--- a/lgsm/config-default/config-lgsm/emserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/emserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -21,7 +21,7 @@ maxplayers="62"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game empires -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -31,60 +31,67 @@ parms="-game empires -strictportbind -ip ${ip} -port ${port} +clientport ${clien
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="460040"
diff --git a/lgsm/config-default/config-lgsm/etlserver/_default.cfg b/lgsm/config-default/config-lgsm/etlserver/_default.cfg
index f1b711fcc..86e71c8bb 100644
--- a/lgsm/config-default/config-lgsm/etlserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/etlserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set net_strict 1 +set fs_homepath ${serverfiles} +exec ${servercfg}"
}
@@ -18,57 +18,64 @@ fn_parms(){
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="ET: Legacy"
diff --git a/lgsm/config-default/config-lgsm/fctrserver/_default.cfg b/lgsm/config-default/config-lgsm/fctrserver/_default.cfg
index 44abf26e0..4117dfbe5 100644
--- a/lgsm/config-default/config-lgsm/fctrserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/fctrserver/_default.cfg
@@ -8,14 +8,15 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="34197"
rconport="34198"
rconpassword="CHANGE_ME"
+# (stable|experimental)
branch="stable"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="--start-server ${serverfiles}/save1.zip --server-settings ${servercfgfullpath} --port ${port} --rcon-port ${rconport} --rcon-password ${rconpassword}"
}
@@ -25,60 +26,67 @@ parms="--start-server ${serverfiles}/save1.zip --server-settings ${servercfgfull
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Factorio"
diff --git a/lgsm/config-default/config-lgsm/fofserver/_default.cfg b/lgsm/config-default/config-lgsm/fofserver/_default.cfg
index 326c6e7fe..18d0081f0 100644
--- a/lgsm/config-default/config-lgsm/fofserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/fofserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="fof_depot"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game fof -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-game fof -strictportbind -ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="295230"
diff --git a/lgsm/config-default/config-lgsm/gesserver/_default.cfg b/lgsm/config-default/config-lgsm/gesserver/_default.cfg
index ab8bc255e..6f810f409 100644
--- a/lgsm/config-default/config-lgsm/gesserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/gesserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="ge_archives"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game gesource -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-game gesource -strictportbind -ip ${ip} -port ${port} +clientport ${clie
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="310" # Source 2007 SDK
diff --git a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg
index ba881f036..00732dd30 100644
--- a/lgsm/config-default/config-lgsm/gmodserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/gmodserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -18,23 +18,23 @@ maxplayers="16"
tickrate="66"
gamemode="sandbox"
-## Workshop Parameters | http://wiki.garrysmod.com/page/Workshop_for_Dedicated_Servers
-workshopauth=""
-workshopcollectionid=""
+## Workshop Parameters | https://wiki.garrysmod.com/page/Workshop_for_Dedicated_Servers
+# To get an API key visit - https://steamcommunity.com/dev/apikey
+wsapikey=""
+wscollectionid=""
## Custom Start Parameters
-# Default +r_hunkalloclightmaps 0, fixes a start issue on maps with many lights
# Default -disableluarefresh, disables lua autorefresh reducing server lag. Auto refresh only useful for developers.
-customparms="+r_hunkalloclightmaps 0 -disableluarefresh"
+customparms="-disableluarefresh"
## Optional: Game Server Login Token
# GSLT can be used for running a public server.
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
-parms="-game garrysmod -strictportbind -ip ${ip} -port ${port} -tickrate ${tickrate} +host_workshop_collection ${workshopcollectionid} -authkey ${workshopauth} +clientport ${clientport} +tv_port ${sourcetvport} +gamemode ${gamemode} +map ${defaultmap} +sv_setsteamaccount ${gslt} +servercfgfile ${servercfg} -maxplayers ${maxplayers} ${customparms}"
+parms="-game garrysmod -strictportbind -ip ${ip} -port ${port} -tickrate ${tickrate} +host_workshop_collection ${wscollectionid} -authkey ${wsapikey} +clientport ${clientport} +tv_port ${sourcetvport} +gamemode ${gamemode} +map ${defaultmap} +sv_setsteamaccount ${gslt} +servercfgfile ${servercfg} -maxplayers ${maxplayers} ${customparms}"
}
#### LinuxGSM Settings ####
@@ -42,60 +42,67 @@ parms="-game garrysmod -strictportbind -ip ${ip} -port ${port} -tickrate ${tickr
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="4020"
diff --git a/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg b/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg
index 5f2f8c3ba..c5796eab5 100644
--- a/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/hl2dmserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="dm_lockdown"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game hl2mp -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-game hl2mp -strictportbind -ip ${ip} -port ${port} +clientport ${clientp
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="232370"
diff --git a/lgsm/config-default/config-lgsm/hldmserver/_default.cfg b/lgsm/config-default/config-lgsm/hldmserver/_default.cfg
index 302b4b3d8..41308db1f 100644
--- a/lgsm/config-default/config-lgsm/hldmserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/hldmserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="crossfire"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game valve -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game valve -strictportbind +ip ${ip} -port ${port} +clientport ${clientp
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
diff --git a/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg b/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg
index 624ee0047..91ae5546b 100644
--- a/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/hldmsserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="crossfire"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game hl1mp -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-game hl1mp -strictportbind -ip ${ip} -port ${port} +clientport ${clientp
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="255470"
diff --git a/lgsm/config-default/config-lgsm/hwserver/_default.cfg b/lgsm/config-default/config-lgsm/hwserver/_default.cfg
index e3fdb7184..19fadc681 100644
--- a/lgsm/config-default/config-lgsm/hwserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/hwserver/_default.cfg
@@ -8,8 +8,8 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
-servername="Hurtworld LinuxGSM Server"
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+servername="LinuxGSM Server"
ip="0.0.0.0"
port="12871"
queryport="12881"
@@ -28,7 +28,7 @@ loadsave=""
# Use unstable 64 bit server executable (O/1)
x64mode="0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
# Edit with care | http://hurtworld.wikia.com/wiki/Hosting_A_Server
fn_parms(){
parms="-batchmode -nographics -exec \"host ${port} ${defaultmap} ${loadsave};queryport ${queryport};maxplayers ${maxplayers};servername ${servername};creativemode ${creativemode};${admins}\" -logfile \"${gamelog}\" "
@@ -39,60 +39,67 @@ parms="-batchmode -nographics -exec \"host ${port} ${defaultmap} ${loadsave};que
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="405100"
diff --git a/lgsm/config-default/config-lgsm/insserver/_default.cfg b/lgsm/config-default/config-lgsm/insserver/_default.cfg
index 851766069..7adb4b718 100644
--- a/lgsm/config-default/config-lgsm/insserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/insserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -23,7 +23,7 @@ workshop="0"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game insurgency -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} -tickrate ${tickrate} +sv_setsteamaccount ${gslt} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers} +sv_workshop_enabled ${workshop} -norestart"
}
@@ -33,60 +33,67 @@ parms="-game insurgency -strictportbind -ip ${ip} -port ${port} +clientport ${cl
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="237410"
diff --git a/lgsm/config-default/config-lgsm/inssserver/_default.cfg b/lgsm/config-default/config-lgsm/inssserver/_default.cfg
new file mode 100644
index 000000000..06886ed21
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/inssserver/_default.cfg
@@ -0,0 +1,139 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+
+ip="0.0.0.0"
+port="27102"
+queryport="27131"
+servername="LinuxGSM Server"
+serverpassword=""
+defaultmap="Canyon"
+defaultscenario="Scenario_Crossing_Push_Security"
+maxplayers="28"
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+ # Allows serverpassword to work with parameters
+ if [ "${serverpassword}" != "NOT SET" ]; then
+ parms="${defaultmap}?Scenario=${defaultscenario}?MaxPlayers=${maxplayers}?Port=${port}?QueryPort=${queryport}?password="${serverpassword}" -hostname="${servername}" -log"
+ else
+ parms="${defaultmap}?Scenario=${defaultscenario}?MaxPlayers=${maxplayers}?Port=${port}?QueryPort=${queryport} -hostname='${servername}' -log"
+ fi
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Updating | https://docs.linuxgsm.com/commands/update
+updateonstart="off"
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="581330"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="Insurgency: Sandstorm"
+engine="unreal4"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}/Insurgency"
+executabledir="${systemdir}/Binaries/Linux"
+executable="./InsurgencyServer-Linux-Shipping"
+servercfg="Game.ini"
+servercfgdefault="Game.ini"
+servercfgdir="${systemdir}/Saved/Config/LinuxServer"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${lgsmdir}/backup"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${systemdir}/Saved/Logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+gamelog="${gamelogdir}/${servicename}-game.log"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/iosserver/_default.cfg b/lgsm/config-default/config-lgsm/iosserver/_default.cfg
new file mode 100644
index 000000000..f42987541
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/iosserver/_default.cfg
@@ -0,0 +1,130 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+ip="0.0.0.0"
+port="27015"
+clientport="27005"
+sourcetvport="27020"
+defaultmap="8v8_vienna"
+maxplayers="32"
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+parms="-game iosoccer -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Updating | https://docs.linuxgsm.com/commands/update
+updateonstart="off"
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="673990"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="IOSoccer"
+engine="source"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}/iosoccer"
+executabledir="${serverfiles}"
+executable="./srcds_run"
+servercfg="${servicename}.cfg"
+servercfgdefault="server.cfg"
+servercfgdir="${systemdir}/cfg"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${rootdir}/backups"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${systemdir}/logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/jc2server/_default.cfg b/lgsm/config-default/config-lgsm/jc2server/_default.cfg
index 6dafd3d93..cb67c18d3 100644
--- a/lgsm/config-default/config-lgsm/jc2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/jc2server/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms=""
}
@@ -18,60 +18,67 @@ parms=""
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="261140"
diff --git a/lgsm/config-default/config-lgsm/jc3server/_default.cfg b/lgsm/config-default/config-lgsm/jc3server/_default.cfg
index 84d0f0b22..ced884359 100644
--- a/lgsm/config-default/config-lgsm/jc3server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/jc3server/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms=""
}
@@ -18,60 +18,67 @@ parms=""
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="619960"
diff --git a/lgsm/config-default/config-lgsm/kf2server/_default.cfg b/lgsm/config-default/config-lgsm/kf2server/_default.cfg
index a5f8d6f65..c6db77168 100644
--- a/lgsm/config-default/config-lgsm/kf2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/kf2server/_default.cfg
@@ -8,13 +8,13 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
queryport="27015"
defaultmap="KF-BioticsLab"
gamemode="KFGameContent.KFGameInfo_VersusSurvival"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="\"${defaultmap}?Game=${gamemode}?ConfigSubDir=${servicename} -QueryPort=${queryport}\""
}
@@ -24,60 +24,67 @@ parms="\"${defaultmap}?Game=${gamemode}?ConfigSubDir=${servicename} -QueryPort=$
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="232130"
diff --git a/lgsm/config-default/config-lgsm/kfserver/_default.cfg b/lgsm/config-default/config-lgsm/kfserver/_default.cfg
index fbb1d6ebf..3d9a1cf76 100644
--- a/lgsm/config-default/config-lgsm/kfserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/kfserver/_default.cfg
@@ -8,15 +8,15 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
defaultmap="KF-BioticsLab.rom"
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="server ${defaultmap}?game=KFmod.KFGameType?VACSecured=true -nohomedir ini=${servercfg} log=${gamelog}"
@@ -30,60 +30,67 @@ parms="server ${defaultmap}?game=KFmod.KFGameType?VACSecured=true -nohomedir ini
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="215360"
diff --git a/lgsm/config-default/config-lgsm/l4d2server/_default.cfg b/lgsm/config-default/config-lgsm/l4d2server/_default.cfg
index fb5e8bbb4..9bd1b8bac 100644
--- a/lgsm/config-default/config-lgsm/l4d2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/l4d2server/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="c5m1_waterfront"
maxplayers="8"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game left4dead2 -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game left4dead2 -strictportbind -ip ${ip} -port ${port} +clientport ${cl
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="222860"
diff --git a/lgsm/config-default/config-lgsm/l4dserver/_default.cfg b/lgsm/config-default/config-lgsm/l4dserver/_default.cfg
index 207c62944..d4003b91e 100644
--- a/lgsm/config-default/config-lgsm/l4dserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/l4dserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="l4d_hospital01_apartment"
maxplayers="8"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game left4dead -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game left4dead -strictportbind -ip ${ip} -port ${port} +clientport ${cli
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="222840"
diff --git a/lgsm/config-default/config-lgsm/mcserver/_default.cfg b/lgsm/config-default/config-lgsm/mcserver/_default.cfg
index 881109b11..5d904a61b 100644
--- a/lgsm/config-default/config-lgsm/mcserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/mcserver/_default.cfg
@@ -8,10 +8,10 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
javaram="1024" # -Xmx$1024M
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="nogui"
}
@@ -20,60 +20,67 @@ parms="nogui"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Minecraft"
diff --git a/lgsm/config-default/config-lgsm/mtaserver/_default.cfg b/lgsm/config-default/config-lgsm/mtaserver/_default.cfg
index aee1e3508..459c2a45e 100644
--- a/lgsm/config-default/config-lgsm/mtaserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/mtaserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
# Edit with care
fn_parms(){
parms=""
@@ -19,57 +19,64 @@ parms=""
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Multi Theft Auto"
diff --git a/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg b/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg
index 3fb7634a0..c151ff914 100644
--- a/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/mumbleserver/_default.cfg
@@ -9,7 +9,7 @@
#### Server Settings ####
# Use .ini config file for Mumble (Murmur) server.
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-fg -ini ${servercfgfullpath}"
}
@@ -19,60 +19,67 @@ parms="-fg -ini ${servercfgfullpath}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Mumble"
diff --git a/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg b/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg
index 61e738112..77a7dc464 100644
--- a/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/nmrihserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -21,7 +21,7 @@ maxplayers="8"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game nmrih -insecure -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +sv_setsteamaccount ${gslt} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -31,60 +31,67 @@ parms="-game nmrih -insecure -strictportbind -ip ${ip} -port ${port} +clientport
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="317670"
diff --git a/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg b/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg
index 956366c80..7398c3cb9 100644
--- a/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ns2cserver/_default.cfg
@@ -8,12 +8,12 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
defaultmap="co_core"
maxplayers="24"
-servername="NS2C Server"
+servername="LinuxGSM Server"
webadminuser="admin"
webadminpass="admin"
webadminport="8080"
@@ -23,7 +23,7 @@ serverpassword=""
# that the password variable above is not left empty.
# -password \"${serverpassword}\"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-name \"${servername}\" -port ${port} -webadmin -webdomain ${ip} -webuser ${webadminuser} -webpassword \"${webadminpass}\" -webport ${webadminport} -map ${defaultmap} -limit ${maxplayers} -config_path \"${servercfgdir}\" -modstorage \"${modstoragedir}\" -mods \"${mods}\""
}
@@ -33,60 +33,67 @@ parms="-name \"${servername}\" -port ${port} -webadmin -webdomain ${ip} -webuser
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="313900"
diff --git a/lgsm/config-default/config-lgsm/ns2server/_default.cfg b/lgsm/config-default/config-lgsm/ns2server/_default.cfg
index 902c0d33d..3786e558c 100644
--- a/lgsm/config-default/config-lgsm/ns2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ns2server/_default.cfg
@@ -8,16 +8,16 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
defaultmap="ns2_summit"
maxplayers="24"
-servername="NS2 Server"
+servername="LinuxGSM Server"
webadminuser="admin"
webadminpass="admin"
webadminport="8080"
@@ -27,7 +27,7 @@ serverpassword=""
# that the password variable above is not left empty.
# -password \"${serverpassword}\"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-name \"${servername}\" -port ${port} -webadmin -webdomain ${ip} -webuser ${webadminuser} -webpassword \"${webadminpass}\" -webport ${webadminport} -map ${defaultmap} -limit ${maxplayers} -config_path \"${servercfgdir}\" -logdir \"${gamelogdir}\" -modstorage \"${modstoragedir}\" -mods \"${mods}\""
}
@@ -37,60 +37,67 @@ parms="-name \"${servername}\" -port ${port} -webadmin -webdomain ${ip} -webuser
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="4940"
diff --git a/lgsm/config-default/config-lgsm/nsserver/_default.cfg b/lgsm/config-default/config-lgsm/nsserver/_default.cfg
new file mode 100644
index 000000000..25c22e9dd
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/nsserver/_default.cfg
@@ -0,0 +1,130 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+ip="0.0.0.0"
+port="27015"
+clientport="27005"
+defaultmap="ns_hera"
+maxplayers="16"
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+parms="-game ns -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Updating | https://docs.linuxgsm.com/commands/update
+updateonstart="off"
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="90"
+appidmod="cstrike"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="Natural Selection"
+engine="goldsource"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}/ns"
+executabledir="${serverfiles}"
+executable="./hlds_run"
+servercfg="${servicename}.cfg"
+servercfgdefault="server.cfg"
+servercfgdir="${systemdir}"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${rootdir}/backups"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${systemdir}/logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/opforserver/_default.cfg b/lgsm/config-default/config-lgsm/opforserver/_default.cfg
index 2d8ad75ae..b7f449e28 100644
--- a/lgsm/config-default/config-lgsm/opforserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/opforserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="op4_bootcamp"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game gearbox -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game gearbox -strictportbind +ip ${ip} -port ${port} +clientport ${clien
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
diff --git a/lgsm/config-default/config-lgsm/pcserver/_default.cfg b/lgsm/config-default/config-lgsm/pcserver/_default.cfg
index b9815fd13..2dd4f0514 100644
--- a/lgsm/config-default/config-lgsm/pcserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/pcserver/_default.cfg
@@ -8,8 +8,7 @@
#### Server Settings ####
-# Notification Alerts
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="--config ${servercfg}"
}
@@ -19,60 +18,67 @@ parms="--config ${servercfg}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="332670"
diff --git a/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg b/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg
new file mode 100644
index 000000000..b331cc134
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/pstbsserver/_default.cfg
@@ -0,0 +1,134 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+
+ip="0.0.0.0"
+randommap="ALWAYS"
+port="10027"
+queryport="10037"
+#servername="LinuxGSM Server"
+# If your server is not meeting the minimal server requirement, do not host the server for 80 players, decrease that number.
+maxplayers="40"
+numreservedslots="2"
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+parms="MULTIHOME=${ip}?RANDOM=${randommap}?Port=${port}?QueryPort=${queryport}?MaxPlayers=${maxplayers}?NumReservedSlots=${numreservedslots}"
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Updating | https://docs.linuxgsm.com/commands/update
+updateonstart="off"
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="746200"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="pstbsserver"
+engine="unreal4"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}/PostScriptum"
+executabledir="${serverfiles}"
+executable="./PostScriptumServer.sh"
+servercfg="Server.cfg"
+servercfgdefault="Server.cfg"
+servercfgdir="${systemdir}/ServerConfig"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${lgsmdir}/backup"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${systemdir}/Saved/Logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+gamelog="${gamelogdir}/${servicename}-game.log"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg b/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg
index 6fb51cfbc..b75b07348 100644
--- a/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/pvkiiserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -16,7 +16,7 @@ sourcetvport="27020"
defaultmap="bt_island"
maxplayers="24"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game pvkii -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -26,60 +26,67 @@ parms="-game pvkii -strictportbind -ip ${ip} -port ${port} +clientport ${clientp
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="17575"
diff --git a/lgsm/config-default/config-lgsm/pzserver/_default.cfg b/lgsm/config-default/config-lgsm/pzserver/_default.cfg
index 05f69be0c..179c7dd34 100644
--- a/lgsm/config-default/config-lgsm/pzserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/pzserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
adminpassword="CHANGE_ME"
@@ -21,60 +21,67 @@ parms="-ip ${ip} -adminpassword \"${adminpassword}\" -servername ${servicename}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="380870"
diff --git a/lgsm/config-default/config-lgsm/q2server/_default.cfg b/lgsm/config-default/config-lgsm/q2server/_default.cfg
index ca2c309ec..6eac2ebd8 100644
--- a/lgsm/config-default/config-lgsm/q2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/q2server/_default.cfg
@@ -8,12 +8,12 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27910"
defaultmap="q2dm1"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set dedicated 1 +set ip ${ip} +set port ${port} +exec ${servercfg} +set deathmatch 1 +map ${defaultmap}"
}
@@ -23,57 +23,64 @@ parms="+set dedicated 1 +set ip ${ip} +set port ${port} +exec ${servercfg} +set
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Quake 2"
diff --git a/lgsm/config-default/config-lgsm/q3server/_default.cfg b/lgsm/config-default/config-lgsm/q3server/_default.cfg
index 997c9ff83..80b1b464d 100644
--- a/lgsm/config-default/config-lgsm/q3server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/q3server/_default.cfg
@@ -8,12 +8,12 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27960"
defaultmap="q3dm17"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +set com_hunkMegs 32 +set net_ip ${ip} +set net_port ${port} +exec ${servercfg} +map ${defaultmap}"
}
@@ -23,57 +23,64 @@ parms="+set sv_punkbuster 0 +set fs_basepath ${serverfiles} +set dedicated 1 +se
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Quake 3: Arena"
diff --git a/lgsm/config-default/config-lgsm/qlserver/_default.cfg b/lgsm/config-default/config-lgsm/qlserver/_default.cfg
index d5e19bc22..0c8ffa81b 100644
--- a/lgsm/config-default/config-lgsm/qlserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/qlserver/_default.cfg
@@ -8,10 +8,10 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
arch="x64" # x64 or x86
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
# Edit with care | Install/Config Guide : https://steamcommunity.com/sharedfiles/filedetails/?id=542966946
# Console Commands : http://www.regurge.at/ql/
fn_parms(){
@@ -23,60 +23,67 @@ parms="+exec ${servercfg}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="349090"
diff --git a/lgsm/config-default/config-lgsm/qwserver/_default.cfg b/lgsm/config-default/config-lgsm/qwserver/_default.cfg
index ac8005f53..07ed79cf6 100644
--- a/lgsm/config-default/config-lgsm/qwserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/qwserver/_default.cfg
@@ -8,11 +8,11 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27500"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-port ${port} -game ktx +exec ${servercfg}"
}
@@ -22,57 +22,64 @@ parms="-port ${port} -game ktx +exec ${servercfg}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="QuakeWorld"
diff --git a/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg b/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg
index 3d553900e..51c34163b 100644
--- a/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ricochetserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="rc_arena"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game ricochet -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game ricochet -strictportbind +ip ${ip} -port ${port} +clientport ${clie
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
diff --git a/lgsm/config-default/config-lgsm/roserver/_default.cfg b/lgsm/config-default/config-lgsm/roserver/_default.cfg
index 8d678f872..8ac336381 100644
--- a/lgsm/config-default/config-lgsm/roserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/roserver/_default.cfg
@@ -8,15 +8,15 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
defaultmap="RO-Arad.rom"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="server ${defaultmap}?game=ROGame.ROTeamGame?VACSecured=true -nohomedir ini=${servercfg} log=${gamelog}"
}
@@ -26,60 +26,67 @@ parms="server ${defaultmap}?game=ROGame.ROTeamGame?VACSecured=true -nohomedir in
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="223250"
diff --git a/lgsm/config-default/config-lgsm/rustserver/_default.cfg b/lgsm/config-default/config-lgsm/rustserver/_default.cfg
index 1ac4b4db1..df590c2f3 100644
--- a/lgsm/config-default/config-lgsm/rustserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/rustserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
# More settings available after install in serverfiles/server/rust-server/server.cfg
ip="0.0.0.0"
port="28015"
@@ -25,7 +25,7 @@ worldsize="3000" # default 3000; range : 1000 to 6000 ; map size in meters
saveinterval="300" # Auto-save in seconds
tickrate="30" # default 30; range : 15 to 100
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
# Specific to Rust
if [ -n "${seed}" ]; then
@@ -50,60 +50,67 @@ parms="-batchmode +server.ip ${ip} +server.port ${port} +server.tickrate ${tickr
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="258550"
diff --git a/lgsm/config-default/config-lgsm/rwserver/_default.cfg b/lgsm/config-default/config-lgsm/rwserver/_default.cfg
index 7bf824059..ace8d23ae 100644
--- a/lgsm/config-default/config-lgsm/rwserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/rwserver/_default.cfg
@@ -8,10 +8,10 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
javaram="2048" # -Xmx$2048M
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms=""
}
@@ -21,60 +21,67 @@ parms=""
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="339010"
diff --git a/lgsm/config-default/config-lgsm/sampserver/_default.cfg b/lgsm/config-default/config-lgsm/sampserver/_default.cfg
index 07d30a73b..5302a842b 100644
--- a/lgsm/config-default/config-lgsm/sampserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/sampserver/_default.cfg
@@ -8,11 +8,11 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="7777"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms=""
}
@@ -22,57 +22,64 @@ parms=""
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="San Andreas Multiplayer"
diff --git a/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg b/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg
new file mode 100644
index 000000000..72e55c0a4
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/sbotsserver/_default.cfg
@@ -0,0 +1,127 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+port="7777"
+queryport="27015"
+defaultmap="StationKappa"
+servername="LinuxGSM Server"
+serverpassword="NOT SET" # Can't be adjusted currently
+maxplayers="8" # Can't be adjusted currently
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+parms="Port=${port}?QueryPort=${queryport} -startup_map ${defaultmap} -server_name \"${servername}\""
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="974130"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="StickyBots"
+engine="unreal4"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}"
+executabledir="${systemdir}/blank1/Binaries/Linux"
+executable="./blank1Server-Linux-Shipping"
+servercfg="Game.ini"
+servercfgdefault="Game.ini"
+servercfgdir="${systemdir}/blank1/Saved/Config/LinuxServer"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${rootdir}/backups"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${serverfiles}/Logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
diff --git a/lgsm/config-default/config-lgsm/sbserver/_default.cfg b/lgsm/config-default/config-lgsm/sbserver/_default.cfg
index b2fa9234d..2d76ce0b3 100644
--- a/lgsm/config-default/config-lgsm/sbserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/sbserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms=""
}
@@ -25,60 +25,67 @@ parms=""
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="211820"
diff --git a/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg b/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg
index ca26f1c7e..6a9b6ab79 100644
--- a/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/sdtdserver/_default.cfg
@@ -8,12 +8,12 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
-parms="-logfile ${gamelogdir}/output_log__`date +%Y-%m-%d__%H-%M-%S`.txt -quit -batchmode -nographics -dedicated -configfile=${servercfgfullpath}"
+parms="-logfile ${gamelogdir}/output_log__$(date +%Y-%m-%d__%H-%M-%S).txt -quit -batchmode -nographics -dedicated -configfile=${servercfgfullpath}"
}
#### LinuxGSM Settings ####
@@ -21,60 +21,67 @@ parms="-logfile ${gamelogdir}/output_log__`date +%Y-%m-%d__%H-%M-%S`.txt -quit -
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="294420"
@@ -94,9 +101,15 @@ engine="unity3d"
## Server Specific Directories
systemdir="${serverfiles}"
executabledir="${serverfiles}"
-executable="./7DaysToDieServer.x86"
-servercfg="${servicename}.xml"
+if [ "$(uname -m)" == "x86_64" ]; then
+ executable="./7DaysToDieServer.x86_64"
+else
+ executable="./7DaysToDieServer.x86"
+fi
servercfgdefault="serverconfig.xml"
+servercfgdirdefault="${serverfiles}"
+servercfgfullpathdefault="${servercfgdirdefault}/${servercfgdefault}"
+servercfg="${servicename}.xml"
servercfgdir="${serverfiles}"
servercfgfullpath="${servercfgdir}/${servercfg}"
diff --git a/lgsm/config-default/config-lgsm/squadserver/_default.cfg b/lgsm/config-default/config-lgsm/squadserver/_default.cfg
index 990aa678b..e947bb462 100644
--- a/lgsm/config-default/config-lgsm/squadserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/squadserver/_default.cfg
@@ -8,13 +8,12 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
port="7787"
queryport="27165"
randommap="ALWAYS"
-ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="MULTIHOME=${ip} RANDOM=${randommap} Port=${port} QueryPort=${queryport}"
}
@@ -24,60 +23,67 @@ parms="MULTIHOME=${ip} RANDOM=${randommap} Port=${port} QueryPort=${queryport}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="403240"
@@ -119,4 +125,4 @@ postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
-consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
\ No newline at end of file
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/ss3server/_default.cfg b/lgsm/config-default/config-lgsm/ss3server/_default.cfg
index d54bd259b..563a93c4d 100644
--- a/lgsm/config-default/config-lgsm/ss3server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ss3server/_default.cfg
@@ -8,10 +8,10 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
# Edit with care | https://raw.githubusercontent.com/GameServerManagers/Game-Server-Configs/master/SeriousSam3BFE/help/DedicatedServer_Readme.txt
fn_parms(){
parms="+ip ${ip} +logfile ${gamelog} +exec ${servercfgfullpath}"
@@ -22,60 +22,67 @@ parms="+ip ${ip} +logfile ${gamelog} +exec ${servercfgfullpath}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="41080"
diff --git a/lgsm/config-default/config-lgsm/stserver/_default.cfg b/lgsm/config-default/config-lgsm/stserver/_default.cfg
index cc0e2aa08..1b4bef940 100644
--- a/lgsm/config-default/config-lgsm/stserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/stserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27500"
queryport="27015"
@@ -17,7 +17,7 @@ autosaveinterval=300
clearinterval=60
worldname="moon_save"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
# Edit with care | http://hurtworld.wikia.com/wiki/Hosting_A_Server
fn_parms(){
parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${queryport} -worldtype=${worldtype} -loadworld=${worldname} -worldname=${worldname} -autosaveinterval=${autosaveinterval} -clearallinterval=${clearinterval}"
@@ -28,60 +28,67 @@ parms="-batchmode -nographics -autostart -gameport=${port} -updateport=${querypo
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="600760"
diff --git a/lgsm/config-default/config-lgsm/svenserver/_default.cfg b/lgsm/config-default/config-lgsm/svenserver/_default.cfg
index 455e170a1..34a1a70f0 100644
--- a/lgsm/config-default/config-lgsm/svenserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/svenserver/_default.cfg
@@ -8,16 +8,16 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="svencoop1"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
-parms="-game svencoop -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
+parms="-game svencoop -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} +maxplayers ${maxplayers}"
}
#### LinuxGSM Settings ####
@@ -25,60 +25,67 @@ parms="-game svencoop -strictportbind +ip ${ip} -port ${port} +clientport ${clie
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="276060"
diff --git a/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg b/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg
index 8e4e246e6..9dc763f19 100644
--- a/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/terrariaserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-config ${servercfgfullpath}"
}
@@ -25,60 +25,67 @@ parms="-config ${servercfgfullpath}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="105600"
diff --git a/lgsm/config-default/config-lgsm/tf2server/_default.cfg b/lgsm/config-default/config-lgsm/tf2server/_default.cfg
index 831966588..92eaa64b4 100644
--- a/lgsm/config-default/config-lgsm/tf2server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/tf2server/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -21,7 +21,7 @@ maxplayers="16"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game tf -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +sv_setsteamaccount ${gslt} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -31,60 +31,67 @@ parms="-game tf -strictportbind -ip ${ip} -port ${port} +clientport ${clientport
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="232250"
diff --git a/lgsm/config-default/config-lgsm/tfcserver/_default.cfg b/lgsm/config-default/config-lgsm/tfcserver/_default.cfg
index 7836c5c29..d31998a0b 100644
--- a/lgsm/config-default/config-lgsm/tfcserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/tfcserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
defaultmap="dustbowl"
maxplayers="16"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game tfc -strictportbind _ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -25,60 +25,67 @@ parms="-game tfc -strictportbind _ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="90"
diff --git a/lgsm/config-default/config-lgsm/ts3server/_default.cfg b/lgsm/config-default/config-lgsm/ts3server/_default.cfg
index a2411801f..e28e99a85 100644
--- a/lgsm/config-default/config-lgsm/ts3server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ts3server/_default.cfg
@@ -6,7 +6,7 @@
# common.cfg - applies settings to every instance
# [instance].cfg - applies settings to a specific instance
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
# Edit serverfiles/ts3-server.ini after installation
#### LinuxGSM Settings ####
@@ -14,60 +14,67 @@
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="TeamSpeak 3"
diff --git a/lgsm/config-default/config-lgsm/tuserver/_default.cfg b/lgsm/config-default/config-lgsm/tuserver/_default.cfg
index 2de7c4cdf..91544d2f1 100644
--- a/lgsm/config-default/config-lgsm/tuserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/tuserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="7777"
queryport="27015"
@@ -18,7 +18,7 @@ queryport="27015"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-log -MultiHome=${ip} -Port=${port} -QueryPort=${queryport} -TowerServerINI=${servicename}.ini"
}
@@ -28,60 +28,67 @@ parms="-log -MultiHome=${ip} -Port=${port} -QueryPort=${queryport} -TowerServerI
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="439660"
diff --git a/lgsm/config-default/config-lgsm/twserver/_default.cfg b/lgsm/config-default/config-lgsm/twserver/_default.cfg
index 81ee6196b..59b355ddc 100644
--- a/lgsm/config-default/config-lgsm/twserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/twserver/_default.cfg
@@ -8,14 +8,14 @@
#### Server Settings ####
-## SteamCMD Login | https://github.com/GameServerManagers/LinuxGSM/wiki/SteamCMD#steamcmd-login
+## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-f ${servercfgfullpath}"
}
@@ -25,60 +25,67 @@ parms="-f ${servercfgfullpath}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="380840"
diff --git a/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg b/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg
index c4ea0cf52..5f32042df 100644
--- a/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ut2k4server/_default.cfg
@@ -8,11 +8,11 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
defaultmap="DM-Rankin"
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="server ${defaultmap}?game=XGame.xDeathMatch -nohomedir ini=${servercfg} log=${gamelog}"
}
@@ -22,57 +22,64 @@ parms="server ${defaultmap}?game=XGame.xDeathMatch -nohomedir ini=${servercfg} l
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Unreal Tournament 2004"
diff --git a/lgsm/config-default/config-lgsm/ut3server/_default.cfg b/lgsm/config-default/config-lgsm/ut3server/_default.cfg
index 3469c4940..1716e3c0f 100644
--- a/lgsm/config-default/config-lgsm/ut3server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ut3server/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="7777"
queryport="6500"
@@ -22,7 +22,7 @@ shouldadvertise="true"
pureserver="1"
allowjoininprogress="true"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
# Edit with care | List of game types and mutators : http://wiki.unrealadmin.org/FAQ:UT3
fn_parms(){
parms="server ${defaultmap}?Game=${game}?bIsDedicated=${isdedicated}?bIsLanMatch=${islanmatch}?bUsesStats=${usesstats}?bShouldAdvertise=${shouldadvertise}?PureServer=${pureserver}?bAllowJoinInProgress=${allowjoininprogress}?Mutator=${mutators}?ConfigSubDir=${servicename} -port=${port} -queryport=${queryport} -multihome=${ip} -nohomedir -unattended -log=${gamelog}"
@@ -33,57 +33,64 @@ parms="server ${defaultmap}?Game=${game}?bIsDedicated=${isdedicated}?bIsLanMatch
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Unreal Tournament 3"
diff --git a/lgsm/config-default/config-lgsm/ut99server/_default.cfg b/lgsm/config-default/config-lgsm/ut99server/_default.cfg
index ae87abb88..9942968d1 100644
--- a/lgsm/config-default/config-lgsm/ut99server/_default.cfg
+++ b/lgsm/config-default/config-lgsm/ut99server/_default.cfg
@@ -8,11 +8,11 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
defaultmap="DM-Deck16]["
ip="0.0.0.0"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="server ${defaultmap}.unr ini=${servercfgfullpath}"
}
@@ -22,57 +22,64 @@ parms="server ${defaultmap}.unr ini=${servercfgfullpath}"
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Unreal Tournament 99"
diff --git a/lgsm/config-default/config-lgsm/utserver/_default.cfg b/lgsm/config-default/config-lgsm/utserver/_default.cfg
index 1433496c8..8f81eb7da 100644
--- a/lgsm/config-default/config-lgsm/utserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/utserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
# For CTF: defaultmap="CTF-Face" gametype="CTF"
ip="0.0.0.0"
port="7777"
@@ -16,7 +16,7 @@ defaultmap="DM-Underland"
gametype="DM"
timelimit="10"
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="UnrealTournament ${defaultmap}?Game=${gametype}?TimeLimit=${timelimit} -port=${port}"
}
@@ -26,57 +26,64 @@ parms="UnrealTournament ${defaultmap}?Game=${gametype}?TimeLimit=${timelimit} -p
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Unreal Tournament"
diff --git a/lgsm/config-default/config-lgsm/vsserver/_default.cfg b/lgsm/config-default/config-lgsm/vsserver/_default.cfg
new file mode 100644
index 000000000..e6e85f0f9
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/vsserver/_default.cfg
@@ -0,0 +1,130 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
+ip="0.0.0.0"
+port="27015"
+clientport="27005"
+defaultmap="vs_frost"
+maxplayers="16"
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+parms="-game vs -strictportbind +ip ${ip} -port ${port} +clientport ${clientport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Updating | https://docs.linuxgsm.com/commands/update
+updateonstart="off"
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="90"
+appidmod="cstrike"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="Vampire Slayer"
+engine="goldsource"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}/vs"
+executabledir="${serverfiles}"
+executable="./hlds_run"
+servercfg="${servicename}.cfg"
+servercfgdefault="server.cfg"
+servercfgdir="${systemdir}"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${rootdir}/backups"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${systemdir}/logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/wetserver/_default.cfg b/lgsm/config-default/config-lgsm/wetserver/_default.cfg
index 1542bcb13..31daa3252 100644
--- a/lgsm/config-default/config-lgsm/wetserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/wetserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="+set net_strict 1 +set fs_homepath ${serverfiles} +exec ${servercfg}"
}
@@ -18,57 +18,64 @@ fn_parms(){
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## LinuxGSM Server Details
# Do not edit
gamename="Wolfenstein: Enemy Territory"
diff --git a/lgsm/config-default/config-lgsm/wurmserver/_default.cfg b/lgsm/config-default/config-lgsm/wurmserver/_default.cfg
new file mode 100644
index 000000000..c57f1f7c0
--- /dev/null
+++ b/lgsm/config-default/config-lgsm/wurmserver/_default.cfg
@@ -0,0 +1,121 @@
+##################################
+######## Default Settings ########
+##################################
+# DO NOT EDIT WILL BE OVERWRITTEN!
+# Copy settings from here and use them in either
+# common.cfg - applies settings to every instance
+# [instance].cfg - applies settings to a specific instance
+
+#### Server Settings ####
+
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
+fn_parms(){
+ # Note Parameters are editing in the game server config file.
+ source "${servercfgfullpath}"
+ parms="ADMINPWD=\"$ADMINPWD\" EPICSETTINGS=\"$EPICSETTINGS\" EXTERNALPORT=\"$EXTERNALPORT\" HOMESERVER=\"$HOMESERVER\" HOMEKINGDOM=\"$HOMEKINGDOM\" LOGINSERVER=\"$LOGINSERVER\" MAXPLAYERS=\"$MAXPLAYERS\" QUERYPORT=\"$QUERYPORT\" SERVERNAME=\"$SERVERNAME\" SERVERPASSWORD=\"$SERVERPASSWORD\" START=\"$START\" IP=\"$IP\""
+}
+
+#### LinuxGSM Settings ####
+
+## Notification Alerts
+# (on|off)
+
+# More info | https://docs.linuxgsm.com/alerts#more-info
+postalert="off"
+postdays="7"
+posttarget="https://hastebin.com"
+
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
+discordalert="off"
+discordwebhook="webhook"
+
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
+emailalert="off"
+email="email@example.com"
+emailfrom=""
+
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
+iftttalert="off"
+ifttttoken="accesstoken"
+iftttevent="linuxgsm_alert"
+
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
+mailgunalert="off"
+mailguntoken="accesstoken"
+mailgundomain="example.com"
+mailgunemailfrom="alert@example.com"
+mailgunemail="email@myemail.com"
+
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
+pushbulletalert="off"
+pushbullettoken="accesstoken"
+channeltag=""
+
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
+pushoveralert="off"
+pushovertoken="accesstoken"
+
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
+telegramalert="off"
+telegramtoken="accesstoken"
+telegramchatid=""
+curlcustomstring=""
+
+## Backup | https://docs.linuxgsm.com/commands/backup
+maxbackups="4"
+maxbackupdays="30"
+stoponbackup="on"
+
+## Logging | https://docs.linuxgsm.com/features/logging
+consolelogging="on"
+logdays="7"
+
+#### LinuxGSM Advanced Settings ####
+
+# ANSI Colors
+ansi="on"
+
+## SteamCMD Settings
+# Server appid
+appid="402370"
+# Steam App Branch Select
+# Allows to opt into the various Steam app branches. Default branch is "".
+# Example: "-beta latest_experimental"
+branch=""
+
+## LinuxGSM Server Details
+# Do not edit
+gamename="Wurm Unlimited"
+engine="wurm"
+
+#### Directories ####
+# Edit with care
+
+## Server Specific Directories
+systemdir="${serverfiles}"
+executabledir="${systemdir}"
+executable="xvfb-run ./WurmServerLauncher"
+servercfg="${servicename}.cfg"
+servercfgdefault="server.cfg"
+servercfgdir="${systemdir}"
+servercfgfullpath="${servercfgdir}/${servercfg}"
+
+## Backup Directory
+backupdir="${rootdir}/backups"
+
+## Logging Directories
+logdir="${rootdir}/log"
+gamelogdir="${serverfiles}/Logs"
+lgsmlogdir="${logdir}/script"
+consolelogdir="${logdir}/console"
+lgsmlog="${lgsmlogdir}/${servicename}-script.log"
+consolelog="${consolelogdir}/${servicename}-console.log"
+alertlog="${lgsmlogdir}/${servicename}-alert.log"
+postdetailslog="${lgsmlogdir}/${servicename}-postdetails.log"
+
+## Logs Naming
+lgsmlogdate="${lgsmlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
+consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
diff --git a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg
index dcada8f4e..9b9c38347 100644
--- a/lgsm/config-default/config-lgsm/zpsserver/_default.cfg
+++ b/lgsm/config-default/config-lgsm/zpsserver/_default.cfg
@@ -8,7 +8,7 @@
#### Server Settings ####
-## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
+## Server Start Settings | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="27015"
clientport="27005"
@@ -21,7 +21,7 @@ maxplayers="20"
# More info: https://linuxgsm.com/gslt
gslt=""
-## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
+## Server Start Command | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
fn_parms(){
parms="-game zps -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"
}
@@ -31,60 +31,67 @@ parms="-game zps -strictportbind -ip ${ip} -port ${port} +clientport ${clientpor
## Notification Alerts
# (on|off)
-# More info | https://github.com/GameServerManagers/LinuxGSM/wiki/Alerts#more-info
+# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
postdays="7"
posttarget="https://hastebin.com"
-# Discord Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Discord
+# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
-# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
+# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
-# IFTTT Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT
+# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
-# Mailgun Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/mailgun
+# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="alert@example.com"
mailgunemail="email@myemail.com"
-# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
+# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
-# Pushover Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover
+# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
-# Telegram Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram
+# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
+# You can add a custom cURL string eg proxy (useful in Russia) or else in "curlcustomstring".
+# like a "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help", if you not need
+# any custom string in curl - simple ignore this parameter.
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
+curlcustomstring=""
-## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
+## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
-## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
+## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
-## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
+## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
+# ANSI Colors
+ansi="on"
+
## SteamCMD Settings
# Server appid
appid="17505"
diff --git a/lgsm/functions/alert.sh b/lgsm/functions/alert.sh
index 07abe0fb7..ceeed0304 100644
--- a/lgsm/functions/alert.sh
+++ b/lgsm/functions/alert.sh
@@ -119,7 +119,7 @@ elif [ "${discordalert}" != "on" ]&&[ "${function_selfname}" == "command_test_al
fn_script_log_warn "Discord alerts not enabled"
elif [ -z "${discordtoken}" ]&&[ "${function_selfname}" == "command_test_alert.sh" ]; then
fn_print_error_nl "Discord token not set"
- echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/Discord"
+ echo " * https://docs.linuxgsm.com/alerts/discord"
fn_script_error_warn "Discord token not set"
fi
@@ -140,7 +140,7 @@ elif [ "${iftttalert}" != "on" ]&&[ "${function_selfname}" == "command_test_aler
fn_script_log_warn "IFTTT alerts not enabled"
elif [ -z "${ifttttoken}" ]&&[ "${function_selfname}" == "command_test_alert.sh" ]; then
fn_print_error_nl "IFTTT token not set"
- echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/IFTTT"
+ echo " * https://docs.linuxgsm.com/alerts/ifttt"
fn_script_error_warn "IFTTT token not set"
fi
@@ -151,7 +151,7 @@ elif [ "${mailgunalert}" != "on" ]&&[ "${function_selfname}" == "command_test_al
fn_script_log_warn "Mailgun alerts not enabled"
elif [ -z "${mailguntoken}" ]&&[ "${function_selfname}" == "command_test_alert.sh" ]; then
fn_print_error_nl "Mailgun token not set"
- echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/Mailgun"
+ echo " * https://docs.linuxgsm.com/alerts/mailgun"
fn_script_error_warn "Mailgun token not set"
fi
@@ -162,7 +162,7 @@ elif [ "${pushbulletalert}" != "on" ]&&[ "${function_selfname}" == "command_test
fn_script_log_warn "Pushbullet alerts not enabled"
elif [ -z "${pushbullettoken}" ]&&[ "${function_selfname}" == "command_test_alert.sh" ]; then
fn_print_error_nl "Pushbullet token not set"
- echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet"
+ echo " * https://docs.linuxgsm.com/alerts/pushbullet"
fn_script_error_warn "Pushbullet token not set"
fi
@@ -173,7 +173,7 @@ elif [ "${pushoveralert}" != "on" ]&&[ "${function_selfname}" == "command_test_a
fn_script_log_warn "Pushover alerts not enabled"
elif [ -z "${pushovertoken}" ]&&[ "${function_selfname}" == "command_test_alert.sh" ]; then
fn_print_error_nl "Pushover token not set"
- echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/Pushover"
+ echo " * https://docs.linuxgsm.com/alerts/pushover"
fn_script_error_warn "Pushover token not set"
fi
@@ -184,10 +184,10 @@ elif [ "${telegramalert}" != "on" ]&&[ "${function_selfname}" == "command_test_a
fn_script_log_warn "Telegram Messages not enabled"
elif [ -z "${telegramtoken}" ]&&[ "${function_selfname}" == "command_test_alert.sh" ]; then
fn_print_error_nl "Telegram token not set."
- echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram"
+ echo " * https://docs.linuxgsm.com/alerts/telegram"
fn_script_error_warn "Telegram token not set."
elif [ -z "${telegramchatid}" ]&&[ "${function_selfname}" == "command_test_alert.sh" ]; then
fn_print_error_nl "Telegram chat id not set."
- echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/Telegram"
+ echo " * https://docs.linuxgsm.com/alerts/telegram"
fn_script_error_warn "Telegram chat id not set."
fi
\ No newline at end of file
diff --git a/lgsm/functions/alert_discord.sh b/lgsm/functions/alert_discord.sh
index 2da1910ed..2ace8935f 100644
--- a/lgsm/functions/alert_discord.sh
+++ b/lgsm/functions/alert_discord.sh
@@ -1,49 +1,47 @@
#!/bin/bash
# LinuxGSM alert_discord.sh function
# Author: Daniel Gibbs
-# Contributor: faflfama
+# Contributor: faflfama, diamondburned
# Website: https://linuxgsm.com
# Description: Sends Discord alert.
+if ! command -v jq > /dev/null; then
+ fn_print_fail_nl "Sending Discord alert: jq is missing."
+ fn_script_log_fatal "Sending Discord alert: jq is missing."
+fi
+
+escaped_servername="$(echo -n "${servername}" | jq -sRr "@json")"
+escaped_alertbody="$(echo -n "${alertbody}" | jq -sRr "@json")"
+
json=$(cat <${alertsubject} ${alertemoji}\n\nMessage\n${alertbody}\n\nGame\n${gamename}\n\nServer name\n${servername}\n\nHostname\n${HOSTNAME}\n\nServer IP\n${ip}:${port}\n\nMore info\n${alerturl}",
+ "text": "${alertemoji} ${alertsubject} ${alertemoji}\n\nMessage\n${alertbody}\n\nGame\n${gamename}\n\nServer name\n${servername}\n\nHostname\n${HOSTNAME}\n\nServer IP\n${extip:-$ip}:${port}\n\nMore info\n${alerturl}",
"disable_web_page_preview": "yes",
EOF
)
fn_print_dots "Sending Telegram alert"
sleep 0.5
-telegramsend=$(${curlpath} -sSL -H "Content-Type: application/json" -X POST -d """${json}""" "https://api.telegram.org/bot${telegramtoken}/sendMessage" | grep "error_code")
+telegramsend=$(${curlpath} -sSL -H "Content-Type: application/json" -X POST -d """${json}""" "https://api.telegram.org/bot${telegramtoken}/sendMessage" ${curlcustomstring} | grep "error_code")
if [ -n "${telegramsend}" ]; then
fn_print_fail_nl "Sending Telegram alert: ${telegramsend}"
diff --git a/lgsm/functions/check.sh b/lgsm/functions/check.sh
index 5814a823d..99c8890e5 100644
--- a/lgsm/functions/check.sh
+++ b/lgsm/functions/check.sh
@@ -10,11 +10,16 @@ local commandname="CHECK"
# Every command that requires checks just references check.sh
# check.sh selects which checks to run by using arrays
-check_root.sh
+if [ "${userinput}" != "install" ]&&[ "${userinput}" != "auto-install" ]&&[ "${userinput}" != "i" ]&&[ "${userinput}" != "ai" ]; then
+ check_root.sh
+fi
+
check_tmuxception.sh
-if [ "${function_selfname}" != "command_monitor.sh" ]; then
- check_permissions.sh
+if [ "$(whoami)" != "root" ]; then
+ if [ "${function_selfname}" != "command_monitor.sh" ]; then
+ check_permissions.sh
+ fi
fi
if [ "${function_selfname}" != "command_install.sh" ]&&[ "${function_selfname}" != "command_update_functions.sh" ]&&[ "${function_selfname}" != "command_update_linuxgsm.sh" ]&&[ "${function_selfname}" != "command_details.sh" ]&&[ "${function_selfname}" != "command_postdetails.sh" ]; then
@@ -29,13 +34,15 @@ do
fi
done
-local allowed_commands_array=( command_debug.sh command_start.sh command_install.sh )
-for allowed_command in "${allowed_commands_array[@]}"
-do
- if [ "${allowed_command}" == "${function_selfname}" ]; then
- check_glibc.sh
- fi
-done
+if [ "$(whoami)" != "root" ]; then
+ local allowed_commands_array=( command_debug.sh command_start.sh command_install.sh )
+ for allowed_command in "${allowed_commands_array[@]}"
+ do
+ if [ "${allowed_command}" == "${function_selfname}" ]; then
+ check_glibc.sh
+ fi
+ done
+fi
local allowed_commands_array=( command_backup.sh command_console.sh command_debug.sh command_details.sh command_unreal2_maps.sh command_fastdl.sh command_mods_install.sh command_mods_remove.sh command_mods_update.sh command_monitor.sh command_postdetails.sh command_restart.sh command_start.sh command_stop.sh command_test_alert.sh command_ts3_server_pass.sh command_update.sh command_update_functions.sh command_validate.sh command_wipe.sh command_unreal2_maps.sh command_ut99maps.sh)
for allowed_command in "${allowed_commands_array[@]}"
@@ -61,7 +68,7 @@ do
fi
done
-local allowed_commands_array=( command_debug.sh command_details.sh command_monitor.sh command_start.sh command_stop.sh command_dev_query_raw.sh )
+local allowed_commands_array=( command_debug.sh command_details.sh command_postdetails.sh command_monitor.sh command_start.sh command_stop.sh command_dev_query_raw.sh )
for allowed_command in "${allowed_commands_array[@]}"
do
if [ "${allowed_command}" == "${function_selfname}" ]; then
diff --git a/lgsm/functions/check_config.sh b/lgsm/functions/check_config.sh
index d7bc5ae92..dff515742 100644
--- a/lgsm/functions/check_config.sh
+++ b/lgsm/functions/check_config.sh
@@ -8,7 +8,7 @@ local commandname="CHECK"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
if [ ! -e "${servercfgfullpath}" ]; then
- if [ "${gamename}" != "Hurtworld" ]&&[ "${shortname}" != "ut3" ]&&[ "${shortname}" != "kf2" ]; then
+ if [ "${shortname}" != "hw" ]&&[ "${shortname}" != "ut3" ]&&[ "${shortname}" != "kf2" ]; then
fn_print_dots ""
sleep 0.5
fn_print_warn_nl "Configuration file missing!"
@@ -20,7 +20,7 @@ if [ ! -e "${servercfgfullpath}" ]; then
fi
fi
-if [ "${gamename}" == "Rust" ]; then
+if [ "${shortname}" == "rust" ]; then
if [ -z "${rconpassword}" ]; then
fn_print_dots ""
sleep 0.5
diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh
index 021898b43..0cb0b0178 100644
--- a/lgsm/functions/check_deps.sh
+++ b/lgsm/functions/check_deps.sh
@@ -6,6 +6,136 @@
local commandname="CHECK"
+fn_install_mono_repo(){
+ if [ "${monostatus}" != "0" ]; then
+ fn_print_dots "Adding Mono repository"
+ sleep 0.5
+ if [ "${autoinstall}" == "1" ]; then
+ sudo -n true > /dev/null 2>&1
+ else
+ sudo -v > /dev/null 2>&1
+ fi
+ if [ $? -eq 0 ]; then
+ fn_print_info_nl "Automatically adding Mono repository."
+ fn_script_log_info "Automatically adding Mono repository."
+ echo -en ".\r"
+ sleep 1
+ echo -en "..\r"
+ sleep 1
+ echo -en "...\r"
+ sleep 1
+ echo -en " \r"
+ if [ "${distroid}" == "ubuntu" ]; then
+ if [ "${distroversion}" == "18.04" ]; then
+ cmd="sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF;echo 'deb https://download.mono-project.com/repo/ubuntu stable-bionic main' | sudo tee /etc/apt/sources.list.d/mono-official-stable.list;sudo apt update"
+ eval ${cmd}
+ elif [ "${distroversion}" == "16.04" ]; then
+ cmd="sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF;sudo apt install apt-transport-https;echo 'deb https://download.mono-project.com/repo/ubuntu stable-xenial main' | sudo tee /etc/apt/sources.list.d/mono-official-stable.list;sudo apt update"
+ eval ${cmd}
+ elif [ "${distroversion}" == "14.04" ]; then
+ cmd="sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF;sudo apt install apt-transport-https;echo 'deb https://download.mono-project.com/repo/ubuntu stable-trusty main' | sudo tee /etc/apt/sources.list.d/mono-official-stable.list;sudo apt update"
+ eval ${cmd}
+ else
+ fn_print_warn_nl "Installing Mono repository"
+ echo "Mono auto install not available for ${distroname}"
+ echo " Follow instructions on mono site to install the latest version of Mono."
+ echo " https://www.mono-project.com/download/stable/#download-lin"
+ monoautoinstall="1"
+ fi
+ elif [ "${distroid}" == "debian" ]; then
+ if [ "${distroversion}" == "9" ]; then
+ cmd="sudo apt install apt-transport-https dirmngr;sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF;echo 'deb https://download.mono-project.com/repo/debian stable-stretch main' | sudo tee /etc/apt/sources.list.d/mono-official-stable.list;sudo apt update"
+ eval ${cmd}
+ elif [ "${distroversion}" == "8" ]; then
+ cmd="sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF;sudo apt install apt-transport-https;echo 'deb https://download.mono-project.com/repo/debian stable-jessie main' | sudo tee /etc/apt/sources.list.d/mono-official-stable.list;sudo apt update"
+ eval ${cmd}
+ else
+ echo "Mono auto install not available for ${distroname}"
+ echo " Follow instructions on mono site to install the latest version of Mono."
+ echo " https://www.mono-project.com/download/stable/#download-lin"
+ monoautoinstall="1"
+ fi
+ elif [ "${distroid}" == "centos" ]; then
+ if [ "${distroversion}" == "7" ]; then
+ cmd="rpm --import 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF';su -c 'curl https://download.mono-project.com/repo/centos7-stable.repo | tee /etc/yum.repos.d/mono-centos7-stable.repo'"
+ eval ${cmd}
+ elif [ "${distroversion}" == "6" ]; then
+ cmd="rpm --import 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF';su -c 'curl https://download.mono-project.com/repo/centos6-stable.repo | tee /etc/yum.repos.d/mono-centos6-stable.repo'"
+ eval ${cmd}
+ else
+ echo "Mono auto install not available for ${distroname}"
+ echo " Follow instructions on mono site to install the latest version of Mono."
+ echo " https://www.mono-project.com/download/stable/#download-lin"
+ monoautoinstall="1"
+ fi
+ elif [ "${distroid}" == "fedora" ]; then
+ cmd="rpm --import 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF'; su -c 'curl https://download.mono-project.com/repo/centos7-stable.repo | tee /etc/yum.repos.d/mono-centos7-stable.repo'; dnf update"
+ eval ${cmd}
+ else
+ echo "Mono auto install not available for ${distroname}"
+ echo " Follow instructions on mono site to install the latest version of Mono."
+ echo " https://www.mono-project.com/download/stable/#download-lin"
+ monoautoinstall="1"
+ fi
+ if [ "${monoautoinstall}" != "1" ];then
+ if [ $? != 0 ]; then
+ fn_print_failure_nl "Unable to install Mono repository."
+ fn_script_log_fatal "Unable to installMono repository."
+ monoautoinstall=1
+ else
+ fn_print_complete_nl "Installing Mono repository completed."
+ fn_script_log_pass "Installing Mono repository completed."
+ monoautoinstall=0
+ fi
+ fi
+ else
+ fn_print_information_nl "Installing Mono repository"
+ echo ""
+ fn_print_warning_nl "$(whoami) does not have sudo access. Manually install Mono repository."
+ fn_script_log_warn "$(whoami) does not have sudo access. Manually install Mono repository."
+ echo " Follow instructions on mono site to install the latest version of Mono."
+ echo " https://www.mono-project.com/download/stable/#download-lin"
+ fi
+ fi
+}
+
+fn_install_universe_repo(){
+ # Defensive coding - As this is an ubuntu only issue then check to make sure this fix is needed, and we are using ubuntu
+ if [ "${jquniversemissing}" != "0" ]&&[ "${distroid}" == "ubuntu" ]; then
+ fn_print_warning_nl "Ubuntu 18.04.1 contains a bug which means the sources.list file does not populate with the Ubuntu universe repository."
+ fn_print_information_nl "Attempting to add Universe Repo"
+ sleep 0.5
+ if [ "${autoinstall}" == "1" ]; then
+ sudo -n true > /dev/null 2>&1
+ else
+ sudo -v > /dev/null 2>&1
+ fi
+ if [ $? -eq 0 ]; then
+ echo -en ".\r"
+ sleep 1
+ echo -en "..\r"
+ sleep 1
+ echo -en "...\r"
+ sleep 1
+ echo -en " \r"
+ cmd="sudo apt-add-repository universe"
+ eval ${cmd}
+ if [ $? -eq 0 ]; then
+ fn_print_complete_nl "Installing universe repository completed."
+ fn_script_log_pass "Installing universe repository completed."
+ else
+ fn_print_failure_nl "Unable to install universe repository."
+ fn_script_log_fatal "Unable to install universe repository."
+ fi
+ else
+ fn_print_warning_nl "$(whoami) does not have sudo access. Manually add Universe repository."
+ fn_script_log_warn "$(whoami) does not have sudo access. Manually add Universe repository."
+ echo " Please run the following command as a user with sudo access, and re-run the installation"
+ echo " sudo apt-add-repository universe"
+ fi
+ fi
+}
+
fn_deps_detector(){
# Checks if dependency is missing
if [ "${tmuxcheck}" == "1" ]; then
@@ -18,11 +148,27 @@ fn_deps_detector(){
depstatus=0
deptocheck="${javaversion}"
unset javacheck
- elif [ -n "$(command -v apt 2>/dev/null)" ]; then
+ elif [ "${deptocheck}" == "jq" ]&&[ "${distroversion}" == "6" ]; then
+ jqstatus=1
+ elif [ "${deptocheck}" == "jq" ]&&[ "${distroid}" == "ubuntu" ]&&[ "${distroversion}" == "18.04" ]&& ! grep -qE "^deb .*universe" /etc/apt/sources.list; then
+ #1985 ubuntu 18.04.1 bug does not set sources.list correctly which means universe is not active by default
+ #If the universe repo does not exist, mark as dependency missing and universe missing
+ depstatus=1
+ jquniversemissing=1
+ elif [ "${deptocheck}" == "mono-complete" ]; then
+ if [ "$(command -v mono 2>/dev/null)" ]&&[ "$(mono --version 2>&1 | grep -Po '(?<=version )\d')" -ge 5 ]; then
+ # Mono >= 5.0.0 already installed
+ depstatus=0
+ else
+ # Mono not installed or installed Mono < 5.0.0
+ depstatus=1
+ monostatus=1
+ fi
+ elif [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
dpkg-query -W -f='${Status}' "${deptocheck}" 2>/dev/null | grep -q -P '^install ok installed'
depstatus=$?
- elif [ -n "$(command -v yum 2>/dev/null)" ]; then
- yum -q list installed "${deptocheck}" > /dev/null 2>&1
+ elif [ -n "$(command -v rpm 2>/dev/null)" ]; then
+ rpm -q "${deptocheck}" > /dev/null 2>&1
depstatus=$?
fi
@@ -31,14 +177,20 @@ fn_deps_detector(){
missingdep=0
if [ "${function_selfname}" == "command_install.sh" ]; then
echo -e "${green}${deptocheck}${default}"
- sleep 0.5
+ sleep 0.2
fi
else
# if dependency is not found
missingdep=1
if [ "${function_selfname}" == "command_install.sh" ]; then
echo -e "${red}${deptocheck}${default}"
- sleep 0.5
+ sleep 0.2
+ fi
+ # Define required dependencies for SteamCMD
+ if [ -n "${appid}" ]; then
+ if [ "${deptocheck}" == "glibc.i686" ]||[ "${deptocheck}" == "libstdc++64.i686" ]||[ "${deptocheck}" == "lib32gcc1" ]||[ "${deptocheck}" == "libstdc++6:i386" ]; then
+ steamcmdfail=1
+ fi
fi
fi
@@ -58,13 +210,13 @@ fn_deps_email(){
array_deps_required+=( sendmail )
elif [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
array_deps_required+=( mailutils postfix )
- elif [ -n "$(command -v yum 2>/dev/null)" ]; then
+ elif [ -n "$(command -v rpm 2>/dev/null)" ]; then
array_deps_required+=( mailx postfix )
fi
else
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
array_deps_required+=( mailutils postfix )
- elif [ -n "$(command -v yum 2>/dev/null)" ]; then
+ elif [ -n "$(command -v rpm 2>/dev/null)" ]; then
array_deps_required+=( mailx postfix )
fi
fi
@@ -73,12 +225,22 @@ fn_deps_email(){
fn_found_missing_deps(){
if [ "${#array_deps_missing[@]}" != "0" ]; then
- fn_print_dots "Checking dependencies"
- sleep 0.5
- fn_print_error_nl "Checking dependencies: missing: ${red}${array_deps_missing[@]}${default}"
- fn_script_log_error "Checking dependencies: missing: ${array_deps_missing[@]}"
+
+ fn_print_warning_nl "Missing dependencies: ${red}${array_deps_missing[@]}${default}"
+ fn_script_log_warn "Missing dependencies: ${array_deps_missing[@]}"
sleep 0.5
- sudo -v > /dev/null 2>&1
+ if [ -n "${monostatus}" ]; then
+ fn_install_mono_repo
+ fi
+ if [ -n "${jqstatus}" ]; then
+ fn_print_warning_nl "jq is not available in the ${distroname} repository"
+ echo " * https://docs.linuxgsm.com/requirements/jq"
+ fi
+ if [ "${autoinstall}" == "1" ]; then
+ sudo -n true > /dev/null 2>&1
+ else
+ sudo -v > /dev/null 2>&1
+ fi
if [ $? -eq 0 ]; then
fn_print_information_nl "Automatically installing missing dependencies."
fn_script_log_info "Automatically installing missing dependencies."
@@ -92,6 +254,9 @@ fn_found_missing_deps(){
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
cmd="sudo dpkg --add-architecture i386; sudo apt update; sudo apt -y install ${array_deps_missing[@]}"
eval "${cmd}"
+ elif [ -n "$(command -v dnf 2>/dev/null)" ]; then
+ cmd="sudo dnf -y install ${array_deps_missing[@]}"
+ eval "${cmd}"
elif [ -n "$(command -v yum 2>/dev/null)" ]; then
cmd="sudo yum -y install ${array_deps_missing[@]}"
eval "${cmd}"
@@ -99,6 +264,22 @@ fn_found_missing_deps(){
if [ $? != 0 ]; then
fn_print_failure_nl "Unable to install dependencies"
fn_script_log_fatal "Unable to install dependencies"
+ echo ""
+ fn_print_warning_nl "Manually install dependencies."
+ fn_script_log_warn "Manually install dependencies."
+ if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
+ echo " sudo dpkg --add-architecture i386; sudo apt update; sudo apt install ${array_deps_missing[@]}"
+ elif [ -n "$(command -v dnf 2>/dev/null)" ]; then
+ echo " sudo dnf install ${array_deps_missing[@]}"
+ elif [ -n "$(command -v yum 2>/dev/null)" ]; then
+ echo " sudo yum install ${array_deps_missing[@]}"
+ fi
+ if [ "${steamcmdfail}" ]; then
+ echo ""
+ fn_print_failure_nl "Missing dependencies required to run SteamCMD."
+ fn_script_log_fatal "Missing dependencies required to run SteamCMD."
+ core_exit.sh
+ fi
else
fn_print_complete_nl "Install dependencies completed"
fn_script_log_pass "Install dependencies completed"
@@ -109,14 +290,27 @@ fn_found_missing_deps(){
fn_script_log_warn "$(whoami) does not have sudo access. Manually install dependencies."
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
echo " sudo dpkg --add-architecture i386; sudo apt update; sudo apt install ${array_deps_missing[@]}"
+ elif [ -n "$(command -v dnf 2>/dev/null)" ]; then
+ echo " sudo dnf install ${array_deps_missing[@]}"
elif [ -n "$(command -v yum 2>/dev/null)" ]; then
echo " sudo yum install ${array_deps_missing[@]}"
fi
+ if [ "${steamcmdfail}" ]; then
+ echo ""
+ fn_print_failure_nl "Missing dependencies required to run SteamCMD."
+ fn_script_log_fatal "Missing dependencies required to run SteamCMD."
+ core_exit.sh
+ fi
echo ""
fi
if [ "${function_selfname}" == "command_install.sh" ]; then
sleep 5
fi
+ else
+ if [ "${function_selfname}" == "command_install.sh" ]; then
+ fn_print_information_nl "Required dependencies already installed"
+ fn_script_log_info "Required dependencies already installed"
+ fi
fi
}
@@ -131,24 +325,16 @@ fn_check_loop(){
fn_found_missing_deps
}
-info_distro.sh
-
-if [ "${function_selfname}" == "command_install.sh" ]; then
- echo ""
- echo "Checking Dependencies"
- echo "================================="
-fi
-
-# Check will only run if using apt or yum
-if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
+# Generate require dependencies for debian based systems
+fn_deps_build_debian(){
# Generate array of missing deps
array_deps_missing=()
- # LinuxGSM requirements
- array_deps_required=( curl wget ca-certificates file bsdmainutils util-linux python bzip2 gzip unzip binutils bc )
+ ## LinuxGSM requirements
+ array_deps_required=( curl wget ca-certificates file bsdmainutils util-linux python bzip2 gzip unzip binutils bc jq )
# All servers except ts3 require tmux
- if [ "${gamename}" != "TeamSpeak 3" ]; then
+ if [ "${shortname}" != "ts3" ]; then
if [ "$(command -v tmux 2>/dev/null)" ]; then
tmuxcheck=1 # Added for users compiling tmux from source to bypass check.
else
@@ -156,8 +342,8 @@ if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
fi
fi
- # All servers except ts3,mumble,multitheftauto and minecraft servers require libstdc++6 and lib32gcc1
- if [ "${gamename}" != "TeamSpeak 3" ]&&[ "${gamename}" != "Mumble" ]&&[ "${engine}" != "lwjgl2" ]&&[ "${engine}" != "renderware" ]; then
+ # All servers except ts3, mumble, GTA and minecraft servers require libstdc++6 and lib32gcc1
+ if [ "${shortname}" != "ts3" ]&&[ "${shortname}" != "mumble" ]&&[ "${shortname}" != "mc" ]&&[ "${engine}" != "renderware" ]; then
if [ "${arch}" == "x86_64" ]; then
array_deps_required+=( lib32gcc1 libstdc++6:i386 )
else
@@ -165,87 +351,110 @@ if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
fi
fi
- # Game Specific requirements
+ ## Game Specific requirements
- # Natural Selection 2
- if [ "${gamename}" == "Natural Selection 2" ]; then
+ # Natural Selection 2 - x64 only
+ if [ "${shortname}" == "ns2" ]; then
array_deps_required+=( speex libtbb2 )
# NS2: Combat
- elif [ "${gamename}" == "NS2: Combat" ]; then
+ elif [ "${shortname}" == "ns2c" ]; then
array_deps_required+=( speex:i386 libtbb2 )
# 7 Days to Die
- elif [ "${gamename}" == "7 Days To Die" ]; then
+ elif [ "${shortname}" == "sdtd" ]; then
array_deps_required+=( telnet expect )
# No More Room in Hell, Counter-Strike: Source and Garry's Mod
- elif [ "${gamename}" == "No More Room in Hell" ]||[ "${gamename}" == "Counter-Strike: Source" ]||[ "${gamename}" == "Garry's Mod" ]||[ "${gamename}" == "Zombie Panic! Source" ]; then
+ elif [ "${shortname}" == "nmrih" ]||[ "${shortname}" == "css" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "zps" ]; then
if [ "${arch}" == "x86_64" ]; then
array_deps_required+=( lib32tinfo5 )
else
array_deps_required+=( libtinfo5 )
fi
# Brainbread 2 ,Don't Starve Together & Team Fortress 2
- elif [ "${gamename}" == "Brainbread 2" ]||[ "${gamename}" == "Don't Starve Together" ]||[ "${gamename}" == "Team Fortress 2" ]; then
+ elif [ "${shortname}" == "bb2" ]||[ "${shortname}" == "dst" ]||[ "${shortname}" == "tf2" ]; then
array_deps_required+=( libcurl4-gnutls-dev:i386 )
- if [ "${gamename}" == "Team Fortress 2" ]; then
+ if [ "${shortname}" == "tf2" ]; then
array_deps_required+=( libtcmalloc-minimal4:i386 )
fi
# Battlefield: 1942
- elif [ "${gamename}" == "Battlefield: 1942" ]; then
+ elif [ "${shortname}" == "bf1942" ]; then
array_deps_required+=( libncurses5:i386 )
# Call of Duty
- elif [ "${gamename}" == "Call of Duty" ]||[ "${gamename}" == "Call of Duty: United Offensive" ]||[ "${gamename}" == "Call of Duty 2" ]; then
+ elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]||[ "${shortname}" == "cod2" ]; then
array_deps_required+=( libstdc++5:i386 )
# Factorio
- elif [ "${gamename}" == "Factorio" ]; then
+ elif [ "${shortname}" == "fctr" ]; then
array_deps_required+=( xz-utils )
# Hurtword/Rust
- elif [ "${gamename}" == "Hurtword" ]||[ "${gamename}" == "Rust" ]; then
+ elif [ "${shortname}" == "hw" ]||[ "${shortname}" == "rust" ]; then
array_deps_required+=( lib32z1 )
- # Project Zomboid and Minecraft
- elif [ "${engine}" == "projectzomboid" ]||[ "${engine}" == "lwjgl2" ]; then
+ # Minecraft
+ elif [ "${shortname}" == "mc" ]; then
javaversion=$(java -version 2>&1 | grep "version")
- if [ -n "${javaversion}" ]; then
+ if [ "${javaversion}" ]; then
+ javacheck=1 # Added for users using Oracle JRE to bypass the check.
+ else
+ array_deps_required+=( openjdk-8-jre-headless )
+ fi
+ # Project Zomboid
+ elif [ "${shortname}" == "pz" ]; then
+ if [ -n "$(java -version 2>&1 | grep "version")" ]; then
javacheck=1 # Added for users using Oracle JRE to bypass the check.
+ array_deps_required+=( rng-tools )
else
- array_deps_required+=( default-jre )
+ array_deps_required+=( default-jre rng-tools )
fi
# GoldenEye: Source
- elif [ "${gamename}" == "GoldenEye: Source" ]; then
+ elif [ "${shortname}" == "ges" ]; then
array_deps_required+=( zlib1g:i386 libldap-2.4-2:i386 )
# Serious Sam 3: BFE
- elif [ "${gamename}" == "Serious Sam 3: BFE" ]; then
+ elif [ "${shortname}" == "ss3" ]; then
array_deps_required+=( libxrandr2:i386 libglu1-mesa:i386 libxtst6:i386 libusb-1.0-0-dev:i386 libxxf86vm1:i386 libopenal1:i386 libssl1.0.0:i386 libgtk2.0-0:i386 libdbus-glib-1-2:i386 libnm-glib-dev:i386 )
+ # Sven Co-op
+ elif [ "${shortname}" == "sven" ]; then
+ array_deps_required+=( libssl1.0.0:i386 zlib1g:i386 )
# Unreal Engine
- elif [ "${executable}" == "./ucc-bin" ]; then
+ elif [ "${executable}" == "./ucc-bin" ]; then
#UT2K4
if [ -f "${executabledir}/ut2004-bin" ]; then
- array_deps_required+=( libsdl1.2debian libstdc++5:i386 bzip2 )
+ array_deps_required+=( libsdl1.2debian libstdc++5:i386 )
#UT99
else
- array_deps_required+=( libsdl1.2debian bzip2 )
+ array_deps_required+=( libsdl1.2debian )
fi
# Unreal Tournament
- elif [ "${gamename}" == "Unreal Tournament" ]; then
+ elif [ "${shortname}" == "ut" ]; then
array_deps_required+=( unzip )
+ # Eco
+ elif [ "${shortname}" == "eco" ]; then
+ array_deps_required+=( mono-complete )
+ # Wurm: Unlimited
+ elif [ "${shortname}" == "wurm" ]; then
+ array_deps_required+=( xvfb )
fi
fn_deps_email
fn_check_loop
+}
-elif [ -n "$(command -v yum 2>/dev/null)" ]; then
+fn_deps_build_redhat(){
# Generate array of missing deps
array_deps_missing=()
# LinuxGSM requirements
+ ## CentOS 6
if [ "${distroversion}" == "6" ]; then
- array_deps_required=( curl wget util-linux-ng python file gzip bzip2 unzip binutils bc )
+ array_deps_required=( epel-release curl wget util-linux-ng python file gzip bzip2 unzip binutils bc jq )
+ elif [ "${distroversion}" == "7" ]; then
+ array_deps_required=( epel-release curl wget util-linux python file gzip bzip2 unzip binutils bc jq )
+ elif [ "${distroid}" == "fedora" ]; then
+ array_deps_required=( curl wget util-linux python2 file gzip bzip2 unzip binutils bc jq )
elif [[ "${distroname}" == *"Amazon Linux AMI"* ]]; then
- array_deps_required=( curl wget util-linux python27 file gzip bzip2 unzip binutils bc )
+ array_deps_required=( curl wget util-linux python27 file gzip bzip2 unzip binutils bc jq )
else
- array_deps_required=( curl wget util-linux python file gzip bzip2 unzip binutils bc )
+ array_deps_required=( curl wget util-linux python file gzip bzip2 unzip binutils bc jq )
fi
# All servers except ts3 require tmux
- if [ "${gamename}" != "TeamSpeak 3" ]; then
+ if [ "${shortname}" != "ts3" ]; then
if [ "$(command -v tmux 2>/dev/null)" ]; then
tmuxcheck=1 # Added for users compiling tmux from source to bypass check.
else
@@ -254,58 +463,68 @@ elif [ -n "$(command -v yum 2>/dev/null)" ]; then
fi
# All servers except ts3,mumble,multitheftauto and minecraft servers require glibc.i686 and libstdc++.i686
- if [ "${gamename}" != "TeamSpeak 3" ]&&[ "${gamename}" != "Mumble" ]&&[ "${engine}" != "lwjgl2" ]&&[ "${engine}" != "renderware" ]; then
+ if [ "${shortname}" != "ts3" ]&&[ "${shortname}" != "mumble" ]&&[ "${shortname}" != "mc" ]&&[ "${engine}" != "renderware" ]; then
if [[ "${distroname}" == *"Amazon Linux AMI"* ]]; then
- array_deps_required+=( glibc.i686 libstdc++64.i686 )
- else
+ array_deps_required+=( glibc.i686 libstdc++64.i686 )
+ else
array_deps_required+=( glibc.i686 libstdc++.i686 )
fi
fi
# Game Specific requirements
- # Natural Selection 2
- if [ "${gamename}" == "Natural Selection 2" ]; then
+ # Natural Selection 2 (x64 only)
+ if [ "${shortname}" == "ns2" ]; then
array_deps_required+=( speex tbb )
# NS2: Combat
- elif [ "${gamename}" == "NS2: Combat" ]; then
+ elif [ "${shortname}" == "ns2c" ]; then
array_deps_required+=( speex.i686 tbb.i686 )
# 7 Days to Die
- elif [ "${gamename}" == "7 Days To Die" ]; then
+ elif [ "${shortname}" == "sdtd" ]; then
array_deps_required+=( telnet expect )
- # No More Room in Hell, Counter-Strike: Source and Garry's Mod
- elif [ "${gamename}" == "No More Room in Hell" ]||[ "${gamename}" == "Counter-Strike: Source" ]||[ "${gamename}" == "Garry's Mod" ]||[ "${gamename}" == "Zombie Panic! Source" ]; then
+ # No More Room in Hell, Counter-Strike: Source, Garry's Mod and Zombie Panic: Source
+ elif [ "${shortname}" == "nmrih" ]||[ "${shortname}" == "css" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "zps" ]; then
array_deps_required+=( ncurses-libs.i686 )
# Brainbread 2, Don't Starve Together & Team Fortress 2
- elif [ "${gamename}" == "Brainbread 2" ]||[ "${gamename}" == "Don't Starve Together" ]||[ "${gamename}" == "Team Fortress 2" ]; then
+ elif [ "${shortname}" == "bb2" ]||[ "${shortname}" == "dst" ]||[ "${shortname}" == "tf2" ]; then
array_deps_required+=( libcurl.i686 )
- if [ "${gamename}" == "Team Fortress 2" ]; then
+ if [ "${shortname}" == "tf2" ]; then
array_deps_required+=( gperftools-libs.i686 )
fi
# Battlefield: 1942
- elif [ "${gamename}" == "Battlefield: 1942" ]; then
+ elif [ "${shortname}" == "bf1942" ]; then
array_deps_required+=( ncurses-libs.i686 )
# Call of Duty
- elif [ "${gamename}" == "Call of Duty" ]||[ "${gamename}" == "Call of Duty: United Offensive" ]||[ "${gamename}" == "Call of Duty 2" ]; then
+ elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]||[ "${shortname}" == "cod2" ]; then
array_deps_required+=( compat-libstdc++-33.i686 )
# Factorio
- elif [ "${gamename}" == "Factorio" ]; then
+ elif [ "${shortname}" == "fctr" ]; then
array_deps_required+=( xz )
- elif [ "${gamename}" == "Hurtword" ]||[ "${gamename}" == "Rust" ]; then
+ elif [ "${shortname}" == "hw" ]||[ "${shortname}" == "rust" ]; then
array_deps_required+=( zlib-devel )
- # Project Zomboid and Minecraft
- elif [ "${engine}" == "projectzomboid" ]||[ "${engine}" == "lwjgl2" ]; then
+ # Minecraft
+ elif [ "${shortname}" == "mc" ]; then
+ javaversion=$(java -version 2>&1 | grep "version")
+ if [ "${javaversion}" ]; then
+ javacheck=1 # Added for users using Oracle JRE to bypass the check.
+ array_deps_required+=( rng-tools )
+ else
+ array_deps_required+=( java-1.8.0-openjdk rng-tools )
+ fi
+ # Project Zomboid & Minecraft
+ elif [ "${shortname}" == "pz" ]; then
javaversion=$(java -version 2>&1 | grep "version")
- if [ -n "${javaversion}" ]; then
+ if [ "${javaversion}" ]; then
javacheck=1 # Added for users using Oracle JRE to bypass the check.
+ array_deps_required+=( rng-tools )
else
- array_deps_required+=( java-1.8.0-openjdk )
+ array_deps_required+=( java-1.8.0-openjdk rng-tools )
fi
# GoldenEye: Source
- elif [ "${gamename}" == "GoldenEye: Source" ]; then
+ elif [ "${shortname}" == "ges" ]; then
array_deps_required+=( zlib.i686 openldap.i686 )
# Unreal Engine
- elif [ "${executable}" == "./ucc-bin" ]; then
+ elif [ "${executable}" == "./ucc-bin" ]; then
#UT2K4
if [ -f "${executabledir}/ut2004-bin" ]; then
array_deps_required+=( compat-libstdc++-33.i686 SDL.i686 bzip2 )
@@ -314,9 +533,37 @@ elif [ -n "$(command -v yum 2>/dev/null)" ]; then
array_deps_required+=( SDL.i686 bzip2 )
fi
# Unreal Tournament
- elif [ "${gamename}" == "Unreal Tournament" ]; then
+ elif [ "${shortname}" == "ut" ]; then
array_deps_required+=( unzip )
+ # Eco
+ elif [ "${shortname}" == "eco" ]; then
+ array_deps_required+=( mono-complete )
fi
fn_deps_email
fn_check_loop
+}
+
+if [ "${function_selfname}" == "command_install.sh" ]; then
+ if [ "$(whoami)" == "root" ]; then
+ echo ""
+ echo "Checking Dependencies as root"
+ echo "================================="
+ fn_print_information_nl "Checking any missing dependencies for ${gamename} server only."
+ fn_print_information_nl "This will NOT install a ${gamename} server."
+ sleep 2
+ else
+ echo ""
+ echo "Checking Dependencies"
+ echo "================================="
+ fi
+fi
+
+# Filter checking in to Debian or Red Hat Based
+info_distro.sh
+if [ -f "/etc/debian_version" ]; then
+ fn_deps_build_debian
+elif [ -f "/etc/redhat-release" ]; then
+ fn_deps_build_redhat
+else
+ fn_print_warning_nl "${distroname} dependency checking unavailable"
fi
diff --git a/lgsm/functions/check_glibc.sh b/lgsm/functions/check_glibc.sh
index 07ad6adb7..d353ed8af 100644
--- a/lgsm/functions/check_glibc.sh
+++ b/lgsm/functions/check_glibc.sh
@@ -11,31 +11,14 @@ info_distro.sh
if [ "${glibcrequired}" == "NOT REQUIRED" ]; then
:
-elif [ "${glibcrequired}" == "UNKNOWN" ]; then
- fn_print_dots "Glibc fix"
- sleep 0.5
- fn_print_error_nl "Glibc fix: ${red}${glibcrequired}${default}"
- echo -e " * glibc required: ${red}${glibcrequired}${default}"
- echo -e " * glibc installed: ${glibcversion}"
-elif [ "$(printf '%s\n'${glibcrequired}'\n' "${glibcversion}" | sort -V | head -n 1)" != "${glibcrequired}" ]; then
- if [ "${glibcfix}" == "yes" ]; then
- if [ "${function_selfname}" != "command_install.sh" ]; then
- fn_print_dots "Glibc fix"
- sleep 0.5
- fn_print_info_nl "Glibc fix: ${green}Using Glibc fix${default}"
- echo -e " * glibc required: ${red}${glibcrequired}${default}"
- echo -e " * glibc installed: ${glibcversion}"
- fix_glibc.sh
- fi
- else
- fn_print_dots "Glibc fix"
- sleep 0.5
- fn_print_error_nl "Glibc fix: ${red}No Glibc fix available!${default}"
- echo -en "\n"
- echo -e " * glibc required: ${glibcrequired}"
- echo -e " * glibc installed: ${red}${glibcversion}${default}"
- echo -en "\n"
- fn_print_information "The game server will probably not work. A distro upgrade is required!"
- sleep 2
- fi
+elif [ "$(printf '%s\n'${glibcrequired}'\n' "${glibcversion}" | sort -V | head -n 1)" != "${glibcrequired}" ]||[ "${glibcrequired}" == "UNKNOWN" ]; then
+ fn_print_dots "Glibc"
+ sleep 0.5
+ fn_print_error_nl "glibc: ${red}glibc distro version ${glibcversion} too old${default}"
+ echo -en "\n"
+ echo -e " * glibc required: ${glibcrequired}"
+ echo -e " * glibc installed: ${red}${glibcversion}${default}"
+ echo -en "\n"
+ fn_print_information "The game server will probably not work. A distro upgrade is required!"
+ sleep 2
fi
\ No newline at end of file
diff --git a/lgsm/functions/check_ip.sh b/lgsm/functions/check_ip.sh
index 507a1a51a..ba0fd6ece 100644
--- a/lgsm/functions/check_ip.sh
+++ b/lgsm/functions/check_ip.sh
@@ -6,27 +6,30 @@
# If multiple interfaces are detected the user will need to manually set using ip="0.0.0.0".
local commandname="CHECK"
-local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
-if [ "${gamename}" != "TeamSpeak 3" ]&&[ "${gamename}" != "Mumble" ]&&[ "${travistest}" != "1" ]; then
+if [ "${shortname}" != "ts3" ]&&[ "${shortname}" != "mumble" ]&&[ "${travistest}" != "1" ]; then
if [ ! -f "/bin/ip" ]; then
ipcommand="/sbin/ip"
else
ipcommand="ip"
fi
- getip=$(${ipcommand} -o -4 addr| awk '{print $4}' | grep -oe '\([0-9]\{1,3\}\.\?\)\{4\}' | grep -v 127.0.0)
- getipwc=$(${ipcommand} -o -4 addr| awk '{print $4}' | grep -oe '\([0-9]\{1,3\}\.\?\)\{4\}' | grep -vc 127.0.0)
+ getip=$(${ipcommand} -o -4 addr | awk '{print $4}' | grep -oe '\([0-9]\{1,3\}\.\?\)\{4\}'|sort -u|grep -v 127.0.0)
+ getipwc=$(${ipcommand} -o -4 addr | awk '{print $4}' | grep -oe '\([0-9]\{1,3\}\.\?\)\{4\}'|sort -u|grep -vc 127.0.0)
info_config.sh
info_parms.sh
# IP is not set to specific IP
if [ "${ip}" == "0.0.0.0" ]||[ "${ip}" == "" ]; then
fn_print_dots "Check IP"
- sleep 0.5
+ sleep 0.2
# Multiple interfaces
if [ "${getipwc}" -ge "2" ]; then
- fn_print_fail "Check IP: Multiple IP addresses found."
- sleep 0.5
+ if [ "${function_selfname}" == "command_details.sh" ]; then
+ fn_print_warn "Check IP: Multiple IP addresses found."
+ else
+ fn_print_fail "Check IP: Multiple IP addresses found."
+ fi
+ sleep 0.2
echo -en "\n"
# IP is set within game config
if [ "${ipsetinconfig}" == "1" ]; then
@@ -53,8 +56,13 @@ if [ "${gamename}" != "TeamSpeak 3" ]&&[ "${gamename}" != "Mumble" ]&&[ "${travi
echo -en "\n"
echo -en "https://linuxgsm.com/network-interfaces\n"
echo -en ""
- fn_script_log_fatal "https://linuxgsm.com/network-interfaces\n"
- core_exit.sh
+ # Do not exit for details and postdetails commands
+ if [ "${function_selfname}" != "command_details.sh" ]||[ "${function_selfname}" != "command_postdetails.sh" ]; then
+ fn_script_log_fatal "https://linuxgsm.com/network-interfaces\n"
+ core_exit.sh
+ else
+ ip="NOT SET"
+ fi
# Single interface
elif [ "${ipsetinconfig}" == "1" ]; then
fn_print_fail "Check IP: IP address not set in game config."
@@ -71,11 +79,13 @@ if [ "${gamename}" != "TeamSpeak 3" ]&&[ "${gamename}" != "Mumble" ]&&[ "${travi
fn_script_log_fatal "IP address not set in game config."
fn_script_log_fatal "Specify the IP you want to bind within: ${servercfgfullpath}."
fn_script_log_fatal "https://linuxgsm.com/network-interfaces\n"
- core_exit.sh
+ if [ "${function_selfname}" != "command_details.sh" ];then
+ core_exit.sh
+ fi
else
fn_print_info_nl "Check IP: ${getip}"
fn_script_log_info "IP automatically set as: ${getip}"
- sleep 0.5
+ sleep 0.2
ip="${getip}"
fi
fi
diff --git a/lgsm/functions/check_logs.sh b/lgsm/functions/check_logs.sh
index b842c0de6..717e53ada 100644
--- a/lgsm/functions/check_logs.sh
+++ b/lgsm/functions/check_logs.sh
@@ -16,7 +16,7 @@ fn_check_logs(){
}
# Create directories for the script and console logs
-if [ ! -d "${lgsmlogdir}" ]||[ ! -d "${consolelogdir}" ]&&[ "${gamename}" != "TeamSpeak 3" ]; then
+if [ ! -d "${lgsmlogdir}" ]||[ ! -d "${consolelogdir}" ]&&[ "${shortname}" != "ts3" ]; then
fn_check_logs
fi
diff --git a/lgsm/functions/check_permissions.sh b/lgsm/functions/check_permissions.sh
index 7498925e1..7185f070b 100644
--- a/lgsm/functions/check_permissions.sh
+++ b/lgsm/functions/check_permissions.sh
@@ -42,8 +42,8 @@ fn_check_ownership(){
} | column -s $'\t' -t | tee -a "${lgsmlog}"
echo ""
- fn_print_information_nl "please see https://github.com/GameServerManagers/LinuxGSM/wiki/FAQ#-fail--starting-game-server-ownership-issues-found"
- fn_script_log "For more information, please see https://github.com/GameServerManagers/LinuxGSM/wiki/FAQ#-fail--starting-game-server-ownership-issues-found"
+ fn_print_information_nl "please see https://docs.linuxgsm.com/support/faq#fail-starting-game-server-permission-issues-found"
+ fn_script_log "For more information, please see https://docs.linuxgsm.com/support/faq#fail-starting-game-server-permission-issues-found"
if [ "${monitorflag}" == 1 ]; then
alert="permissions"
alert.sh
@@ -181,7 +181,7 @@ fn_sys_perm_fix_manually_msg(){
# Attempt to fix /sys related permission errors if sudo is available, exits otherwise
fn_sys_perm_errors_fix(){
- sudo -v > /dev/null 2>&1
+ sudo -n true > /dev/null 2>&1
if [ $? -eq 0 ]; then
fn_print_dots "Automatically fixing /sys permissions"
sleep 0.5
@@ -230,8 +230,10 @@ fn_sys_perm_error_process(){
# Run perm error detect & fix/alert functions on /sys directories
## Run checks
-fn_check_ownership
-fn_check_permissions
-if [ "${function_selfname}" == "command_start.sh" ]; then
- fn_sys_perm_error_process
+if [ "$(whoami)" != "root" ]; then
+ fn_check_ownership
+ fn_check_permissions
+ if [ "${function_selfname}" == "command_start.sh" ]; then
+ fn_sys_perm_error_process
+ fi
fi
diff --git a/lgsm/functions/check_root.sh b/lgsm/functions/check_root.sh
index a58782515..b5d20cf24 100644
--- a/lgsm/functions/check_root.sh
+++ b/lgsm/functions/check_root.sh
@@ -8,9 +8,11 @@ local commandname="CHECK"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
if [ "$(whoami)" = "root" ]; then
- fn_print_fail_nl "Do NOT run this script as root!"
- if [ -d "${lgsmlogdir}" ]; then
- fn_script_log_fatal "${selfname} attempted to run as root."
+ if [ "${function_selfname}" != "command_install.sh" ]; then
+ fn_print_fail_nl "Do NOT run this script as root!"
+ if [ -d "${lgsmlogdir}" ]; then
+ fn_script_log_fatal "${selfname} attempted to run as root."
+ fi
+ core_exit.sh
fi
- core_exit.sh
fi
diff --git a/lgsm/functions/check_status.sh b/lgsm/functions/check_status.sh
index 4fb1bfa31..529dcbf5b 100644
--- a/lgsm/functions/check_status.sh
+++ b/lgsm/functions/check_status.sh
@@ -8,29 +8,17 @@
local commandname="CHECK"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
-if [ "${gamename}" == "TeamSpeak 3" ]; then
+if [ "${shortname}" == "ts3" ]; then
# 1: Server is running
# 0: Server seems to have died
# 0: No server running (ts3server.pid is missing)
- status=$("${executabledir}/ts3server_startscript.sh" status servercfgfullpathfile=${servercfgfullpath})
+ status=$("${executabledir}/ts3server_startscript.sh" status servercfgfullpathfile="${servercfgfullpath}")
if [ "${status}" == "Server is running" ]; then
status=1
else
ts3error="${status}"
status=0
fi
-
-elif [ "${gamename}" == "Mumble" ]; then
- # Get config info
- info_config.sh
- # 1: Server is listening
- # 0: Server is not listening, considered closed
- mumblepid=$(netstat -nap 2>/dev/null | grep udp | grep "${port}" | grep murmur | awk '{ print $6 }' | awk -F'/' '{ print $1 }')
- if [ -z "${mumblepid}" ]; then
- status=0
- else
- status=1
- fi
else
status=$(tmux list-sessions -F "#{session_name}" 2>/dev/null | grep -Ecx "^${servicename}")
fi
diff --git a/lgsm/functions/check_system_requirements.sh b/lgsm/functions/check_system_requirements.sh
index e0a3dbd01..ce961548d 100644
--- a/lgsm/functions/check_system_requirements.sh
+++ b/lgsm/functions/check_system_requirements.sh
@@ -12,19 +12,22 @@ info_distro.sh
# RAM requirements in megabytes for each game or engine.
-if [ "${gamename}" == "ARK: Survival Evolved" ]; then
+if [ "${shortname}" == "ark" ]; then
ramrequirementmb="4000"
ramrequirementgb="4"
-elif [ "${gamename}" == "ARMA 3" ]; then
+elif [ "${shortname}" == "arma3" ]; then
ramrequirementmb="1000"
ramrequirementgb="1"
-elif [ "${gamename}" == "Rust" ]; then
+elif [ "${shortname}" == "rust" ]; then
ramrequirementmb="4000"
ramrequirementgb="4"
-elif [ "${gamename}" == "Minecraft" ]; then
+elif [ "${shortname}" == "mc" ]; then
ramrequirementmb="1000"
ramrequirementgb="1"
-elif [ "${gamename}" == "Natural Selection 2" ]||[ "${gamename}" == "NS2: Combat" ]; then
+elif [ "${shortname}" == "pstbs" ]; then
+ ramrequirementmb="2000"
+ ramrequirementgb="2"
+elif [ "${shortname}" == "ns2" ]||[ "${shortname}" == "ns2c" ]; then
ramrequirementmb="1000"
ramrequirementgb="1"
elif [ "${shortname}" == "st" ]; then
diff --git a/lgsm/functions/check_tmuxception.sh b/lgsm/functions/check_tmuxception.sh
index fa5f60421..345083712 100644
--- a/lgsm/functions/check_tmuxception.sh
+++ b/lgsm/functions/check_tmuxception.sh
@@ -13,7 +13,7 @@ fn_check_is_in_tmux(){
fn_script_log_fatal "Tmuxception error: Attempted to start a tmux session inside of a tmux session."
fn_print_information_nl "LinuxGSM creates a tmux session when starting the server."
echo "It is not possible to run a tmux session inside another tmux session"
- echo "https://github.com/GameServerManagers/LinuxGSM/wiki/Tmux#tmuxception"
+ echo "https://docs.linuxgsm.com/requirements/tmux#tmuxception"
core_exit.sh
fi
}
@@ -23,7 +23,7 @@ fn_check_is_in_screen(){
fn_script_log_fatal "Tmuxception error: Attempted to start a tmux session inside of a screen session."
fn_print_information_nl "LinuxGSM creates a tmux session when starting the server."
echo "It is not possible to run a tmux session inside screen session"
- echo "https://github.com/GameServerManagers/LinuxGSM/wiki/Tmux#tmuxception"
+ echo "https://docs.linuxgsm.com/requirements/tmux#tmuxception"
core_exit.sh
fi
}
diff --git a/lgsm/functions/command_backup.sh b/lgsm/functions/command_backup.sh
index b2df4be6d..c5d48e202 100644
--- a/lgsm/functions/command_backup.sh
+++ b/lgsm/functions/command_backup.sh
@@ -14,12 +14,12 @@ check.sh
# Trap to remove lockfile on quit.
fn_backup_trap(){
echo ""
- echo -ne "backup ${backupname}.tar.gz..."
+ echo -en "backup ${backupname}.tar.gz..."
fn_print_canceled_eol_nl
fn_script_log_info "Backup ${backupname}.tar.gz: CANCELED"
sleep 0.5
rm -f "${backupdir}/${backupname}.tar.gz" | tee -a "${lgsmlog}"
- echo -ne "backup ${backupname}.tar.gz..."
+ echo -en "backup ${backupname}.tar.gz..."
fn_print_removed_eol_nl
fn_script_log_info "Backup ${backupname}.tar.gz: REMOVED"
# Remove lock file
@@ -47,7 +47,7 @@ fn_backup_init(){
sleep 0.5
fn_print_ok "Backup starting"
sleep 0.5
- echo -ne "\n"
+ echo -en "\n"
if [ ! -d "${backupdir}" ]||[ "${backupcount}" == "0" ]; then
fn_print_info_nl "There are no previous backups"
else
@@ -121,7 +121,7 @@ fn_backup_compression(){
core_exit.sh
fi
- tar -czf "${backupdir}/${backupname}.tar.gz" -C "${rootdir}" --exclude "${excludedir}" --exclude "${tmpdir}/.backup.lock" ./*
+ tar -czf "${backupdir}/${backupname}.tar.gz" -C "${rootdir}" --exclude "${excludedir}" --exclude "${tmpdir}/.backup.lock" ./.
local exitcode=$?
if [ ${exitcode} -ne 0 ]; then
fn_print_fail_eol
diff --git a/lgsm/functions/command_console.sh b/lgsm/functions/command_console.sh
index e7d9a6ac9..8daf02105 100644
--- a/lgsm/functions/command_console.sh
+++ b/lgsm/functions/command_console.sh
@@ -10,15 +10,13 @@ local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
check.sh
fn_print_header
-if [ "${gamename}" == "Rust" ]||[ "${gamename}" == "Hurtworld" ]||[ "${gamename}" == "ARK: Survival Evolved" ]; then
+if [ "${shortname}" == "rust" ]||[ "${shortname}" == "hw" ]||[ "${shortname}" == "ark" ]; then
fn_print_information_nl "${gamename} does not produce a verbose output to the console"
-fi
-if [ "${gamename}" == "Rust" ]||[ "${gamename}" == "Hurtworld" ]||[ "${gamename}" == "ARK: Survival Evolved" ]; then
fn_print_information_nl "${gamename} does not allow server commands to be entered in to the console"
fi
fn_print_information_nl "Press \"CTRL+b\" then \"d\" to exit console."
fn_print_warning_nl "Do NOT press CTRL+c to exit."
-echo " * https://github.com/GameServerManagers/LinuxGSM/wiki/Console"
+echo " * https://docs.linuxgsm.com/commands/console"
echo ""
if ! fn_prompt_yn "Continue?" Y; then
echo Exiting; return
diff --git a/lgsm/functions/command_debug.sh b/lgsm/functions/command_debug.sh
index 270d23e5f..40b527b10 100644
--- a/lgsm/functions/command_debug.sh
+++ b/lgsm/functions/command_debug.sh
@@ -34,24 +34,24 @@ echo -e "${blue}tmux:\t${default}${tmuxv}"
echo -e "${blue}Avg Load:\t${default}${load}"
echo -e "${blue}Free Memory:\t${default}${physmemfree}"
echo -e "${blue}Free Disk:\t${default}${availspace}"
-# GLIBC required
+# glibc required
if [ -n "${glibcrequired}" ]; then
if [ "${glibcrequired}" == "NOT REQUIRED" ]; then
:
elif [ "${glibcrequired}" == "UNKNOWN" ]; then
- echo -e "${blue}GLIBC required:\t${red}${glibcrequired}"
+ echo -e "${blue}glibc required:\t${red}${glibcrequired}"
elif [ "$(printf '%s\n'${glibcrequired}'\n' "${glibcversion}" | sort -V | head -n 1)" != "${glibcrequired}" ]; then
- if [ "${glibcfix}" == "yes" ]; then
- echo -e "${blue}GLIBC required:\t${red}${glibcrequired} ${default}(${green}Using GLIBC fix${default})"
- else
- echo -e "${blue}GLIBC required:\t${red}${glibcrequired} ${default}(${red}GLIBC version too old${default})"
- fi
+ echo -e "${blue}glibc required:\t${red}${glibcrequired} ${default}(${red}glibc distro version ${glibcversion} too old${default})"
else
- echo -e "${blue}GLIBC required:\t${green}${glibcrequired}${default}"
+ echo -e "${blue}glibc required:\t${green}${glibcrequired}${default}"
fi
fi
# Server ip
-echo -e "${blue}Server IP:\t${default}${ip}:${port}"
+if [ "${multiple_ip}" == "1" ]; then
+ echo -e "${blue}Server IP:\t${default}NOT SET"
+else
+ echo -e "${blue}Server IP:\t${default}${ip}:${port}"
+fi
# External server ip
if [ -n "${extip}" ]; then
if [ "${ip}" != "${extip}" ]; then
diff --git a/lgsm/functions/command_details.sh b/lgsm/functions/command_details.sh
index 3474ae3ac..4b11d0658 100644
--- a/lgsm/functions/command_details.sh
+++ b/lgsm/functions/command_details.sh
@@ -24,7 +24,7 @@ fn_info_message_gameserver
fn_info_message_script
fn_info_message_backup
# Some game servers do not have parms.
-if [ "${gamename}" != "TeamSpeak 3" ]&&[ "${engine}" != "avalanche2.0" ]&&[ "${engine}" != "dontstarve" ]&&[ "${engine}" != "projectzomboid" ]&&[ "${engine}" != "renderware" ]; then
+if [ "${shortname}" != "ts3" ]&&[ "${shortname}" != "jc2" ]&&[ "${shortname}" != "dst" ]&&[ "${shortname}" != "pz" ]&&[ "${engine}" != "renderware" ]; then
fn_parms
fn_info_message_commandlineparms
fi
diff --git a/lgsm/functions/command_dev_clear_functions.sh b/lgsm/functions/command_dev_clear_functions.sh
index bf3026c53..bf026ced5 100644
--- a/lgsm/functions/command_dev_clear_functions.sh
+++ b/lgsm/functions/command_dev_clear_functions.sh
@@ -9,6 +9,7 @@ echo "Clear Functions"
echo "================================="
echo ""
if fn_prompt_yn "Do you want to delete all functions?" Y; then
- rm -rfv "${functionsdir}/*"
+ rm -rfv "${functionsdir:?}/"*
+ rm -rfv "${configdirdefault:?}/"*
fi
core_exit.sh
\ No newline at end of file
diff --git a/lgsm/functions/command_dev_detect_deps.sh b/lgsm/functions/command_dev_detect_deps.sh
index e65bb47d9..d0dae61b2 100644
--- a/lgsm/functions/command_dev_detect_deps.sh
+++ b/lgsm/functions/command_dev_detect_deps.sh
@@ -35,44 +35,101 @@ done
sort "${tmpdir}/.depdetect_readelf" |uniq >"${tmpdir}/.depdetect_readelf_uniq"
while read -r lib; do
- if [ "${lib}" == "libm.so.6" ]||[ "${lib}" == "libc.so.6" ]||[ "${lib}" == "libtcmalloc_minimal.so.4" ]||[ "${lib}" == "libpthread.so.0" ]||[ "${lib}" == "libdl.so.2" ]||[ "${lib}" == "libnsl.so.1" ]||[ "${lib}" == "libgcc_s.so.1" ]||[ "${lib}" == "librt.so.1" ]||[ "${lib}" == "ld-linux.so.2" ]; then
- echo "glibc.i686" >> "${tmpdir}/.depdetect_centos_list"
- echo "lib32gcc1" >> "${tmpdir}/.depdetect_ubuntu_list"
- echo "lib32gcc1" >> "${tmpdir}/.depdetect_debian_list"
- elif [ "${lib}" == "libstdc++.so.6" ]; then
+ echo "${lib}"
+ local libs_array=( libm.so.6 libc.so.6 libtcmalloc_minimal.so.4 libpthread.so.0 libdl.so.2 libnsl.so.1 libgcc_s.so.1 librt.so.1 ld-linux.so.2 libdbus-glib-1.so.2 libgio-2.0.so.0 libglib-2.0.so.0 libGL.so.1 libgobject-2.0.so.0 libnm-glib.so.4 libnm-util.so.2 )
+ for lib_file in "${libs_array[@]}"
+ do
+ if [ "${lib}" == "${lib_file}" ]; then
+ echo "glibc.i686" >> "${tmpdir}/.depdetect_centos_list"
+ echo "lib32gcc1" >> "${tmpdir}/.depdetect_ubuntu_list"
+ echo "lib32gcc1" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
+ fi
+ done
+
+ local libs_array=( libawt.so libjava.so libjli.so libjvm.so libnet.so libnio.so libverify.so )
+ for lib_file in "${libs_array[@]}"
+ do
+ if [ "${lib}" == "${lib_file}" ]; then
+ echo "java-1.8.0-openjdk" >> "${tmpdir}/.depdetect_centos_list"
+ echo "default-jre" >> "${tmpdir}/.depdetect_ubuntu_list"
+ echo "default-jre" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
+ fi
+ done
+
+ local libs_array=( libtier0.so libtier0_srv.so libvstdlib_srv.so Core.so libvstdlib.so libtier0_s.so Editor.so Engine.so liblua.so libsteam_api.so ld-linux-x86-64.so.2 libPhysX3_x86.so libPhysX3Common_x86.so libPhysX3Cooking_x86.so)
+ for lib_file in "${libs_array[@]}"
+ do
+ # Known shared libs what dont requires dependencies
+ if [ "${lib}" == "${lib_file}" ]; then
+ libdetected=1
+ fi
+ done
+
+ if [ "${lib}" == "libstdc++.so.6" ]; then
echo "libstdc++.i686" >> "${tmpdir}/.depdetect_centos_list"
echo "libstdc++6:i386" >> "${tmpdir}/.depdetect_ubuntu_list"
echo "libstdc++6:i386" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
elif [ "${lib}" == "libstdc++.so.5" ]; then
echo "compat-libstdc++-33.i686" >> "${tmpdir}/.depdetect_centos_list"
echo "libstdc++5:i386" >> "${tmpdir}/.depdetect_ubuntu_list"
echo "libstdc++5:i386" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
elif [ "${lib}" == "libcurl-gnutls.so.4" ]; then
echo "libcurl.i686" >> "${tmpdir}/.depdetect_centos_list"
echo "libcurl4-gnutls-dev:i386" >> "${tmpdir}/.depdetect_ubuntu_list"
echo "libcurl4-gnutls-dev:i386" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
elif [ "${lib}" == "libspeex.so.1" ]||[ "${lib}" == "libspeexdsp.so.1" ]; then
echo "speex.i686" >> "${tmpdir}/.depdetect_centos_list"
echo "speex:i386" >> "${tmpdir}/.depdetect_ubuntu_list"
echo "speex:i386" >> "${tmpdir}/.depdetect_debian_list"
-
+ libdetected=1
elif [ "${lib}" == "./libSDL-1.2.so.0" ]||[ "${lib}" == "libSDL-1.2.so.0" ]; then
echo "SDL.i686" >> "${tmpdir}/.depdetect_centos_list"
echo "libsdl1.2debian" >> "${tmpdir}/.depdetect_ubuntu_list"
echo "libsdl1.2debian" >> "${tmpdir}/.depdetect_debian_list"
-
+ libdetected=1
elif [ "${lib}" == "libtbb.so.2" ]; then
echo "tbb.i686" >> "${tmpdir}/.depdetect_centos_list"
echo "libtbb2" >> "${tmpdir}/.depdetect_ubuntu_list"
echo "libtbb2" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
- elif [ "${lib}" == "libtier0.so" ]||[ "${lib}" == "libtier0_srv.so" ]||[ "${lib}" == "libvstdlib_srv.so" ]||[ "${lib}" == "Core.so" ]||[ "${lib}" == "libvstdlib.so" ]||[ "${lib}" == "libtier0_s.so" ]||[ "${lib}" == "Editor.so" ]||[ "${lib}" == "Engine.so" ]||[ "${lib}" == "liblua.so" ]||[ "${lib}" == "libsteam_api.so" ]||[ "${lib}" == "ld-linux-x86-64.so.2" ]||[ "${lib}" == "libPhysX3_x86.so" ]||[ "${lib}" == "libPhysX3Common_x86.so" ]||[ "${lib}" == "libPhysX3Cooking_x86.so" ]; then
- # Known shared libs what dont requires dependencies
- :
- else
+ elif [ "${lib}" == "libXrandr.so.2" ]; then
+ echo "libXrandr" >> "${tmpdir}/.depdetect_centos_list"
+ echo "libxrandr2" >> "${tmpdir}/.depdetect_ubuntu_list"
+ echo "libxrandr2" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
+ elif [ "${lib}" == "libXext.so.6" ]; then
+ echo "libXext" >> "${tmpdir}/.depdetect_centos_list"
+ echo "libxext6" >> "${tmpdir}/.depdetect_ubuntu_list"
+ echo "libxext6" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
+ elif [ "${lib}" == "libXtst.so.6" ]; then
+ echo "libXtst" >> "${tmpdir}/.depdetect_centos_list"
+ echo "libxtst6" >> "${tmpdir}/.depdetect_ubuntu_list"
+ echo "libxtst6" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
+ elif [ "${lib}" == "libpulse.so.0" ]; then
+ echo "pulseaudio-libs" >> "${tmpdir}/.depdetect_centos_list"
+ echo "libpulse0" >> "${tmpdir}/.depdetect_ubuntu_list"
+ echo "libpulse0" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
+ elif [ "${lib}" == "libopenal.so.1" ]; then
+ echo "" >> "${tmpdir}/.depdetect_centos_list"
+ echo "libopenal1" >> "${tmpdir}/.depdetect_ubuntu_list"
+ echo "libopenal1" >> "${tmpdir}/.depdetect_debian_list"
+ libdetected=1
+ fi
+
+ if [ "${libdetected}" != "1" ]; then
unknownlib=1
echo "${lib}" >> "${tmpdir}/.depdetect_unknown"
fi
+ unset libdetected
done < "${tmpdir}/.depdetect_readelf_uniq"
sort "${tmpdir}/.depdetect_centos_list" | uniq >> "${tmpdir}/.depdetect_centos_list_uniq"
diff --git a/lgsm/functions/command_dev_detect_glibc.sh b/lgsm/functions/command_dev_detect_glibc.sh
index e76213cb1..7f0fc409c 100644
--- a/lgsm/functions/command_dev_detect_glibc.sh
+++ b/lgsm/functions/command_dev_detect_glibc.sh
@@ -10,7 +10,7 @@ local commandaction="Detect-Glibc"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
echo "================================="
-echo "GLIBC Requirements Checker"
+echo "glibc Requirements Checker"
echo "================================="
if [ -z "$(command -v objdump)" ]; then
@@ -32,22 +32,60 @@ elif [ -f "${serverfiles}" ]; then
fi
echo ""
-files=$(find "${serverfiles}" | wc -l)
-find "${serverfiles}" -type f -print0 |
-while IFS= read -r -d $'\0' line; do
- glibcversion=$(objdump -T "${line}" 2>/dev/null | grep -oP "GLIBC[^ ]+" | grep -v GLIBCXX | sort | uniq | sort -r --version-sort | head -n 1)
- if [ "${glibcversion}" ]; then
- echo "${glibcversion}: ${line}" >>"${tmpdir}/detect_glibc_files.tmp"
+
+local glibc_check_dir_array=( steamcmddir serverfiles )
+for glibc_check_var in "${glibc_check_dir_array[@]}"
+do
+ if [ "${glibc_check_var}" == "serverfiles" ]; then
+ glibc_check_dir="${serverfiles}"
+ glibc_check_name="${gamename}"
+ elif [ "${glibc_check_var}" == "steamcmddir" ]; then
+ glibc_check_dir="${steamcmddir}"
+ glibc_check_name="SteamCMD"
+ fi
+
+ if [ -d "${glibc_check_dir}" ]; then
+ glibc_check_files=$(find "${glibc_check_dir}" | wc -l)
+ find "${glibc_check_dir}" -type f -print0 |
+ while IFS= read -r -d $'\0' line; do
+ glibcversion=$(objdump -T "${line}" 2>/dev/null | grep -oP "GLIBC[^ ]+" | grep -v GLIBCXX | sort | uniq | sort -r --version-sort | head -n 1)
+ if [ "${glibcversion}" ]; then
+ echo "${glibcversion}: ${line}" >>"${tmpdir}/detect_glibc_files_${glibc_check_var}.tmp"
+ fi
+ objdump -T "${line}" 2>/dev/null | grep -oP "GLIBC[^ ]+" >>"${tmpdir}/detect_glibc_${glibc_check_var}.tmp"
+ echo -n "${i} / ${glibc_check_files}" $'\r'
+ ((i++))
+ done
+ echo ""
+ echo ""
+ echo "${glibc_check_name} glibc Requirements"
+ echo "================================="
+ if [ -f "${tmpdir}/detect_glibc_files_${glibc_check_var}.tmp" ]; then
+ echo "Required glibc"
+ cat "${tmpdir}/detect_glibc_${glibc_check_var}.tmp" | sort | uniq | sort -r --version-sort | head -1 |tee -a "${tmpdir}/detect_glibc_highest.tmp"
+ echo ""
+ echo "Files requiring GLIBC"
+ echo "Highest verion required: filename"
+ cat "${tmpdir}/detect_glibc_files_${glibc_check_var}.tmp"
+ echo ""
+ echo "All required GLIBC versions"
+ cat "${tmpdir}/detect_glibc_${glibc_check_var}.tmp" | sort | uniq | sort -r --version-sort
+ rm "${tmpdir}/detect_glibc_${glibc_check_var}.tmp"
+ rm "${tmpdir}/detect_glibc_files_${glibc_check_var}.tmp"
+ else
+ fn_print_information_nl "glibc is not required"
+ fi
+ else
+ fn_print_information_nl "${glibc_check_name} is not installed"
fi
- objdump -T "${line}" 2>/dev/null | grep -oP "GLIBC[^ ]+" >>"${tmpdir}/detect_glibc.tmp"
- echo -n "${i} / ${files}" $'\r'
- ((i++))
done
echo ""
-cat "${tmpdir}/detect_glibc_files.tmp"
-echo ""
-cat "${tmpdir}/detect_glibc.tmp" | sort | uniq | sort -r --version-sort
-rm "${tmpdir}/detect_glibc.tmp"
-rm "${tmpdir}/detect_glibc_files.tmp"
-
+echo "Final glibc Requirement"
+echo "================================="
+if [ -f "${tmpdir}/detect_glibc_highest.tmp" ]; then
+ cat "${tmpdir}/detect_glibc_highest.tmp" | sort | uniq | sort -r --version-sort | head -1
+ rm "${tmpdir}/detect_glibc_highest.tmp"
+else
+ fn_print_information_nl "glibc is not required"
+fi
core_exit.sh
diff --git a/lgsm/functions/command_dev_query_raw.sh b/lgsm/functions/command_dev_query_raw.sh
index ae0d539c1..30db99ea5 100644
--- a/lgsm/functions/command_dev_query_raw.sh
+++ b/lgsm/functions/command_dev_query_raw.sh
@@ -1,7 +1,7 @@
#!/bin/bash
# command_dev_query_raw.sh function
# Author: Daniel Gibbs
-# Website: https://gameservermanagers.com
+# Website: https://linuxgsm.com
# Description: Raw gamedig output of the server.
local commandname="QUERY-RAW"
@@ -24,12 +24,12 @@ info_config.sh
info_parms.sh
if [ "${engine}" == "idtech3_ql" ]; then
local engine="quakelive"
-elif [ "${gamename}" == "Killing Floor 2" ]; then
+elif [ "${shortname}" == "kf2" ]; then
local engine="unreal4"
fi
query_gamedig.sh
-echo "gamedig --type \"${gamedigengine}\" --host \"${ip}\" --port \"${port}\"|jq"
+echo "${gamedigcmd}"
echo""
echo "${gamedigraw}" | jq
echo""
@@ -37,8 +37,22 @@ echo "================================="
echo "gsquery Raw Output"
echo "================================="
echo""
-echo "./query_gsquery.py -a \"${ip}\" -p \"${port}\" -e \"${engine}\""
+echo "./query_gsquery.py -a \"${ip}\" -p \"${queryport}\" -e \"${engine}\""
if [ ! -f "${functionsdir}/query_gsquery.py" ]; then
fn_fetch_file_github "lgsm/functions" "query_gsquery.py" "${functionsdir}" "chmodx" "norun" "noforce" "nomd5"
fi
-"${functionsdir}"/query_gsquery.py -a "${ip}" -p "${port}" -e "${engine}"
\ No newline at end of file
+"${functionsdir}"/query_gsquery.py -a "${ip}" -p "${queryport}" -e "${engine}"
+
+echo""
+echo "================================="
+echo "tcp Raw Output"
+echo "================================="
+echo""
+echo "bash -c 'exec 3<> /dev/tcp/'${ip}'/'${queryport}''"
+bash -c 'exec 3<> /dev/tcp/'${ip}'/'${queryport}''
+querystatus="$?"
+if [ "${querystatus}" == "0" ]; then
+ echo "tcp query PASS"
+else
+ echo "tcp query FAIL"
+fi
\ No newline at end of file
diff --git a/lgsm/functions/command_donate.sh b/lgsm/functions/command_donate.sh
new file mode 100644
index 000000000..a277b87b6
--- /dev/null
+++ b/lgsm/functions/command_donate.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+# LinuxGSM command_donate.sh function
+# Author: Daniel Gibbs
+# Website: https://linuxgsm.com
+# Description: Shows ways to donate
+
+echo -e ""
+echo -e "${lightyellow}Support LinuxGSM${default}"
+echo -e "================================="
+echo -e ""
+echo -e "Been using LinuxGSM?"
+echo -e "Consider donating to support development."
+echo -e ""
+echo -e "* ${blue}Patreon:${default} https://linuxgsm.com/patreon"
+echo -e "* ${blue}PayPal:${default} https://linuxgsm.com/paypal"
+echo -e "* ${blue}Flattr:${default} https://linuxgsm.com/flattr"
+echo -e ""
+echo -e "LinuxGSM has been going since 2012"
\ No newline at end of file
diff --git a/lgsm/functions/command_fastdl.sh b/lgsm/functions/command_fastdl.sh
index 630778e59..36e15391c 100644
--- a/lgsm/functions/command_fastdl.sh
+++ b/lgsm/functions/command_fastdl.sh
@@ -51,7 +51,7 @@ if [ -d "${fastdldir}" ]; then
fi
# Garry's Mod Specific
-if [ "${gamename}" == "Garry's Mod" ]; then
+if [ "${shortname}" == "gmod" ]; then
# Prompt for download enforcer, which is using a .lua addfile resource generator
if fn_prompt_yn "Force clients to download files?" Y; then
luaresource="on"
@@ -152,7 +152,7 @@ fn_fastdl_preview(){
echo -e "analysing required files"
fn_script_log_info "Analysing required files"
# Garry's Mod
- if [ "${gamename}" == "Garry's Mod" ]; then
+ if [ "${shortname}" == "gmod" ]; then
cd "${systemdir}" || exit
allowed_extentions_array=( "*.ain" "*.bsp" "*.mdl" "*.mp3" "*.ogg" "*.otf" "*.pcf" "*.phy" "*.png" "*.vtf" "*.vmt" "*.vtx" "*.vvd" "*.ttf" "*.wav" )
for allowed_extention in "${allowed_extentions_array[@]}"; do
@@ -170,7 +170,7 @@ fn_fastdl_preview(){
done
# Source engine
else
- fastdl_directories_array=( "maps" "materials" "models" "particles" "sounds" "resources" )
+ fastdl_directories_array=( "maps" "materials" "models" "particles" "sound" "resources" )
for directory in "${fastdl_directories_array[@]}"; do
if [ -d "${systemdir}/${directory}" ]; then
if [ "${directory}" == "maps" ]; then
@@ -181,7 +181,7 @@ fn_fastdl_preview(){
local allowed_extentions_array=( "*.vtx" "*.vvd" "*.mdl" "*.phy" "*.jpg" "*.png" )
elif [ "${directory}" == "particles" ]; then
local allowed_extentions_array=( "*.pcf" )
- elif [ "${directory}" == "sounds" ]; then
+ elif [ "${directory}" == "sound" ]; then
local allowed_extentions_array=( "*.wav" "*.mp3" "*.ogg" )
fi
for allowed_extention in "${allowed_extentions_array[@]}"; do
@@ -207,7 +207,7 @@ fn_fastdl_preview(){
sleep 0.5
totalfiles=$(wc -l < "${tmpdir}/fastdl_files_to_compress.txt")
# Calculates total file size
- while read dufile; do
+ while read -r dufile; do
filesize=$(stat -c %s "${dufile}")
filesizetotal=$(( ${filesizetotal} + ${filesize} ))
exitcode=$?
@@ -320,7 +320,7 @@ fn_fastdl_source(){
local allowed_extentions_array=( "*.vtx" "*.vvd" "*.mdl" "*.phy" "*.jpg" "*.png" )
elif [ "${directory}" == "particles" ]; then
local allowed_extentions_array=( "*.pcf" )
- elif [ "${directory}" == "sounds" ]; then
+ elif [ "${directory}" == "sound" ]; then
local allowed_extentions_array=( "*.wav" "*.mp3" "*.ogg" )
fi
for allowed_extention in "${allowed_extentions_array[@]}"
@@ -358,7 +358,7 @@ fn_fastdl_build(){
# Copy all needed files for FastDL
echo -e "copying files to ${fastdldir}"
fn_script_log_info "Copying files to ${fastdldir}"
- if [ "${gamename}" == "Garry's Mod" ]; then
+ if [ "${shortname}" == "gmod" ]; then
fn_fastdl_gmod
fn_fastdl_gmod_dl_enforcer
else
@@ -387,7 +387,7 @@ fn_fastdl_gmod_dl_enforcer(){
echo -en "creating new download enforcer: ${luafastdlfile}..."
touch "${luafastdlfullpath}"
# Read all filenames and put them into a lua file at the right path
- while read line; do
+ while read -r line; do
echo "resource.AddFile( \"${line}\" )" >> "${luafastdlfullpath}"
done < <(find "${fastdldir:?}" \( -type f ! -name "*.bz2" \) -printf '%P\n')
exitcode=$?
diff --git a/lgsm/functions/command_install.sh b/lgsm/functions/command_install.sh
index 275055a5b..78b0e5441 100644
--- a/lgsm/functions/command_install.sh
+++ b/lgsm/functions/command_install.sh
@@ -10,37 +10,41 @@ local commandaction="Install"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
check.sh
-install_header.sh
-install_server_dir.sh
-install_logs.sh
-check_deps.sh
-installflag=1
-# Download and install
-if [ "${gamename}" == "Unreal Tournament 2004" ]; then
- install_server_files.sh
- install_ut2k4_key.sh
-elif [ -z "${appid}" ]; then
- installer=1
- install_server_files.sh
-elif [ -n "${appid}" ]; then
- install_steamcmd.sh
- install_server_files.sh
-fi
+if [ "$(whoami)" = "root" ]; then
+ check_deps.sh
+else
+ install_header.sh
+ install_server_dir.sh
+ install_logs.sh
+ check_deps.sh
+ installflag=1
+ # Download and install
+ if [ "${shortname}" == "ut2k4" ]; then
+ install_server_files.sh
+ install_ut2k4_key.sh
+ elif [ -z "${appid}" ]; then
+ installer=1
+ install_server_files.sh
+ elif [ -n "${appid}" ]; then
+ install_steamcmd.sh
+ install_server_files.sh
+ fi
-# Configuration
-install_config.sh
-if [ "${gamename}" == "BrainBread 2" ]||[ "${gamename}" == "Black Mesa: Deathmatch" ]||[ "${gamename}" == "Counter-Strike: Global Offensive" ]||[ "${gamename}" == "Empires Mod" ]||[ "${gamename}" == "Garry’s Mod" ]||[ "${gamename}" == "No more Room in Hell" ]||[ "${gamename}" == "Team Fortress 2" ]||[ "${gamename}" == "Tower Unite" ]; then
- install_gslt.sh
-elif [ "${gamename}" == "Don't Starve Together" ]; then
- install_dst_token.sh
-elif [ "${gamename}" == "Squad" ]; then
- install_squad_license.sh
-elif [ "${gamename}" == "TeamSpeak 3" ]; then
- install_ts3db.sh
-elif [ "${gamename}" == "Multi Theft Auto" ]; then
- command_install_resources_mta.sh
-fi
+ # Configuration
+ install_config.sh
+ if [ "${shortname}" == "bb2" ]||[ "${shortname}" == "bmdm" ]||[ "${shortname}" == "csgo" ]||[ "${shortname}" == "em" ]||[ "${shortname}" == "gmod" ]||[ "${shortname}" == "nmrih" ]||[ "${shortname}" == "tf2" ]||[ "${shortname}" == "tu" ]; then
+ install_gslt.sh
+ elif [ "${shortname}" == "dst" ]; then
+ install_dst_token.sh
+ elif [ "${shortname}" == "squad" ]; then
+ install_squad_license.sh
+ elif [ "${shortname}" == "ts3" ]; then
+ install_ts3db.sh
+ elif [ "${shortname}" == "mta" ]; then
+ command_install_resources_mta.sh
+ fi
-fix.sh
-install_complete.sh
-core_exit.sh
+ fix.sh
+ install_complete.sh
+ core_exit.sh
+fi
\ No newline at end of file
diff --git a/lgsm/functions/command_monitor.sh b/lgsm/functions/command_monitor.sh
index f68fa2e33..5849da984 100644
--- a/lgsm/functions/command_monitor.sh
+++ b/lgsm/functions/command_monitor.sh
@@ -13,6 +13,7 @@ local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_monitor_loop(){
# Will query up to 5 times every 15 seconds.
# Query will wait up to 60 seconds to confirm server is down giving server time if changing map.
+totalseconds=0
for queryattempt in {1..5}; do
fn_print_dots "Querying port: ${querymethod}: ${ip}:${queryport} : ${totalseconds}/${queryattempt}: "
fn_print_querying_eol
@@ -26,7 +27,7 @@ for queryattempt in {1..5}; do
fi
"${functionsdir}"/query_gsquery.py -a "${ip}" -p "${queryport}" -e "${engine}" > /dev/null 2>&1
querystatus="$?"
- elif [ "${querymethod}" == "telnet" ]; then
+ elif [ "${querymethod}" == "tcp" ]; then
bash -c 'exec 3<> /dev/tcp/'${ip}'/'${queryport}''
querystatus="$?"
fi
@@ -110,9 +111,9 @@ fn_monitor_check_session(){
fn_print_ok_eol_nl
fn_script_log_pass "Checking session: OK"
else
- if [ "${gamename}" == "TeamSpeak 3" ]; then
+ if [ "${shortname}" == "ts3" ]; then
fn_print_error "Checking session: ${ts3error}: "
- elif [ "${gamename}" == "Mumble" ]; then
+ elif [ "${shortname}" == "mumble" ]; then
fn_print_error "Checking session: Not listening to port ${queryport}"
else
fn_print_error "Checking session: "
@@ -131,19 +132,23 @@ fn_monitor_check_session(){
fn_monitor_query(){
fn_script_log_info "Querying port: query enabled"
# engines that work with query
- local allowed_engines_array=( avalanche2.0 avalanche3.0 goldsource idtech2 idtech3 idtech3_ql iw2.0 iw3.0 madness quake refractor realvirtuality source spark starbound unity3d unreal unreal2 unreal4 )
+ local allowed_engines_array=( avalanche2.0 avalanche3.0 goldsource idtech2 idtech3 idtech3_ql iw2.0 iw3.0 lwjgl2 madness quake refractor realvirtuality source spark starbound unity3d unreal unreal2 unreal4 wurm )
for allowed_engine in "${allowed_engines_array[@]}"
do
if [ "${allowed_engine}" == "${engine}" ]; then
if [ "${engine}" == "idtech3_ql" ]; then
local engine="quakelive"
- elif [ "${gamename}" == "Killing Floor 2" ]; then
+ elif [ "${shortname}" == "kf2" ]; then
local engine="unreal4"
fi
# will first attempt to use gamedig then gsquery
totalseconds=0
- local query_methods_array=( gamedig gsquery )
+ if [ "${shortname}" == "wurm" ]; then
+ local query_methods_array=( gsquery )
+ else
+ local query_methods_array=( gamedig gsquery )
+ fi
for query_method in "${query_methods_array[@]}"
do
if [ "${query_method}" == "gamedig" ]; then
@@ -165,8 +170,8 @@ fn_monitor_query(){
done
}
-fn_monitor_query_telnet(){
- querymethod="telnet"
+fn_monitor_query_tcp(){
+ querymethod="tcp"
fn_monitor_loop
}
@@ -182,12 +187,12 @@ fn_monitor_check_lockfile
fn_monitor_check_update
fn_monitor_check_session
# Query has to be enabled in Starbound config
-if [ "${gamename}" == "Starbound" ]; then
+if [ "${shortname}" == "sb" ]; then
if [ "${queryenabled}" == "true" ]; then
fn_monitor_query
fi
-elif [ "${gamename}" == "TeamSpeak 3" ]; then
- fn_monitor_query_telnet
+elif [ "${shortname}" == "ts3" ]||[ "${shortname}" == "eco" ]||[ "${shortname}" == "mumble" ]; then
+ fn_monitor_query_tcp
else
fn_monitor_query
fi
diff --git a/lgsm/functions/command_postdetails.sh b/lgsm/functions/command_postdetails.sh
index 9bd635086..a4a0b96c4 100644
--- a/lgsm/functions/command_postdetails.sh
+++ b/lgsm/functions/command_postdetails.sh
@@ -42,19 +42,25 @@ fn_bad_postdetailslog() {
core_exit.sh
}
+# Remove any existing postdetails.log file
+if [ -f "${postdetailslog}" ]; then
+ rm -f "${postdetailslog}"
+fi
+
# Rather than a one-pass sed parser, default to using a temporary directory
if [ -n "${alertflag}" ]; then
postdetailslog="${alertlog}"
else
+ # Run checks and gathers details to display.
+ check.sh
+ info_config.sh
+ info_parms.sh
+ info_distro.sh
+ info_glibc.sh
+ info_messages.sh
+ query_gamedig.sh
touch "${postdetailslog}" || fn_bad_postdetailslog
{
- # Run checks and gathers details to display.
- check.sh
- info_config.sh
- info_distro.sh
- info_glibc.sh
- info_parms.sh
- info_messages.sh
fn_info_message_distro
fn_info_message_performance
fn_info_message_disk
@@ -62,7 +68,7 @@ else
fn_info_message_script
fn_info_message_backup
# Some game servers do not have parms.
- if [ "${gamename}" != "TeamSpeak 3" ]&&[ "${engine}" != "avalanche2.0" ]&&[ "${engine}" != "avalanche3.0" ]&&[ "${engine}" != "dontstarve" ]&&[ "${engine}" != "projectzomboid" ]&&[ "${engine}" != "renderware" ]; then
+ if [ "${shortname}" != "ts3" ]&&[ "${shortname}" != "jc2" ]&&[ "${shortname}" != "jc3" ]&&[ "${shortname}" != "dst" ]&&[ "${shortname}" != "pz" ]&&[ "${engine}" != "renderware" ]; then
fn_parms
fn_info_message_commandlineparms
fi
diff --git a/lgsm/functions/command_start.sh b/lgsm/functions/command_start.sh
index 208910942..447102e31 100644
--- a/lgsm/functions/command_start.sh
+++ b/lgsm/functions/command_start.sh
@@ -58,8 +58,11 @@ fn_start_teamspeak3(){
}
fn_start_tmux(){
- fn_parms
-
+ if [ "${parmsbypass}" ]; then
+ parms=""
+ else
+ fn_parms
+ fi
# check for tmux size variables
if [[ "${servercfgtmuxwidth}" =~ ^[0-9]+$ ]]; then
sessionwidth="${servercfgtmuxwidth}"
@@ -87,7 +90,7 @@ fn_start_tmux(){
# Create lockfile
date > "${rootdir}/${lockselfname}"
cd "${executabledir}"
- tmux new-session -d -x "${sessionheight}" -y "${sessionwidth}" -s "${servicename}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${servicename}-tmux-error.tmp"
+ tmux new-session -d -x "${sessionwidth}" -y "${sessionheight}" -s "${servicename}" "${executable} ${parms}" 2> "${lgsmlogdir}/.${servicename}-tmux-error.tmp"
# Create logfile
touch "${consolelog}"
@@ -198,7 +201,9 @@ if [ "${status}" != "0" ]; then # $status comes from check_status.sh, which is r
core_exit.sh
fi
fi
-fix.sh
+if [ -z "${fixbypass}" ];then
+ fix.sh
+fi
info_config.sh
logs.sh
@@ -209,7 +214,7 @@ if [ "${updateonstart}" == "yes" ]||[ "${updateonstart}" == "1" ]||[ "${updateon
command_update.sh
fi
-if [ "${gamename}" == "TeamSpeak 3" ]; then
+if [ "${shortname}" == "ts3" ]; then
fn_start_teamspeak3
else
fn_start_tmux
diff --git a/lgsm/functions/command_stop.sh b/lgsm/functions/command_stop.sh
index 7b8ce1597..fc43476e6 100644
--- a/lgsm/functions/command_stop.sh
+++ b/lgsm/functions/command_stop.sh
@@ -14,7 +14,7 @@ fn_stop_graceful_ctrlc(){
fn_print_dots "Graceful: CTRL+c"
fn_script_log_info "Graceful: CTRL+c"
# sends quit
- tmux send-keys C-c -t "${servicename}" > /dev/null 2>&1
+ tmux send-keys -t "${servicename}" C-c > /dev/null 2>&1
# waits up to 30 seconds giving the server time to shutdown gracefuly
for seconds in {1..30}; do
check_status.sh
@@ -87,26 +87,39 @@ fn_stop_graceful_goldsource(){
# Attempts graceful of 7 Days To Die using telnet.
fn_stop_telnet_sdtd(){
- if [ -z "${telnetpass}" ]; then
- telnetpass="NOTSET"
- fi
- sdtd_telnet_shutdown=$( expect -c '
- proc abort {} {
- puts "Timeout or EOF\n"
- exit 1
- }
- spawn telnet '"${telnetip}"' '"${telnetport}"'
- expect {
- "password:" { send "'"${telnetpass}"'\r" }
- default abort
- }
- expect {
- "session." { send "shutdown\r" }
- default abort
- }
- expect { eof }
- puts "Completed.\n"
- ')
+ if [ -z "${telnetpass}" ]||[ "${telnetpass}" == "NOT SET" ]; then
+ sdtd_telnet_shutdown=$( expect -c '
+ proc abort {} {
+ puts "Timeout or EOF\n"
+ exit 1
+ }
+ spawn telnet '"${telnetip}"' '"${telnetport}"'
+ expect {
+ "session." { send "shutdown\r" }
+ default abort
+ }
+ expect { eof }
+ puts "Completed.\n"
+ ')
+ else
+ sdtd_telnet_shutdown=$( expect -c '
+ proc abort {} {
+ puts "Timeout or EOF\n"
+ exit 1
+ }
+ spawn telnet '"${telnetip}"' '"${telnetport}"'
+ expect {
+ "password:" { send "'"${telnetpass}"'\r" }
+ default abort
+ }
+ expect {
+ "session." { send "shutdown\r" }
+ default abort
+ }
+ expect { eof }
+ puts "Completed.\n"
+ ')
+ fi
}
fn_stop_graceful_sdtd(){
@@ -118,16 +131,16 @@ fn_stop_graceful_sdtd(){
elif [ "$(command -v expect 2>/dev/null)" ]; then
# Tries to shutdown with both localhost and server IP.
for telnetip in 127.0.0.1 ${ip}; do
- fn_print_dots "Graceful: telnet: ${telnetip}"
- fn_script_log_info "Graceful: telnet: ${telnetip}"
+ fn_print_dots "Graceful: telnet: ${telnetip}:${telnetport}"
+ fn_script_log_info "Graceful: telnet: ${telnetip}:${telnetport}"
sleep 0.5
fn_stop_telnet_sdtd
completed=$(echo -en "\n ${sdtd_telnet_shutdown}" | grep "Completed.")
refused=$(echo -en "\n ${sdtd_telnet_shutdown}" | grep "Timeout or EOF")
if [ -n "${refused}" ]; then
- fn_print_error "Graceful: telnet: ${telnetip}: "
+ fn_print_error "Graceful: telnet: ${telnetip}:${telnetport} : "
fn_print_fail_eol_nl
- fn_script_log_error "Graceful: telnet: ${telnetip}: FAIL"
+ fn_script_log_error "Graceful: telnet: ${telnetip}:${telnetport} : FAIL"
sleep 1
elif [ -n "${completed}" ]; then
break
@@ -141,9 +154,9 @@ fn_stop_graceful_sdtd(){
fn_stop_telnet_sdtd
refused=$(echo -en "\n ${sdtd_telnet_shutdown}" | grep "Timeout or EOF")
if [ -n "${refused}" ]; then
- fn_print_ok "Graceful: telnet: ${telnetip}: "
+ fn_print_ok "Graceful: telnet: ${telnetip}:${telnetport} : "
fn_print_ok_eol_nl
- fn_script_log_pass "Graceful: telnet: ${telnetip}: ${seconds} seconds"
+ fn_script_log_pass "Graceful: telnet: ${telnetip}:${telnetport} : ${seconds} seconds"
break
fi
sleep 1
@@ -155,7 +168,7 @@ fn_stop_graceful_sdtd(){
if [ -n "${refused}" ]; then
fn_print_error "Graceful: telnet: "
fn_print_fail_eol_nl
- fn_script_log_error "Graceful: telnet: ${telnetip}: FAIL"
+ fn_script_log_error "Graceful: telnet: ${telnetip}:${telnetport} : FAIL"
else
fn_print_error_nl "Graceful: telnet: Unknown error"
fn_script_log_error "Graceful: telnet: Unknown error"
@@ -174,22 +187,22 @@ fn_stop_graceful_sdtd(){
}
fn_stop_graceful_select(){
- if [ "${gamename}" == "7 Days To Die" ]; then
+ if [ "${shortname}" == "sdtd" ]; then
fn_stop_graceful_sdtd
elif [ "${engine}" == "Spark" ]; then
fn_stop_graceful_cmd "q" 30
- elif [ "${gamename}" == "Terraria" ]; then
+ elif [ "${shortname}" == "terraria" ]; then
fn_stop_graceful_cmd "exit" 30
- elif [ "${gamename}" == "Minecraft" ]; then
+ elif [ "${shortname}" == "mc" ]; then
fn_stop_graceful_cmd "stop" 30
- elif [ "${gamename}" == "Multi Theft Auto" ]; then
+ elif [ "${shortname}" == "mta" ]; then
# we need a long wait time here as resources are stopped individually and process their own shutdowns
fn_stop_graceful_cmd "quit" 120
elif [ "${engine}" == "goldsource" ]; then
fn_stop_graceful_goldsource
- elif [ "${engine}" == "avalanche2.0" ]||[ "${engine}" == "avalanche3.0" ]||[ "${gamename}" == "Factorio" ]||[ "${engine}" == "unity3d" ]||[ "${engine}" == "unreal4" ]||[ "${engine}" == "unreal3" ]||[ "${engine}" == "unreal2" ]||[ "${engine}" == "unreal" ]||[ "${gamename}" == "Mumble" ]; then
+ elif [ "${engine}" == "unity3d" ]||[ "${engine}" == "unreal4" ]||[ "${engine}" == "unreal3" ]||[ "${engine}" == "unreal2" ]||[ "${engine}" == "unreal" ]||[ "${shortname}" == "fctr" ]||[ "${shortname}" == "mumble" ]||[ "${shortname}" == "wurm" ]||[ "${shortname}" == "jc2" ]||[ "${shortname}" == "jc3" ]; then
fn_stop_graceful_ctrlc
- elif [ "${engine}" == "source" ]||[ "${engine}" == "quake" ]||[ "${engine}" == "idtech2" ]||[ "${engine}" == "idtech3" ]||[ "${engine}" == "idtech3_ql" ]||[ "${engine}" == "Just Cause 2" ]||[ "${engine}" == "projectzomboid" ]||[ "${shortname}" == "rw" ]; then
+ elif [ "${engine}" == "source" ]||[ "${engine}" == "quake" ]||[ "${engine}" == "idtech2" ]||[ "${engine}" == "idtech3" ]||[ "${engine}" == "idtech3_ql" ]||[ "${shortname}" == "jc2" ]||[ "${shortname}" == "pz" ]||[ "${shortname}" == "rw" ]; then
fn_stop_graceful_cmd "quit" 30
fi
}
@@ -212,9 +225,7 @@ fn_stop_ark(){
if [ "${#queryport}" -gt 0 ] ; then
for (( pidcheck=0 ; pidcheck < ${maxpiditer} ; pidcheck++ )) ; do
- pid=$(netstat -nap 2>/dev/null | grep "^udp[[:space:]]" |\
- grep ":${queryport}[[:space:]]" | rev | awk '{print $1}' |\
- rev | cut -d\/ -f1)
+ pid=$(netstat -nap 2>/dev/null | grep "^udp[[:space:]]" | grep ":${queryport}[[:space:]]" | rev | awk '{print $1}' | rev | cut -d\/ -f1)
#
# check for a valid pid
pid=${pid//[!0-9]/}
@@ -263,7 +274,7 @@ fn_stop_tmux(){
if [ "${status}" == "0" ]; then
# ARK doesn't clean up immediately after tmux is killed.
# Make certain the ports are cleared before continuing.
- if [ "${gamename}" == "ARK: Survival Evolved" ]; then
+ if [ "${shortname}" == "ark" ]; then
fn_stop_ark
fi
fn_print_ok_nl "${servername}"
@@ -280,7 +291,7 @@ fn_stop_pre_check(){
if [ "${status}" == "0" ]; then # $status comes from check_status.sh, which is run by check.sh for this command
fn_print_info_nl "${servername} is already stopped"
fn_script_log_error "${servername} is already stopped"
- elif [ "${gamename}" == "TeamSpeak 3" ]; then
+ elif [ "${shortname}" == "ts3" ]; then
fn_stop_teamspeak3
else
fn_stop_graceful_select
@@ -301,4 +312,6 @@ fn_stop_pre_check
if [ -f "${rootdir}/${lockselfname}" ]; then
rm -f "${rootdir}/${lockselfname}"
fi
-core_exit.sh
+if [ -z "${exitbypass}" ]; then
+ core_exit.sh
+fi
\ No newline at end of file
diff --git a/lgsm/functions/command_update.sh b/lgsm/functions/command_update.sh
index de180118a..9c366ae61 100644
--- a/lgsm/functions/command_update.sh
+++ b/lgsm/functions/command_update.sh
@@ -9,19 +9,19 @@ local commandaction="Update"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_print_dots ""
-sleep 0.5
+sleep 0.2
check.sh
logs.sh
-if [ "${gamename}" == "TeamSpeak 3" ]; then
+if [ "${shortname}" == "ts3" ]; then
update_ts3.sh
-elif [ "${engine}" == "lwjgl2" ]; then
+elif [ "${shortname}" == "mc" ]; then
update_minecraft.sh
-elif [ "${gamename}" == "Mumble" ]; then
+elif [ "${shortname}" == "mumble" ]; then
update_mumble.sh
-elif [ "${gamename}" == "Factorio" ]; then
+elif [ "${shortname}" == "fctr" ]; then
update_factorio.sh
-elif [ "${gamename}" == "Multi Theft Auto" ]; then
+elif [ "${shortname}" == "mta" ]; then
update_mta.sh
else
update_steamcmd.sh
diff --git a/lgsm/functions/command_update_linuxgsm.sh b/lgsm/functions/command_update_linuxgsm.sh
index 77e5ddc49..25b028ef7 100644
--- a/lgsm/functions/command_update_linuxgsm.sh
+++ b/lgsm/functions/command_update_linuxgsm.sh
@@ -12,11 +12,11 @@ fn_print_dots "Updating LinuxGSM"
sleep 0.5
check.sh
fn_script_log_info "Updating LinuxGSM"
-echo -ne "\n"
+echo -en "\n"
if [ -z "${legacymode}" ]; then
# Check and update _default.cfg
- echo -ne " checking config _default.cfg...\c"
+ echo -en " checking config _default.cfg...\c"
config_file_diff=$(diff "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" <(${curlpath} -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/config-default/config-lgsm/${gameservername}/_default.cfg"))
if [ "${config_file_diff}" != "" ]; then
fn_print_update_eol_nl
@@ -30,7 +30,7 @@ if [ -z "${legacymode}" ]; then
fn_script_log_info "checking config _default.cfg: OK"
fi
- echo -ne " checking linuxgsm.sh...\c"
+ echo -en " checking linuxgsm.sh...\c"
tmp_script_diff=$(diff "${tmpdir}/linuxgsm.sh" <(${curlpath} -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/linuxgsm.sh"))
if [ "${tmp_script_diff}" != "" ]; then
fn_print_update_eol_nl
@@ -42,11 +42,11 @@ if [ -z "${legacymode}" ]; then
fn_script_log_info "checking linuxgsm.sh: OK"
fn_print_ok_eol_nl
fi
- echo -ne " checking ${selfname}...\c"
- script_diff=$(diff <(sed '/shortname/d;/gameservername/d;/gamename/d' "${tmpdir}/linuxgsm.sh") <(sed '/shortname/d;/gameservername/d;/gamename/d' "${rootdir}/${selfname}"))
+ echo -en " checking ${selfname}...\c"
+ script_diff=$(diff <(sed '\/shortname/d;\/gameservername/d;\/gamename/d;\/githubuser/d;\/githubrepo/d;\/githubbranch/d' "${tmpdir}/linuxgsm.sh") <(sed '\/shortname/d;\/gameservername/d;\/gamename/d;\/githubuser/d;\/githubrepo/d;\/githubbranch/d' "${rootdir}/${selfname}"))
if [ "${script_diff}" != "" ]; then
fn_print_update_eol_nl
- echo -ne " backup ${selfname}...\c"
+ echo -en " backup ${selfname}...\c"
mkdir -p "${backupdir}/script/"
cp "${rootdir}/${selfname}" "${backupdir}/script/${selfname}-$(date +"%m_%d_%Y_%M").bak"
if [ $? -ne 0 ]; then
@@ -56,7 +56,7 @@ if [ -z "${legacymode}" ]; then
fn_print_ok_eol_nl
echo -e " Backup: ${backupdir}/script/${selfname}-$(date +"%m_%d_%Y_%M").bak"
fi
- echo -ne " fetching ${selfname}...\c"
+ echo -en " fetching ${selfname}...\c"
cp "${tmpdir}/linuxgsm.sh" "${rootdir}/${selfname}"
sed -i "s/shortname=\"core\"/shortname=\"${shortname}\"/g" "${rootdir}/${selfname}"
sed -i "s/gameservername=\"core\"/gameservername=\"${gameservername}\"/g" "${rootdir}/${selfname}"
@@ -78,14 +78,14 @@ if [ -n "${functionsdir}" ]; then
cd "${functionsdir}" || exit
for functionfile in *
do
- echo -ne " checking function ${functionfile}...\c"
+ echo -en " checking function ${functionfile}...\c"
github_file_url_dir="lgsm/functions"
get_function_file=$(${curlpath} --fail -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${functionfile}")
exitcode=$?
function_file_diff=$(diff "${functionsdir}/${functionfile}" <(${curlpath} --fail -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${functionfile}"))
if [ ${exitcode} -ne 0 ]; then
fn_print_fail_eol_nl
- echo -ne " removing unknown function ${functionfile}...\c"
+ echo -en " removing unknown function ${functionfile}...\c"
fn_script_log_fatal "removing unknown function ${functionfile}"
rm -f "${functionfile}"
if [ $? -ne 0 ]; then
@@ -113,5 +113,5 @@ else
fn_print_ok "Updating functions"
fn_script_log_pass "Updating functions"
fi
-echo -ne "\n"
-core_exit.sh
\ No newline at end of file
+echo -en "\n"
+core_exit.sh
diff --git a/lgsm/functions/command_validate.sh b/lgsm/functions/command_validate.sh
index cef68ce7c..2e9dab18b 100644
--- a/lgsm/functions/command_validate.sh
+++ b/lgsm/functions/command_validate.sh
@@ -9,7 +9,6 @@ local commandaction="Validate"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_validation(){
- appid="${1}"
echo ""
echo -e " * Validating may overwrite some customised files."
echo -en " * https://developer.valvesoftware.com/wiki/SteamCMD#Validate"
@@ -26,8 +25,8 @@ fn_validation(){
unbuffer="stdbuf -i0 -o0 -e0"
fi
- if [ "${engine}" == "goldsource" ]; then
- ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} +app_update "${appid}" ${branch} validate +quit | tee -a "${lgsmlog}"
+ if [ "${appid}" == "90" ]; then
+ ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_info_print 70 +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} +app_update "${appid}" ${branch} validate +quit | tee -a "${lgsmlog}"
else
${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${branch} validate +quit | tee -a "${lgsmlog}"
fi
@@ -52,17 +51,9 @@ if [ "${status}" != "0" ]; then
exitbypass=1
command_stop.sh
fn_validation "${appid}"
- # will also check for second appid
- if [ "${gamename}" == "Classic Offensive" ]; then
- fn_validation "${appid_co}"
- fi
exitbypass=1
command_start.sh
else
fn_validation
- # will also check for second appid
- if [ "${gamename}" == "Classic Offensive" ]; then
- fn_validation "${appid_co}"
- fi
fi
core_exit.sh
diff --git a/lgsm/functions/command_wipe.sh b/lgsm/functions/command_wipe.sh
index 7e38cf1ab..b476f4da3 100644
--- a/lgsm/functions/command_wipe.sh
+++ b/lgsm/functions/command_wipe.sh
@@ -43,63 +43,64 @@ fn_wipe_exit_code(){
# Removes files to wipe server
fn_wipe_server_remove_files(){
# Rust Wipe
-#WipeProceduralSave
- if [ "${gamename}" == "Rust" ]; then
- if [ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap.*.sav")" ]; then
- currentaction="Removing procedural map save(s): ${serveridentitydir}/proceduralmap.*.sav"
- echo -en "Removing map saves proceduralmap.*.sav file(s)..."
+ if [ "${shortname}" == "rust" ]; then
+ # Wipe pocedural map
+ if [ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap.*.map")" ]; then
+ currentaction="Removing map file(s): ${serveridentitydir}/proceduralmap.*.map"
+ echo -en "Removing procedural map proceduralmap.*.map file(s)..."
sleep 0.5
fn_script_log "${currentaction}"
- find "${serveridentitydir:?}" -type f -name "proceduralmap.*.sav" -delete
+ find "${serveridentitydir:?}" -type f -name "proceduralmap.*.map" -delete
fn_wipe_exit_code
sleep 0.5
else
- fn_print_information_nl "No procedural map save to remove"
- fn_script_log_info "No procedural map save to remove."
+ fn_print_information_nl "No procedural map file to remove"
+ fn_script_log_info "No procedural map file to remove."
sleep 0.5
fi
-#WipeBarrenSave
- if [ -n "$(find "${serveridentitydir}" -type f -name "barren*.sav")" ]; then
- currentaction="Removing barren map save(s): ${serveridentitydir}/barren*.sav"
- echo -en "Removing barren map saves barren*.sav file(s)..."
+ # Wipe procedural map save
+ if [ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap.*.sav")" ]; then
+ currentaction="Removing procedural map save(s): ${serveridentitydir}/proceduralmap.*.sav"
+ echo -en "Removing map saves proceduralmap.*.sav file(s)..."
sleep 0.5
fn_script_log "${currentaction}"
- find "${serveridentitydir:?}" -type f -name "barren*.sav" -delete
+ find "${serveridentitydir:?}" -type f -name "proceduralmap.*.sav" -delete
fn_wipe_exit_code
sleep 0.5
else
- fn_print_information_nl "No barren map save to remove"
- fn_script_log_info "No barren map save to remove."
+ fn_print_information_nl "No procedural map save to remove"
+ fn_script_log_info "No procedural map save to remove."
sleep 0.5
fi
-#WipeProceduralMap
- if [ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap.*.map")" ]; then
- currentaction="Removing map file(s): ${serveridentitydir}/proceduralmap.*.map"
- echo -en "Removing procedural map proceduralmap.*.map file(s)..."
+ # Wipe Barren map
+ if [ -n "$(find "${serveridentitydir}" -type f -name "barren*.map")" ]; then
+ currentaction="Removing map file(s): ${serveridentitydir}/barren*.map"
+ echo -en "Removing barren map barren*.map file(s)..."
sleep 0.5
fn_script_log "${currentaction}"
- find "${serveridentitydir:?}" -type f -name "proceduralmap.*.map" -delete
+ find "${serveridentitydir:?}" -type f -name "barren*.map" -delete
fn_wipe_exit_code
sleep 0.5
else
- fn_print_information_nl "No procedural map file to remove"
- fn_script_log_info "No procedural map file to remove."
+ fn_print_information_nl "No barren map file to remove"
+ fn_script_log_info "No barren map file to remove."
sleep 0.5
fi
-#WipeBarrenMap
- if [ -n "$(find "${serveridentitydir}" -type f -name "barren*.map")" ]; then
- currentaction="Removing map file(s): ${serveridentitydir}/barren*.map"
- echo -en "Removing barren map barren*.map file(s)..."
+ # Wipe barren map save
+ if [ -n "$(find "${serveridentitydir}" -type f -name "barren*.sav")" ]; then
+ currentaction="Removing barren map save(s): ${serveridentitydir}/barren*.sav"
+ echo -en "Removing barren map saves barren*.sav file(s)..."
sleep 0.5
fn_script_log "${currentaction}"
- find "${serveridentitydir:?}" -type f -name "barren*.map" -delete
+ find "${serveridentitydir:?}" -type f -name "barren*.sav" -delete
fn_wipe_exit_code
sleep 0.5
else
- fn_print_information_nl "No barren map file to remove"
- fn_script_log_info "No barren map file to remove."
+ fn_print_information_nl "No barren map save to remove"
+ fn_script_log_info "No barren map save to remove."
sleep 0.5
fi
+ # Wipe user dir, might be a legacy thing, maybe to be removed
if [ -d "${serveridentitydir}/user" ]; then
currentaction="Removing user directory: ${serveridentitydir}/user"
echo -en "Removing user directory..."
@@ -108,11 +109,9 @@ fn_wipe_server_remove_files(){
rm -rf "${serveridentitydir:?}/user"
fn_wipe_exit_code
sleep 0.5
- else
- fn_print_information_nl "No user directory to remove"
- fn_script_log_info "No user directory to remove."
- sleep 0.5
+ # We do not print additional information if there is nothing to remove since this might be obsolete
fi
+ # Wipe storage dir, might be a legacy thing, maybe to be removed
if [ -d "${serveridentitydir}/storage" ]; then
currentaction="Removing storage directory: ${serveridentitydir}/storage"
echo -en "Removing storage directory..."
@@ -121,11 +120,58 @@ fn_wipe_server_remove_files(){
rm -rf "${serveridentitydir:?}/storage"
fn_wipe_exit_code
sleep 0.5
+ # We do not print additional information if there is nothing to remove since this might be obsolete
+ fi
+ # Wipe sv.files
+ if [ -n "$(find "${serveridentitydir}" -type f -name "sv.files.*.db")" ]; then
+ currentaction="Removing server misc files: ${serveridentitydir}/sv.files.*.db"
+ echo -en "Removing server misc srv.files*.db file(s)..."
+ sleep 0.5
+ fn_script_log "${currentaction}"
+ find "${serveridentitydir:?}" -type f -name "sv.files.*.d" -delete
+ fn_wipe_exit_code
+ sleep 0.5
+ # No further information if not found because it should I could not get this file showing up
+ fi
+ # Wipe player death files
+ if [ -n "$(find "${serveridentitydir}" -type f -name "player.deaths.*.db")" ]; then
+ currentaction="Removing player death files: ${serveridentitydir}/player.deaths.*.db"
+ echo -en "Removing player deaths player.deaths.*.db file(s)..."
+ sleep 0.5
+ fn_script_log "${currentaction}"
+ find "${serveridentitydir:?}" -type f -name "player.deaths.*.db" -delete
+ fn_wipe_exit_code
+ sleep 0.5
else
- fn_print_information_nl "No storage directory to remove"
- fn_script_log_info "No storage directory to remove."
+ fn_print_information_nl "No player death to remove"
+ fn_script_log_info "No player death to remove."
sleep 0.5
fi
+ # Wipe blueprints only if wipeall command was used
+ if [ "${wipeall}" == "1" ]; then
+ if [ -n "$(find "${serveridentitydir}" -type f -name "player.blueprints.*.db")" ]; then
+ currentaction="Removing blueprint file(s): ${serveridentitydir}/player.blueprints.*.db"
+ echo -en "Removing blueprints player.blueprints.*.db file(s)..."
+ sleep 0.5
+ fn_script_log "${currentaction}"
+ find "${serveridentitydir:?}" -type f -name "player.blueprints.*.db" -delete
+ fn_wipe_exit_code
+ sleep 0.5
+ else
+ fn_print_information_nl "No blueprint file to remove"
+ fn_script_log_info "No blueprint file to remove."
+ sleep 0.5
+ fi
+ elif [ -n "$(find "${serveridentitydir}" -type f -name "player.blueprints.*.db")" ]; then
+ fn_print_information_nl "Keeping blueprints"
+ fn_script_log_info "Keeping blueprints."
+ sleep 0.5
+ else
+ fn_print_information_nl "No blueprints found"
+ fn_script_log_info "No blueprints found."
+ sleep 0.5
+ fi
+ # Wipe some logs that might be there
if [ -n "$(find "${serveridentitydir}" -type f -name "Log.*.txt")" ]; then
currentaction="Removing log files: ${serveridentitydir}/Log.*.txt"
echo -en "Removing Log files..."
@@ -134,10 +180,7 @@ fn_wipe_server_remove_files(){
find "${serveridentitydir:?}" -type f -name "Log.*.txt" -delete
fn_wipe_exit_code
sleep 0.5
- else
- fn_print_information_nl "No log files to remove"
- fn_script_log_info "No log files to remove."
- sleep 0.5
+ # We do not print additional information if there are no logs to remove
fi
# You can add an "elif" here to add another game or engine
fi
@@ -145,8 +188,8 @@ fn_wipe_server_remove_files(){
# Check if there is something to wipe, prompt the user, and call appropriate functions
# Rust Wipe
-if [ "${gamename}" == "Rust" ]; then
- if [ -d "${serveridentitydir}/storage" ]||[ -d "${serveridentitydir}/user" ]||[ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap*.sav")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "barren*.sav")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "Log.*.txt")" ]; then
+if [ "${shortname}" == "rust" ]; then
+ if [ -d "${serveridentitydir}/storage" ]||[ -d "${serveridentitydir}/user" ]||[ -n "$(find "${serveridentitydir}" -type f -name "proceduralmap*.sav")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "barren*.sav")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "Log.*.txt")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "player.deaths.*.db")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "player.blueprints.*.db")" ]||[ -n "$(find "${serveridentitydir}" -type f -name "sv.files.*.db")" ]; then
fn_print_warning_nl "Any user, storage, log and map data from ${serveridentitydir} will be erased."
if ! fn_prompt_yn "Continue?" Y; then
echo Exiting; core_exit.sh
diff --git a/lgsm/functions/core_dl.sh b/lgsm/functions/core_dl.sh
index ea23b8c7e..ad5de35ee 100644
--- a/lgsm/functions/core_dl.sh
+++ b/lgsm/functions/core_dl.sh
@@ -24,7 +24,7 @@ local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_dl_md5(){
# Runs MD5 Check if available
if [ "${md5}" != "0" ]&&[ "${md5}" != "nomd5" ]; then
- echo -ne "verifying ${local_filename} with MD5..."
+ echo -en "verifying ${local_filename} with MD5..."
sleep 0.5
local md5sumcmd=$(md5sum "${local_filedir}/${local_filename}"|awk '{print $1;}')
if [ "${md5sumcmd}" != "${md5}" ]; then
@@ -53,7 +53,7 @@ fn_dl_extract(){
local_filename="${2}"
extractdir="${3}"
# extracts archives
- echo -ne "extracting ${local_filename}..."
+ echo -en "extracting ${local_filename}..."
mime=$(file -b --mime-type "${local_filedir}/${local_filename}")
if [ ! -d "${extractdir}" ]; then
mkdir "${extractdir}"
@@ -85,12 +85,12 @@ fn_dl_extract(){
# Trap to remove file download if canceled before completed
fn_fetch_trap(){
echo ""
- echo -ne "downloading ${local_filename}..."
+ echo -en "downloading ${local_filename}..."
fn_print_canceled_eol_nl
fn_script_log_info "Downloading ${local_filename}...CANCELED"
sleep 0.5
rm -f "${local_filedir}/${local_filename}"
- echo -ne "downloading ${local_filename}..."
+ echo -en "downloading ${local_filename}..."
fn_print_removed_eol_nl
fn_script_log_info "Downloading ${local_filename}...REMOVED"
core_exit.sh
@@ -112,14 +112,14 @@ fn_fetch_file(){
fi
# Trap will remove part downloaded files if canceled
trap fn_fetch_trap INT
- # if larger file shows progress bar
- if [ "${local_filename##*.}" == "bz2" ]||[ "${local_filename##*.}" == "gz" ]||[ "${local_filename##*.}" == "zip" ]||[ "${local_filename##*.}" == "jar" ]; then
- echo -ne "downloading ${local_filename}..."
+ # larger files show a progress bar
+ if [ "${local_filename##*.}" == "bz2" ]||[ "${local_filename##*.}" == "gz" ]||[ "${local_filename##*.}" == "zip" ]||[ "${local_filename##*.}" == "jar" ]||[ "${local_filename##*.}" == "xz" ]; then
+ echo -en "downloading ${local_filename}..."
sleep 0.5
- echo -ne "downloading ${local_filename}..."
+ echo -en "downloading ${local_filename}..."
curlcmd=$(${curlpath} --progress-bar --fail -L -o "${local_filedir}/${local_filename}" "${remote_fileurl}")
else
- echo -ne " fetching ${local_filename}...\c"
+ echo -en " fetching ${local_filename}...\c"
curlcmd=$(${curlpath} -s --fail -L -o "${local_filedir}/${local_filename}" "${remote_fileurl}" 2>&1)
fi
local exitcode=$?
diff --git a/lgsm/functions/core_exit.sh b/lgsm/functions/core_exit.sh
index bc6c2331d..91142aaa8 100644
--- a/lgsm/functions/core_exit.sh
+++ b/lgsm/functions/core_exit.sh
@@ -14,6 +14,12 @@ fn_exit_dev_debug(){
fi
}
+# If running dependency check as root will remove any files that belong to root user.
+if [ "$(whoami)" == "root" ]; then
+ find "${lgsmdir}"/ -group root -prune -exec rm -rf {} + > /dev/null 2>&1
+ find "${logdir}"/ -group root -prune -exec rm -rf {} + > /dev/null 2>&1
+fi
+
if [ -n "${exitbypass}" ]; then
unset exitbypass
elif [ -n "${exitcode}" ]&&[ "${exitcode}" != "0" ]; then
diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh
index c43395dd2..bde5e1f31 100644
--- a/lgsm/functions/core_functions.sh
+++ b/lgsm/functions/core_functions.sh
@@ -51,6 +51,12 @@ fn_fetch_function
# Commands
+
+command_backup.sh(){
+functionfile="${FUNCNAME}"
+fn_fetch_function
+}
+
command_console.sh(){
functionfile="${FUNCNAME}"
fn_fetch_function
@@ -61,22 +67,22 @@ functionfile="${FUNCNAME}"
fn_fetch_function
}
-command_postdetails.sh(){
+command_details.sh(){
functionfile="${FUNCNAME}"
fn_fetch_function
}
-command_details.sh(){
+command_donate.sh(){
functionfile="${FUNCNAME}"
fn_fetch_function
}
-command_test_alert.sh(){
+command_postdetails.sh(){
functionfile="${FUNCNAME}"
fn_fetch_function
}
-command_backup.sh(){
+command_test_alert.sh(){
functionfile="${FUNCNAME}"
fn_fetch_function
}
@@ -316,12 +322,6 @@ functionfile="${FUNCNAME}"
fn_fetch_function
}
-fix_glibc.sh(){
-functionfile="${FUNCNAME}"
-fn_fetch_function
-}
-
-
fix_kf.sh(){
functionfile="${FUNCNAME}"
fn_fetch_function
@@ -367,6 +367,21 @@ functionfile="${FUNCNAME}"
fn_fetch_function
}
+fix_sdtd.sh(){
+functionfile="${FUNCNAME}"
+fn_fetch_function
+}
+
+fix_ss3.sh(){
+functionfile="${FUNCNAME}"
+fn_fetch_function
+}
+
+fix_ts3.sh(){
+functionfile="${FUNCNAME}"
+fn_fetch_function
+}
+
fix_ut2k4.sh(){
functionfile="${FUNCNAME}"
fn_fetch_function
@@ -377,6 +392,11 @@ functionfile="${FUNCNAME}"
fn_fetch_function
}
+fix_wurm.sh(){
+functionfile="${FUNCNAME}"
+fn_fetch_function
+}
+
# Info
info_config.sh(){
diff --git a/lgsm/functions/core_getopt.sh b/lgsm/functions/core_getopt.sh
index d88d25d2b..7be0f8d66 100644
--- a/lgsm/functions/core_getopt.sh
+++ b/lgsm/functions/core_getopt.sh
@@ -20,6 +20,7 @@ cmd_backup=( "b;backup" "command_backup.sh" "Create backup archives of the serve
cmd_update_linuxgsm=( "ul;update-lgsm;uf;update-functions" "command_update_linuxgsm.sh" "Check and apply any LinuxGSM updates." )
cmd_test_alert=( "ta;test-alert" "command_test_alert.sh" "Send a test alert." )
cmd_monitor=( "m;monitor" "command_monitor.sh" "Check server status and restart if crashed." )
+cmd_donate=( "do;donate" "command_donate.sh" "Donation options." )
# Console servers only
cmd_console=( "c;console" "command_console.sh" "Access server console." )
cmd_debug=( "d;debug" "command_debug.sh" "Start server directly in your terminal." )
@@ -35,7 +36,8 @@ cmd_mods_update=( "mu;mods-update" "command_mods_update.sh" "Update installed mo
# Server specific
cmd_change_password=( "pw;change-password" "command_ts3_server_pass.sh" "Change TS3 serveradmin password." )
cmd_install_default_resources=( "ir;install-default-resources" "command_install_resources_mta.sh" "Install the MTA default resources." )
-cmd_wipe=( "wi;wipe" "command_wipe.sh" "Wipe your server data." )
+cmd_wipe=( "wi;wipe" "command_wipe.sh" "Wipe your main game server data." )
+cmd_wipeall=( "wa;wipeall" "wipeall=1; command_wipe.sh" "Wipe your game server data and blueprints." )
cmd_map_compressor_u99=( "mc;map-compressor" "compress_ut99_maps.sh" "Compresses all ${gamename} server maps." )
cmd_map_compressor_u2=( "mc;map-compressor" "compress_unreal2_maps.sh" "Compresses all ${gamename} server maps." )
cmd_install_cdkey=( "cd;server-cd-key" "install_ut2k4_key.sh" "Add your server cd key." )
@@ -50,6 +52,7 @@ cmd_dev_detect_ldd=( "dl;detect-ldd" "command_dev_detect_ldd.sh" "Detect require
cmd_dev_query_raw=( "qr;query-raw" "command_dev_query_raw.sh" "The raw output of gamedig and gsquery." )
cmd_dev_clear_functions=( "cf;clear-functions" "command_dev_clear_functions.sh" "Delete the contents of the functions dir." )
+
### Set specific opt here ###
currentopt=( "${cmd_start[@]}" "${cmd_stop[@]}" "${cmd_restart[@]}" "${cmd_monitor[@]}" "${cmd_test_alert[@]}" "${cmd_details[@]}" "${cmd_postdetails[@]}" )
@@ -58,10 +61,10 @@ currentopt=( "${cmd_start[@]}" "${cmd_stop[@]}" "${cmd_restart[@]}" "${cmd_monit
currentopt+=( "${cmd_update_linuxgsm[@]}" )
# Exclude noupdate games here
-if [ "${gamename}" != "Battlefield: 1942" ]&&[ "${engine}" != "quake" ]&&[ "${engine}" != "idtech2" ]&&[ "${engine}" != "idtech3" ]&&[ "${engine}" != "iw2.0" ]&&[ "${engine}" != "iw3.0" ]&&[ "${gamename}" != "San Andreas Multiplayer" ]; then
+if [ "${engine}" != "quake" ]&&[ "${engine}" != "idtech2" ]&&[ "${engine}" != "idtech3" ]&&[ "${engine}" != "iw2.0" ]&&[ "${engine}" != "iw3.0" ]&&[ "${shortname}" != "bf1942" ]&&[ "${shortname}" != "samp" ]; then
currentopt+=( "${cmd_update[@]}" )
# force update for SteamCMD only or MTA
- if [ -n "${appid}" ]||[ "${gamename}" == "Multi Theft Auto" ]; then
+ if [ -n "${appid}" ]||[ "${shortname}" == "mta" ]; then
currentopt+=( "${cmd_force_update[@]}" )
fi
fi
@@ -75,7 +78,7 @@ fi
currentopt+=( "${cmd_backup[@]}" )
# Exclude games without a console
-if [ "${gamename}" != "TeamSpeak 3" ]; then
+if [ "${shortname}" != "ts3" ]; then
currentopt+=( "${cmd_console[@]}" "${cmd_debug[@]}" )
fi
@@ -87,16 +90,16 @@ if [ "${engine}" == "source" ]; then
fi
# TeamSpeak exclusive
-if [ "${gamename}" == "TeamSpeak 3" ]; then
+if [ "${shortname}" != "ts3" ]; then
currentopt+=( "${cmd_change_password[@]}" )
fi
# Unreal exclusive
-if [ "${gamename}" == "Rust" ]; then
- currentopt+=( "${cmd_wipe[@]}" )
+if [ "${shortname}" == "rust" ]; then
+ currentopt+=( "${cmd_wipe[@]}" "${cmd_wipeall[@]}" )
fi
if [ "${engine}" == "unreal2" ]; then
- if [ "${gamename}" == "Unreal Tournament 2004" ]; then
+ if [ "${shortname}" == "ut2k4" ]; then
currentopt+=( "${cmd_install_cdkey[@]}" "${cmd_map_compressor_u2[@]}" )
else
currentopt+=( "${cmd_map_compressor_u2[@]}" )
@@ -107,22 +110,22 @@ if [ "${engine}" == "unreal" ]; then
fi
# DST exclusive
-if [ "${gamename}" == "Don't Starve Together" ]; then
+if [ "${shortname}" == "dst" ]; then
currentopt+=( "${cmd_install_dst_token[@]}" )
fi
# MTA exclusive
-if [ "${gamename}" == "Multi Theft Auto" ]; then
+if [ "${shortname}" == "mta" ]; then
currentopt+=( "${cmd_install_default_resources[@]}" )
fi
# Squad license exclusive
-if [ "${gamename}" == "Squad" ]; then
+if [ "${shortname}" == "squad" ]; then
currentopt+=( "${cmd_install_squad_license[@]}" )
fi
## Mods commands
-if [ "${engine}" == "source" ]||[ "${gamename}" == "Rust" ]||[ "${gamename}" == "Hurtworld" ]||[ "${gamename}" == "7 Days To Die" ]; then
+if [ "${engine}" == "source" ]||[ "${shortname}" == "rust" ]||[ "${shortname}" == "hq" ]||[ "${shortname}" == "sdtd" ]; then
currentopt+=( "${cmd_mods_install[@]}" "${cmd_mods_remove[@]}" "${cmd_mods_update[@]}" )
fi
@@ -135,6 +138,9 @@ if [ -f ".dev-debug" ]; then
currentopt+=( "${cmd_dev_detect_deps[@]}" "${cmd_dev_detect_glibc[@]}" "${cmd_dev_detect_ldd[@]}" "${cmd_dev_query_raw[@]}" "${cmd_dev_clear_functions[@]}" )
fi
+## Donate
+currentopt+=( "${cmd_donate[@]}" )
+
### Build list of available commands
optcommands=()
index="0"
@@ -149,7 +155,7 @@ done
fn_opt_usage(){
echo "Usage: $0 [option]"
echo -e ""
- echo "${gamename} - Linux Game Server Manager - Version ${version}"
+ echo "LinuxGSM - ${gamename} - Version ${version}"
echo "https://linuxgsm.com/${gameservername}"
echo -e ""
echo -e "${lightyellow}Commands${default}"
diff --git a/lgsm/functions/core_legacy.sh b/lgsm/functions/core_legacy.sh
index 41f642320..137bfe08c 100644
--- a/lgsm/functions/core_legacy.sh
+++ b/lgsm/functions/core_legacy.sh
@@ -39,4 +39,27 @@ fi
if [ -z "${alertlog}" ]; then
alertlog="${emaillog}"
+fi
+
+# Alternations to workshop variables
+if [ -z "${wsapikey}" ]; then
+ if [ "${workshopauth}" ]; then
+ wsapikey="${workshopauth}"
+ elif [ "${authkey}" ]; then
+ wsapikey="${authkey}"
+ fi
+fi
+
+if [ -z "${wscollectionid}" ]; then
+ if [ "${workshopauth}" ]; then
+ wscollectionid="${ws_collection_id}"
+ elif [ "${authkey}" ]; then
+ wscollectionid="${workshopcollectionid}"
+ fi
+fi
+
+if [ -z "${wsstartmap}" ]; then
+ if [ "${ws_start_map}" ]; then
+ wscollectionid="${ws_start_map}"
+ fi
fi
\ No newline at end of file
diff --git a/lgsm/functions/core_messages.sh b/lgsm/functions/core_messages.sh
index 9ffbc52ae..075721999 100644
--- a/lgsm/functions/core_messages.sh
+++ b/lgsm/functions/core_messages.sh
@@ -7,21 +7,26 @@
# nl: new line: message is following by a new line
# eol: end of line: message is placed at the end of the current line
-
-if [ "${ansi}" != "off" ]; then
- # echo colors
- default="\e[0m"
- red="\e[31m"
- green="\e[32m"
- yellow="\e[33m"
- lightyellow="\e[93m"
- blue="\e[34m"
- lightblue="\e[94m"
- magenta="\e[35m"
- cyan="\e[36m"
+fn_ansi_loader(){
+ if [ "${ansi}" != "off" ]; then
+ # echo colors
+ default="\e[0m"
+ red="\e[31m"
+ lightred="\e[91m"
+ green="\e[32m"
+ lightgreen="\e[92m"
+ yellow="\e[33m"
+ lightyellow="\e[93m"
+ blue="\e[34m"
+ lightblue="\e[94m"
+ magenta="\e[35m"
+ lightmagenta="\e[95m"
+ cyan="\e[36m"
+ lightcyan="\e[96m"
+ fi
# carriage return & erase to end of line
creeol="\r\033[K"
-fi
+}
# Log display
########################
@@ -315,20 +320,20 @@ fn_print_fail_eol_nl(){
# WARN
fn_print_warn_eol(){
- echo -en "${red}FAIL${default}"
+ echo -en "${red}WARN${default}"
}
fn_print_warn_eol_nl(){
- echo -e "${red}FAIL${default}"
+ echo -e "${red}WARN${default}"
}
# INFO
fn_print_info_eol(){
- echo -en "${red}FAIL${default}"
+ echo -en "${red}INFO${default}"
}
fn_print_info_eol_nl(){
- echo -e "${red}FAIL${default}"
+ echo -e "${red}INFO${default}"
}
# QUERYING
diff --git a/lgsm/functions/fix.sh b/lgsm/functions/fix.sh
index 2872b806f..c58e1e2d0 100644
--- a/lgsm/functions/fix.sh
+++ b/lgsm/functions/fix.sh
@@ -37,49 +37,62 @@ fn_fix_msg_end(){
}
# Fixes that are run on start
-if [ "${function_selfname}" != "command_install.sh" ]; then
+if [ "${function_selfname}" != "command_install.sh" ]&&[ -z "${fixbypass}" ]; then
if [ -n "${appid}" ]; then
fix_steamcmd.sh
fi
- if [ "${gamename}" == "ARMA 3" ]; then
+ if [ "${shortname}" == "arma3" ]; then
fix_arma3.sh
elif [ "${shortname}" == "ark" ]; then
fix_ark.sh
- elif [ "${gamename}" == "Counter-Strike: Global Offensive" ]; then
+ elif [ "${shortname}" == "csgo" ]; then
fix_csgo.sh
- elif [ "${gamename}" == "Don't Starve Together" ]; then
+ elif [ "${shortname}" == "dst" ]; then
fix_dst.sh
- elif [ "${gamename}" == "GoldenEye: Source" ]; then
+ elif [ "${shortname}" == "ges" ]; then
fix_ges.sh
- elif [ "${gamename}" == "Insurgency" ]; then
+ elif [ "${shortname}" == "ins" ]; then
fix_ins.sh
- elif [ "${gamename}" == "Rust" ]; then
+ elif [ "${shortname}" == "rust" ]; then
fix_rust.sh
elif [ "${shortname}" == "rw" ]; then
fix_rw.sh
- elif [ "${gamename}" == "Multi Theft Auto" ]; then
+ elif [ "${shortname}" == "sdtd" ]; then
+ fix_sdtd.sh
+ elif [ "${shortname}" == "ss3" ]; then
+ fix_ss3.sh
+ elif [ "${shortname}" == "ts3" ]; then
+ fix_ts3.sh
+ elif [ "${shortname}" == "mta" ]; then
fix_mta.sh
+ elif [ "${shortname}" == "wurm" ]; then
+ fix_wurm.sh
fi
fi
# Fixes that are run on install only.
if [ "${function_selfname}" == "command_install.sh" ]; then
echo ""
- echo "Applying ${gamename} Server Fixes"
+ echo "Applying Post-Install Fixes"
echo "================================="
sleep 0.5
- if [ "${gamename}" == "Killing Floor" ]; then
- fix_kf.sh
- elif [ "${gamename}" == "Killing Floor 2" ]; then
- fix_kf2.sh
- elif [ "${gamename}" == "Red Orchestra: Ostfront 41-45" ]; then
- fix_ro.sh
- elif [ "${gamename}" == "Unreal Tournament 2004" ]; then
- fix_ut2k4.sh
- elif [ "${gamename}" == "Unreal Tournament" ]; then
- fix_ut.sh
- elif [ "${gamename}" == "Unreal Tournament 3" ]; then
- fix_ut3.sh
- fi
+ if [ "${shortname}" == "kf" ]; then
+ fix_kf.sh
+ elif [ "${shortname}" == "kf2" ]; then
+ fix_kf2.sh
+ elif [ "${shortname}" == "ro" ]; then
+ fix_ro.sh
+ elif [ "${shortname}" == "ut2k4" ]; then
+ fix_ut2k4.sh
+ elif [ "${shortname}" == "ut" ]; then
+ fix_ut.sh
+ elif [ "${shortname}" == "ut3" ]; then
+ fix_ut3.sh
+ elif [ "${shortname}" == "tf2" ]; then
+ fix_tf2.sh
+ else
+ fn_print_information_nl "No fixes required."
+ fi
+
fi
diff --git a/lgsm/functions/fix_csgo.sh b/lgsm/functions/fix_csgo.sh
index f51b405ff..4cf281851 100644
--- a/lgsm/functions/fix_csgo.sh
+++ b/lgsm/functions/fix_csgo.sh
@@ -32,14 +32,3 @@ if [ -f "${servercfgdir}/valve.rc" ] && grep -E '^\s*exec\s*(default|joystick)\.
sed -i 's/^\s*exec\s*joystick.cfg/\/\/exec joystick.cfg/g' "${servercfgdir}/valve.rc" > /dev/null 2>&1
fn_fix_msg_end
fi
-
-# Fixes: workshop map issue.
-# http://forums.steampowered.com/forums/showthread.php?t=3170366.
-if [ -f "${systemdir}/subscribed_collection_ids.txt" ]||[ -f "${systemdir}/subscribed_file_ids.txt" ]||[ -f "${systemdir}/ugc_collection_cache.txt" ]; then
- fixname="workshop map"
- fn_fix_msg_start
- rm -f "${systemdir}/subscribed_collection_ids.txt"
- rm -f "${systemdir}/subscribed_file_ids.txt"
- rm -f "${systemdir}/ugc_collection_cache.txt"
- fn_fix_msg_end
-fi
diff --git a/lgsm/functions/fix_glibc.sh b/lgsm/functions/fix_glibc.sh
deleted file mode 100644
index b5da964de..000000000
--- a/lgsm/functions/fix_glibc.sh
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/bin/bash
-# LinuxGSM fix_glibc.sh function
-# Author: Daniel Gibbs
-# Website: https://linuxgsm.com
-# Description: Downloads required Glibc files and applies the Glibc fix if required.
-
-local commandname="FIX"
-local commandaction="Fix"
-local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
-
-## i386
-
-# libstdc++.so.6
-local libstdc_servers_array=( "ARMA 3" "Blade Symphony" "Counter-Strike: Global Offensive" "Garry's Mod" "GoldenEye: Source" "Just Cause 2" "Team Fortress 2" )
-for libstdc_server in "${libstdc_servers_array[@]}"
-do
- if [ "${gamename}" == "${libstdc_server}" ]; then
- fn_fetch_file_github "lgsm/lib/ubuntu12.04/i386" "libstdc++.so.6" "${lgsmdir}/lib" "nochmodx" "norun" "noforce" "nomd5"
- fi
-done
-
-# libm.so.6
-local libm_servers_array=( "Black Mesa: Deathmatch" "Codename CURE" "Day of Infamy" "Double Action: Boogaloo" "Empires Mod" "Fistful of Frags" "Garry's Mod" "GoldenEye: Source" "Insurgency" "Natural Selection 2" "NS2: Combat" "No More Room in Hell" "Pirates, Vikings, and Knights II" "Team Fortress 2" )
-for libm_server in "${libm_servers_array[@]}"
-do
- if [ "${gamename}" == "${libm_server}" ]; then
- fn_fetch_file_github "lgsm/lib/ubuntu12.04/i386" "libm.so.6" "${lgsmdir}/lib" "nochmodx" "norun" "noforce" "nomd5"
- fi
-done
-
-# libc.so.6
-local libc_servers_array=( "Black Mesa: Deathmatch" "Blade Symphony" "Garry's Mod" "GoldenEye: Source" "Team Fortress 2" )
-for libc_server in "${libc_servers_array[@]}"
-do
- if [ "${gamename}" == "${libc_server}" ]; then
- fn_fetch_file_github "lgsm/lib/ubuntu12.04/i386" "libc.so.6" "${lgsmdir}/lib" "nochmodx" "norun" "noforce" "nomd5"
- fi
-done
-
-# libpthread.so.0
-local libpthread_servers_array=( "Black Mesa: Deathmatch" "Blade Symphony" "Garry's Mod" )
-for libpthread_server in "${libpthread_servers_array[@]}"
-do
- if [ "${gamename}" == "${libpthread_server}" ]; then
- fn_fetch_file_github "lgsm/lib/ubuntu12.04/i386" "libpthread.so.0" "${lgsmdir}/lib" "nochmodx" "norun" "noforce" "nomd5"
- fi
-done
-
-## amd64
-
-# libm.so.6
-local libm_servers_array=( "Factorio" )
-for libm_server in "${libm_servers_array[@]}"
-do
- if [ "${gamename}" == "${libm_server}" ]; then
- fn_fetch_file_github "lgsm/lib/ubuntu12.04/amd64" "libm.so.6" "${lgsmdir}/lib" "nochmodx" "norun" "noforce" "nomd5"
- fi
-done
-
-# libc.so.6
-local libc_servers_array=( "Factorio" )
-for libc_server in "${libc_servers_array[@]}"
-do
- if [ "${gamename}" == "${libc_server}" ]; then
- fn_fetch_file_github "lgsm/lib/ubuntu12.04/amd64" "libc.so.6" "${lgsmdir}/lib" "nochmodx" "norun" "noforce" "nomd5"
- fi
-done
-
-export LD_LIBRARY_PATH=:"${libdir}"
\ No newline at end of file
diff --git a/lgsm/functions/fix_kf.sh b/lgsm/functions/fix_kf.sh
index ad96678ef..dbb0c78c1 100644
--- a/lgsm/functions/fix_kf.sh
+++ b/lgsm/functions/fix_kf.sh
@@ -21,9 +21,13 @@ echo "applying server name fix."
sleep 0.5
echo "forcing server restart..."
sleep 0.5
+exitbypass=1
command_start.sh
sleep 5
+exitbypass=1
command_stop.sh
+exitbypass=1
command_start.sh
sleep 5
+exitbypass=1
command_stop.sh
\ No newline at end of file
diff --git a/lgsm/functions/fix_kf2.sh b/lgsm/functions/fix_kf2.sh
index ad132bf72..3e3e23080 100644
--- a/lgsm/functions/fix_kf2.sh
+++ b/lgsm/functions/fix_kf2.sh
@@ -1,5 +1,5 @@
#!/bin/bash
-# LinuxGSM fix_kf3.sh function
+# LinuxGSM fix_kf2.sh function
# Author: Daniel Gibbs
# Website: https://linuxgsm.com
# Description: Resolves various issues with Killing Floor 2.
@@ -17,4 +17,5 @@ sleep 1
exitbypass=1
command_start.sh
sleep 10
+exitbypass=1
command_stop.sh
\ No newline at end of file
diff --git a/lgsm/functions/fix_ro.sh b/lgsm/functions/fix_ro.sh
index 0b4f41f15..b96ae582e 100644
--- a/lgsm/functions/fix_ro.sh
+++ b/lgsm/functions/fix_ro.sh
@@ -24,9 +24,13 @@ echo "applying server name fix."
sleep 0.5
echo "forcing server restart..."
sleep 0.5
+exitbypass=1
command_start.sh
sleep 5
+exitbypass=1
command_stop.sh
+exitbypass=1
command_start.sh
sleep 5
+exitbypass=1
command_stop.sh
diff --git a/lgsm/functions/fix_sdtd.sh b/lgsm/functions/fix_sdtd.sh
new file mode 100644
index 000000000..04ac7936d
--- /dev/null
+++ b/lgsm/functions/fix_sdtd.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+# LinuxGSM fix_sdtd.sh function
+# Author: Daniel Gibbs
+# Website: https://linuxgsm.com
+# Description: Resolves startup issue with 7 Days to Die
+
+local commandname="FIX"
+local commandaction="Fix"
+
+export LD_LIBRARY_PATH="${serverfiles}"
\ No newline at end of file
diff --git a/lgsm/functions/fix_ss3.sh b/lgsm/functions/fix_ss3.sh
new file mode 100644
index 000000000..3ebbc3910
--- /dev/null
+++ b/lgsm/functions/fix_ss3.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+# LinuxGSM fix_ss3.sh function
+# Author: Daniel Gibbs
+# Website: https://linuxgsm.com
+# Description: Resolves various issues with Serious Sam 3.
+
+local commandname="FIX"
+local commandaction="Fix"
+local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
+
+# Fixes https://steamcommunity.com/app/41070/discussions/0/353916981477716386/
+if [ "$(diff "${steamcmddir}/linux32/steamclient.so" "${serverfiles}/Bin/steamclient.so" >/dev/null)" ]; then
+ cp -f "${steamcmddir}/linux32/steamclient.so" "${serverfiles}/Bin/steamclient.so"
+fi
\ No newline at end of file
diff --git a/lgsm/functions/fix_steamcmd.sh b/lgsm/functions/fix_steamcmd.sh
index 3a63b1505..9802c702f 100644
--- a/lgsm/functions/fix_steamcmd.sh
+++ b/lgsm/functions/fix_steamcmd.sh
@@ -17,7 +17,7 @@ if [ ! -f "${HOME}/.steam/sdk32/steamclient.so" ]; then
fn_fix_msg_end
fi
-if [ "${gamename}" == "Serious Sam 3: BFE" ]; then
+if [ "${shortname}" == "ss3" ]; then
# Fixes: .steam/bin32/libsteam.so: cannot open shared object file: No such file or directory
if [ ! -f "${HOME}/.steam/bin32/libsteam.so" ]; then
fixname="libsteam.so"
@@ -26,7 +26,7 @@ if [ "${gamename}" == "Serious Sam 3: BFE" ]; then
cp -v "${serverfiles}/Bin/libsteam.so" "${HOME}/.steam/bin32/libsteam.so" >> "${lgsmlog}"
fn_fix_msg_end
fi
-elif [ "${gamename}" == "Hurtworld" ]; then
+elif [ "${shortname}" == "hw" ]; then
# Fixes: [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so.
if [ ! -f "${serverfiles}/Hurtworld_Data/Plugins/x86/steamclient.so" ]; then
fixname="steamclient.so x86"
@@ -40,7 +40,7 @@ elif [ "${gamename}" == "Hurtworld" ]; then
cp -v "${steamcmddir}/linux32/steamclient.so" "${serverfiles}/Hurtworld_Data/Plugins/x86_64/steamclient.so" >> "${lgsmlog}"
fn_fix_msg_end
fi
-elif [ "${gamename}" == "Tower Unite" ]; then
+elif [ "${shortname}" == "tu" ]; then
# Fixes: [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.so.
if [ ! -f "${executabledir}/steamclient.so" ]; then
fixname="steamclient.so"
diff --git a/lgsm/functions/fix_tf2.sh b/lgsm/functions/fix_tf2.sh
new file mode 100644
index 000000000..766fc8bfa
--- /dev/null
+++ b/lgsm/functions/fix_tf2.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+# LinuxGSM fix_tf2.sh function
+# Author: Vector Sigma
+# Website: https://github.com/vectorsigma
+# Description: Resolves various issues with Team Fortress 2.
+
+local commandname="FIX"
+local commandaction="Fix"
+local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
+
+# Fixes: Team Fortress 2 Segmentation fault for Red-Hat Distros #2062.
+if [ -f "/etc/redhat-release" ] && [ ! -f "${serverfiles}/bin/libcurl-gnutls.so.4" ]; then
+ fixname="libcurl-gnutls.so.4 missing"
+ fn_fix_msg_start
+ ln -s "/usr/lib/libcurl.so.4" "${serverfiles}/bin/libcurl-gnutls.so.4"
+ fn_fix_msg_end
+fi
diff --git a/lgsm/functions/fix_ts3.sh b/lgsm/functions/fix_ts3.sh
new file mode 100644
index 000000000..fd28a90bd
--- /dev/null
+++ b/lgsm/functions/fix_ts3.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+# LinuxGSM fix_ts3.sh function
+# Author: Daniel Gibbs
+# Website: https://linuxgsm.com
+# Description: Resolves various issues with Teamspeak 3.
+
+local commandname="FIX"
+local commandaction="Fix"
+local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
+
+# Fixes: makes libmariadb2 available #1924
+if [ ! -f "${serverfiles}/libmariadb.so.2" ]; then
+ ln -s "${serverfiles}/redist/libmariadb.so.2" "${serverfiles}/libmariadb.so.2"
+fi
\ No newline at end of file
diff --git a/lgsm/functions/fix_ut3.sh b/lgsm/functions/fix_ut3.sh
index 217140432..fa95052ac 100644
--- a/lgsm/functions/fix_ut3.sh
+++ b/lgsm/functions/fix_ut3.sh
@@ -17,4 +17,5 @@ sleep 1
exitbypass=1
command_start.sh
sleep 10
+exitbypass=1
command_stop.sh
\ No newline at end of file
diff --git a/lgsm/functions/fix_wurm.sh b/lgsm/functions/fix_wurm.sh
new file mode 100644
index 000000000..5c90dc402
--- /dev/null
+++ b/lgsm/functions/fix_wurm.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+# LinuxGSM fix_wurm.sh function
+# Author: Daniel Gibbs
+# Website: https://linuxgsm.com
+# Description: Resolves various issues with ARK: Survival Evolved.
+
+# Copies steamclient.so to correct location
+if [ ! -f "${serverfiles}/nativelibs" ]; then
+ cp -f "${serverfiles}/linux64/steamclient.so" "${serverfiles}/nativelibs"
+fi
+
+# First run requires start with no parms
+# After first run new dirs are created
+if [ ! -d "${serverfiles}/Creative" ]; then
+ parmsbypass=1
+ fixbypass=1
+ exitbypass=1
+ command_start.sh
+ sleep 10
+ exitbypass=1
+ command_stop.sh
+ unset parmsbypass
+fi
\ No newline at end of file
diff --git a/lgsm/functions/info_config.sh b/lgsm/functions/info_config.sh
index 68592afe2..aea11c5b6 100644
--- a/lgsm/functions/info_config.sh
+++ b/lgsm/functions/info_config.sh
@@ -252,6 +252,34 @@ fn_info_config_dontstarve(){
fi
}
+fn_info_config_eco(){
+ if [ ! -f "${servercfgfullpath}" ]; then
+ servername="${unavailable}"
+ serverpassword="${unavailable}"
+ maxplayers="${zero}"
+ gamemode="${unavailable}"
+ tickrate="${zero}"
+ port="${zero}"
+ webadminport="${zero}"
+ public=""
+ else
+ servername=$(grep "Description" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Description//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ serverpassword=$(grep "Password" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ maxplayers=$(grep "MaxConnections" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/MaxConnections//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ port=$(grep "\"GameServerPort\"" "${servercfgdir}/Network.eco" | tr -cd '[:digit:]')
+ webadminport=$(grep "\"WebServerPort\"" "${servercfgdir}/Network.eco" | tr -cd '[:digit:]')
+ public=$(grep "PublicServer" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/PublicServer//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+
+ # Not Set
+ servername=${servername:-"NOT SET"}
+ serverpassword=${serverpassword:-"NOT SET"}
+ maxplayers=${maxplayers=:-"0"}
+ port=${port=:-"0"}
+ webadminport=${webadminport=:-"0"}
+ public=${public=:-"NOT SET"}
+ fi
+}
+
fn_info_config_factorio(){
if [ ! -f "${servercfgfullpath}" ]; then
servername="Factorio Server"
@@ -269,6 +297,29 @@ fn_info_config_factorio(){
fi
}
+fn_info_config_inss(){
+ if [ ! -f "${servercfgfullpath}" ]; then
+ rconenabled="${unavailable}"
+ rconpassword="${unavailable}"
+ rconport="${zero}"
+ maxplayers="${zero}"
+ port="${zero}"
+ queryport="${zero}"
+ queryenabled="${unavailable}"
+ rconport="${zero}"
+ gamemode="${unavailable}"
+ gameworld="${unavailable}"
+ else
+ rconenabled=$(grep "bEnabled" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ rconpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ rconport=$(grep "ListenPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
+
+ # Not Set
+ rconenabled=${rconenabled:-"NOT SET"}
+ rconpassword=${rconpassword:-"NOT SET"}
+ rconport=${rconport:-"0"}
+ fi
+}
fn_info_config_minecraft(){
if [ ! -f "${servercfgfullpath}" ]; then
servername="${unavailable}"
@@ -276,6 +327,9 @@ fn_info_config_minecraft(){
rconport="${zero}"
maxplayers="${zero}"
port="${zero}"
+ queryport="${zero}"
+ queryenabled="${unavailable}"
+ rconport="${zero}"
gamemode="${unavailable}"
gameworld="${unavailable}"
else
@@ -284,6 +338,9 @@ fn_info_config_minecraft(){
rconport=$(grep "rcon.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
maxplayers=$(grep "max-players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
port=$(grep "server-port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
+ queryport=$(grep "query.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
+ queryenabled=$(grep "enable-query" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/enable-query//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ rconport=$(grep "rcon.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
gamemode=$(grep "gamemode" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
gameworld=$(grep "level-name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/level-name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
@@ -303,6 +360,36 @@ fn_info_config_minecraft(){
fi
}
+#Post Scriptum: The bloody Seventh
+fn_info_config_pstbs(){
+ if [ ! -f "${servercfgfullpath}" ]; then
+ servername="${unavailable}"
+ maxplayers="${unavailable}"
+ numreservedslots="${unavailable}"
+ else
+ servername="$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=";,:' | sed -e 's/^[ \t]//' -e 's/[ \t]*$//')"
+ maxplayers="$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')"
+ numreservedslots="$(grep "NumReservedSlots=" "${servercfgfullpath}" | tr -cd '[:digit:]')"
+ fi
+
+ if [ ! -f "${servercfgdir}/Rcon.cfg" ]; then
+ rconport=${unavailable}
+ rconpassword=${unavailable}
+ else
+ rconport=$(grep "Port=" "${servercfgdir}/Rcon.cfg" | tr -cd '[:digit:]')
+ rconpassword=$(grep "Password=" "${servercfgdir}/Rcon.cfg" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ fi
+
+ rconport=${rconport:-"0"}
+ if [ -z "${rconpassword}" ]||[ ${#rconpassword} == 1 ]; then
+ rconpassword="NOT SET"
+ fi
+ servername=${servername:-"NOT SET"}
+ serverpassword=${serverpassword:-"NOT SET"}
+ maxplayers=${maxplayers:-"0"}
+ numreservedslots=${numreservedslots:-"0"}
+}
+
fn_info_config_projectcars(){
if [ ! -f "${servercfgfullpath}" ]; then
servername="${unavailable}"
@@ -525,6 +612,21 @@ fn_info_config_seriousengine35(){
fi
}
+#StickyBots
+fn_info_config_sbots(){
+ if [ ! -f "${servercfgfullpath}" ]; then
+ servername="${unavailable}"
+ maxplayers="${unavailable}"
+ else
+ servername="$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=";,:' | sed -e 's/^[ \t]//' -e 's/[ \t]*$//')"
+ maxplayers="$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')"
+ fi
+
+ servername=${servername:-"NOT SET"}
+ serverpassword=${serverpassword:-"NOT SET"}
+ maxplayers=${maxplayers:-"0"}
+}
+
fn_info_config_source(){
if [ ! -f "${servercfgfullpath}" ]; then
servername="${unavailable}"
@@ -708,19 +810,19 @@ fn_info_config_unreal(){
webadminuser="${unavailable}"
webadminpass="${unavailable}"
else
- servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
- serverpassword=$(grep "GamePassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/GamePassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
- adminpassword=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
+ serverpassword=$(grep "GamePassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/GamePassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
+ adminpassword=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
port=$(grep "Port" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' | grep "^Port" | grep -v "#" | tr -cd '[:digit:]')
queryport=$((port + 1))
gsqueryport=$(grep "OldQueryPortNumber" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
- webadminenabled=$(grep "bEnabled" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ webadminenabled=$(grep "bEnabled" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
webadminport=$(grep "ListenPort" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
if [ "${engine}" == "unreal" ]; then
- webadminuser=$(grep "AdminUsername" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminUsername//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
- webadminpass=$(grep "UTServerAdmin.UTServerAdmin" "${servercfgfullpath}" -A 4 | grep "AdminPassword" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ webadminuser=$(grep "AdminUsername" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminUsername//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
+ webadminpass=$(grep "UTServerAdmin.UTServerAdmin" "${servercfgfullpath}" -A 4 | grep "AdminPassword" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
else
- webadminuser=$(grep "AdminName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ webadminuser=$(grep "AdminName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
webadminpass="${adminpassword}"
fi
@@ -797,8 +899,6 @@ fn_info_config_kf2(){
webadminport=${webadminport:-"0"}
webadminuser=${webadminuser:-"NOT SET"}
webadminpass=${webadminpass:-"NOT SET"}
-
-
fi
}
@@ -821,7 +921,7 @@ fn_info_config_sdtd(){
servername=$(grep "ServerName" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
serverpassword=$(grep "ServerPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
port=$(grep "ServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
- queryport=$((port + 1))
+ queryport=${port:-"0"}
webadminenabled=$(grep "ControlPanelEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
@@ -948,6 +1048,37 @@ fn_info_config_etlegacy(){
fi
}
+fn_info_config_wurmunlimited(){
+ if [ ! -f "${servercfgfullpath}" ]; then
+ port="${zero}"
+ queryport="${zero}"
+ rconpassword="${unavailable}"
+ servername="${unavailable}"
+ serverpassword="${unavailable}"
+ adminpassword="${unavailable}"
+ maxplayers="${zero}"
+ else
+
+ port=$(grep "EXTERNALPORT=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
+ queryport=$(grep "QUERYPORT=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
+ servername=$(grep "SERVERNAME=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ serverpassword=$(grep "SERVERPASSWORD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERPASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ adminpassword=$(grep "ADMINPWD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/ADMINPWD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ maxplayers=$(grep "MAXPLAYERS=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
+
+ ip=$(grep "IP" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/IP//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
+ ipsetinconfig=1
+ ipinconfigvar="IP"
+
+ # Not Set
+ port=${port:-"3724"}
+ queryport=${queryport:-"27017"}
+ servername=${servername:-"NOT SET"}
+ serverpassword=${serverpassword:-"NOT SET"}
+ adminpassword=${adminpassword:-"NOT SET"}
+ maxplayers=${maxplayers:-"0"}
+ fi
+}
fn_info_config_squad(){
if [ ! -f "${servercfgfullpath}" ]; then
@@ -996,97 +1127,109 @@ fn_info_config_stationeers(){
}
# ARK: Survival Evolved
-if [ "${gamename}" == "ARK: Survivial Evolved" ]; then
+if [ "${shortname}" == "ark" ]; then
fn_info_config_ark
# Ballistic Overkill
-elif [ "${gamename}" == "Ballistic Overkill" ]; then
+elif [ "${shortname}" == "bo" ]; then
fn_info_config_ballistic_overkill
# Battalion 1944
-elif [ "${gamename}" == "Battalion 1944" ]; then
+elif [ "${shortname}" == "bt1944" ]; then
fn_info_config_battalion1944
# Battlefield: 1942
-elif [ "${gamename}" == "Battlefield: 1942" ]; then
+elif [ "${shortname}" == "bf1942" ]; then
fn_info_config_bf1942
# Call of Duty
-elif [ "${gamename}" == "Call of Duty" ]||[ "${gamename}" == "Call of Duty: United Offensive" ]; then
+elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]; then
fn_info_config_cod
# Call of Duty 2
-elif [ "${gamename}" == "Call of Duty 2" ]; then
+elif [ "${shortname}" == "cod2" ]; then
fn_info_config_cod2
# Call of Duty 4
-elif [ "${gamename}" == "Call of Duty 4" ]; then
+elif [ "${shortname}" == "cod4" ]; then
fn_info_config_cod4
# Call of Duty: World at War
-elif [ "${gamename}" == "Call of Duty: World at War" ]; then
+elif [ "${shortname}" == "codwaw" ]; then
fn_info_config_codwaw
# Dont Starve Together
-elif [ "${engine}" == "dontstarve" ]; then
+elif [ "${shortname}" == "dst" ]; then
fn_info_config_dontstarve
+# Eco
+elif [ "${shortname}" == "eco" ]; then
+ fn_info_config_eco
# Factorio
-elif [ "${gamename}" == "Factorio" ]; then
+elif [ "${shortname}" == "fctr" ]; then
fn_info_config_factorio
+# Insurgency: Sandstorm
+elif [ "${shortname}" == "inss" ]; then
+ fn_info_config_inss
# Just Cause 2
-elif [ "${gamename}" == "Just Cause 2" ]; then
+elif [ "${shortname}" == "jc2" ]; then
fn_info_config_justcause2
# Just Cause 3
-elif [ "${gamename}" == "Just Cause 3" ]; then
+elif [ "${shortname}" == "jc3" ]; then
fn_info_config_justcause3
# Killing Floor 2
elif [ "${shortname}" == "kf2" ]; then
fn_info_config_kf2
# QuakeWorld
-elif [ "${gamename}" == "QuakeWorld" ]; then
+elif [ "${shortname}" == "qw" ]; then
fn_info_config_quakeworld
# Quake 2
-elif [ "${gamename}" == "Quake 2" ]; then
+elif [ "${shortname}" == "q2" ]; then
fn_info_config_quake2
# Quake 3
-elif [ "${gamename}" == "Quake 3: Arena" ]; then
+elif [ "${shortname}" == "q3" ]; then
fn_info_config_quake3
# Quake Live
-elif [ "${gamename}" == "Quake Live" ]; then
+elif [ "${shortname}" == "ql" ]; then
fn_info_config_quakelive
# Minecraft
-elif [ "${engine}" == "lwjgl2" ]; then
+elif [ "${shortname}" == "mc" ]; then
fn_info_config_minecraft
+# Post Scriptum: The Bloody Seventh
+elif [ "${shortname}" == "pstbs" ]; then
+ fn_info_config_pstbs
# Project Cars
-elif [ "${gamename}" == "Project Cars" ]; then
+elif [ "${shortname}" == "pc" ]; then
fn_info_config_projectcars
# Project Zomboid
-elif [ "${engine}" == "projectzomboid" ]; then
+elif [ "${shortname}" == "pz" ]; then
fn_info_config_projectzomboid
# ARMA 3
-elif [ "${engine}" == "realvirtuality" ]; then
+elif [ "${shortname}" == "arma3" ]; then
fn_info_config_realvirtuality
# Rising World
elif [ "${shortname}" == "rw" ]; then
fn_info_config_risingworld
# Serious Sam
-elif [ "${engine}" == "seriousengine35" ]; then
+elif [ "${shortname}" == "ss3" ]; then
fn_info_config_seriousengine35
# Source Engine Games
elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]; then
fn_info_config_source
# Starbound
-elif [ "${engine}" == "starbound" ]; then
+elif [ "${shortname}" == "sb" ]; then
fn_info_config_starbound
# TeamSpeak 3
-elif [ "${gamename}" == "TeamSpeak 3" ]; then
+elif [ "${shortname}" == "ts3" ]; then
fn_info_config_teamspeak3
# Mumble
-elif [ "${gamename}" == "Mumble" ]; then
+elif [ "${shortname}" == "mumble" ]; then
fn_info_config_mumble
# San Andreas Multiplayer
-elif [ "${gamename}" == "San Andreas Multiplayer" ]; then
+elif [ "${shortname}" == "samp" ]; then
fn_info_config_samp
+# StickyBots
+elif [ "${shortname}" == "pstbs" ]; then
+ fn_info_config_sbots
# Teeworlds
-elif [ "${engine}" == "teeworlds" ]; then
+elif [ "${shortname}" == "tw" ]; then
fn_info_config_teeworlds
# Terraria
-elif [ "${engine}" == "terraria" ]; then
+elif [ "${shortname}" == "terraria" ]; then
fn_info_config_terraria
# Tower Unite
-elif [ "${gamename}" == "Tower Unite" ]; then
+elif [ "${shortname}" == "tu" ]; then
fn_info_config_towerunite
# Unreal/Unreal 2 engine
elif [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then
@@ -1095,17 +1238,19 @@ elif [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then
elif [ "${engine}" == "unreal3" ]; then
fn_info_config_unreal3
# 7 Day To Die (unity3d)
-elif [ "${gamename}" == "7 Days To Die" ]; then
+elif [ "${shortname}" == "sdtd" ]; then
fn_info_config_sdtd
-elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
+elif [ "${shortname}" == "wet" ]; then
fn_info_config_wolfensteinenemyterritory
-elif [ "${gamename}" == "ET: Legacy" ]; then
+elif [ "${shortname}" == "etl" ]; then
fn_info_config_etlegacy
-elif [ "${gamename}" == "Multi Theft Auto" ]; then
+elif [ "${shortname}" == "wurm" ]; then
+ fn_info_config_wurmunlimited
+elif [ "${shortname}" == "mta" ]; then
fn_info_config_mta
-elif [ "${gamename}" == "Squad" ]; then
+elif [ "${shortname}" == "squad" ]; then
fn_info_config_squad
# Stationeers
-elif [ "${gamename}" == "Stationeers" ]; then
+elif [ "${shortname}" == "st" ]; then
fn_info_config_stationeers
fi
diff --git a/lgsm/functions/info_distro.sh b/lgsm/functions/info_distro.sh
index 1b04f50c8..60795d56c 100644
--- a/lgsm/functions/info_distro.sh
+++ b/lgsm/functions/info_distro.sh
@@ -13,23 +13,53 @@ local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
# Returns architecture, kernel and distro/os.
arch=$(uname -m)
kernel=$(uname -r)
-if [ -n "$(command -v lsb_release)" ]; then
- distroname=$(lsb_release -s -d)
-elif [ -f "/etc/os-release" ]; then
- distroname=$(grep PRETTY_NAME /etc/os-release | sed 's/PRETTY_NAME=//g' | tr -d '="')
-elif [ -f "/etc/debian_version" ]; then
- distroname="Debian $(cat /etc/debian_version)"
-elif [ -f "/etc/redhat-release" ]; then
- distroname=$(cat /etc/redhat-release)
-else
- distroname="$(uname -s) $(uname -r)"
-fi
-if [ -f "/etc/os-release" ]; then
- distroversion=$(grep VERSION_ID /etc/os-release | tr -cd '[:digit:]')
-elif [ -n "$(command -v yum)" ]; then
- distroversion=$(rpm -qa \*-release | grep -Ei "oracle|redhat|centos" | cut -d"-" -f3)
-fi
+# Distro Name - Ubuntu 16.04 LTS
+# Distro Version - 16.04
+# Distro ID - ubuntu
+# Distro Codename - xenial
+
+# Gathers distro info from various sources filling in missing gaps
+distro_info_array=( os-release lsb_release hostnamectl debian_version redhat-release )
+for distro_info in "${distro_info_array[@]}"
+do
+ if [ -f "/etc/os-release" ]&&[ "${distro_info}" == "os-release" ]; then
+ distroname=$(grep PRETTY_NAME /etc/os-release | sed 's/PRETTY_NAME=//g' | tr -d '="' | sed 's/\"//g')
+ distroversion=$(grep VERSION_ID /etc/os-release | sed 's/VERSION_ID=//g' | sed 's/\"//g')
+ distroid=$(grep ID /etc/os-release | grep -v _ID | grep -v ID_ | sed 's/ID=//g' | sed 's/\"//g')
+ distrocodename=$(grep VERSION_CODENAME /etc/os-release | sed 's/VERSION_CODENAME=//g' | sed 's/\"//g')
+ elif [ -n "$(command -v lsb_release 2>/dev/null)" ]&&[ "${distro_info}" == "lsb_release" ]; then
+ if [ -z "${distroname}" ];then
+ distroname="$(lsb_release -sd)"
+ elif [ -z "${distroversion}" ];then
+ distroversion="$(lsb_release -sr)"
+ elif [ -z "${distroid}" ];then
+ distroid=$(lsb_release -si)
+ elif [ -z "${distrocodename}" ];then
+ distrocodename=$(lsb_release -sc)
+ fi
+ elif [ -n "$(command -v hostnamectl 2>/dev/null)" ]&&[ "${distro_info}" == "hostnamectl" ]; then
+ if [ -z "${distroname}" ];then
+ distroname="$(hostnamectl | grep "Operating System" | sed 's/Operating System: //g')"
+ fi
+ elif [ -f "/etc/debian_version" ]&&[ "${distro_info}" == "debian_version" ]; then
+ if [ -z "${distroname}" ];then
+ distroname="Debian $(cat /etc/debian_version)"
+ elif [ -z "${distroversion}" ];then
+ distroversion="$(cat /etc/debian_version)"
+ elif [ -z "${distroid}" ];then
+ distroid="debian"
+ fi
+ elif [ -f "/etc/redhat-release" ]&&[ "${distro_info}" == "redhat-release" ]; then
+ if [ -z "${distroname}" ];then
+ distroname=$(cat /etc/redhat-release)
+ elif [ -z "${distroversion}" ];then
+ distroversion=$(rpm -qa \*-release | grep -Ei "oracle|redhat|centos|fedora" | cut -d"-" -f3)
+ elif [ -z "${distroid}" ];then
+ distroid="$(awk '{print $1}' /etc/redhat-release)"
+ fi
+ fi
+done
## Glibc version
# e.g: 1.17
@@ -59,27 +89,69 @@ days=$(( uptime/60/60/24 ))
## Average server load
load=$(uptime|awk -F 'load average: ' '{ print $2 }')
+## CPU information
+cpumodel=$(awk -F: '/model name/ {name=$2} END {print name}' /proc/cpuinfo | sed 's/^[ \t]*//;s/[ \t]*$//')
+cpucores=$(awk -F: '/model name/ {core++} END {print core}' /proc/cpuinfo)
+cpufreuency=$(awk -F: ' /cpu MHz/ {freq=$2} END {print freq " MHz"}' /proc/cpuinfo | sed 's/^[ \t]*//;s/[ \t]*$//')
+
## Memory information
# Available RAM and swap.
-# Older versions of free do not support -h option.
-if [ "$(free -h > /dev/null 2>&1; echo $?)" -ne "0" ]; then
- humanreadable="-m"
+# Newer distros can use numfmt to give more accurate results
+if [ -n "$(command -v numfmt 2>/dev/null)" ]; then
+ # Issue #2005 - Kernel 3.14+ contains MemAvailable which should be used. All others will be calculated
+
+ # get the raw KB values of these fields
+ physmemtotalkb=$(grep MemTotal /proc/meminfo | awk '{print $2}')
+ physmemfreekb=$(grep ^MemFree /proc/meminfo | awk '{print $2}')
+ physmembufferskb=$(grep ^Buffers /proc/meminfo | awk '{print $2}')
+ physmemcachedkb=$(grep ^Cached /proc/meminfo | awk '{print $2}')
+ physmemreclaimablekb=$(grep ^SReclaimable /proc/meminfo | awk '{print $2}')
+
+ # check if MemAvailable Exists
+ if grep -q ^MemAvailable /proc/meminfo; then
+ physmemactualfreekb=$(grep ^MemAvailable /proc/meminfo | awk '{print $2}')
+ else
+ physmemactualfreekb=$((${physmemfreekb}+${physmembufferskb}+${physmemcachedkb}))
+ fi
+
+ # Available RAM and swap.
+ physmemtotalmb=$((${physmemtotalkb}/1024))
+ physmemtotal=$(numfmt --to=iec --from=iec --suffix=B "${physmemtotalkb}K")
+ physmemfree=$(numfmt --to=iec --from=iec --suffix=B "${physmemactualfreekb}K")
+ physmemused=$(numfmt --to=iec --from=iec --suffix=B "$((${physmemtotalkb}-${physmemfreekb}-${physmembufferskb}-${physmemcachedkb}-${physmemreclaimablekb}))K")
+ physmemavailable=$(numfmt --to=iec --from=iec --suffix=B "${physmemactualfreekb}K")
+ physmemcached=$(numfmt --to=iec --from=iec --suffix=B "$((${physmemcachedkb}+${physmemreclaimablekb}))K")
+
+ swaptotal=$(numfmt --to=iec --from=iec --suffix=B "$(grep ^SwapTotal /proc/meminfo | awk '{print $2}')K")
+ swapfree=$(numfmt --to=iec --from=iec --suffix=B "$(grep ^SwapFree /proc/meminfo | awk '{print $2}')K")
+ swapused=$(numfmt --to=iec --from=iec --suffix=B "$(($(grep ^SwapTotal /proc/meminfo | awk '{print $2}')-$(grep ^SwapFree /proc/meminfo | awk '{print $2}')))K")
else
- humanreadable="-h"
-fi
+# Older distros will need to use free.
+ # Older versions of free do not support -h option.
+ if [ "$(free -h > /dev/null 2>&1; echo $?)" -ne "0" ]; then
+ humanreadable="-m"
+ else
+ humanreadable="-h"
+ fi
+ physmemtotalmb=$(free -m | awk '/Mem:/ {print $2}')
+ physmemtotal=$(free ${humanreadable} | awk '/Mem:/ {print $2}')
+ physmemfree=$(free ${humanreadable} | awk '/Mem:/ {print $4}')
+ physmemused=$(free ${humanreadable} | awk '/Mem:/ {print $3}')
+
+ oldfree=$(free ${humanreadable} | awk '/cache:/')
+ if [ -n "${oldfree}" ]; then
+ physmemavailable="n/a"
+ physmemcached="n/a"
+ else
+ physmemavailable=$(free ${humanreadable} | awk '/Mem:/ {print $7}')
+ physmemcached=$(free ${humanreadable} | awk '/Mem:/ {print $6}')
+ fi
-physmemtotal=$(free ${humanreadable} | awk '/Mem:/ {print $2}')
-physmemtotalmb=$(free -m | awk '/Mem:/ {print $2}')
-physmemused=$(free ${humanreadable} | awk '/Mem:/ {print $3}')
-physmemfree=$(free ${humanreadable} | awk '/Mem:/ {print $4}')
-physmemcached=$(free ${humanreadable} | awk '/cache:/ {print $4}')
-if [ -z "${physmemcached}" ]; then
- physmemcached=$(free ${humanreadable} | awk '/Mem:/ {print $5}')
+ swaptotal=$(free ${humanreadable} | awk '/Swap:/ {print $2}')
+ swapused=$(free ${humanreadable} | awk '/Swap:/ {print $3}')
+ swapfree=$(free ${humanreadable} | awk '/Swap:/ {print $4}')
fi
-swaptotal=$(free ${humanreadable} | awk '/Swap:/ {print $2}')
-swapused=$(free ${humanreadable} | awk '/Swap:/ {print $3}')
-swapfree=$(free ${humanreadable} | awk '/Swap:/ {print $4}')
### Disk information
@@ -120,7 +192,7 @@ if [ -d "${backupdir}" ]; then
backupcount=0
# If there are backups in backup dir.
- if [ $(find "${backupdir}" -name "*.tar.gz" | wc -l) -ne "0" ]; then
+ if [ "$(find "${backupdir}" -name "*.tar.gz" | wc -l)" -ne "0" ]; then
# number of backups.
backupcount=$(find "${backupdir}"/*.tar.gz | wc -l)
# most recent backup.
@@ -136,12 +208,30 @@ fi
# External IP address
if [ -z "${extip}" ]; then
- extip=$(${curlpath} -m 3 ifconfig.co > "${tmpdir}/extip.txt" 2>/dev/null)
- if [ $? -ne 0 ]; then
+ extip=$(${curlpath} -4 -m 3 ifconfig.co 2>/dev/null)
+ exitcode=$?
+ # Should ifconfig.co return an error will use last known IP
+ if [ ${exitcode} -eq 0 ]; then
+ echo "${extip}" > "${tmpdir}/extip.txt"
+ else
if [ -f "${tmpdir}/extip.txt" ]; then
- echo "${tmpdir}/extip.txt"
+ extip=$(cat ${tmpdir}/extip.txt)
else
echo "x.x.x.x"
fi
fi
-fi
\ No newline at end of file
+fi
+
+# Steam Master Server - checks if detected by master server
+if [ ! "$(command -v jq 2>/dev/null)" ]; then
+ if [ "${ip}" ] && [ "${port}" ]; then
+ if [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]||[ "${shortname}" == "jc2" ]||[ "${shortname}" == "ql" ]; then
+ masterserver=$(${curlpath} -s 'https://api.steampowered.com/ISteamApps/GetServersAtAddress/v0001?addr='${ip}':'${port}'&format=json' | jq '.response.servers[]|.addr' | wc -l)
+ if [ "${steammaster}" == "1" ]; then
+ masterserver="true"
+ else
+ masterserver="false"
+ fi
+ fi
+ fi
+fi
diff --git a/lgsm/functions/info_messages.sh b/lgsm/functions/info_messages.sh
index 0151ad00c..37fc3b05d 100644
--- a/lgsm/functions/info_messages.sh
+++ b/lgsm/functions/info_messages.sh
@@ -24,7 +24,11 @@ fn_info_message_head(){
echo -e "${HOSTNAME}"
echo -e ""
echo -e "Server IP"
- echo -e "${ip}:${port}"
+ if [ "${multiple_ip}" == "1" ]; then
+ echo -e "NOT SET"
+ else
+ echo -e "${ip}:${port}"
+ fi
}
fn_info_message_distro(){
@@ -36,7 +40,7 @@ fn_info_message_distro(){
# Kernel: 3.13.0-79-generic
# Hostname: hostname
# tmux: tmux 1.8
- # GLIBC: 2.19
+ # glibc: 2.19
echo -e ""
echo -e "${lightyellow}Distro Details${default}"
@@ -47,7 +51,7 @@ fn_info_message_distro(){
echo -e "${blue}Kernel:\t${default}${kernel}"
echo -e "${blue}Hostname:\t${default}${HOSTNAME}"
echo -e "${blue}tmux:\t${default}${tmuxv}"
- echo -e "${blue}GLIBC:\t${default}${glibcversion}"
+ echo -e "${blue}glibc:\t${default}${glibcversion}"
} | column -s $'\t' -t
}
@@ -71,8 +75,14 @@ fn_info_message_performance(){
} | column -s $'\t' -t
echo -e ""
{
- echo -e "${blue}Mem:\t${blue}total\t used\t free\t cached${default}"
- echo -e "${blue}Physical:\t${default}${physmemtotal}\t${physmemused}\t${physmemfree}\t${physmemcached}${default}"
+ echo -e "${blue}CPU Model:\t${default}${cpumodel}"
+ echo -e "${blue}CPU Cores:\t${default}${cpucores}"
+ echo -e "${blue}CPU Frequency:\t${default}${cpufreuency}"
+ } | column -s $'\t' -t
+ echo -e ""
+ {
+ echo -e "${blue}Mem:\t${blue}total\tused\tfree\tcached\tavailable${default}"
+ echo -e "${blue}Physical:\t${default}${physmemtotal}\t${physmemused}\t${physmemfree}\t${physmemcached}\t${physmemavailable}${default}"
echo -e "${blue}Swap:\t${default}${swaptotal}\t${swapused}\t${swapfree}${default}"
} | column -s $'\t' -t
}
@@ -139,7 +149,11 @@ fn_info_message_gameserver(){
fi
# Server ip
- echo -e "${blue}Server IP:\t${default}${ip}:${port}"
+ if [ "${multiple_ip}" == "1" ]; then
+ echo -e "${blue}Server IP:\t${default}NOT SET"
+ else
+ echo -e "${blue}Server IP:\t${default}${ip}:${port}"
+ fi
# External server ip
if [ -n "${extip}" ]; then
@@ -155,7 +169,7 @@ fn_info_message_gameserver(){
# Query enabled (Starbound)
if [ -n "${queryenabled}" ]; then
- echo -e "${blue}Query enabled:\t${default}${rconpassword}"
+ echo -e "${blue}Query enabled:\t${default}${queryenabled}"
fi
# RCON enabled (Starbound)
@@ -217,11 +231,33 @@ fn_info_message_gameserver(){
echo -e "${blue}Current Map:\t${default}${gdmap}"
fi
+ if [ -n "${defaultscenario}" ]; then
+ # Current Scenario
+ if [ -n "${gdgamemode}" ]; then
+ echo -e "${blue}Current Scenario:\t${default}${gdgamemode}"
+ fi
+ else
+ # Current Scenario
+ if [ -n "${gdgamemode}" ]; then
+ echo -e "${blue}Current Game Mode:\t${default}${gdgamemode}"
+ fi
+ fi
+
# Default Map
if [ -n "${defaultmap}" ]; then
echo -e "${blue}Default Map:\t${default}${defaultmap}"
fi
+ # Default Scenario
+ if [ -n "${defaultscenario}" ]; then
+ echo -e "${blue}Default Scenario:\t${default}${defaultscenario}"
+ fi
+
+ # Game type
+ if [ -n "${gametype}" ]; then
+ echo -e "${blue}Game type:\t${default}${gametype}"
+ fi
+
# Game mode
if [ -n "${gamemode}" ]; then
echo -e "${blue}Game mode:\t${default}${gamemode}"
@@ -282,11 +318,20 @@ fn_info_message_gameserver(){
echo -e "${blue}ASE:\t${default}${saveinterval} s"
fi
- # Random map rotation mode (Squad)
+ # Random map rotation mode (Squad and Post Scriptum)
if [ -n "${randommap}" ]; then
echo -e "${blue}Map rotation:\t${default}${randommap}"
fi
+ # Listed on Master Server
+ if [ "${masterserver}" ];then
+ if [ "${masterserver}" == "true" ];then
+ echo -e "${blue}Master Server:\t${green}${masterserver}${default}"
+ else
+ echo -e "${blue}Master Server:\t${red}${masterserver}${default}"
+ fi
+ fi
+
# Online status
if [ "${status}" == "0" ]; then
echo -e "${blue}Status:\t${red}OFFLINE${default}"
@@ -323,20 +368,16 @@ fn_info_message_script(){
# User
echo -e "${blue}User:\t${default}$(whoami)"
- # GLIBC required
+ # glibc required
if [ -n "${glibcrequired}" ]; then
if [ "${glibcrequired}" == "NOT REQUIRED" ]; then
:
elif [ "${glibcrequired}" == "UNKNOWN" ]; then
- echo -e "${blue}GLIBC required:\t${red}${glibcrequired}"
+ echo -e "${blue}glibc required:\t${red}${glibcrequired}"
elif [ "$(printf '%s\n'${glibcrequired}'\n' ${glibcversion} | sort -V | head -n 1)" != "${glibcrequired}" ]; then
- if [ "${glibcfix}" == "yes" ]; then
- echo -e "${blue}GLIBC required:\t${red}${glibcrequired} ${default}(${green}Using GLIBC fix${default})"
- else
- echo -e "${blue}GLIBC required:\t${red}${glibcrequired} ${default}(${red}GLIBC version too old${default})"
- fi
+ echo -e "${blue}glibc required:\t${red}${glibcrequired} ${default}(${red}glibc distro version ${glibcversion} too old${default})"
else
- echo -e "${blue}GLIBC required:\t${green}${glibcrequired}${default}"
+ echo -e "${blue}glibc required:\t${green}${glibcrequired}${default}"
fi
fi
@@ -422,6 +463,10 @@ fn_info_message_commandlineparms(){
echo -e "${lightgreen}Command-line Parameters${default}"
fn_info_message_password_strip
fn_messages_separator
+ if [ "${serverpassword}" == "NOT SET" ]; then
+ unset serverpassword
+ fi
+ fn_parms
echo -e "${executable} ${parms}"
}
@@ -438,7 +483,7 @@ fn_info_message_ports(){
parmslocation="${red}UNKNOWN${default}"
# engines/games that require editing in the config file
- local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "dontstarve" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "seriousengine35" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" )
+ local ports_edit_array=( "avalanche2.0" "avalanche3.0" "Ballistic Overkill" "dontstarve" "Eco" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "Project Cars" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "seriousengine35" "Stationeers" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" "wurm" )
for port_edit in "${ports_edit_array[@]}"
do
if [ "${shortname}" == "ut3" ]; then
@@ -453,7 +498,7 @@ fn_info_message_ports(){
local ports_edit_array=( "goldsource" "Factorio" "Hurtworld" "iw3.0" "Rust" "spark" "source" "starbound" "unreal4" "realvirtuality")
for port_edit in "${ports_edit_array[@]}"
do
- if [ "${engine}" == "${port_edit}" ]||[ "${gamename}" == "${port_edit}" ]; then
+ if [ "${engine}" == "${port_edit}" ]||[ "${gamename}" == "${port_edit}" ]||[ "${shortname}" == "${port_edit}" ]; then
parmslocation="${configdirserver}"
fi
done
@@ -616,6 +661,16 @@ fn_info_message_dontstarve(){
} | column -s $'\t' -t
}
+fn_info_message_eco(){
+ echo -e "netstat -atunp | grep mono"
+ echo -e ""
+ {
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
+ echo -e "> Game\tINBOUND\t${port}\tudp"
+ echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp"
+ } | column -s $'\t' -t
+}
+
fn_info_message_factorio(){
echo -e "netstat -atunp | grep factorio"
echo -e ""
@@ -645,6 +700,17 @@ fn_info_message_hurtworld(){
} | column -s $'\t' -t
}
+fn_info_message_inss(){
+ echo -e "netstat -atunp | grep Insurgency"
+ echo -e ""
+ {
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
+ echo -e "> Game\tINBOUND\t${port}\tudp"
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
+ echo -e "> RCON\tINBOUND\t${rconport}\ttcp"
+ } | column -s $'\t' -t
+}
+
fn_info_message_justcause2(){
echo -e "netstat -atunp | grep Jcmp-Server"
echo -e ""
@@ -671,6 +737,8 @@ fn_info_message_minecraft(){
{
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
echo -e "> Game\tINBOUND\t${port}\ttcp"
+ echo -e "> Game\tINBOUND\t${queryport}\tudp"
+ echo -e "> Game\tINBOUND\t${rconport}\ttcp"
} | column -s $'\t' -t
}
@@ -683,6 +751,16 @@ fn_info_message_mumble(){
echo -e "> ServerQuery\tINBOUND\t${port}\ttcp"
} | column -s $'\t' -t
}
+fn_info_message_pstbs(){
+ echo -e "netstat -atunp | grep PostScriptum"
+ echo -e ""
+ {
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
+ echo -e "> Game\tINBOUND\t${port}\tudp"
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
+ echo -e "> RCON\tINBOUND\t${rconport}\ttcp"
+ } | column -s $'\t' -t
+}
fn_info_message_projectcars(){
echo -e "netstat -atunp | grep DedicatedS"
@@ -740,7 +818,7 @@ fn_info_message_quakelive(){
fi
{
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
- echo -e "> Game\tINBOUND\t${port}\tudp"
+ echo -e "> Game/Query\tINBOUND\t${port}\tudp"
echo -e "> Rcon\tINBOUND\t${rconport}\tudp"
echo -e "> Stats\tINBOUND\t${statsport}\tudp"
} | column -s $'\t' -t
@@ -816,6 +894,16 @@ fn_info_message_seriousengine35(){
} | column -s $'\t' -t
}
+fn_info_message_sbots(){
+ echo -e "netstat -atunp | grep blank1"
+ echo -e ""
+ {
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
+ echo -e "> Game\tINBOUND\t${port}\tudp"
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
+ } | column -s $'\t' -t
+}
+
fn_info_message_sdtd(){
fn_info_message_password_strip
echo -e "netstat -atunp | grep 7DaysToDie"
@@ -894,7 +982,7 @@ fn_info_message_starbound(){
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
echo -e "> Game\tINBOUND\t${port}\ttcp"
echo -e "> Query\tINBOUND\t${queryport}\ttcp"
- echo -e "> Rcon\tINBOUND\t${rconport}\ttcp"
+ echo -e "> RCON\tINBOUND\t${rconport}\ttcp"
} | column -s $'\t' -t
}
@@ -1049,6 +1137,16 @@ fn_info_message_etlegacy(){
} | column -s $'\t' -t
}
+fn_info_message_wurmunlimited(){
+ echo -e "netstat -atunp | grep WurmServer"
+ echo -e ""
+ {
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
+ echo -e "> Game\tINBOUND\t${port}\ttcp"
+ echo -e "> Game/Query\tINBOUND\t${queryport}\tudp"
+ } | column -s $'\t' -t
+}
+
fn_info_message_mta(){
echo -e "netstat -atunp | grep mta-server64"
echo -e ""
@@ -1082,18 +1180,24 @@ fn_info_message_select_engine(){
fn_info_message_cod4
elif [ "${gamename}" == "Call of Duty: World at War" ]; then
fn_info_message_codwaw
+ elif [ "${gamename}" == "Eco" ]; then
+ fn_info_message_eco
elif [ "${gamename}" == "ET: Legacy" ]; then
fn_info_message_etlegacy
elif [ "${gamename}" == "Factorio" ]; then
fn_info_message_factorio
elif [ "${gamename}" == "Hurtworld" ]; then
fn_info_message_hurtworld
+ elif [ "${shortname}" == "inss" ]; then
+ fn_info_message_inss
elif [ "${gamename}" == "Just Cause 2" ]; then
fn_info_message_justcause2
elif [ "${gamename}" == "Just Cause 3" ]; then
fn_info_message_justcause3
elif [ "${shortname}" == "kf2" ]; then
fn_info_message_kf2
+ elif [ "${shortname}" == "pstbs" ]; then
+ fn_info_message_pstbs
elif [ "${gamename}" == "Project Cars" ]; then
fn_info_message_projectcars
elif [ "${gamename}" == "QuakeWorld" ]; then
@@ -1110,6 +1214,8 @@ fn_info_message_select_engine(){
fn_info_message_squad
elif [ "${gamename}" == "Stationeers" ]; then
fn_info_message_stationeers
+ elif [ "${shortname}" == "sbots" ]; then
+ fn_info_message_sbots
elif [ "${gamename}" == "TeamSpeak 3" ]; then
fn_info_message_teamspeak3
elif [ "${gamename}" == "Tower Unite" ]; then
@@ -1120,6 +1226,8 @@ fn_info_message_select_engine(){
fn_info_message_mumble
elif [ "${gamename}" == "Rust" ]; then
fn_info_message_rust
+ elif [ "${gamename}" == "Wurm Unlimited" ]; then
+ fn_info_message_wurmunlimited
elif [ "${shortname}" == "rw" ]; then
fn_info_message_risingworld
elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
@@ -1192,5 +1300,14 @@ fn_info_message_password_strip(){
if [ -n "${telnetpass}" ]; then
telnetpass="********"
fi
+
+ if [ -n "${wsapikey}" ]; then
+ wsapikey="********"
+ fi
+
+ if [ -n "${gslt}" ]; then
+ gslt="********"
+ fi
+
fi
-}
\ No newline at end of file
+}
diff --git a/lgsm/functions/info_parms.sh b/lgsm/functions/info_parms.sh
index f1c5d81fc..24d9c0c68 100644
--- a/lgsm/functions/info_parms.sh
+++ b/lgsm/functions/info_parms.sh
@@ -31,6 +31,7 @@ fn_info_parms_cod(){
defaultmap=${defaultmap:-"NOT SET"}
maxplayers=${maxplayers:-"0"}
port=${port:-"0"}
+ queryport=${port:-"0"}
}
fn_info_parms_dst(){
@@ -41,12 +42,26 @@ fn_info_parms_dst(){
cave=${cave:-"NOT SET"}
}
+fn_info_parms_eco(){
+ queryport=${webadminport}
+}
+
fn_info_parms_factorio(){
port=${port:-"0"}
rconport=${rconport:-"0"}
rconpassword=${rconpassword:-"NOT SET"}
}
+fn_info_parms_inss(){
+ port=${port:-"0"}
+ queryport=${queryport:-"0"}
+ servername=${servername:-"NOT SET"}
+ serverpassword=${serverpassword:-"NOT SET"}
+ defaultmap=${defaultmap:-"NOT SET"}
+ defaultscenario=${defaultscenario:-"NOT SET"}
+ maxplayers=${maxplayers:-"0"}
+}
+
fn_info_parms_hurtworld(){
servername=${servername:-"NOT SET"}
port=${port:-"0"}
@@ -62,6 +77,7 @@ fn_info_parms_projectzomboid(){
fn_info_parms_quakeworld(){
port=${port:-"0"}
+ queryport=${port}
}
fn_info_parms_quake2(){
@@ -110,6 +126,15 @@ fn_info_parms_spark(){
mods=${mods:-"NOT SET"}
}
+fn_info_parms_stickybots(){
+ port=${port:-"0"}
+ queryport=${queryport:-"0"}
+ servername=${servername:-"NOT SET"}
+ serverpassword=${serverpassword:-"NOT SET"}
+ defaultmap=${defaultmap:-"NOT SET"}
+ maxplayers=${maxplayers:-"0"}
+}
+
fn_info_config_towerunite(){
port=${port:-"0"}
queryport=${queryport:-"0"}
@@ -139,41 +164,49 @@ fn_info_parms_kf2(){
}
# ARK: Survival Evolved
-if [ "${gamename}" == "ARK: Survival Evolved" ]; then
+if [ "${shortname}" == "ark" ]; then
fn_info_parms_ark
# ARMA 3
-elif [ "${engine}" == "realvirtuality" ]; then
+elif [ "${shortname}" == "arma3" ]; then
fn_info_parms_realvirtuality
# Call of Duty
-elif [ "${gamename}" == "Call of Duty" ]||[ "${gamename}" == "Call of Duty: United Offensive" ]||[ "${engine}" == "iw2.0" ]||[ "${engine}" == "iw3.0" ]; then
+elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]||[ "${engine}" == "iw2.0" ]||[ "${engine}" == "iw3.0" ]; then
fn_info_parms_cod
+# Eco
+elif [ "${shortname}" == "eco" ]; then
+ fn_info_parms_eco
# Factorio
-elif [ "${gamename}" == "Factorio" ]; then
+elif [ "${shortname}" == "fctr" ]; then
fn_info_parms_factorio
+elif [ "${shortname}" == "inss" ]; then
+ fn_info_parms_inss
elif [ "${shortname}" == "kf2" ]; then
fn_info_parms_kf2
# Project Zomboid
-elif [ "${engine}" == "projectzomboid" ]; then
+elif [ "${shortname}" == "pz" ]; then
fn_info_parms_projectzomboid
-elif [ "${gamename}" == "QuakeWorld" ]; then
+elif [ "${shortname}" == "qw" ]; then
fn_info_parms_quakeworld
-elif [ "${gamename}" == "Quake 2" ]||[ "${gamename}" == "Quake 3: Arena" ]; then
+elif [ "${shortname}" == "q2" ]||[ "${shortname}" == "q3" ]; then
fn_info_parms_quake2
# Rust
-elif [ "${gamename}" == "Rust" ]; then
+elif [ "${shortname}" == "rust" ]; then
fn_info_parms_rust
# Rising World
elif [ "${shortname}" == "rw" ]; then
fn_info_parms_risingworld
+# Sticky Bots
+elif [ "${shortname}" == "sbots" ]; then
+ fn_info_parms_stickybots
# Serious Sam
-elif [ "${engine}" == "seriousengine35" ]; then
+elif [ "${shortname}" == "ss3" ]; then
fn_info_config_seriousengine35
elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]; then
fn_info_parms_source
# Spark
elif [ "${engine}" == "spark" ]; then
fn_info_parms_spark
-elif [ "${gamename}" == "Tower Unite" ]; then
+elif [ "${shortname}" == "tu" ]; then
fn_info_config_towerunite
# Unreal/Unreal 2 engine
elif [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then
diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh
index 53df4a316..af3d8f2a4 100644
--- a/lgsm/functions/install_config.sh
+++ b/lgsm/functions/install_config.sh
@@ -53,6 +53,13 @@ fn_default_config_remote(){
sleep 0.5
}
+# Copys local default config to server config location
+fn_default_config_local(){
+ echo "copying ${servercfgdefault} config file."
+ cp -nv "${servercfgfullpathdefault}" "${servercfgfullpath}"
+ sleep 0.5
+}
+
# Changes some variables within the default configs
# SERVERNAME to LinuxGSM
# PASSWORD to random password
@@ -60,18 +67,25 @@ fn_set_config_vars(){
if [ -f "${servercfgfullpath}" ]; then
random=$(tr -dc A-Za-z0-9_ < /dev/urandom | head -c 8 | xargs)
servername="LinuxGSM"
- rconpass="admin$random"
+ rconpass="admin${random}"
echo "changing hostname."
fn_script_log_info "changing hostname."
sleep 0.5
+ # prevents var from being overwritten with the servername
if grep -q "SERVERNAME=SERVERNAME" "${lgsmdir}/config-default/config-game/${config}" 2>/dev/null; then
sed -i "s/SERVERNAME=SERVERNAME/SERVERNAME=${servername}/g" "${servercfgfullpath}"
+ elif grep -q "SERVERNAME=\"SERVERNAME\"" "${lgsmdir}/config-default/config-game/${config}" 2>/dev/null; then
+ sed -i "s/SERVERNAME=\"SERVERNAME\"/SERVERNAME=\"${servername}\"/g" "${servercfgfullpath}"
else
sed -i "s/SERVERNAME/${servername}/g" "${servercfgfullpath}"
fi
echo "changing rcon/admin password."
fn_script_log_info "changing rcon/admin password."
- sed -i "s/ADMINPASSWORD/${rconpass}/g" "${servercfgfullpath}"
+ if [ "${shortname}" == "squad" ]; then
+ sed -i "s/ADMINPASSWORD/${rconpass}/g" "${servercfgdir}/Rcon.cfg"
+ else
+ sed -i "s/ADMINPASSWORD/${rconpass}/g" "${servercfgfullpath}"
+ fi
sleep 0.5
else
fn_script_log_warn "Config file not found, cannot alter it."
@@ -132,10 +146,7 @@ fn_set_dst_config_vars(){
if [ "${gamename}" == "7 Days To Die" ]; then
gamedirname="7DaysToDie"
- array_configs+=( serverconfig.xml )
- fn_fetch_default_config
- fn_default_config_remote
- fn_set_config_vars
+ fn_default_config_local
elif [ "${gamename}" == "ARK: Survival Evolved" ]; then
gamedirname="ARKSurvivalEvolved"
fn_check_cfgdir
@@ -181,6 +192,12 @@ elif [ "${gamename}" == "Blade Symphony" ]; then
fn_fetch_default_config
fn_default_config_remote
fn_set_config_vars
+elif [ "${gamename}" == "BrainBread" ]; then
+ gamedirname="BrainBread"
+ array_configs+=( server.cfg )
+ fn_fetch_default_config
+ fn_default_config_remote
+ fn_set_config_vars
elif [ "${gamename}" == "BrainBread 2" ]; then
gamedirname="BrainBread2"
array_configs+=( server.cfg )
@@ -356,6 +373,12 @@ elif [ "${gamename}" == "Insurgency" ]; then
fn_fetch_default_config
fn_default_config_remote
fn_set_config_vars
+elif [ "${gamename}" == "IOSoccer" ]; then
+ gamedirname="IOSoccer"
+ array_configs+=( server.cfg )
+ fn_fetch_default_config
+ fn_default_config_remote
+ fn_set_config_vars
elif [ "${gamename}" == "Just Cause 2" ]; then
gamedirname="JustCause2"
array_configs+=( config.lua )
@@ -398,6 +421,12 @@ elif [ "${gamename}" == "Minecraft" ]; then
fn_fetch_default_config
fn_default_config_remote
fn_set_config_vars
+elif [ "${gamename}" == "Natural Selection" ]; then
+ gamedirname="NaturalSelection"
+ array_configs+=( server.cfg )
+ fn_fetch_default_config
+ fn_default_config_remote
+ fn_set_config_vars
elif [ "${gamename}" == "No More Room in Hell" ]; then
gamedirname="NoMoreRoominHell"
array_configs+=( server.cfg )
@@ -478,7 +507,7 @@ elif [ "${gamename}" == "Serious Sam 3: BFE" ]; then
fn_set_config_vars
elif [ "${gamename}" == "Squad" ]; then
gamedirname="Squad"
- array_configs+=( Server.cfg )
+ array_configs+=( Server.cfg Rcon.cfg )
fn_fetch_default_config
fn_default_config_remote
fn_set_config_vars
@@ -560,12 +589,24 @@ elif [ "${gamename}" == "Unreal Tournament 99" ]; then
fn_fetch_default_config
fn_default_config_remote
fn_set_config_vars
+elif [ "${gamename}" == "Vampire Slayer" ]; then
+ gamedirname="VampireSlayer"
+ array_configs+=( server.cfg )
+ fn_fetch_default_config
+ fn_default_config_remote
+ fn_set_config_vars
elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
gamedirname="WolfensteinEnemyTerritory"
array_configs+=( server.cfg )
fn_fetch_default_config
fn_default_config_remote
fn_set_config_vars
+elif [ "${gamename}" == "Wurm Unlimited" ]; then
+ gamedirname="WurmUnlimited"
+ array_configs+=( server.cfg )
+ fn_fetch_default_config
+ fn_default_config_remote
+ fn_set_config_vars
elif [ "${gamename}" == "Zombie Panic! Source" ]; then
gamedirname="ZombiePanicSource"
array_configs+=( server.cfg )
diff --git a/lgsm/functions/install_header.sh b/lgsm/functions/install_header.sh
index cae416547..40c2845fc 100644
--- a/lgsm/functions/install_header.sh
+++ b/lgsm/functions/install_header.sh
@@ -10,9 +10,9 @@ local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
clear
echo "================================="
-echo "${gamename}"
-echo "Linux Game Server Manager"
+echo "LinuxGSM - ${gamename}"
echo "by Daniel Gibbs"
-echo "Contributors: http://goo.gl/qLmitD"
-echo "https://linuxgsm.com"
+echo "Website: https://linuxgsm.com"
+echo "Contributors: https://linuxgsm.com/contrib"
+echo "Donate: https://linuxgsm.com/donate"
echo "================================="
diff --git a/lgsm/functions/install_logs.sh b/lgsm/functions/install_logs.sh
index acd6a6917..bc8184839 100644
--- a/lgsm/functions/install_logs.sh
+++ b/lgsm/functions/install_logs.sh
@@ -15,7 +15,7 @@ if [ "${checklogs}" != "1" ]; then
fi
sleep 0.5
# Create LinuxGSM logs
-echo -ne "installing log dir: ${logdir}..."
+echo -en "installing log dir: ${logdir}..."
mkdir -p "${logdir}"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
@@ -24,7 +24,7 @@ else
fn_print_ok_eol_nl
fi
-echo -ne "installing LinuxGSM log dir: ${lgsmlogdir}..."
+echo -en "installing LinuxGSM log dir: ${lgsmlogdir}..."
mkdir -p "${lgsmlogdir}"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
@@ -32,7 +32,7 @@ if [ $? -ne 0 ]; then
else
fn_print_ok_eol_nl
fi
-echo -ne "creating LinuxGSM log: ${lgsmlog}..."
+echo -en "creating LinuxGSM log: ${lgsmlog}..."
touch "${lgsmlog}"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
@@ -42,7 +42,7 @@ else
fi
# Create Console logs
if [ -n "${consolelogdir}" ]; then
- echo -ne "installing console log dir: ${consolelogdir}..."
+ echo -en "installing console log dir: ${consolelogdir}..."
mkdir -p "${consolelogdir}"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
@@ -50,7 +50,7 @@ if [ -n "${consolelogdir}" ]; then
else
fn_print_ok_eol_nl
fi
- echo -ne "creating console log: ${consolelog}..."
+ echo -en "creating console log: ${consolelog}..."
touch "${consolelog}"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
@@ -62,7 +62,7 @@ fi
# Create Game logs
if [ -n "${gamelogdir}" ]&&[ ! -d "${gamelogdir}" ]; then
- echo -ne "installing game log dir: ${gamelogdir}..."
+ echo -en "installing game log dir: ${gamelogdir}..."
mkdir -p "${gamelogdir}"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
@@ -78,7 +78,7 @@ fi
# log/server is in log/: symlink not created
if [ -n "${gamelogdir}" ]; then
if [ "${gamelogdir:0:${#logdir}}" != "${logdir}" ]; then
- echo -ne "creating symlink to game log dir: ${logdir}/server -> ${gamelogdir}..."
+ echo -en "creating symlink to game log dir: ${logdir}/server -> ${gamelogdir}..."
ln -nfs "${gamelogdir}" "${logdir}/server"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
@@ -92,7 +92,7 @@ fi
# If server uses SteamCMD create a symbolic link to the Steam logs
if [ -d "${rootdir}/Steam/logs" ]; then
if [ ! -L "${logdir}/steamcmd" ]; then
- echo -ne "creating symlink to steam log dir: ${logdir}/steamcmd -> ${rootdir}/Steam/logs..."
+ echo -en "creating symlink to steam log dir: ${logdir}/steamcmd -> ${rootdir}/Steam/logs..."
ln -nfs "${rootdir}/Steam/logs" "${logdir}/steamcmd"
if [ $? -ne 0 ]; then
fn_print_fail_eol_nl
diff --git a/lgsm/functions/install_server_files.sh b/lgsm/functions/install_server_files.sh
index 63e2f48d1..e3930843b 100644
--- a/lgsm/functions/install_server_files.sh
+++ b/lgsm/functions/install_server_files.sh
@@ -11,6 +11,8 @@ local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_install_server_files(){
if [ "${gamename}" == "Battlefield: 1942" ]; then
remote_fileurl="http://files.linuxgsm.com/BattleField1942/bf1942_lnxded-1.61-hacked-to-1.612.full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="bf1942_lnxded-1.61-hacked-to-1.612.full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="a86a5d3cd64ca59abcc9bb9f777c2e5d"
+ elif [ "${gamename}" == "BrainBread" ]; then
+ remote_fileurl="https://files.linuxgsm.com/BrainBread/brainbread-v1.2-linuxserver.tar.bz2"; local_filedir="${tmpdir}"; local_filename="brainbread-v1.2-linuxserver.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="5c729a7e9eecfa81b71a6a1f7267f0fd"
elif [ "${gamename}" == "Call of Duty" ]; then
remote_fileurl="http://files.linuxgsm.com/CallOfDuty/cod-lnxded-1.5b-full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="cod-lnxded-1.5-large.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="19629895a4cf6fd8f6d1ee198b5304cd"
elif [ "${gamename}" == "Call of Duty: United Offensive" ]; then
@@ -25,6 +27,8 @@ fn_install_server_files(){
remote_fileurl="http://files.linuxgsm.com/WolfensteinEnemyTerritory/etlegacy-v2.75-i386-et-260b.tar.bz2"; local_filedir="${tmpdir}"; local_filename="etlegacy-v2.75-i386-et-260b.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="92d7d4c26e0a295daed78cef623eeabb"
elif [ "${gamename}" == "GoldenEye: Source" ]; then
remote_fileurl="http://files.linuxgsm.com/GoldenEyeSource/GoldenEye_Source_v5.0.6_full_server.tar.bz2"; local_filedir="${tmpdir}"; local_filename="GoldenEye_Source_v5.0.6_full_server.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="c45c16293096706e8b5e2cd64a6f2931"
+ elif [ "${gamename}" == "Natural Selection" ]; then
+ remote_fileurl="http://files.linuxgsm.com/NaturalSelection/ns_dedicated_server_v32.tar.bz2"; local_filedir="${tmpdir}"; local_filename="ns_dedicated_server_v32.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="499cf63324b76925ada6baf5f2eacd67"
elif [ "${gamename}" == "Quake 2" ]; then
remote_fileurl="http://files.linuxgsm.com/Quake2/quake2-3.20-glibc-i386-full-linux2.0.tar.bz2"; local_filedir="${tmpdir}"; local_filename="quake2-3.20-glibc-i386-full-linux2.0.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="0b8c7e2d51f40b56b328c69e986e7c5f"
elif [ "${gamename}" == "Quake 3: Arena" ]; then
@@ -39,6 +43,8 @@ fn_install_server_files(){
remote_fileurl="https://s3.amazonaws.com/unrealtournament/UnrealTournament-Client-XAN-3395761-Linux.zip"; local_filedir="${tmpdir}"; local_filename="UnrealTournament-Server-XAN-3395761-Linux.zip"; chmodx="noexecute" run="norun"; force="noforce"; md5="f04ad5b96865b19613303331ff4075eb"
elif [ "${gamename}" == "Unreal Tournament 3" ]; then
remote_fileurl="http://files.linuxgsm.com/UnrealTournament3/UT3-linux-server-2.1.tar.bz2"; local_filedir="${tmpdir}"; local_filename="UT3-linux-server-2.1.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="2527437b46f1b47f20228d27d72395a6"
+ elif [ "${gamename}" == "Vampire Slayer" ]; then
+ remote_fileurl="https://files.linuxgsm.com/VampireSlayer/vs_l-6.0_full.tar.bz2"; local_filedir="${tmpdir}"; local_filename="vs_l-6.0_full.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="38a79e44b98578bbdc5b15818493a066"
elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
remote_fileurl="http://files.linuxgsm.com/WolfensteinEnemyTerritory/enemy-territory.260b.tar.bz2"; local_filedir="${tmpdir}"; local_filename="enemy-territory.260b.tar.bz2"; chmodx="nochmodx" run="norun"; force="noforce"; md5="f833f514bfcdd46b42c111f83350c5a7"
elif [ "${gamename}" == "San Andreas Multiplayer" ]; then
@@ -66,7 +72,7 @@ fn_install_server_files_steamcmd(){
fi
if [ "${counter}" -ge "7" ]; then
- echo "Removing $(find ${serverfiles} -type d -print0 | grep -Ez '[^/]{30}$')"
+ echo "Removing $(find "${serverfiles}" -type d -print0 | grep -Ez '[^/]{30}$')"
find "${serverfiles}" -type d -print0 | grep -Ez '[^/]{30}$' | xargs -0 rm -rf
fi
if [ "${counter}" -ge "9" ]; then
@@ -81,8 +87,8 @@ fn_install_server_files_steamcmd(){
fi
if [ "${counter}" -le "4" ]; then
- if [ "${engine}" == "goldsource" ]; then
- ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} +quit
+ if [ "${appid}" == "90" ]; then
+ ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_info_print 70 +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} +quit
local exitcode=$?
else
${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${branch} +quit
@@ -90,7 +96,7 @@ fn_install_server_files_steamcmd(){
fi
elif [ "${counter}" -ge "5" ]; then
if [ "${engine}" == "goldsource" ]; then
- ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} validate +quit
+ ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_info_print 70 +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} validate +quit
local exitcode=$?
else
${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${branch} validate +quit
@@ -111,7 +117,7 @@ fn_install_server_files_steamcmd(){
counter="0"
while [ "${counter}" -le "4" ]; do
counter=$((counter+1))
- ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod ${appidmod} +app_update "${appid}" ${branch} -validate +quit
+ ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_info_print 70 +app_set_config 90 mod ${appidmod} +app_update "${appid}" ${branch} validate +quit
local exitcode=$?
done
fi
@@ -138,7 +144,7 @@ elif [ "${gamename}" == "Multi Theft Auto" ]; then
elif [ "${gamename}" == "Factorio" ]; then
update_factorio.sh
install_factorio_save.sh
-elif [ -z "${appid}" ]||[ "${gamename}" == "GoldenEye: Source" ]||[ "${gamename}" == "Base Defense" ]; then
+elif [ -z "${appid}" ]||[ "${gamename}" == "GoldenEye: Source" ]||[ "${gamename}" == "Base Defense" ]||[ "${gamename}" == "BrainBread" ]||[ "${shortname}" == "ns" ]||[ "${shortname}" == "vs" ]; then
if [ "${gamename}" == "Unreal Tournament" ]; then
install_unreal_tournament_eula.sh
fi
diff --git a/lgsm/functions/install_ts3db.sh b/lgsm/functions/install_ts3db.sh
index 701b8c5ad..ebb23c052 100644
--- a/lgsm/functions/install_ts3db.sh
+++ b/lgsm/functions/install_ts3db.sh
@@ -14,8 +14,8 @@ fn_install_ts3db_mariadb(){
echo "checking if libmariadb2 is installed"
echo "================================="
sleep 0.5
- ldd "${serverfiles}/libts3db_mariadb.so" | grep "libmariadb.so.2 => not found"
- if [ $? -eq 0 ]; then
+
+ if ldd "${serverfiles}/libts3db_mariadb.so" | grep "libmariadb.so.2 => not found"; then
echo "libmariadb2 not installed. Please install it first."
echo "exiting..."
exit
diff --git a/lgsm/functions/mods_core.sh b/lgsm/functions/mods_core.sh
index c53ad7c96..8690b3b19 100644
--- a/lgsm/functions/mods_core.sh
+++ b/lgsm/functions/mods_core.sh
@@ -37,23 +37,23 @@ fn_mod_install_files(){
fn_mod_lowercase(){
if [ "${modlowercase}" == "LowercaseOn" ]; then
- echo -ne "converting ${modprettyname} files to lowercase..."
+ echo -en "converting ${modprettyname} files to lowercase..."
sleep 0.5
fn_script_log_info "Converting ${modprettyname} files to lowercase"
fileswc=$(find "${extractdir}" -depth | wc -l)
echo -en "\r"
while read -r src; do
- dst=$(dirname "${src}"`/`basename "${src}" | tr '[A-Z]' '[a-z]')
+ dst=$(dirname "${src}"$(/)basename "${src}" | tr 'A-Z' 'a-z')
if [ "${src}" != "${dst}" ]
then
[ ! -e "${dst}" ] && mv -T "${src}" "${dst}" || echo "${src} was not renamed"
local exitcode=$?
((renamedwc++))
fi
- echo -ne "${renamedwc} / ${totalfileswc} / ${fileswc} converting ${modprettyname} files to lowercase..." $'\r'
+ echo -en "${renamedwc} / ${totalfileswc} / ${fileswc} converting ${modprettyname} files to lowercase..." $'\r'
((totalfileswc++))
done < <(find "${extractdir}" -depth)
- echo -ne "${renamedwc} / ${totalfileswc} / ${fileswc} converting ${modprettyname} files to lowercase..."
+ echo -en "${renamedwc} / ${totalfileswc} / ${fileswc} converting ${modprettyname} files to lowercase..."
if [ ${exitcode} -ne 0 ]; then
fn_print_fail_eol_nl
@@ -67,7 +67,7 @@ fn_mod_lowercase(){
# Create ${modcommand}-files.txt containing the full extracted file/directory list
fn_mod_create_filelist(){
- echo -ne "building ${modcommand}-files.txt..."
+ echo -en "building ${modcommand}-files.txt..."
sleep 0.5
# ${modsdir}/${modcommand}-files.txt
find "${extractdir}" -mindepth 1 -printf '%P\n' > "${modsdir}/${modcommand}-files.txt"
@@ -89,7 +89,7 @@ fn_mod_create_filelist(){
# Copy the mod into serverfiles
fn_mod_copy_destination(){
- echo -ne "copying ${modprettyname} to ${modinstalldir}..."
+ echo -en "copying ${modprettyname} to ${modinstalldir}..."
sleep 0.5
cp -Rf "${extractdir}/." "${modinstalldir}/"
local exitcode=$?
@@ -115,7 +115,7 @@ fn_mod_tidy_files_list(){
# Check file list validity
fn_check_mod_files_list
# Output to the user
- echo -ne "tidy up ${modcommand}-files.txt..."
+ echo -en "tidy up ${modcommand}-files.txt..."
sleep 0.5
fn_script_log_info "Tidy up ${modcommand}-files.txt"
# Lines/files to remove from file list (end with ";" separator)
@@ -385,7 +385,7 @@ fn_mods_create_tmp_dir(){
if [ ! -d "${modstmpdir}" ]; then
mkdir -p "${modstmpdir}"
exitcode=$?
- echo -ne "creating mod download directory ${modstmpdir}..."
+ echo -en "creating mod download directory ${modstmpdir}..."
if [ ${exitcode} -ne 0 ]; then
fn_print_fail_eol_nl
fn_script_log_fatal "Creating mod download directory ${modstmpdir}"
@@ -400,7 +400,7 @@ fn_mods_create_tmp_dir(){
# Remove the tmp mod download directory when finished
fn_mods_clear_tmp_dir(){
if [ -d "${modstmpdir}" ]; then
- echo -ne "clearing mod download directory ${modstmpdir}..."
+ echo -en "clearing mod download directory ${modstmpdir}..."
rm -r "${modstmpdir}"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh
index dd5ab02c0..eb1e2f8bf 100644
--- a/lgsm/functions/mods_list.sh
+++ b/lgsm/functions/mods_list.sh
@@ -21,15 +21,15 @@ metamodlatestfile="$(wget "${metamodscrapeurl}" -q -O -)"
metamoddownloadurl="https://www.metamodsource.net/latest.php?os=linux&version=${metamodmversion}"
metamodurl="${metamoddownloadurl}"
# Sourcemod
-sourcemodmversion="1.8"
+sourcemodmversion="1.9"
sourcemodscrapeurl="https://sm.alliedmods.net/smdrop/${sourcemodmversion}/sourcemod-latest-linux"
sourcemodlatestfile="$(wget "${sourcemodscrapeurl}" -q -O -)"
sourcemoddownloadurl="https://www.sourcemod.net/latest.php?os=linux&version=${sourcemodmversion}"
sourcemodurl="${sourcemoddownloadurl}"
# Oxide
-oxiderustlatestlink="$(curl -s https://api.github.com/repos/OxideMod/Oxide.Rust/releases/latest | grep browser_download_url | cut -d '"' -f 4)"
-oxidehurtworldlatestlink="$(curl -s https://api.github.com/repos/OxideMod/Oxide.Hurtworld/releases/latest | grep browser_download_url | cut -d '"' -f 4 | grep "Oxide.Hurtworld.zip")"
-oxidesdtdlatestlink="$(curl -s https://api.github.com/repos/OxideMod/Oxide.SevenDaysToDie/releases/latest | grep browser_download_url | cut -d '"' -f 4)"
+oxiderustlatestlink="$(curl -sL https://api.github.com/repos/theumod/umod.rust/releases/latest | grep browser_download_url | cut -d '"' -f 4)"
+oxidehurtworldlatestlink="$(curl -sL https://api.github.com/repos/OxideMod/Oxide.Hurtworld/releases/latest | grep browser_download_url | cut -d '"' -f 4 | grep "Oxide.Hurtworld.zip")"
+oxidesdtdlatestlink="$(curl -sL https://api.github.com/repos/OxideMod/Oxide.SevenDaysToDie/releases/latest | grep browser_download_url | cut -d '"' -f 4)"
# Define mods information (required)
@@ -59,6 +59,11 @@ modseparator="MOD"
# Source mods
mod_info_metamod=( MOD "metamod" "MetaMod" "${metamodurl}" "${metamodlatestfile}" "0" "LowercaseOff" "${systemdir}" "addons/metamod/metaplugins.ini;" "source;" "GAMES" "NOTGAMES" "https://www.sourcemm.net" "Plugins Framework" )
mod_info_sourcemod=( MOD "sourcemod" "SourceMod" "${sourcemodurl}" "${sourcemodlatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "source;" "GAMES" "NOTGAMES" "http://www.sourcemod.net" "Admin Features (requires MetaMod)" )
+
+# CS:GO Mods
+mod_info_gokz=( MOD "gokz" "GOKZ" "https://bitbucket.org/kztimerglobalteam/gokz/downloads/GOKZ-latest.zip" "gokz-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter Strike: Global Offensive" "NOTGAMES" "https://bitbucket.org/kztimerglobalteam/gokz/src/master/" "Implements the KZ game mode (requires SourceMod and MetaMod)")
+mod_info_ttt=( MOD "ttt" "Trouble in Terrorist Town" "https://csgottt.com/downloads/ttt-latest-dev-${sourcemodmversion}.zip" "ttt-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter Strike: Global Offensive" "NOTGAMES" "https://github.com/Bara/TroubleinTerroristTown" "Implements the TTT game mode (requires SourceMod and MetaMod)")
+
# Garry's Mod Addons
mod_info_ulib=( MOD "ulib" "ULib" "https://codeload.github.com/TeamUlysses/ulib/zip/master" "ulib-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://ulyssesmod.net" "Complete Framework" )
mod_info_ulx=( MOD "ulx" "ULX" "https://codeload.github.com/TeamUlysses/ulx/zip/master" "ulx-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://ulyssesmod.net" "Admin Panel (requires ULib)" )
@@ -67,13 +72,17 @@ mod_info_uclip=( MOD "uclip" "UClip" "https://github.com/TeamUlysses/uclip/archi
mod_info_acf=( MOD "acf" "Armoured Combat Framework" "https://github.com/nrlulz/ACF/archive/master.zip" "acf-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "acf-master/lua/acf/shared/guns;" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/nrlulz/ACF" "Realistic Wepons & Engines" )
mod_info_acf_missiles=( MOD "acfmissiles" "ACF Missiles" "https://github.com/Bubbus/ACF-Missiles/archive/master.zip" "acf-missiles-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Bubbus/ACF-Missiles" "More missiles for ACF" )
mod_info_advdupe2=( MOD "advdupe2" "Advanced Duplicator 2" "https://github.com/wiremod/advdupe2/archive/master.zip" "advdupe2-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://www.wiremod.com" "Save your constructions" )
+mod_info_pac3=( MOD "pac3" "PAC3" "https://github.com/CapsAdmin/pac3/archive/master.zip" "pac3-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/CapsAdmin/pac3" "Advanced player model customization" )
+mod_info_wiremod=( MOD "wiremod" "Wiremod" "https://github.com/wiremod/wire/archive/master.zip" "wire-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/wiremod/wire" "Base Wiremod Addon")
+mod_info_wiremodextras=( MOD "wiremod-extras" "Wiremod Extras" "https://github.com/wiremod/wire-extras/archive/master.zip" "wire-extras-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/wiremod/wire-extras/" "Addition to Wiremod, Extra Content")
mod_info_darkrp=( MOD "darkrp" "DarkRP" "https://github.com/FPtje/DarkRP/archive/master.zip" "darkrp-master.zip" "0" "LowercaseOn" "${systemdir}/gamemodes" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://darkrp.com" "Most popular gamemode" )
mod_info_darkrpmodification=( MOD "darkrpmodification" "DarkRP Modification" "https://github.com/FPtje/darkrpmodification/archive/master.zip" "darkrpmodification-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "NOUPDATE" "ENGINES" "Garry's Mod;" "NOTGAMES" "http://darkrp.com" "Customize DarkRP settings" )
-mod_info_pac=( MOD "pac3" "PAC3" "https://github.com/CapsAdmin/pac3/archive/master.zip" "pac3-master.zip" "0" "LowercaseOff" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/CapsAdmin/pac3" "Advanced player model customization" )
+
+
# Oxidemod
mod_info_rustoxide=( MOD "rustoxide" "Oxide for Rust" "${oxiderustlatestlink}" "Oxide.Rust.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "Rust;" "NOTGAMES" "http://oxidemod.org/downloads/oxide-for-rust.1659/" "Allows for the use of plugins" )
mod_info_hwoxide=( MOD "hwoxide" "Oxide for Hurtworld" "${oxidehurtworldlatestlink}" "Oxide.Hurtworld.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "Hurtworld;" "NOTGAMES" "http://oxidemod.org/downloads/oxide-for-hurtworld.1332/" "Allows for the use of plugins" )
mod_info_sdtdoxide=( MOD "sdtdoxide" "Oxide for 7 Days To Die" "${oxidesdtdlatestlink}" "Oxide.SevenDaysToDie.zip" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "7 Days To Die;" "NOTGAMES" "http://oxidemod.org/downloads/oxide-for-7-days-to-die.813/" "Allows for the use of plugins" )
# REQUIRED: Set all mods info into the global array
-mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_sourcemod[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" )
+mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_sourcemod[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" )
diff --git a/lgsm/functions/query_gamedig.sh b/lgsm/functions/query_gamedig.sh
index 4249f8a76..affef935c 100644
--- a/lgsm/functions/query_gamedig.sh
+++ b/lgsm/functions/query_gamedig.sh
@@ -1,7 +1,7 @@
#!/bin/bash
# query_gamedig.sh function
# Author: Daniel Gibbs
-# Website: https://gameservermanagers.com
+# Website: https://linuxgsm.com
# Description: Querys a gameserver using node-gamedig.
# https://github.com/sonicsnes/node-gamedig
@@ -14,7 +14,7 @@ if [ "$(command -v gamedig 2>/dev/null)" ]&&[ "$(command -v jq 2>/dev/null)" ];
local engine="unreal4"
fi
- local engine_query_array=( avalanche3.0 madness quakelive realvirtuality refractor source goldsource spark starbound unity3d unreal4 )
+ local engine_query_array=( avalanche3.0 madness quakelive realvirtuality refractor source goldsource spark starbound unity3d unreal4 wurm )
for engine_query in "${engine_query_array[@]}"
do
if [ "${engine_query}" == "${engine}" ]; then
@@ -30,6 +30,14 @@ if [ "$(command -v gamedig 2>/dev/null)" ]&&[ "$(command -v jq 2>/dev/null)" ];
fi
done
+ local engine_query_array=( quake )
+ for engine_query in "${engine_query_array[@]}"
+ do
+ if [ "${engine_query}" == "${engine}" ]; then
+ gamedigengine="protocol-quake1"
+ fi
+ done
+
local engine_query_array=( idtech2 iw2.0 )
for engine_query in "${engine_query_array[@]}"
do
@@ -38,7 +46,7 @@ if [ "$(command -v gamedig 2>/dev/null)" ]&&[ "$(command -v jq 2>/dev/null)" ];
fi
done
- local engine_query_array=( idtech3 quake iw3.0 )
+ local engine_query_array=( idtech3 iw3.0 )
for engine_query in "${engine_query_array[@]}"
do
if [ "${engine_query}" == "${engine}" ]; then
@@ -46,6 +54,14 @@ if [ "$(command -v gamedig 2>/dev/null)" ]&&[ "$(command -v jq 2>/dev/null)" ];
fi
done
+ local engine_query_array=( lwjgl2 )
+ for engine_query in "${engine_query_array[@]}"
+ do
+ if [ "${engine_query}" == "${engine}" ]; then
+ gamedigengine="minecraft"
+ fi
+ done
+
local shortname_query_array=( ts3 )
for shortname_query in "${shortname_query_array[@]}"
do
@@ -54,43 +70,64 @@ if [ "$(command -v gamedig 2>/dev/null)" ]&&[ "$(command -v jq 2>/dev/null)" ];
fi
done
+ local engine_query_array=( unreal )
+ for engine_query in "${engine_query_array[@]}"
+ do
+ if [ "${engine_query}" == "${engine}" ]; then
+ gamedigengine="ut"
+ fi
+ done
# will bypass query if server offline
check_status.sh
if [ "${status}" != "0" ]; then
- # checks if query is working 0 = pass
- querystatus=$(gamedig --type "${gamedigengine}" --host "${ip}" --port "${queryport}" | jq '.error|length')
- # raw output
- gamedigraw=$(gamedig --type "${gamedigengine}" --host "${ip}" --port "${queryport}")
+ # checks if query is working null = pass
+ gamedigcmd=$(echo "gamedig --type \"${gamedigengine}\" --host \"${ip}\" --query_port \"${queryport}\"|jq")
+ gamedigraw=$(gamedig --type "${gamedigengine}" --host "${ip}" --query_port "${queryport}")
+ querystatus=$(echo "${gamedigraw}" | jq '.error|length')
+
+ if [ "${querystatus}" != "null" ]; then
+ gamedigcmd=$(echo "gamedig --type \"${gamedigengine}\" --host \"${ip}\" --port \"${queryport}\"|jq")
+ gamedigraw=$(gamedig --type "${gamedigengine}" --host "${ip}" --port "${queryport}")
+ querystatus=$(echo "${gamedigraw}" | jq '.error|length')
+
+ fi
+
# server name
gdname=$(echo "${gamedigraw}" | jq -re '.name')
if [ "${gdname}" == "null" ]; then
- gdname=
+ unset gdname
fi
# numplayers
gdplayers=$(echo "${gamedigraw}" | jq -re '.players|length')
if [ "${gdplayers}" == "null" ]; then
- gdplayers=
+ unset gdplayers
fi
# maxplayers
gdmaxplayers=$(echo "${gamedigraw}" | jq -re '.maxplayers|length')
if [ "${gdmaxplayers}" == "null" ]; then
- maxplayers=
+ unset maxplayers
fi
# current map
gdmap=$(echo "${gamedigraw}" | jq -re '.map')
if [ "${gdmap}" == "null" ]; then
- gdmap=
+ unset gdmap
+ fi
+
+ # current gamemode
+ gdgamemode=$(echo "${gamedigraw}" | jq -re '.raw.rules.GameMode_s')
+ if [ "${gdgamemode}" == "null" ]; then
+ unset gdgamemode
fi
# numbots
gdbots=$(echo "${gamedigraw}" | jq -re '.raw.numbots')
- if [ "${gdbots}" == "null" ]; then
- gdbots=
+ if [ "${gdbots}" == "null" ]||[ "${gdbots}" == "0" ]; then
+ unset gdbots
fi
fi
fi
\ No newline at end of file
diff --git a/lgsm/functions/query_gsquery.py b/lgsm/functions/query_gsquery.py
index d672870b9..e5dd40463 100644
--- a/lgsm/functions/query_gsquery.py
+++ b/lgsm/functions/query_gsquery.py
@@ -17,21 +17,25 @@ class gsquery:
self.server_response_timeout = 5
self.default_buffer_length = 1024
#
- sourcequery=[ 'avalanche3.0','madness','quakelive','realvirtuality','refractor','source','goldsource','spark','starbound','unity3d', 'unreal4' ]
- idtech3query=['idtech3','quake','iw3.0']
- idtech2query=['idtech2','iw2.0']
+ sourcequery=[ 'avalanche3.0','madness','quakelive','realvirtuality','refractor','source','goldsource','spark','starbound','unity3d', 'unreal4', 'wurm' ]
+ idtech3query=['idtech3','iw3.0']
+ idtech2query=['idtech2','quake','iw2.0']
+ minecraftquery=['minecraft','lwjgl2']
if self.option.engine in sourcequery:
self.query_prompt_string = b'\xFF\xFF\xFF\xFFTSource Engine Query\0'
elif self.option.engine in idtech2query:
self.query_prompt_string = b'\xff\xff\xff\xffstatus\x00'
elif self.option.engine in idtech3query:
self.query_prompt_string = b'\xff\xff\xff\xffgetstatus'
+ elif self.option.engine in minecraftquery:
+ self.query_prompt_string = b'\xFE\xFD\x09\x3d\x54\x1f\x93'
elif self.option.engine == 'avalanche2.0':
self.query_prompt_string = b'\xFE\xFD\x09\x10\x20\x30\x40'
elif self.option.engine == 'unreal':
self.query_prompt_string = b'\x5C\x69\x6E\x66\x6F\x5C'
elif self.option.engine == 'unreal2':
self.query_prompt_string = b'\x79\x00\x00\x00\x00'
+
self.connected = False
self.response = None
self.sanity_checks()
@@ -100,7 +104,7 @@ if __name__ == '__main__':
action='store',
dest='engine',
default=False,
- help='Engine type: avalanche2.0, avalanche3.0, goldsource, idtech2, idtech3, iw2.0, iw3.0, realvirtuality, quake, quakelive, refractor, spark, source, unity3d, unreal, unreal2.'
+ help='Engine type: avalanche2.0, avalanche3.0, goldsource, idtech2, idtech3, iw2.0, iw3.0, minecraft, quake, quakelive, realvirtuality, refractor, spark, source, unity3d, unreal, unreal2.'
)
parser.add_option(
'-v', '--verbose',
diff --git a/lgsm/functions/update_factorio.sh b/lgsm/functions/update_factorio.sh
index ca70396e8..887bdd22b 100644
--- a/lgsm/functions/update_factorio.sh
+++ b/lgsm/functions/update_factorio.sh
@@ -10,8 +10,13 @@ local commandaction="Update"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_update_factorio_dl(){
- fn_fetch_file "https://www.factorio.com/get-download/${availablebuild}/headless/${factorioarch}" "${tmpdir}" "factorio_headless_${factorioarch}-${availablebuild}.tar.gz"
- fn_dl_extract "${tmpdir}" "factorio_headless_${factorioarch}-${availablebuild}.tar.gz" "${tmpdir}"
+ if [ "${branch}" == "stable" ]; then
+ downloadbranch="stable"
+ elif [ "${branch}" == "experimental" ]; then
+ downloadbranch="latest"
+ fi
+ fn_fetch_file "https://factorio.com/get-download/${downloadbranch}/headless/${factorioarch}" "${tmpdir}" "factorio_headless_${factorioarch}-${availablebuild}.tar.xz"
+ fn_dl_extract "${tmpdir}" "factorio_headless_${factorioarch}-${availablebuild}.tar.xz" "${tmpdir}"
echo -e "copying to ${serverfiles}...\c"
fn_script_log "Copying to ${serverfiles}"
cp -R "${tmpdir}/factorio/"* "${serverfiles}"
@@ -77,12 +82,10 @@ fn_update_factorio_arch(){
fn_update_factorio_availablebuild(){
# Gets latest build info.
if [ "${branch}" != "stable" ]; then
- availablebuild=$(${curlpath} -s https://www.factorio.com/download-headless/"${branch}" | grep 'headless/linux64' | head -n 2 | tail -n 1 | grep -oP '(?<=get-download/).*?(?=/)')
+ availablebuild=$(${curlpath} -s https://factorio.com/get-download/stable/headless/linux64 | grep -o '[0-9]\.[0-9]\{2\}\.[0-9]\{2\}' | head -1)
else
- availablebuild=$(${curlpath} -s https://www.factorio.com/download-headless | grep 'headless/linux64' | head -n 2 | tail -n 1 | grep -oP '(?<=get-download/).*?(?=/)')
+ availablebuild=$(${curlpath} -s https://factorio.com/get-download/latest/headless/linux64 | grep -o '[0-9]\.[0-9]\{2\}\.[0-9]\{2\}' | head -1)
fi
- sleep 0.5
-
# Checks if availablebuild variable has been set
if [ -z "${availablebuild}" ]; then
fn_print_fail "Checking for update: factorio.com"
@@ -112,7 +115,6 @@ fn_update_factorio_compare(){
echo -e " Available build: ${green}${availablebuild} ${factorioarch} ${branch}${default}"
echo -e ""
sleep 0.5
- echo ""
echo -en "Applying update.\r"
sleep 1
echo -en "Applying update..\r"
diff --git a/lgsm/functions/update_minecraft.sh b/lgsm/functions/update_minecraft.sh
index 88ee6cebc..31c1f0a20 100644
--- a/lgsm/functions/update_minecraft.sh
+++ b/lgsm/functions/update_minecraft.sh
@@ -9,11 +9,14 @@ local commandaction="Update"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_update_dl(){
- fn_fetch_file "https://s3.amazonaws.com/Minecraft.Download/versions/${availablebuild}/minecraft_server.${availablebuild}.jar" "${tmpdir}" "minecraft_server.${availablebuild}.jar"
+ latestmcreleaselink=$(${curlpath} -s "https://launchermeta.mojang.com/mc/game/version_manifest.json" | jq -r '.latest.release as $latest | .versions[] | select(.id == $latest) | .url')
+ latestmcbuildurl=$(${curlpath} -s "${latestmcreleaselink}" | jq -r '.downloads.server.url')
+ fn_fetch_file "${latestmcbuildurl}" "${tmpdir}" "minecraft_server.${availablebuild}.jar"
echo -e "copying to ${serverfiles}...\c"
fn_script_log "Copying to ${serverfiles}"
cp "${tmpdir}/minecraft_server.${availablebuild}.jar" "${serverfiles}/minecraft_server.jar"
local exitcode=$?
+ chmod u+x "${serverfiles}/minecraft_server.jar"
if [ ${exitcode} -eq 0 ]; then
fn_print_ok_eol_nl
else
@@ -69,7 +72,7 @@ fn_update_currentbuild(){
fn_update_availablebuild(){
# Gets latest build info.
- availablebuild=$(${curlpath} -s "https://launchermeta.mojang.com/mc/game/version_manifest.json" | sed -e 's/^.*"release":"\([^"]*\)".*$/\1/')
+ availablebuild=$(${curlpath} -s "https://launchermeta.mojang.com/mc/game/version_manifest.json" | jq -r '.latest.release')
# Checks if availablebuild variable has been set
if [ -z "${availablebuild}" ]; then
fn_print_fail "Checking for update: mojang.com"
@@ -99,7 +102,6 @@ fn_update_compare(){
echo -e " Available build: ${green}${availablebuild}${default}"
echo -e ""
sleep 0.5
- echo ""
echo -en "Applying update.\r"
sleep 1
echo -en "Applying update..\r"
diff --git a/lgsm/functions/update_mta.sh b/lgsm/functions/update_mta.sh
index 1a4bb4419..85c7b1053 100644
--- a/lgsm/functions/update_mta.sh
+++ b/lgsm/functions/update_mta.sh
@@ -92,11 +92,10 @@ fn_update_mta_compare(){
echo -e "\n"
echo -e "Update ${mta_update_string}:"
sleep 0.5
- echo -e " Current build: ${red}${currentbuild} ${default}"
- echo -e " Available build: ${green}${fullversion} ${default}"
+ echo -e " Current build: ${red}${currentbuild} ${default}"
+ echo -e " Available build: ${green}${fullversion} ${default}"
echo -e ""
sleep 0.5
- echo ""
echo -en "Applying update.\r"
sleep 1
echo -en "Applying update..\r"
diff --git a/lgsm/functions/update_mumble.sh b/lgsm/functions/update_mumble.sh
index 3ad1c1a47..6988fc317 100644
--- a/lgsm/functions/update_mumble.sh
+++ b/lgsm/functions/update_mumble.sh
@@ -108,7 +108,6 @@ fn_update_mumble_compare(){
echo -e " Available build: ${green}${availablebuild} ${mumblearch}${default}"
echo -e ""
sleep 0.5
- echo ""
echo -en "Applying update.\r"
sleep 1
echo -en "Applying update..\r"
diff --git a/lgsm/functions/update_steamcmd.sh b/lgsm/functions/update_steamcmd.sh
index 3a068be18..480624f7b 100644
--- a/lgsm/functions/update_steamcmd.sh
+++ b/lgsm/functions/update_steamcmd.sh
@@ -26,8 +26,8 @@ fn_update_steamcmd_dl(){
fi
cd "${steamcmddir}" || exit
- if [ "${engine}" == "goldsource" ]; then
- ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} +quit | tee -a "${lgsmlog}"
+ if [ "${appid}" == "90" ]; then
+ ${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_info_print 70 +app_set_config 90 mod "${appidmod}" +app_update "${appid}" ${branch} +quit | tee -a "${lgsmlog}"
else
${unbuffer} ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${serverfiles}" +app_update "${appid}" ${branch} +quit | tee -a "${lgsmlog}"
if [ "${gamename}" == "Classic Offensive" ]; then
@@ -111,7 +111,7 @@ fn_update_request_log(){
fn_print_ok_nl "Checking for update: Server logs: Update requested"
fn_script_log_pass "Checking for update: Server logs: Update requested"
sleep 0.5
- echo ""
+ echo -e ""
echo -en "Applying update.\r"
sleep 1
echo -en "Applying update..\r"
@@ -157,7 +157,7 @@ fn_update_steamcmd_check(){
fi
# Set branch for updateinfo
- IFS=' ' read -ra branchsplits <<< ${branch}
+ IFS=' ' read -ra branchsplits <<< "${branch}"
if [ "${#branchsplits[@]}" -gt 1 ]; then
branchname="${branchsplits[1]}"
else
@@ -166,7 +166,7 @@ fn_update_steamcmd_check(){
# Gets availablebuild info
cd "${steamcmddir}" || exit
- availablebuild=$(./steamcmd.sh +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" +app_info_print "${appid}" +quit | sed -n '/branch/,$p' | grep -m 1 buildid | tr -cd '[:digit:]')
+ availablebuild=$(./steamcmd.sh +login "${steamuser}" "${steampass}" +app_info_update 1 +app_info_print "${appid}" +quit | sed '1,/branches/d' | sed "1,/${branchname}/d" | grep -m 1 buildid | tr -cd '[:digit:]')
if [ -z "${availablebuild}" ]; then
fn_print_fail "Checking for update: SteamCMD"
sleep 0.5
diff --git a/lgsm/functions/update_ts3.sh b/lgsm/functions/update_ts3.sh
index 596979348..c0657dfcc 100644
--- a/lgsm/functions/update_ts3.sh
+++ b/lgsm/functions/update_ts3.sh
@@ -8,7 +8,7 @@ local commandname="UPDATE"
local commandaction="Update"
local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
-fn_update_ts3_dl(){
+fn_update_ts3_dl_legacy(){
fn_fetch_file "http://dl.4players.de/ts/releases/${ts3_version_number}/teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2" "${tmpdir}" "teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2"
fn_dl_extract "${tmpdir}" "teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2" "${tmpdir}"
echo -e "copying to ${serverfiles}...\c"
@@ -22,6 +22,21 @@ fn_update_ts3_dl(){
fi
}
+fn_update_ts3_dl(){
+ latestts3releaselink=$(${curlpath} -s 'https://www.teamspeak.com/versions/server.json' | jq -r '.linux.x86_64.mirrors."teamspeak.com"')
+ fn_fetch_file "${latestts3releaselink}" "${tmpdir}" "teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2"
+ fn_dl_extract "${tmpdir}" "teamspeak3-server_linux_${ts3arch}-${ts3_version_number}.tar.bz2" "${tmpdir}"
+ echo -e "copying to ${serverfiles}...\c"
+ fn_script_log "Copying to ${serverfiles}"
+ cp -R "${tmpdir}/teamspeak3-server_linux_${ts3arch}/"* "${serverfiles}"
+ local exitcode=$?
+ if [ "${exitcode}" == "0" ]; then
+ fn_print_ok_eol_nl
+ else
+ fn_print_fail_eol_nl
+ fi
+}
+
fn_update_ts3_currentbuild(){
# Gets current build info
# Checks if current build info is available. If it fails, then a server restart will be forced to generate logs.
@@ -48,7 +63,7 @@ fn_update_ts3_currentbuild(){
fi
# Get current build from logs
- currentbuild=$(cat $(find ./* -name 'ts3server*_0.log' 2> /dev/null | sort | grep -Ev '${rootdir}/.ts3version' | tail -1) | grep -Eo 'TeamSpeak 3 Server ((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}' | grep -Eo '((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}' | sort -V | tail -1)
+ currentbuild=$(cat $(find ./* -name "ts3server*_0.log" 2> /dev/null | sort | grep -Ev "${rootdir}/.ts3version" | tail -1) | grep -Eo "TeamSpeak 3 Server ((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}" | grep -Eo "((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}" | sort -V | tail -1)
if [ -z "${currentbuild}" ]; then
fn_print_error_nl "Checking for update: teamspeak.com: Current build version not found"
fn_script_log_error "Checking for update: teamspeak.com: Current build version not found"
@@ -59,7 +74,7 @@ fn_update_ts3_currentbuild(){
command_stop.sh
exitbypass=1
command_start.sh
- currentbuild=$(cat $(find ./* -name 'ts3server*_0.log' 2> /dev/null | sort | grep -Ev '${rootdir}/.ts3version' | tail -1) | grep -Eo 'TeamSpeak 3 Server ((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}' | grep -Eo '((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}')
+ currentbuild=$(cat $(find ./* -name "ts3server*_0.log" 2> /dev/null | sort | grep -Ev "${rootdir}/.ts3version" | tail -1) | grep -Eo "TeamSpeak 3 Server ((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}" | grep -Eo "((\.)?[0-9]{1,3}){1,3}\.[0-9]{1,3}")
if [ -z "${currentbuild}" ]; then
fn_print_fail_nl "Checking for update: teamspeak.com: Current build version still not found"
fn_script_log_fatal "Checking for update: teamspeak.com: Current build version still not found"
@@ -152,7 +167,7 @@ fn_update_ts3_compare(){
currentbuilddigit=$(echo "${currentbuild}" | tr -cd '[:digit:]')
availablebuilddigit=$(echo "${availablebuild}" | tr -cd '[:digit:]')
- if [ "${currentbuilddigit}" -ne "${availablebuilddigit}" ]; then
+ if [ "${currentbuilddigit}" -lt "${availablebuilddigit}" ]; then
echo -e "\n"
echo -e "Update available:"
sleep 0.5
@@ -160,7 +175,6 @@ fn_update_ts3_compare(){
echo -e " Available build: ${green}${availablebuild} ${ts3arch}${default}"
echo -e ""
sleep 0.5
- echo ""
echo -en "Applying update.\r"
sleep 1
echo -en "Applying update..\r"
@@ -208,10 +222,11 @@ if [ "${installer}" == "1" ]; then
# if jq available uses json update checker
if [ "$(command -v jq >/dev/null 2>&1)" ]; then
fn_update_ts3_availablebuild
+ fn_update_ts3_dl
else
fn_update_ts3_availablebuild_legacy
+ fn_update_ts3_dl_legacy
fi
- fn_update_ts3_dl
else
# Checks for server update from teamspeak.com using a mirror dl.4players.de.
fn_print_dots "Checking for update: teamspeak.com"
diff --git a/linuxgsm.sh b/linuxgsm.sh
index 2afb24187..cbccd45e6 100755
--- a/linuxgsm.sh
+++ b/linuxgsm.sh
@@ -3,15 +3,15 @@
# Author: Daniel Gibbs
# License: MIT License, Copyright (c) 2017 Daniel Gibbs
# Purpose: Linux Game Server Management Script
-# Contributors: https://github.com/GameServerManagers/LinuxGSM/graphs/contributors
-# Documentation: https://github.com/GameServerManagers/LinuxGSM/wiki
+# Contributors: https://linuxgsm.com/contrib
+# Documentation: https://docs.linuxgsm.com
# Website: https://linuxgsm.com
# DO NOT EDIT THIS FILE
# LinuxGSM configuration is no longer edited here
# To update your LinuxGSM config go to:
# lgsm/config-lgsm
-# https://github.com/GameServerManagers/LinuxGSM/wiki/LinuxGSM-Config-Files
+# https://docs.linuxgsm.com/configuration/linuxgsm-config
# Debugging
if [ -f ".dev-debug" ]; then
@@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then
set -x
fi
-version="180409"
+version="190106"
shortname="core"
gameservername="core"
rootdir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
@@ -40,6 +40,7 @@ serverlist="${datadir}/serverlist.csv"
configdir="${lgsmdir}/config-lgsm"
configdirserver="${configdir}/${gameservername}"
configdirdefault="${lgsmdir}/config-default"
+userinput="${1}"
## GitHub Branch Select
# Allows for the use of different function files
@@ -77,18 +78,18 @@ fn_bootstrap_fetch_file(){
# If curl exists download file
if [ "$(basename "${curlpath}")" == "curl" ]; then
# trap to remove part downloaded files
- echo -ne " fetching ${local_filename}...\c"
+ echo -en " fetching ${local_filename}...\c"
curlcmd=$(${curlpath} -s --fail -L -o "${local_filedir}/${local_filename}" "${remote_fileurl}" 2>&1)
local exitcode=$?
if [ ${exitcode} -ne 0 ]; then
- echo -e "\e[0;31mFAIL\e[0m\n"
+ echo -e "FAIL"
if [ -f "${lgsmlog}" ]; then
echo -e "${remote_fileurl}" | tee -a "${lgsmlog}"
echo "${curlcmd}" | tee -a "${lgsmlog}"
fi
exit 1
else
- echo -e "\e[0;32mOK\e[0m"
+ echo -e "OK"
fi
else
echo "[ FAIL ] Curl is not installed"
@@ -256,9 +257,14 @@ fn_install_file(){
exit
}
-# Prevent from running this script as root.
+# Prevent LinuxGSM from running as root. Except if doing a dependency install.
if [ "$(whoami)" == "root" ]; then
- if [ ! -f "${functionsdir}/core_functions.sh" ]||[ ! -f "${functionsdir}/check_root.sh" ]||[ ! -f "${functionsdir}/core_messages.sh" ]; then
+ if [ "${userinput}" == "install" ]||[ "${userinput}" == "auto-install" ]||[ "${userinput}" == "i" ]||[ "${userinput}" == "ai" ]; then
+ if [ "${shortname}" == "core" ]; then
+ echo "[ FAIL ] Do NOT run this script as root!"
+ exit 1
+ fi
+ elif [ ! -f "${functionsdir}/core_functions.sh" ]||[ ! -f "${functionsdir}/check_root.sh" ]||[ ! -f "${functionsdir}/core_messages.sh" ]; then
echo "[ FAIL ] Do NOT run this script as root!"
exit 1
else
@@ -269,8 +275,7 @@ fi
# LinuxGSM installer mode
if [ "${shortname}" == "core" ]; then
- userinput=$1
- datadir="${lgsmdir}/data"
+ datadir="${tmpdir}/data"
serverlist="${datadir}/serverlist.csv"
# Download the latest serverlist. This is the complete list of all supported servers.
@@ -312,63 +317,66 @@ if [ "${shortname}" == "core" ]; then
# LinuxGSM Server Mode
else
core_functions.sh
-
- # Load LinuxGSM configs
- # These are required to get all the default variables for the specific server.
- # Load the default config. If missing download it. If changed reload it.
- if [ ! -f "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" ]; then
- mkdir -p "${configdirdefault}/config-lgsm/${gameservername}"
- fn_fetch_config "lgsm/config-default/config-lgsm/${gameservername}" "_default.cfg" "${configdirdefault}/config-lgsm/${gameservername}" "_default.cfg" "nochmodx" "norun" "noforcedl" "nomd5"
- fi
- if [ ! -f "${configdirserver}/_default.cfg" ]; then
- mkdir -p "${configdirserver}"
- echo -ne " copying _default.cfg...\c"
- cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
- exitcode=$?
- if [ ${exitcode} -ne 0 ]; then
- echo -e "\e[0;31mFAIL\e[0m\n"
- exit 1
- else
- echo -e "\e[0;32mOK\e[0m"
+ if [ "${shortname}" != "core-dep" ]; then
+ # Load LinuxGSM configs
+ # These are required to get all the default variables for the specific server.
+ # Load the default config. If missing download it. If changed reload it.
+ if [ ! -f "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" ]; then
+ mkdir -p "${configdirdefault}/config-lgsm/${gameservername}"
+ fn_fetch_config "lgsm/config-default/config-lgsm/${gameservername}" "_default.cfg" "${configdirdefault}/config-lgsm/${gameservername}" "_default.cfg" "nochmodx" "norun" "noforcedl" "nomd5"
fi
- else
- function_file_diff=$(diff -q "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg")
- if [ "${function_file_diff}" != "" ]; then
- fn_print_warn_nl "_default.cfg has been altered. reloading config."
- echo -ne " copying _default.cfg...\c"
+ if [ ! -f "${configdirserver}/_default.cfg" ]; then
+ mkdir -p "${configdirserver}"
+ echo -en " copying _default.cfg...\c"
cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
- echo -e "\e[0;31mFAIL\e[0m\n"
+ echo -e "FAIL"
exit 1
else
- echo -e "\e[0;32mOK\e[0m"
+ echo -e "OK"
+ fi
+ else
+ function_file_diff=$(diff -q "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg")
+ if [ "${function_file_diff}" != "" ]; then
+ fn_print_warn_nl "_default.cfg has been altered. reloading config."
+ echo -en " copying _default.cfg...\c"
+ cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
+ exitcode=$?
+ if [ ${exitcode} -ne 0 ]; then
+ echo -e "FAIL"
+ exit 1
+ else
+ echo -e "OK"
+ fi
fi
fi
- fi
- source "${configdirserver}/_default.cfg"
- # Load the common.cfg config. If missing download it
- if [ ! -f "${configdirserver}/common.cfg" ]; then
- fn_fetch_config "lgsm/config-default/config-lgsm" "common-template.cfg" "${configdirserver}" "common.cfg" "${chmodx}" "nochmodx" "norun" "noforcedl" "nomd5"
- source "${configdirserver}/common.cfg"
- else
- source "${configdirserver}/common.cfg"
- fi
- # Load the instance.cfg config. If missing download it
- if [ ! -f "${configdirserver}/${servicename}.cfg" ]; then
- fn_fetch_config "lgsm/config-default/config-lgsm" "instance-template.cfg" "${configdirserver}" "${servicename}.cfg" "nochmodx" "norun" "noforcedl" "nomd5"
- source "${configdirserver}/${servicename}.cfg"
- else
- source "${configdirserver}/${servicename}.cfg"
- fi
- # Load the linuxgsm.sh in to tmpdir. If missing download it
- if [ ! -f "${tmpdir}/linuxgsm.sh" ]; then
- fn_fetch_file_github "" "linuxgsm.sh" "${tmpdir}" "chmodx" "norun" "noforcedl" "nomd5"
- fi
+ source "${configdirserver}/_default.cfg"
+ # Load the common.cfg config. If missing download it
+ if [ ! -f "${configdirserver}/common.cfg" ]; then
+ fn_fetch_config "lgsm/config-default/config-lgsm" "common-template.cfg" "${configdirserver}" "common.cfg" "${chmodx}" "nochmodx" "norun" "noforcedl" "nomd5"
+ source "${configdirserver}/common.cfg"
+ else
+ source "${configdirserver}/common.cfg"
+ fi
+ # Load the instance.cfg config. If missing download it
+ if [ ! -f "${configdirserver}/${servicename}.cfg" ]; then
+ fn_fetch_config "lgsm/config-default/config-lgsm" "instance-template.cfg" "${configdirserver}" "${servicename}.cfg" "nochmodx" "norun" "noforcedl" "nomd5"
+ source "${configdirserver}/${servicename}.cfg"
+ else
+ source "${configdirserver}/${servicename}.cfg"
+ fi
+ # Load the linuxgsm.sh in to tmpdir. If missing download it
+ if [ ! -f "${tmpdir}/linuxgsm.sh" ]; then
+ fn_fetch_file_github "" "linuxgsm.sh" "${tmpdir}" "chmodx" "norun" "noforcedl" "nomd5"
+ fi
+ fi
+ # Enables ANSI colours from core_messages.sh. Can be disabled with ansi=off
+ fn_ansi_loader
# Prevents running of core_exit.sh for Travis.
if [ "${travistest}" != "1" ]; then
getopt=$1
core_getopt.sh
fi
-fi
+fi
\ No newline at end of file
diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh
index 31d9205d0..7237f7d37 100644
--- a/tests/tests_fctrserver.sh
+++ b/tests/tests_fctrserver.sh
@@ -4,7 +4,7 @@
# License: MIT License, Copyright (c) 2017 Daniel Gibbs
# Purpose: Travis CI Tests: Factorio | Linux Game Server Management Script
# Contributors: https://github.com/GameServerManagers/LinuxGSM/graphs/contributors
-# Documentation: https://github.com/GameServerManagers/LinuxGSM/wiki
+# Documentation: https://docs.linuxgsm.com/
# Website: https://linuxgsm.com
travistest="1"
@@ -13,7 +13,7 @@ shortname="fctr"
gameservername="fctrserver"
rootdir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
-servicename="${selfname}"
+servicename="${gameservername}"
lockselfname=".${servicename}.lock"
lgsmdir="${rootdir}/lgsm"
logdir="${rootdir}/log"
@@ -69,7 +69,7 @@ fn_bootstrap_fetch_file(){
# If curl exists download file
if [ "$(basename "${curlpath}")" == "curl" ]; then
# trap to remove part downloaded files
- echo -ne " fetching ${local_filename}...\c"
+ echo -en " fetching ${local_filename}...\c"
curlcmd=$(${curlpath} -s --fail -L -o "${local_filedir}/${local_filename}" "${remote_fileurl}" 2>&1)
local exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -314,7 +314,7 @@ else
fi
if [ ! -f "${configdirserver}/_default.cfg" ]; then
mkdir -p "${configdirserver}"
- echo -ne " copying _default.cfg...\c"
+ echo -en " copying _default.cfg...\c"
cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -327,7 +327,7 @@ else
function_file_diff=$(diff -q "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg")
if [ "${function_file_diff}" != "" ]; then
fn_print_warn_nl "_default.cfg has been altered. reloading config."
- echo -ne " copying _default.cfg...\c"
+ echo -en " copying _default.cfg...\c"
cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -392,7 +392,7 @@ fn_setstatus(){
while [ "${requiredstatus}" != "${currentstatus}" ]; do
counter=$((counter+1))
fn_currentstatus_tmux
- echo -ne "New status: ${currentstatus}\\r"
+ echo -en "New status: ${currentstatus}\\r"
if [ "${requiredstatus}" == "ONLINE" ]; then
(command_start.sh > /dev/null 2>&1)
@@ -407,7 +407,7 @@ fn_setstatus(){
exit 1
fi
done
- echo -ne "New status: ${currentstatus}\\r"
+ echo -en "New status: ${currentstatus}\\r"
echo -e "\n"
echo "Test starting:"
echo ""
@@ -467,11 +467,16 @@ echo "Testing Branch: $TRAVIS_BRANCH"
echo "================================="
echo ""
-echo "0.1 - Create log dir's"
-echo "================================="
+echo "0.0 - Pre-test Tasks"
+echo "=================================================================="
echo "Description:"
echo "Create log dir's"
echo ""
+
+echo ""
+echo "0.1 - Create log dir's"
+echo "================================="
+echo ""
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
BASH_XTRACEFD="5"
@@ -500,11 +505,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.0 - start - no files"
+echo "1.0 - Pre-install tests"
+echo "=================================================================="
+echo ""
+
+echo "1.1 - start - no files"
echo "================================="
echo "Description:"
echo "test script reaction to missing server files."
-echo "Command: ./fctrserver start"
+echo "Command: ./${gameservername} start"
echo ""
# Allows for testing not on Travis CI
if [ ! -v TRAVIS ]; then
@@ -524,11 +533,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.1 - getopt"
+echo "1.2 - getopt"
echo "================================="
echo "Description:"
echo "displaying options messages."
-echo "Command: ./fctrserver"
+echo "Command: ./${gameservername}"
echo ""
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
@@ -542,11 +551,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.2 - getopt with incorrect args"
+echo "1.3 - getopt with incorrect args"
echo "================================="
echo "Description:"
echo "displaying options messages."
-echo "Command: ./fctrserver abc123"
+echo "Command: ./${gameservername} abc123"
echo ""
getopt="abc123"
(
@@ -560,12 +569,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "2.0 - Instalation"
+echo "=================================================================="
+
echo ""
echo "2.0 - install"
echo "================================="
echo "Description:"
echo "install ${gamename} server."
-echo "Command: ./fctrserver auto-install"
+echo "Command: ./${gameservername} auto-install"
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
BASH_XTRACEFD="5"
@@ -577,12 +590,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "3.0 - Start/Stop/Restart Tests"
+echo "=================================================================="
+
echo ""
echo "3.1 - start"
echo "================================="
echo "Description:"
echo "start ${gamename} server."
-echo "Command: ./fctrserver start"
+echo "Command: ./${gameservername} start"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -601,7 +618,7 @@ echo "3.2 - start - online"
echo "================================="
echo "Description:"
echo "start ${gamename} server while already running."
-echo "Command: ./fctrserver start"
+echo "Command: ./${gameservername} start"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -620,7 +637,7 @@ echo "3.3 - start - updateonstart"
echo "================================="
echo "Description:"
echo "will update server on start."
-echo "Command: ./fctrserver start"
+echo "Command: ./${gameservername} start"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -639,7 +656,7 @@ echo "3.4 - stop"
echo "================================="
echo "Description:"
echo "stop ${gamename} server."
-echo "Command: ./fctrserver stop"
+echo "Command: ./${gameservername} stop"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -658,7 +675,7 @@ echo "3.5 - stop - offline"
echo "================================="
echo "Description:"
echo "stop ${gamename} server while already stopped."
-echo "Command: ./fctrserver stop"
+echo "Command: ./${gameservername} stop"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -677,7 +694,7 @@ echo "3.6 - restart"
echo "================================="
echo "Description:"
echo "restart ${gamename}."
-echo "Command: ./fctrserver restart"
+echo "Command: ./${gameservername} restart"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -696,7 +713,7 @@ echo "3.7 - restart - offline"
echo "================================="
echo "Description:"
echo "restart ${gamename} while already stopped."
-echo "Command: ./fctrserver restart"
+echo "Command: ./${gameservername} restart"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -710,12 +727,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "4.0 - Update Tests"
+echo "=================================================================="
+
echo ""
echo "4.1 - update"
echo "================================="
echo "Description:"
echo "check for updates."
-echo "Command: ./fctrserver update"
+echo "Command: ./${gameservername} update"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -729,12 +750,20 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "5.0 - Monitor Tests"
+echo "=================================================================="
+
+echo ""
+echo "Server IP - Port: ${ip}:${port}"
+echo "Server IP - Query Port: ${ip}:${queryport}"
+
echo ""
echo "5.1 - monitor - online"
echo "================================="
echo "Description:"
echo "run monitor server while already running."
-echo "Command: ./fctrserver monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -753,7 +782,7 @@ echo "5.2 - monitor - offline - with lockfile"
echo "================================="
echo "Description:"
echo "run monitor while server is offline with lockfile."
-echo "Command: ./fctrserver monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="OFFLINE"
fn_setstatus
fn_print_info_nl "creating lockfile."
@@ -774,7 +803,7 @@ echo "5.3 - monitor - offline - no lockfile"
echo "================================="
echo "Description:"
echo "run monitor while server is offline with no lockfile."
-echo "Command: ./fctrserver monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -789,11 +818,34 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "6.0 - details"
+echo "5.4 - test-alert"
+echo "================================="
+echo "Description:"
+echo "run monitor while server is offline with no lockfile."
+echo "Command: ./${gameservername} test-alert"
+requiredstatus="OFFLINE"
+fn_setstatus
+(
+ exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
+ BASH_XTRACEFD="5"
+ set -x
+ command_test_alert.sh
+)
+fn_test_result_fail
+echo "run order"
+echo "================="
+grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+
+echo ""
+echo "6.0 - Details Tests"
+echo "=================================================================="
+
+echo ""
+echo "6.1 - details"
echo "================================="
echo "Description:"
echo "display details."
-echo "Command: ./fctrserver details"
+echo "Command: ./${gameservername} details"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -808,11 +860,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "6.1 - post details"
+echo "6.2 - postdetails"
echo "================================="
echo "Description:"
echo "post details."
-echo "Command: ./fctrserver postdetails"
+echo "Command: ./${gameservername} postdetails"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -827,11 +879,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "7.0 - backup"
+echo "7.0 - Backup Tests"
+echo "=================================================================="
+
+echo ""
+echo "7.1 - backup"
echo "================================="
echo "Description:"
echo "run a backup."
-echo "Command: ./fctrserver backup"
+echo "Command: ./${gameservername} backup"
requiredstatus="ONLINE"
fn_setstatus
echo "test de-activated until issue #1839 fixed"
@@ -842,11 +898,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.0 - dev - detect glibc"
+echo "8.0 - Development Tools Tests"
+echo "=================================================================="
+
+echo ""
+echo "8.1 - dev - detect glibc"
echo "================================="
echo "Description:"
echo "detect glibc."
-echo "Command: ./fctrserver detect-glibc"
+echo "Command: ./${gameservername} detect-glibc"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -861,11 +921,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.1 - dev - detect ldd"
+echo "8.2 - dev - detect ldd"
echo "================================="
echo "Description:"
echo "detect ldd."
-echo "Command: ./fctrserver detect-ldd"
+echo "Command: ./${gameservername} detect-ldd"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -880,11 +940,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.2 - dev - detect deps"
+echo "8.3 - dev - detect deps"
echo "================================="
echo "Description:"
echo "detect dependencies."
-echo "Command: ./fctrserver detect-deps"
+echo "Command: ./${gameservername} detect-deps"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -898,6 +958,25 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "8.4 - dev - query-raw"
+echo "================================="
+echo "Description:"
+echo "raw query output."
+echo "Command: ./${gameservername} query-raw"
+requiredstatus="ONLINE"
+fn_setstatus
+(
+ exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
+ BASH_XTRACEFD="5"
+ set -x
+ command_dev_query_raw.sh
+)
+fn_test_result_na
+echo "run order"
+echo "================="
+grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+
echo ""
echo "================================="
echo "Server Tests - Complete!"
diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh
index ead84d404..7d2df1e49 100644
--- a/tests/tests_jc2server.sh
+++ b/tests/tests_jc2server.sh
@@ -4,7 +4,7 @@
# License: MIT License, Copyright (c) 2017 Daniel Gibbs
# Purpose: Travis CI Tests: Just Cause 2 | Linux Game Server Management Script
# Contributors: https://github.com/GameServerManagers/LinuxGSM/graphs/contributors
-# Documentation: https://github.com/GameServerManagers/LinuxGSM/wiki
+# Documentation: https://docs.linuxgsm.com/
# Website: https://linuxgsm.com
travistest="1"
@@ -13,7 +13,7 @@ shortname="jc2"
gameservername="jc2server"
rootdir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
-servicename="${selfname}"
+servicename="${gameservername}"
lockselfname=".${servicename}.lock"
lgsmdir="${rootdir}/lgsm"
logdir="${rootdir}/log"
@@ -69,7 +69,7 @@ fn_bootstrap_fetch_file(){
# If curl exists download file
if [ "$(basename "${curlpath}")" == "curl" ]; then
# trap to remove part downloaded files
- echo -ne " fetching ${local_filename}...\c"
+ echo -en " fetching ${local_filename}...\c"
curlcmd=$(${curlpath} -s --fail -L -o "${local_filedir}/${local_filename}" "${remote_fileurl}" 2>&1)
local exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -314,7 +314,7 @@ else
fi
if [ ! -f "${configdirserver}/_default.cfg" ]; then
mkdir -p "${configdirserver}"
- echo -ne " copying _default.cfg...\c"
+ echo -en " copying _default.cfg...\c"
cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -327,7 +327,7 @@ else
function_file_diff=$(diff -q "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg")
if [ "${function_file_diff}" != "" ]; then
fn_print_warn_nl "_default.cfg has been altered. reloading config."
- echo -ne " copying _default.cfg...\c"
+ echo -en " copying _default.cfg...\c"
cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -359,7 +359,7 @@ else
fi
# Prevents running of core_exit.sh for Travis.
- if [ "${travistest}" != "1" ]; then
+ if [ -z "${travistest}" ]; then
getopt=$1
core_getopt.sh
fi
@@ -392,7 +392,7 @@ fn_setstatus(){
while [ "${requiredstatus}" != "${currentstatus}" ]; do
counter=$((counter+1))
fn_currentstatus_tmux
- echo -ne "New status: ${currentstatus}\\r"
+ echo -en "New status: ${currentstatus}\\r"
if [ "${requiredstatus}" == "ONLINE" ]; then
(command_start.sh > /dev/null 2>&1)
@@ -407,7 +407,7 @@ fn_setstatus(){
exit 1
fi
done
- echo -ne "New status: ${currentstatus}\\r"
+ echo -en "New status: ${currentstatus}\\r"
echo -e "\n"
echo "Test starting:"
echo ""
@@ -452,6 +452,14 @@ fn_test_result_fail(){
fi
}
+# test result n/a
+fn_test_result_na(){
+ echo "================================="
+ echo "Expected result: N/A"
+ echo "Actual result: N/A"
+ fn_print_fail_nl "TEST N/A"
+}
+
echo "================================="
echo "Travis CI Tests"
echo "Linux Game Server Manager"
@@ -467,11 +475,16 @@ echo "Testing Branch: $TRAVIS_BRANCH"
echo "================================="
echo ""
-echo "0.1 - Create log dir's"
-echo "================================="
+echo "0.0 - Pre-test Tasks"
+echo "=================================================================="
echo "Description:"
echo "Create log dir's"
echo ""
+
+echo ""
+echo "0.1 - Create log dir's"
+echo "================================="
+echo ""
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
BASH_XTRACEFD="5"
@@ -500,11 +513,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.0 - start - no files"
+echo "1.0 - Pre-install tests"
+echo "=================================================================="
+echo ""
+
+echo "1.1 - start - no files"
echo "================================="
echo "Description:"
echo "test script reaction to missing server files."
-echo "Command: ./jc2server start"
+echo "Command: ./${gameservername} start"
echo ""
# Allows for testing not on Travis CI
if [ ! -v TRAVIS ]; then
@@ -524,11 +541,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.1 - getopt"
+echo "1.2 - getopt"
echo "================================="
echo "Description:"
echo "displaying options messages."
-echo "Command: ./jc2server"
+echo "Command: ./${gameservername}"
echo ""
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
@@ -542,11 +559,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.2 - getopt with incorrect args"
+echo "1.3 - getopt with incorrect args"
echo "================================="
echo "Description:"
echo "displaying options messages."
-echo "Command: ./jc2server abc123"
+echo "Command: ./${gameservername} abc123"
echo ""
getopt="abc123"
(
@@ -560,12 +577,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "2.0 - Instalation"
+echo "=================================================================="
+
echo ""
echo "2.0 - install"
echo "================================="
echo "Description:"
echo "install ${gamename} server."
-echo "Command: ./jc2server auto-install"
+echo "Command: ./${gameservername} auto-install"
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
BASH_XTRACEFD="5"
@@ -577,12 +598,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "3.0 - Start/Stop/Restart Tests"
+echo "=================================================================="
+
echo ""
echo "3.1 - start"
echo "================================="
echo "Description:"
echo "start ${gamename} server."
-echo "Command: ./jc2server start"
+echo "Command: ./${gameservername} start"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -601,7 +626,7 @@ echo "3.2 - start - online"
echo "================================="
echo "Description:"
echo "start ${gamename} server while already running."
-echo "Command: ./jc2server start"
+echo "Command: ./${gameservername} start"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -620,7 +645,7 @@ echo "3.3 - start - updateonstart"
echo "================================="
echo "Description:"
echo "will update server on start."
-echo "Command: ./jc2server start"
+echo "Command: ./${gameservername} start"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -639,7 +664,7 @@ echo "3.4 - stop"
echo "================================="
echo "Description:"
echo "stop ${gamename} server."
-echo "Command: ./jc2server stop"
+echo "Command: ./${gameservername} stop"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -658,7 +683,7 @@ echo "3.5 - stop - offline"
echo "================================="
echo "Description:"
echo "stop ${gamename} server while already stopped."
-echo "Command: ./jc2server stop"
+echo "Command: ./${gameservername} stop"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -677,7 +702,7 @@ echo "3.6 - restart"
echo "================================="
echo "Description:"
echo "restart ${gamename}."
-echo "Command: ./jc2server restart"
+echo "Command: ./${gameservername} restart"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -696,7 +721,7 @@ echo "3.7 - restart - offline"
echo "================================="
echo "Description:"
echo "restart ${gamename} while already stopped."
-echo "Command: ./jc2server restart"
+echo "Command: ./${gameservername} restart"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -710,12 +735,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "4.0 - Update Tests"
+echo "=================================================================="
+
echo ""
echo "4.1 - update"
echo "================================="
echo "Description:"
echo "check for updates."
-echo "Command: ./jc2server update"
+echo "Command: ./${gameservername} update"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -879,12 +908,20 @@ travisip=$(ip -o -4 addr|grep eth0|awk '{print $4}'|grep -oe '\([0-9]\{1,3\}\.\?
sed -i "/BindIP/c\BindIP = \"${travisip}\"," "${serverfiles}/config.lua"
echo "IP: ${travisip}"
+echo ""
+echo "5.0 - Monitor Tests"
+echo "=================================================================="
+
+echo ""
+echo "Server IP - Port: ${ip}:${port}"
+echo "Server IP - Query Port: ${ip}:${queryport}"
+
echo ""
echo "5.1 - monitor - online"
echo "================================="
echo "Description:"
echo "run monitor server while already running."
-echo "Command: ./jc2server monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -903,7 +940,7 @@ echo "5.2 - monitor - offline - with lockfile"
echo "================================="
echo "Description:"
echo "run monitor while server is offline with lockfile."
-echo "Command: ./jc2server monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="OFFLINE"
fn_setstatus
fn_print_info_nl "creating lockfile."
@@ -924,7 +961,7 @@ echo "5.3 - monitor - offline - no lockfile"
echo "================================="
echo "Description:"
echo "run monitor while server is offline with no lockfile."
-echo "Command: ./jc2server monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -939,12 +976,12 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "5.4 - monitor - query_gsquery.py failure"
+echo "5.4 - test-alert"
echo "================================="
echo "Description:"
-echo "query_gsquery.py will fail to query port."
-echo "Command: ./jc2server monitor"
-requiredstatus="ONLINE"
+echo "run monitor while server is offline with no lockfile."
+echo "Command: ./${gameservername} test-alert"
+requiredstatus="OFFLINE"
fn_setstatus
cp "${servercfgfullpath}" "config.lua"
sed -i 's/[0-9]\+/0/' "${servercfgfullpath}"
@@ -952,7 +989,7 @@ sed -i 's/[0-9]\+/0/' "${servercfgfullpath}"
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
BASH_XTRACEFD="5"
set -x
- command_monitor.sh
+ command_test_alert.sh
)
fn_test_result_fail
echo "run order"
@@ -965,11 +1002,15 @@ cp -v "config.lua" "${servercfgfullpath}"
echo "================================="
echo ""
-echo "6.0 - details"
+echo "6.0 - Details Tests"
+echo "=================================================================="
+
+echo ""
+echo "6.1 - details"
echo "================================="
echo "Description:"
echo "display details."
-echo "Command: ./jc2server details"
+echo "Command: ./${gameservername} details"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -984,11 +1025,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "6.1 - post details"
+echo "6.2 - postdetails"
echo "================================="
echo "Description:"
echo "post details."
-echo "Command: ./jc2server postdetails"
+echo "Command: ./${gameservername} postdetails"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -1003,11 +1044,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "7.0 - backup"
+echo "7.0 - Backup Tests"
+echo "=================================================================="
+
+echo ""
+echo "7.1 - backup"
echo "================================="
echo "Description:"
echo "run a backup."
-echo "Command: ./jc2server backup"
+echo "Command: ./${gameservername} backup"
requiredstatus="ONLINE"
fn_setstatus
echo "test de-activated until issue #1839 fixed"
@@ -1018,11 +1063,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.0 - dev - detect glibc"
+echo "8.0 - Development Tools Tests"
+echo "=================================================================="
+
+echo ""
+echo "8.1 - dev - detect glibc"
echo "================================="
echo "Description:"
echo "detect glibc."
-echo "Command: ./jc2server detect-glibc"
+echo "Command: ./${gameservername} detect-glibc"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -1037,11 +1086,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.1 - dev - detect ldd"
+echo "8.2 - dev - detect ldd"
echo "================================="
echo "Description:"
echo "detect ldd."
-echo "Command: ./jc2server detect-ldd"
+echo "Command: ./${gameservername} detect-ldd"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -1056,11 +1105,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.2 - dev - detect deps"
+echo "8.3 - dev - detect deps"
echo "================================="
echo "Description:"
echo "detect dependencies."
-echo "Command: ./jc2server detect-deps"
+echo "Command: ./${gameservername} detect-deps"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -1074,6 +1123,25 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "8.4 - dev - query-raw"
+echo "================================="
+echo "Description:"
+echo "raw query output."
+echo "Command: ./${gameservername} query-raw"
+requiredstatus="ONLINE"
+fn_setstatus
+(
+ exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
+ BASH_XTRACEFD="5"
+ set -x
+ command_dev_query_raw.sh
+)
+fn_test_result_na
+echo "run order"
+echo "================="
+grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+
echo ""
echo "================================="
echo "Server Tests - Complete!"
diff --git a/tests/tests_shellcheck.sh b/tests/tests_shellcheck.sh
index d3d26c0c4..d01140758 100644
--- a/tests/tests_shellcheck.sh
+++ b/tests/tests_shellcheck.sh
@@ -4,8 +4,8 @@
# License: MIT License, Copyright (c) 2017 Daniel Gibbs
# Purpose: Travis CI Tests: Shellcheck | Linux Game Server Management Script
# Contributors: https://github.com/GameServerManagers/LinuxGSM/graphs/contributors
-# Documentation: https://github.com/GameServerManagers/LinuxGSM/wiki
-# Website: https://gameservermanagers.com
+# Documentation: https://docs.linuxgsm.com/
+# Website: https://linuxgsm.com
echo "================================="
echo "Travis CI Tests"
diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh
index f8594c134..235ed0fe0 100644
--- a/tests/tests_ts3server.sh
+++ b/tests/tests_ts3server.sh
@@ -4,7 +4,7 @@
# License: MIT License, Copyright (c) 2017 Daniel Gibbs
# Purpose: Travis CI Tests: Teamspeak 3 | Linux Game Server Management Script
# Contributors: https://github.com/GameServerManagers/LinuxGSM/graphs/contributors
-# Documentation: https://github.com/GameServerManagers/LinuxGSM/wiki
+# Documentation: https://docs.linuxgsm.com/
# Website: https://linuxgsm.com
travistest="1"
@@ -13,7 +13,7 @@ shortname="ts3"
gameservername="ts3server"
rootdir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
-servicename="${selfname}"
+servicename="${gameservername}"
lockselfname=".${servicename}.lock"
lgsmdir="${rootdir}/lgsm"
logdir="${rootdir}/log"
@@ -69,7 +69,7 @@ fn_bootstrap_fetch_file(){
# If curl exists download file
if [ "$(basename "${curlpath}")" == "curl" ]; then
# trap to remove part downloaded files
- echo -ne " fetching ${local_filename}...\c"
+ echo -en " fetching ${local_filename}...\c"
curlcmd=$(${curlpath} -s --fail -L -o "${local_filedir}/${local_filename}" "${remote_fileurl}" 2>&1)
local exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -314,7 +314,7 @@ else
fi
if [ ! -f "${configdirserver}/_default.cfg" ]; then
mkdir -p "${configdirserver}"
- echo -ne " copying _default.cfg...\c"
+ echo -en " copying _default.cfg...\c"
cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -327,7 +327,7 @@ else
function_file_diff=$(diff -q "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg")
if [ "${function_file_diff}" != "" ]; then
fn_print_warn_nl "_default.cfg has been altered. reloading config."
- echo -ne " copying _default.cfg...\c"
+ echo -en " copying _default.cfg...\c"
cp -R "${configdirdefault}/config-lgsm/${gameservername}/_default.cfg" "${configdirserver}/_default.cfg"
exitcode=$?
if [ ${exitcode} -ne 0 ]; then
@@ -359,7 +359,7 @@ else
fi
# Prevents running of core_exit.sh for Travis.
- if [ "${travistest}" != "1" ]; then
+ if [ -z "${travistest}" ]; then
getopt=$1
core_getopt.sh
fi
@@ -392,7 +392,7 @@ fn_setstatus(){
while [ "${requiredstatus}" != "${currentstatus}" ]; do
counter=$((counter+1))
fn_currentstatus_ts3
- echo -ne "New status: ${currentstatus}\\r"
+ echo -en "New status: ${currentstatus}\\r"
if [ "${requiredstatus}" == "ONLINE" ]; then
(command_start.sh > /dev/null 2>&1)
@@ -407,7 +407,7 @@ fn_setstatus(){
exit 1
fi
done
- echo -ne "New status: ${currentstatus}\\r"
+ echo -en "New status: ${currentstatus}\\r"
echo -e "\n"
echo "Test starting:"
echo ""
@@ -467,11 +467,16 @@ echo "Testing Branch: $TRAVIS_BRANCH"
echo "================================="
echo ""
-echo "0.1 - Create log dir's"
-echo "================================="
+echo "0.0 - Pre-test Tasks"
+echo "=================================================================="
echo "Description:"
echo "Create log dir's"
echo ""
+
+echo ""
+echo "0.1 - Create log dir's"
+echo "================================="
+echo ""
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
BASH_XTRACEFD="5"
@@ -500,11 +505,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.0 - start - no files"
+echo "1.0 - Pre-install tests"
+echo "=================================================================="
+echo ""
+
+echo "1.1 - start - no files"
echo "================================="
echo "Description:"
echo "test script reaction to missing server files."
-echo "Command: ./ts3server start"
+echo "Command: ./${gameservername} start"
echo ""
# Allows for testing not on Travis CI
if [ ! -v TRAVIS ]; then
@@ -524,11 +533,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.1 - getopt"
+echo "1.2 - getopt"
echo "================================="
echo "Description:"
echo "displaying options messages."
-echo "Command: ./ts3server"
+echo "Command: ./${gameservername}"
echo ""
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
@@ -542,11 +551,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "1.2 - getopt with incorrect args"
+echo "1.3 - getopt with incorrect args"
echo "================================="
echo "Description:"
echo "displaying options messages."
-echo "Command: ./ts3server abc123"
+echo "Command: ./${gameservername} abc123"
echo ""
getopt="abc123"
(
@@ -560,12 +569,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "2.0 - Instalation"
+echo "=================================================================="
+
echo ""
echo "2.0 - install"
echo "================================="
echo "Description:"
echo "install ${gamename} server."
-echo "Command: ./ts3server auto-install"
+echo "Command: ./${gameservername} auto-install"
(
exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
BASH_XTRACEFD="5"
@@ -577,12 +590,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "3.0 - Start/Stop/Restart Tests"
+echo "=================================================================="
+
echo ""
echo "3.1 - start"
echo "================================="
echo "Description:"
echo "start ${gamename} server."
-echo "Command: ./ts3server start"
+echo "Command: ./${gameservername} start"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -601,7 +618,7 @@ echo "3.2 - start - online"
echo "================================="
echo "Description:"
echo "start ${gamename} server while already running."
-echo "Command: ./ts3server start"
+echo "Command: ./${gameservername} start"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -620,7 +637,7 @@ echo "3.3 - start - updateonstart"
echo "================================="
echo "Description:"
echo "will update server on start."
-echo "Command: ./ts3server start"
+echo "Command: ./${gameservername} start"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -639,7 +656,7 @@ echo "3.4 - stop"
echo "================================="
echo "Description:"
echo "stop ${gamename} server."
-echo "Command: ./ts3server stop"
+echo "Command: ./${gameservername} stop"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -658,7 +675,7 @@ echo "3.5 - stop - offline"
echo "================================="
echo "Description:"
echo "stop ${gamename} server while already stopped."
-echo "Command: ./ts3server stop"
+echo "Command: ./${gameservername} stop"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -677,7 +694,7 @@ echo "3.6 - restart"
echo "================================="
echo "Description:"
echo "restart ${gamename}."
-echo "Command: ./ts3server restart"
+echo "Command: ./${gameservername} restart"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -696,7 +713,7 @@ echo "3.7 - restart - offline"
echo "================================="
echo "Description:"
echo "restart ${gamename} while already stopped."
-echo "Command: ./ts3server restart"
+echo "Command: ./${gameservername} restart"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -710,12 +727,16 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "4.0 - Update Tests"
+echo "=================================================================="
+
echo ""
echo "4.1 - update"
echo "================================="
echo "Description:"
echo "check for updates."
-echo "Command: ./ts3server update"
+echo "Command: ./${gameservername} update"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -729,12 +750,20 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "5.0 - Monitor Tests"
+echo "=================================================================="
+
+echo ""
+echo "Server IP - Port: ${ip}:${port}"
+echo "Server IP - Query Port: ${ip}:${queryport}"
+
echo ""
echo "5.1 - monitor - online"
echo "================================="
echo "Description:"
echo "run monitor server while already running."
-echo "Command: ./ts3server monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -753,7 +782,7 @@ echo "5.2 - monitor - offline - with lockfile"
echo "================================="
echo "Description:"
echo "run monitor while server is offline with lockfile."
-echo "Command: ./ts3server monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="OFFLINE"
fn_setstatus
fn_print_info_nl "creating lockfile."
@@ -774,7 +803,7 @@ echo "5.3 - monitor - offline - no lockfile"
echo "================================="
echo "Description:"
echo "run monitor while server is offline with no lockfile."
-echo "Command: ./ts3server monitor"
+echo "Command: ./${gameservername} monitor"
requiredstatus="OFFLINE"
fn_setstatus
(
@@ -789,11 +818,34 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "6.0 - details"
+echo "5.4 - test-alert"
+echo "================================="
+echo "Description:"
+echo "run monitor while server is offline with no lockfile."
+echo "Command: ./${gameservername} test-alert"
+requiredstatus="OFFLINE"
+fn_setstatus
+(
+ exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
+ BASH_XTRACEFD="5"
+ set -x
+ command_test_alert.sh
+)
+fn_test_result_fail
+echo "run order"
+echo "================="
+grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+
+echo ""
+echo "6.0 - Details Tests"
+echo "=================================================================="
+
+echo ""
+echo "6.1 - details"
echo "================================="
echo "Description:"
echo "display details."
-echo "Command: ./ts3server details"
+echo "Command: ./${gameservername} details"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -808,11 +860,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "6.1 - post details"
+echo "6.2 - postdetails"
echo "================================="
echo "Description:"
echo "post details."
-echo "Command: ./ts3server postdetails"
+echo "Command: ./${gameservername} postdetails"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -827,11 +879,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "7.0 - backup"
+echo "7.0 - Backup Tests"
+echo "=================================================================="
+
+echo ""
+echo "7.1 - backup"
echo "================================="
echo "Description:"
echo "run a backup."
-echo "Command: ./jc2server backup"
+echo "Command: ./${gameservername} backup"
requiredstatus="ONLINE"
fn_setstatus
echo "test de-activated until issue #1839 fixed"
@@ -842,11 +898,15 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.0 - dev - detect glibc"
+echo "8.0 - Development Tools Tests"
+echo "=================================================================="
+
+echo ""
+echo "8.1 - dev - detect glibc"
echo "================================="
echo "Description:"
echo "detect glibc."
-echo "Command: ./jc2server detect-glibc"
+echo "Command: ./${gameservername} detect-glibc"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -861,11 +921,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.1 - dev - detect ldd"
+echo "8.2 - dev - detect ldd"
echo "================================="
echo "Description:"
echo "detect ldd."
-echo "Command: ./jc2server detect-ldd"
+echo "Command: ./${gameservername} detect-ldd"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -880,11 +940,11 @@ echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
echo ""
-echo "8.2 - dev - detect deps"
+echo "8.3 - dev - detect deps"
echo "================================="
echo "Description:"
echo "detect dependencies."
-echo "Command: ./jc2server detect-deps"
+echo "Command: ./${gameservername} detect-deps"
requiredstatus="ONLINE"
fn_setstatus
(
@@ -898,6 +958,25 @@ echo "run order"
echo "================="
grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+echo ""
+echo "8.4 - dev - query-raw"
+echo "================================="
+echo "Description:"
+echo "raw query output."
+echo "Command: ./${gameservername} query-raw"
+requiredstatus="ONLINE"
+fn_setstatus
+(
+ exec 5>"${TRAVIS_BUILD_DIR}/dev-debug.log"
+ BASH_XTRACEFD="5"
+ set -x
+ command_dev_query_raw.sh
+)
+fn_test_result_na
+echo "run order"
+echo "================="
+grep functionfile= "${TRAVIS_BUILD_DIR}/dev-debug.log" | sed 's/functionfile=//g'
+
echo ""
echo "================================="
echo "Server Tests - Complete!"