diff --git a/bzflag/cmd.sh b/bzflag/cmd.sh new file mode 100644 index 0000000..02718f2 --- /dev/null +++ b/bzflag/cmd.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +cd ~/ + +echo "make dir" +mkdir bzflag + +echo "go into dir" +cd bzflag + +echo "Install snap" +sudo apt install snapd + +echo "Install bzflag" +sudo snap install bzflag + + +echo "starting server" +nohup bzflag.bzfs -ms 5 -j -t +r +f SW +f SB{2} +f GM +f ST{3} -d -d -d &>/dev/null & + +#nohup bzflag.bzfs -conf /home/onfoss/bzflag/config.txt &>/dev/null & +#nohup /snap/bin/bzflag.bzfs &>/dev/null & + +# tell the game to be public, and what text to use in the description field in the public list +#-public "YOUR_NAME_HEREs simple tutorial server" + +## allow for 5 shots at a time per tank +#-ms 5 +# +## allow jumping +#-j + +## allow teleporters +#-t + +## allow ricochet +#+r + +## add 1 shockwave flag +#+f SW + +## add 2 super bullet flags +#+f SB{2} + +## add a GM flag +#+f GM + +## add 3 stealth flags +#+f ST{3} + +## add in some debug logging flags to show status and any errors +#-d +#-d +#-d diff --git a/bzflag/config.txt b/bzflag/config.txt new file mode 100644 index 0000000..2cf5450 --- /dev/null +++ b/bzflag/config.txt @@ -0,0 +1,32 @@ +#tell the game to be public, and what text to use in the description field in the public list +#-public YOUR_NAME_HEREs simple tutorial server + +# allow for 4 shots at a time per tank +-ms 4 + +# allow jumping +-j + +# allow teleporters +-t + +# allow ricochet ++r + +# add 1 shockwave flag ++f SW + +# add 2 super bullet flags ++f SB{2} + +# add a GM flag ++f GM-conf myconfig.txt + +# add 3 stealth flags ++f ST{3} + +# add in some debug logging flags to show status and any errors +-d +-d +-d + diff --git a/debian11.sh b/debian11.sh new file mode 100644 index 0000000..bed60f7 --- /dev/null +++ b/debian11.sh @@ -0,0 +1,33 @@ +#!/bin/bash + +apt update -y +apt upgrade -y + +apt install git -y +apt install tmux -y +apt install unzip -y +apt install wget -y +apt install vim -y +apt install openjdk-11-jdk -y +apt install xz-utils -y +apt install python3-venv python3-pip -y +apt install libjpeg-dev zlib1g-dev -y +apt install fuse -y +apt install hedgewars -y +apt install snapd -y +snap install bzflag -y + + +adduser onfoss + +su - onfoss + +cd ~/ + +mkdir git + +cd git + +git clone https://git.hribhrib.at/c/onFOSS-LAN-Serverconfiguration.git + + diff --git a/hedgewars/cmd.sh b/hedgewars/cmd.sh new file mode 100644 index 0000000..14e4954 --- /dev/null +++ b/hedgewars/cmd.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +echo "Install hedgwars" +sudo apt install hedgewars + +echo "starting server" +nohup /usr/lib/hedgewars/bin/hedgewars-server &>/dev/null & diff --git a/mindustry/cmd.sh b/mindustry/cmd.sh new file mode 100644 index 0000000..cfea17f --- /dev/null +++ b/mindustry/cmd.sh @@ -0,0 +1,60 @@ +#!/bin/bash + +#Warning, this script is not fully automatic + +cd ~/ + +sudo apt insall openjdk-11-jdk + +echo "make new directory" +mkdir mindustry +echo "going into directory" +cd mindustry +echo "downloading servers" +wget https://owncloud.hribhrib.at/index.php/s/PXmojw1k2WWI2Jr/download -O servers.tar.xz +echo "download finished" + +echo "unzip" +tar xf servers.tar.xz + +echo "enter dir" +cd servers/ + +echo "unzip stable" +unzip -d stable mindustry-server.zip + +echo "unzip unstable" +unzip -d unstable mindustry-server-unstable.zip + +echo "starting stable server" +tmux +cd ~/mindustry/servers/stable/ +./run_server.sh + +config autosave true +config autosaveSpacing 120 +host + +#Ctrl-b + d +#tmux attach-session -t 0 + + +echo "starting unstable server" +cd ~/mindustry/servers/unstable/ +./run_server.sh + +config port 6568 +config autosave true +config autosaveSpacing 120 +host + +#Ctrl-b + d +#tmux attach-session -t 0 +echo "started server" + + + + + + + diff --git a/openhv/cmd.sh b/openhv/cmd.sh new file mode 100644 index 0000000..2235ac8 --- /dev/null +++ b/openhv/cmd.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +cd ~/ + +apt install fuse + +echo "make new directory" +mkdir openra +echo "going into directory" +cd openra +echo "downloading game" +wget https://github.com/OpenHV/OpenHV/releases/download/20210910/OpenHV-20210910-x86_64.AppImage +echo "download finished" +echo "change permission" +chmod u+x OpenHV-20210910-x86_64.AppImage + +echo "starting server" +nohup ./OpenHV-20210910-x86_64.AppImage --server Server.Name="onFOSS-LAN #1" Server.ListenPort=1234 Server.AdvertiseOnline=False &>/dev/null & +nohup ./OpenHV-20210910-x86_64.AppImage --server Server.Name="onFOSS-LAN #2" Server.ListenPort=1235 Server.AdvertiseOnline=False &>/dev/null & +nohup ./OpenHV-20210910-x86_64.AppImage --server Server.Name="onFOSS-LAN #3" Server.ListenPort=1236 Server.AdvertiseOnline=False &>/dev/null & +nohup ./OpenHV-20210910-x86_64.AppImage --server Server.Name="onFOSS-LAN #4" Server.ListenPort=1237 Server.AdvertiseOnline=False &>/dev/null & + +echo "started server" diff --git a/openspades/cmd.sh b/openspades/cmd.sh new file mode 100644 index 0000000..1560c01 --- /dev/null +++ b/openspades/cmd.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +cd ~/ + +echo "install game" +pip3 install piqueserver +source ~/.profile + +echo "init conf files" + +piqueserver --copy-config + +echo "cp config" + +cp ~/git/onFOSS-LAN-Serverconfiguration/openspades/config.toml ~/.config/piqueserver/ + +echo "start server" + +nohup piqueserver &>/dev/null & + diff --git a/openspades/config.toml b/openspades/config.toml new file mode 100644 index 0000000..39d559f --- /dev/null +++ b/openspades/config.toml @@ -0,0 +1,365 @@ +# server name - displayed on master server +name = "onFOSS" + +# messages sent when user joins server +motd = [ + "Welcome to %(server_name)s", + "Map: %(map_name)s by %(map_author)s", + "Game mode: %(game_mode)s", + "Server powered by piqueserver and buildandshoot.com" +] + +# info displaying when user types the /help command +# String interpolation is allowed. Possible values are: +# 'server_name', 'map_name', 'map_author', 'map_description', 'game_mode' +help = [ + "Server name: %(server_name)s", "Map: %(map_name)s by %(map_author)s", + "Game mode: %(game_mode)s", + "/commands Prints all available commands", + "/help Gives description and usage info for a command", + "/help Prints this message" +] + +# list of messages to send when the user sends the /rules command +rules = [ + "Cheating isn't welcome. Griefing is frowned upon. Have fun!" +] + +# random lines from this list are shown at a specified frequency in-game +tips = [ + "You are playing %(game_mode)s on %(server_name)s", + "Type /help for info & commands" +] + +# how often the tips should display +tips_frequency = "5min" + +# SERVER +# set this if the server should register on the master server list +master = false + +# limit max number of players who can join. +# must be 0 < max_players <= 32 +max_players = 32 + +# messages from the server in-game will be prefixed with this string +server_prefix = "" + +# limit number of players who can connect from the same ip address +# 0 disables the limit (default: 0) +#max_connections_per_ip = 0 +max_connections_per_ip = 3 + +# port the server will listen on (default: 32887) +port = 32887 + +# interface the server will listen on (default: all interfaces) +# TODO: document enet specific strangeness +network_interface = "" + +# url that is used to request the server's public ip address +# it should be a url that returns only the requester's public ip in the response body +# Set to an empty string if you wish to disable ip requesting +# WARNING: do not change unless you are sure you know what you are doing +# other tools if the default is down: +# https://icanhazip.com/ +# https://api.ipify.org +#ip_getter = "https://services.buildandshoot.com/getip" + +# note: scripts are loaded in order entered here. Some scripts may depend on +# other scripts being loaded before them. +scripts = [ + "piqueserver.scripts.rollback", + "piqueserver.scripts.protect", + "piqueserver.scripts.map_extensions", + "piqueserver.scripts.disco", + "piqueserver.scripts.votekick", + "piqueserver.scripts.trusted", + "piqueserver.scripts.ratio", + "piqueserver.scripts.passreload", + "piqueserver.scripts.blockinfo", + "piqueserver.scripts.squad", + "piqueserver.scripts.afk" +] + +# number of /login attempts allowed before players are auto-kicked (default: 1) +login_retries = 3 + +# MAP +# maps listed in the rotation +# these names are the name of the map vxl/txt files without the file extensions +# eg. if you have hallway.txt and hallway.vxl, you can add "hallway" to the rotation +# Note: you can still load a map in-game that isn't on this rotation list with commands +rotation = [ + # "classicgen", + "random" +] + +# whether next map for a new game will be chosen at random +# if this is false, maps will cycle in order listed in the rotation list +random_rotation = false + +# GAME +# set the game mode. "ctf" and "tc" are built in game modes; others are custom +# game modes specified by python module or python script in the config game_modes +# directory (without the '.py' extension). +# Examples: "piqueserver.game_modes.push", "mygame" (where you have config/game_modes/mygame.py) +game_mode = "ctf" + +# default time limit to set per map. When the time limit runs out, the map rotation is advanced +default_time_limit = "2hours" +# advances the map rotation when the game ends, if set to true +advance_on_win = true + +# time between player respawn waves +# (default: 8 seconds) +respawn_time = "16sec" + +# if respawns should happen in waves, or respawn_time seconds after the players death +respawn_waves = true + +# whether friendly fire is allowed by default +friendly_fire = false + +# allow friendly fire if player destroys blocks (helpful if you want to kill +# griefers +friendly_fire_on_grief = true + +# duration a player is vulnerable to friendly fire if +# friendly_fire_on_grief enabled +grief_friendly_fire_time = "5sec" + +# If friendly fire should be enabled for the spade too. This is disabled by default, +# because it frequently causes accidental teamkills +spade_teamkills_on_grief = false + +# If 0, any permutation of teams is allowed. If 1 or greater, team balance is enforced with the algorithm: +# `abs(team1_players - team2_players) <= balanced_teams` +# The value is thus the maximum player number difference allowed between teams +balanced_teams = 2 + +# time players must wait before switching teams again +# 0sec disables cooldown time +teamswitch_interval = "0sec" +# whether players are allowed to switch teams at all +teamswitch_allowed = true + +# attempt to detect speedhacking. This might cause false positives. +speedhack_detect = true + +# distance the server tolerates between the place it thinks the client is to where the client actually is. +rubberband_distance = 10 + +# The amount of damage dealt by a melee hit +melee_damage = 80 + +# controls whether players receive damage by falling from height +fall_damage = true + +# disable users ability to affect the map's initial blocks +user_blocks_only = false + +# puts the player into god build mode automatically when entering god mode, if set to true +set_god_build = false + +# time in seconds remaining when the time remaining should be announced +time_announcements = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 30, 60, 120, 180, 240, 300, 600, 900, 1200, 1800, 2400, 3000] + +# number of intel captures to win the game (default: 10) +cap_limit = 10 + + +# Set this to true to automatically log all players in as admin on join. +# Possibly useful for testing purposes. +#everyone_is_admin = false + +[team1] +# information about the team1 +# name of the team to be displayed in-game +name = "Blue" +# color of the players +color = [ 0, 0, 255] + +[team2] +# information about team2 - same settings as for team1 +name = "Green" +color = [ 0, 255, 0] + +[passwords] +# server management passwords +# players can login using these to execute privileged commands (kicking, +# changing maps, etc.) +# authenticate with: /login +# supports a list of passwords so you can give different passwords to different +# people for easy password management. +# logging in as admin or trusted also disables being votekicked (if that script is enabled) +# For security reasons, logins are disabled by default. +# +#admin = ["adminpass1", "adminpass2"] +#moderator = ["modpass"] +#guard = ["guardpass"] +#trusted = ["trustedpass"] + + +[bans] +# default duration a banned player will be banned for +default_duration = "1day" + +# location the bans are saved and loaded from (relative to the config +# directory) +#file = "bans.txt" + +# Ban publish allows you to synchronize bans between servers. When enabled, +# the server listens on the given port and respnds to any requests with a list +# of bans +#publish = false +#publish_port = 32885 + +# Bansubscribe allows you to inherit bans from another server with banpublish enabled. +# `url` is the URL returning the json list, `whitelist` is a list of names which should +# be exempt from the filter +#bansubscribe = [ +# { url = "http://www.blacklist.spadille.net/subscribe.json", whitelist = []}, +#] + + + +[rights] +# Rights allow you to specify the roles available and what permissions they have +moderator = [ + "advancemap", "cancel", "dban", "fog", + "from", "hackinfo", "hban", + "invisible", "ip", "kick", "kickafk", + "kill", "map", "master", "move", "moves", + "mute", "resetgame", "switch", "teleport", + "teleport_other", "tpsilent", "togglebuild", "togglekill", + "togglevotekick", "trust", "undoban", "unmute", + "unstick", "where", "whowas" +] +guard = [ + "cancel", "fog", "from", + "hackinfo", "hban", "ip", "kick", + "kickafk", "kill", "move", "moves", "mute", + "switch", "teleport", "teleport_other", "togglebuild", + "togglekill", "togglevotekick", "trust", "unmute", + "unstick", "where", "whowas" +] + +[logging] +# set log level +# various log levels in decending order: debug, info, warn, error, critical +loglevel = "info" + +# the logfile to log to if logging enabled +# relative paths are resolved relative to the config directory; parent +# directories are created as necessary +logfile = "./logs/log.txt" + +# writes a new log file each day +rotate_daily = true + +profile = false + + +# the web server which provides a json api and webpage to view a summary of the +# game (including map, players, and server information) +[status_server] +enabled = true +port = 32886 +logging = true + + +# settings for the irc chatbot that can report server events and respond to commands +# disabled by default +[irc] +enabled = false +nickname = "piqueserver" +username = "piqueserver" +realname = "piqueserver" +server = "irc.quakenet.org" +port = 6667 +channel = "#MyServerChannel" +password = "" + +# prefixes irc users must use for bot to process as command or to send to game chat +commandprefix = "!" +chatprefix = "." + + + +[ssh] +# enable the ssh manhole server +# gives ssh access to a python repl connected to the running server +# Do not enable unless you are sure you want to use this! +#enabled = false +#port = 32887 + +[ssh.users] +# user = password +# pairs for credentials allowed to login to the ssh server +# WARNING: keep these credentials secure since this gives console access to the server +# on which piqueserver is running! +#user1 = "ssh_pass_change_this" + + +############################################################################### +# Script specific config +# +# Each section corresponds to the script that uses said section. These +# settings are only used by enabled scripts, and will be ignored by the core +# server. +############################################################################### + + +# piqueserver.scripts.squad +[squad] +respawn_time = "32sec" +size = 4 +auto_squad = false + + +# piqueserver.scripts.savemap +# allows automatically saving a snapshot of the map on server close +[savemap] + +# automatically load the saved map on map load +load_saved_map = false + + +# piqueserver.scripts.rollback +[rollback] +rollback_on_game_end = false + + +# piqueserver.scripts.afk +[afk] +# duration player must be inactive for to be auto-kicked for afk +time_limit = "30min" + + +# piqueserver.scripts.votekick +[votekick] + +# percentage of total number of players in the server required to vote to +# successfully votekick a player +percentage = 35 + +# duration that votekicked player will be banned for +ban_duration = "30min" + +public_votes = true + + +# piqueserver.scripts.votemap +[votemap] + +# publically display which map players voted for +public_votes = true + +# extend current map (meaning?) +extension_time = "15min" + +# players can initiate voting for a new map with /votemap +player_driven = false +autoschedule = false +percentage = 80 diff --git a/stk/cmd.sh b/stk/cmd.sh new file mode 100644 index 0000000..219b2d2 --- /dev/null +++ b/stk/cmd.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +cd ~/ + +echo "make new directory" +mkdir stk +echo "going into directory" +cd stk +echo "downloading game" +wget https://github.com/supertuxkart/stk-code/releases/download/1.3/SuperTuxKart-1.3-linux-64bit.tar.xz +echo "download finished" + +echo "unzip" +tar xf SuperTuxKart-1.3-linux-64bit.tar.xz + +echo "enter dir" +cd SuperTuxKart-1.3-linux-64bit/ + +echo "create config TODO" +wget https://owncloud.hribhrib.at/index.php/s/nXJ8nhewqfTElsx/download + +mv download config.xml + +echo "starting server" +nohup ./run_game.sh --server-config=/home/onfoss/stk/SuperTuxKart-1.3-linux-64bit/config.xml --lan-server=onFOSS &>/dev/null & + +#nohup ./run_game.sh --server-config=/home/c/Downloads/stktry/SuperTuxKart-1.3-linux-64bit/config.xml --lan-server=onFOSS &>/dev/null & +echo "started server" + + diff --git a/stk/config.xml b/stk/config.xml new file mode 100644 index 0000000..75be701 --- /dev/null +++ b/stk/config.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/teeworlds/cmd.sh b/teeworlds/cmd.sh new file mode 100644 index 0000000..38ffd67 --- /dev/null +++ b/teeworlds/cmd.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +cd ~/ + +echo "make new directory" +mkdir teeworlds + +echo "downloading game" +wget https://github.com/teeworlds/teeworlds/releases/download/0.7.5/teeworlds-0.7.5-linux_x86_64.tar.gz + +echo "extract files" +tar -xf teeworlds-0.7.5-linux_x86_64.tar.gz + +echo "cd into dir" +cd teeworlds-0.7.5-linux_x86_64 + +echo "downloading config" +cp ~/git/onFOSS-LAN-Serverconfiguration/teeworlds/config/* . + +echo "starting fun-Server" +nohup ./teeworlds_srv -f serverconfig.cfg &>/dev/null & + + +echo "starting tournament-Servers" +nohup ./teeworlds_srv -f tournament_1.cfg &>/dev/null & +nohup ./teeworlds_srv -f tournament_2.cfg &>/dev/null & +nohup ./teeworlds_srv -f tournament_3.cfg &>/dev/null & + diff --git a/teeworlds/configs/ctf.cfg b/teeworlds/configs/ctf.cfg new file mode 100644 index 0000000..b4e99b8 --- /dev/null +++ b/teeworlds/configs/ctf.cfg @@ -0,0 +1,5 @@ +sv_gametype ctf +sv_powerups 1 +sv_scorelimit 500 +sv_timelimit 0 +sv_tournament_mode 0 diff --git a/teeworlds/configs/dm.cfg b/teeworlds/configs/dm.cfg new file mode 100644 index 0000000..92e7300 --- /dev/null +++ b/teeworlds/configs/dm.cfg @@ -0,0 +1,5 @@ +sv_gametype dm +sv_powerups 1 +sv_scorelimit 20 +sv_timelimit 0 +sv_tournament_mode 0 diff --git a/teeworlds/configs/serverconfig.cfg b/teeworlds/configs/serverconfig.cfg new file mode 100644 index 0000000..9737863 --- /dev/null +++ b/teeworlds/configs/serverconfig.cfg @@ -0,0 +1,34 @@ +sv_name onFOSS +sv_map dm3 +sv_scorelimit 20 +sv_timelimit 10 +sv_gametype dm +sv_motd "HAVE FUN!\nTo change the gamemode you have to reload or change the map to apply the change.\n\nonFOSS.hribhrib.at" +sv_max_clients 64 +sv_spectator_slots 16 + +sv_register 0 + +sv_rcon_password onFOSS + +sv_vote_kick 1 +sv_vote_map 1 + +sv_maprotation dm2,dm3,dm6,dm7 + +add_vote "Restart Round" "restart" +add_vote "Reload Map" "reload" +add_vote "Change Gamemode to DM" "exec dm.cfg" +add_vote "Change Gamemode to CTF" "exec ctf.cfg" +add_vote "Change Gamemode to TDM" "exec tdm.cfg" +add_vote "Change Map to ctf1" "change_map ctf1" +add_vote "Change Map to ctf2" "change_map ctf2" +add_vote "Change Map to ctf3" "change_map ctf3" +add_vote "Change Map to ctf4" "change_map ctf4" +add_vote "Change Map to ctf5" "change_map ctf5" +add_vote "Change Map to dm1" "change_map dm1" +add_vote "Change Map to dm2" "change_map dm2" +add_vote "Change Map to dm6" "change_map dm6" +add_vote "Change Map to dm7" "change_map dm7" +add_vote "Change Map to dm8" "change_map dm8" +add_vote "Change Map to dm9" "change_map dm9" diff --git a/teeworlds/configs/tdm.cfg b/teeworlds/configs/tdm.cfg new file mode 100644 index 0000000..eea197b --- /dev/null +++ b/teeworlds/configs/tdm.cfg @@ -0,0 +1,4 @@ +sv_gametype tdm +sv_powerups 1 +sv_scorelimit 50 +sv_timelimit 0 diff --git a/teeworlds/configs/tournament1.cfg b/teeworlds/configs/tournament1.cfg new file mode 100644 index 0000000..131ab47 --- /dev/null +++ b/teeworlds/configs/tournament1.cfg @@ -0,0 +1,25 @@ +sv_name onFOSS:Tournament1 +sv_map dm1 +sv_scorelimit 15 +sv_timelimit 0 +sv_gametype tdm +sv_powerups 0 +sv_motd "HAVE FUN and PLAY FAIR!\n\nonFOSS.hribhrib.at" +sv_max_clients 32 +sv_player_slots 2 +sv_tournament_mode 1 +sv_silent_spectator_mode 1 +sv_port 8304 + +sv_register 0 + +sv_vote_kick 0 +sv_vote_map 1 + +sv_maprotation dm3,dm9,dm1 + +add_vote "Restart Round" "restart" +add_vote "Reload Map" "reload" +add_vote "Change Map to dm1" "change_map dm1" +add_vote "Change Map to dm3" "change_map dm3" +add_vote "Change Map to dm9" "change_map dm9" diff --git a/teeworlds/configs/tournament_2.cfg b/teeworlds/configs/tournament_2.cfg new file mode 100644 index 0000000..1e6b8d7 --- /dev/null +++ b/teeworlds/configs/tournament_2.cfg @@ -0,0 +1,25 @@ +sv_name onFOSS:Tournament2 +sv_map dm1 +sv_scorelimit 15 +sv_timelimit 0 +sv_gametype tdm +sv_powerups 0 +sv_motd "HAVE FUN and PLAY FAIR!\n\nonFOSS.hribhrib.at" +sv_max_clients 32 +sv_player_slots 2 +sv_tournament_mode 1 +sv_silent_spectator_mode 1 +sv_port 8305 + +sv_register 0 + +sv_vote_kick 0 +sv_vote_map 1 + +sv_maprotation dm3,dm9,dm1 + +add_vote "Restart Round" "restart" +add_vote "Reload Map" "reload" +add_vote "Change Map to dm1" "change_map dm1" +add_vote "Change Map to dm3" "change_map dm3" +add_vote "Change Map to dm9" "change_map dm9" diff --git a/teeworlds/configs/tournament_3.cfg b/teeworlds/configs/tournament_3.cfg new file mode 100644 index 0000000..d626a07 --- /dev/null +++ b/teeworlds/configs/tournament_3.cfg @@ -0,0 +1,25 @@ +sv_name onFOSS:Tournament3 +sv_map dm1 +sv_scorelimit 15 +sv_timelimit 0 +sv_gametype tdm +sv_powerups 0 +sv_motd "HAVE FUN and PLAY FAIR!\n\nonFOSS.hribhrib.at" +sv_max_clients 32 +sv_player_slots 2 +sv_tournament_mode 1 +sv_silent_spectator_mode 1 +sv_port 8306 + +sv_register 0 + +sv_vote_kick 0 +sv_vote_map 1 + +sv_maprotation dm3,dm9,dm1 + +add_vote "Restart Round" "restart" +add_vote "Reload Map" "reload" +add_vote "Change Map to dm1" "change_map dm1" +add_vote "Change Map to dm3" "change_map dm3" +add_vote "Change Map to dm9" "change_map dm9" diff --git a/teeworlds/readme b/teeworlds/readme new file mode 100644 index 0000000..f8daf9b --- /dev/null +++ b/teeworlds/readme @@ -0,0 +1,7 @@ +https://www.teeworlds.com/?page=docs&wiki=server_setup +https://www.teeworlds.com/?page=docs&wiki=server_commands +https://www.teeworlds.com/?page=docs&wiki=server_settings + +start: +./teeworlds_srv -f serverconfig.cfg + diff --git a/unvanquished/cmd.sh b/unvanquished/cmd.sh new file mode 100644 index 0000000..b251f39 --- /dev/null +++ b/unvanquished/cmd.sh @@ -0,0 +1,57 @@ +#!/bin/bash + +cd ~/ + +echo "make new directory" +mkdir unvanquished + +echo "cd directory" +cd unvanquished + +echo "start download" + +wget https://github.com/Unvanquished/Unvanquished/releases/download/v0.52.1/unvanquished_0.52.1.zip + +echo "Extract this archive" + +unzip unvanquished_0.52.1.zip + +echo "Enter the unvanquished folder" + +cd unvanquished_0.52.1 + +echo "Extract the engine archive" + +unzip linux-amd64.zip + +echo "Create a script to ease starting a server, create the file and give it proper permissions" + +touch startsrv +chmod +x startsrv + +echo "Write the script content this way" + +echo './daemonded -homepath home +exec server.cfg' > startsrv + +echo "create a folder called home in the unvanquished folder" + +mkdir home + +echo "Create a folder called config in the home folder" + +mkdir home/config + +echo "copy the config/server.cfg sample file" + +cp ~/git/onFOSS-LAN-Serverconfiguration/unvanquished/server.cfg home/config/ + +echo "Create a folder called game in the home folder" + +mkdir home/game + +echo "copy the game/maprotation.cfg sample file" +cp ~/git/onFOSS-LAN-Serverconfiguration/unvanquished/maprotation.cfg home/game/ + + +nohup ./startsrv &>/dev/null & + diff --git a/unvanquished/maprotation.cfg b/unvanquished/maprotation.cfg new file mode 100644 index 0000000..61a703e --- /dev/null +++ b/unvanquished/maprotation.cfg @@ -0,0 +1,9 @@ +// For a complete example, see +// https://github.com/UnvanquishedAssets/unvanquished_src.dpkdir/blob/master/default/maprotation.cfg +// This rotation just delegates to that one. +// +// "rotation1' is designated by the default value of the cvar g_initialMapRotation. +rotation1 +{ + goto defaultRotation +} diff --git a/unvanquished/server.cfg b/unvanquished/server.cfg new file mode 100644 index 0000000..a106bd4 --- /dev/null +++ b/unvanquished/server.cfg @@ -0,0 +1,79 @@ +// Example Unvanquished dedicated server config + +// advertise the server on public server list +// 0 - advertise everything, the server will be added to the public server list and information about it will be displayed to players +// 1 - don't advertise but reply to status queries, this allows players to join and see what map is being played, how many people are playing, etc. +// 2 - don't reply to status queries but accept connections, players can connect but not see server information +// 3 - only accept LAN connections +set server.private 1 + +// server can be joined without password +// set 1 to require password (see g_password below) +set g_needpass 0 + +// password to join server +//set g_password "(server password here)" + +// rcon password to remotely manage server +//set rcon.server.password "(admin password here)" + +// loading screen +set sv_hostname "^NUnvanquished ^3onFOSS-LAN" +set g_motd "^2get news on ^5onfoss.hribhrib.at" + +// disallow downloads from the server +set sv_allowdownload 0 + +// direct and http download can be setup this way +//set sv_dl_maxRate "1000" +//set sv_wwwBaseURL "example.com/unvanquished/pkg" +//set sv_wwwDlDisconnected "0" +//set sv_wwwDownload "1" +//set sv_wwwFallbackURL "dl.unvanquished.net/pkg" + +// a stat web page can be advertized this way +// the link will be displayed in compatible server browsers +//set sv_statsURL "http://example.com/unvanquished/stats" + +// maximum number of clients +// greater than 24 is not recommended from a gameplay point of view +set sv_maxclients 24 + +// set 25 slot with 1 private, provides 24 public slots +// while admin can still connect and fill the extra slot +// while server is full +//set sv_maxclients 25 +//set sv_privateclients 1 +//set sv_privatePassword "(admin server password)" + +// no time limit +set timelimit 0 + +// end the game as a draw after 45 minutes +//set timelimit 45 + +// load next map if no people is playing on server at this time +// it ensures money, evolution and build points are regularly reset +// on fresh map so real player are not welcomed on a stalled bot match +set g_emptyTeamsSkipMapTime 15 + +// force each team to have a similar number of players +set g_teamForceBalance 1 + +// enable warmup for 20 second, the game will do a countdown before starting +//set g_doWarmup 1 +//set g_warmup 20 + +// load per map config file from this subdirectory +// it will load map/.cfg like map/plat23.cfg +// or fallback on map/default.cfg +// map config files can be used to fill game with bots +set g_mapConfigs "map" + +// following the first map, start this rotation +// rotation is described in game/maprotation.cfg +set g_initialMapRotation rotation1 + +// start this map first, usually the last of the rotation +// since rotation will start from the first one after that +map yocto diff --git a/xonotic/cmd.sh b/xonotic/cmd.sh new file mode 100644 index 0000000..d9186d3 --- /dev/null +++ b/xonotic/cmd.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +cd ~/ + +echo "make new directory" +mkdir xonotic + +echo "cd dir" +cd xonotic + +echo "start download" + +wget https://dl.xonotic.org/xonotic-0.8.2.zip + +echo "Extract this archive" + +unzip xonotic-0.8.2.zip + +echo "Enter the xonotic folder" + +cd xonotic-0.8.2/Xonotic + +echo "copy serverbin" +cp server/server_linux.sh . + +mkdir ~/.xonotic +mkdir ~/.xonotic/data/ + +echo "copy the server.cfg sample file" +cp ~/git/onFOSS-LAN-Serverconfiguration/xonotic/server.cfg ~/.xonotic/data/ + + +nohup ./startsrv &>/dev/null & + diff --git a/xonotic/server.cfg b/xonotic/server.cfg new file mode 100644 index 0000000..e402af6 --- /dev/null +++ b/xonotic/server.cfg @@ -0,0 +1,218 @@ +//add config to /home/c/.xonotic/data + +// A setting needs to be surrounded with " if it contains special +// characters like space, semicolon (seperates commands) or starts +// with // (begins a comment for the rest of the line or next +// semicolon). While just "" means 'no/empty setting'. + +// You can search for settings and read their descriptions using +// the 'search' command in console. A list of cvars and commands in the latest +// release is also available online here: http://www.xonotic.org/tools/cacs/ + +///////////////////////////////////////////////////////////////////// +// Everything has some sensible defaults so you do NOT really need to +// change anything. But here are some settings you SHOULD change to +// make it 'YOUR' server. IF so remove the // from the line start and +// change them to your liking. + +sv_public 0 // 0 if the server should not be on the public servers list +//sv_status_privacy 1 // 1 hides IP addresses from "status" replies shown to clients, 0 shows them. Enables players to identify wellknown punks on your server OR is a thread to anonymity.. depending on your point of view :) +hostname "onFOSS" // this name will appear on the server list (the $g_xonoticversion gets replaced with the current version) +//sv_motd "" // this message (unless "") is displayed to players on connect +maxplayers 64 // number of players allowed on the server + +port 26000 // the port used by the server +//You are RECOMMENDED to change this value to a free port number on your server +//above 1024. The reason is that some bad ISPs might filter "gaming" ports, and +//changing the port your server runs on may make your server available to these +//people. Changing the port breaks nothing, the default simply matches Quake as +//we use a Quake-derived protocol and didn't do our own IANA port assignment yet +//(if anyone wants to go through that process, we'd be glad). + +log_file "server.log" // server console output will also be copied to this file. This: "${serverconfig}.log" uses variable substitution to make the logfile have the same name as your config file with .log appended which is useful if you run several servers +g_start_delay 15 // delay before the game starts to let players join the server first + +// List of maps to play on the server. Set to "" to autodetect (which would enumerate ALL maps. Maps that don't support the current game mode will be skipped, so you don't need to remove them here. +//g_maplist "afterslime atelier boil catharsis courtfun dance drain erbium finalrage fuse geoplanetary glowplant implosion leave_em_behind nexballarena oilrig runningman runningmanctf silentsiege solarium space-elevator stormkeep techassault vorix warfare xoylent" +g_maplist "" +g_maplist_shuffle 1 // 0 always selects the next map out of g_maplist (but then better set g_maplist_votable 0 below to prevent repetitive votes), 1 will select random maps each time +//g_maplist_mostrecent_count 3 // number of maps that have to be played before a map can be repeated + +// LIMITS: how long a match will last before the next map starts (-1 means use the map default, 0 = unlimited, please note that the variables fraglimit/timelimit can NOT be globally used for this but only DURING a match is being played) +//timelimit_override -1 // global timelimit for all maps and gametypes +//fraglimit_override -1 // global frag/point limit for all maps and gametypes +//capturelimit_override -1 // capture limit for CTF +//g_domination_point_limit -1 // frag/point limit for DOM +//g_keyhunt_point_limit -1 // frag/point limit for KH +//g_lms_lives_override -1 // lives for LMS +//g_nexball_goallimit -1 // goals for NEXBALL + +//g_ctf_ignore_frags 1 // set to 1 to ignore kills except for FC kills + +// TEAMS for key hunt (change this to 2, 3, 4 to set a fixed keyhunt style) +//g_keyhunt_teams_override -1 // teams for KH + +// GAME MODE: what type of server do you want to host? +// possible values: dm (deathmatch), tdm (team deathmatch), dom (domination), ctf (ctf), ft (freeze tag), lms (last man standing), ka (keepaway), inv (invasion), kh (keyhunt), as (assault), ons (onslaught), rc (race), nb (nexball) +gametype dm + + + + +///////////////////////////////////////////////////////////////////// +// Some settings you MIGHT want to change. Again IF so remove the // +// from the line start and change them to your liking. + +//net_address 0.0.0.0 // ONLY change this if you have problems with your server. Specifies the network interface used by the engine. Set it you one of you internal IPs + +rcon_password "onFOSS" // you can use rcon if this password is set. you need to set the same password in your client if you want to issue rcon commands +//rcon_restricted_password "" // put here the password for a "restricted" rcon user (see below) + +bot_number 4 // number of bots to add +skill 8 // the bots skill level +minplayers 4 // add bots if less then that number of players playing. MAKE SURE ITS LESS THEN maxplayers or people will get blocked by bots! +//g_maxplayers 0 // above this player count, only allow spectators +bot_prefix [BOT] // prepend this to all botnames +//bot_suffix "" // append this to all botnames +//g_maplist_check_waypoints 0 // set this to 1 to skip maps without waypoints if there aren't enough players to play without bots + +g_maplist_votable 6 // number of maps to vote between. set to 0 to disable the map voting screen (please enable g_maplist_shuffle above when this is enabled, or votes will be repetitive) +//g_maplist_votable_suggestions 2 // number of suggestions to accept using the suggestmap command +//g_maplist_votable_abstain 0 // when 1, people get a "don't care" selection in the vote screen +//g_maplist_votable_nodetail 1 // when 1, people can't see how many voted for what (to thwart abusive "influential" first votes) + +sv_vote_gametype 1 // set to 1 to enable voting for gametypes after every match +sv_vote_gametype_options "dm tdm dom ctf ca rc nb as kh inv ka lms ons" // the gametypes to vote for, custom gametypes are supported +//sv_vote_gametype_mygametype_name "My Mode" // Name displayed for the custom gametype "mygametype" (replace "mygametype" with the name you set in sv_vote_gametype_options) +//sv_vote_gametype_mygametype_type "ft" // the basetype that the custom gametype is derived from +//sv_vote_gametype_mygametype_description "This is my custom gametype" // the description for the custom gametype +//// Custom icons for custom gametypes are supported and have to be located in a server pk3 as gfx/menu/default/gametype_mygametype + +//sv_vote_commands "restart fraglimit chmap gotomap nextmap endmatch reducematchtime extendmatchtime allready kick cointoss movetoauto shuffleteams" // players can vote for those commands or use them if they are masters. You canm also add 'g_grappling_hook' for hook voting, and 'sv_fbskin_green sv_fbskin_red sv_fbskin_orange sv_fbskin_off' for fbskin voting. +//sv_vote_master_commands "movetored movetoblue movetoyellow movetopink" // add commands masters can use if logged in or elected. You may want to put 'kickban' here, so masters can keep out punks. It may be good to also put "sv_status_privacy 0" then... +//rcon_restricted_commands "restart fraglimit chmap gotomap endmatch reducematchtime extendmatchtime allready kick kickban \"sv_cmd bans\" \"sv_cmd unban\" status \"sv_cmd teamstatus\" movetoauto movetored movetoblue movetoyellow movetopink" // commands for the (stronger) rcon restricted + +sv_vote_call 1 // 0 will disable the normal voting +//sv_vote_master 1 // 0 will disable voting to become master, good if you prefer to use the master password instead +//sv_vote_master_password "" // when set, vlogin PWD will allow people to become master to run master commands directly using vdo +//sv_vote_majority_factor 0.5 // What percentage of the PLAYERS constitute a majority to win a vote? must be at least 0.5 +//sv_vote_majority_factor_of_voted 0 // What percentage of the VOTERS who already voted constitute a majority to win a vote? must be at least 0.5 +// note: to JUST support simple majorities, set these two factors equal + +//sv_maxidle 0 // idle time in seconds after which players will get kicked + +//sv_taunt 1 // 0 to disallow taunts +//sv_autotaunt 1 // 0 to disallow autotaunts + + +///////////////////////////////////////////////////////////////////// +// Settings you MIGHT want to change for PRIVACY reasons. +// +// The settings here may impact your or your players' privacy and serve to +// optimize the game for further releases. +// +// Change them, or comment them out to turn them off. + +// This line sends the following data to our servers: +// - Date and time +// - Your server IP address +// - Your server ID hash, which is a fingerprint of the public key of your +// server and does not impact security of your private key (use "crypto_keys" +// on the console to show it) +// - Your server name ("hostname") +// - Current game type +// - Current map +// - Balance settings you have modified from defaults (only those that make +// your server "impure") +// - For each weapon pairing (A, B), separately for player-player, player-bot, +// bot-player, bot-bot pairings: +// - Number of hits of players/bots holding A against players/bots holding B +// - Number of frags of players/bots holding A against players/bots holding B +// - Total damage of players/bots holding A against players/bots holding B +// +// We use this data to: +// - Optimize the game balance for future releases +// - Identify problems in the bot AI and improving it +// - Find settings that make servers "impure" that should not, so we can +// whitelist them in future releases +// +// We will or might publish: +// - Global weapon pairing statistics for players vs players, or bots vs bots, +// or any vs any, on a selection of servers +// - Per-gametype and per-map weapon pairing statistics players vs players, or +// bots vs bots, or any vs any, on a selection of servers +// - Lists of commonly changed cvars, together with counts on how often they +// are modified +// +// No information about the players on the server is sent, so as a server admin +// you need no permission of your players for this. +// +// No information about your server will be published - all published data sets +// will include data from multiple servers. +// +sv_weaponstats_file http://www.xonotic.org/weaponbalance/ + + + + +///////////////////////////////////////////////////////////////////// +// Some more advanced settings. You probably are not interested in changing them at all. + +//sv_ready_restart 0 // 1 to allow players to restart the map when all of them press the ready button +//sv_ready_restart_after_countdown 0 // if set to 1 the players and map items are reset after the countdown ended, otherwise they're reset already at the beginning of the countdown +//sv_ready_restart_repeatable 0 "allows the players to restart the game as often as needed +//sv_autoscreenshot 0 // 1 will force a screenshot for all clients when the map ends. Useful for competitions or the ladder. + +//g_antilag 2 // 0 to disable the antilag feature, 1 and 2 use different methods + +//sv_maxrate 1000000 // limits client connections to this rate in bytes/seconds + +// see Docs/mapdownload.txt for more info +//sv_curl_defaulturl http://www.xonotic.com/contentdownload/getmap.php?file= //fallback download URL + +//sv_defaultcharacter 0 // 1 will force a specific model for all players +//sv_defaultplayermodel models/player/erebus.iqm // this model will be used +//sv_defaultplayerskin 0 // this skin number will be forced for all players +//sv_defaultplayercolors "" // you can even force player colors here (16*shirt+pants) +//g_fullbrightplayers 0 // 1 to make players fullbright +//g_fullbrightitems 0 // 1 to make items fullbright + +//g_balance_teams 1 // 0 will show players the team selection menu after joining instead of automaticly putting them on the smaller team +//g_balance_teams_prevent_imbalance 1 // 0 to prevent switchint to a bigger/begger team + +//g_ban_sync_uri "http://46.38.241.138/~xonotic/bans/" // sync bans using this ban list provider (disabled by default, uncomment this line to enable) +//g_ban_sync_trusted_servers "" // accept bans that were initially set on the server IPs listed here (if not set, your bans are just sent to the sync URIs, but no bans are retrieved from there) + +//g_spawnshieldtime 1 // time for which players are protected after spawn + + +///////////////////////////////////////////////////////////////////// +// "Obvious" mutators that are allowed on a "pure" server +//g_instagib 0 // set to 1 for InstaGib +//g_weapon_stay 0 // set to 1, 2 or 3 for different weapon-stay modes (1 = traditional, 2 = no ammo but allow throwing, 3 = ghost weapon stay) +//g_powerups -1 // set to 0 to turn off strength/quad and shield/invincible, and set to 1 to turn them on even in game modes that normally have them turned off + + +///////////////////////////////////////////////////////////////////// +// Overkill mod settings + +// To enable Overkill, put 'exec defaultOverkill.cfg' at the top of this file (above any other cvar changes), don't use 'g_overkill 1' directly. +// You should also consider enabling 'g_fullbrightplayers 1'. + + +///////////////////////////////////////////////////////////////////// +// WARNING: anything below this line makes your server "impure"! + +// enable some mutators you'd like +//g_cloaked 0 // set to 1 for transparent hard to see players +//g_grappling_hook 0 // set to 1 to enable the hook (allowed on "pure" server in InstaGib) +//g_jetpack 0 // set to 1 to enable the jetpack (allowed on "pure" server in InstaGib) +//g_midair 0 // set to 1 to make only midair damage count +//g_vampire 0 // set to 1 to give players the damage they cause as health +//sv_gravity 800 // for low gravity, set this somewhere between 50 and 400 + +// select AT MOST one of these arena mutators (if you didn't select g_instagib) +//g_nix is "0" ["0"] No Items Xonotic - instead of pickup items, everyone plays with the same weapon. After some time, a countdown will start, after which everyone will switch to another weapon, and so on +//g_nix_with_healtharmor is "0" ["0"] when 1, health and armor still show up in NIX +//g_nix_with_blaster is "0" ["0"] always carry the blaster as an additional weapon in NIX +//g_nix_with_powerups is "0" ["0"] when 1, powerups still show up in NIX