|
|
@@ -309,7 +309,7 @@ fn_details_ports(){
|
|
|
echo -e "Change ports by editing the parameters in:"
|
|
|
|
|
|
parmslocation="${red}UNKNOWN${default}"
|
|
|
- # engines that require editing in the config file
|
|
|
+ # engines/games that require editing in the config file
|
|
|
local ports_edit_array=( "avalanche" "dontstarve" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "projectzomboid" "quake" "refractor" "realvirtuality" "seriousengine35" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" )
|
|
|
for port_edit in "${ports_edit_array[@]}"
|
|
|
do
|
|
|
@@ -317,8 +317,8 @@ fn_details_ports(){
|
|
|
parmslocation="${servercfgfullpath}"
|
|
|
fi
|
|
|
done
|
|
|
- # engines that require editing in the script file
|
|
|
- local ports_edit_array=( "Hurtworld" "iw3.0" "goldsource" "Rust" "spark" "source" "starbound" "unreal4" )
|
|
|
+ # engines/games that require editing in the script file
|
|
|
+ local ports_edit_array=( "goldsource" "Factorio" "Hurtworld" "iw3.0" "Rust" "spark" "source" "starbound" "unreal4" )
|
|
|
for port_edit in "${ports_edit_array[@]}"
|
|
|
do
|
|
|
if [ "${engine}" == "${port_edit}" ]||[ "${gamename}" == "${port_edit}" ]; then
|
|
|
@@ -340,8 +340,19 @@ fn_details_statusbottom(){
|
|
|
echo -e ""
|
|
|
}
|
|
|
|
|
|
+
|
|
|
# Engine Specific details
|
|
|
|
|
|
+fn_details_ark(){
|
|
|
+ echo -e "netstat -atunp | grep ShooterGame"
|
|
|
+ echo -e ""
|
|
|
+ {
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL\tINI VARIABLE"
|
|
|
+ echo -e "> Game\tINBOUND\t${port}\tudp\tPort=${port}"
|
|
|
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+}
|
|
|
+
|
|
|
fn_details_avalanche(){
|
|
|
echo -e "netstat -atunp | grep Jcmp-Server"
|
|
|
echo -e ""
|
|
|
@@ -408,16 +419,36 @@ fn_details_dontstarve(){
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_minecraft(){
|
|
|
- echo -e "netstat -atunp | grep java"
|
|
|
+fn_details_factorio(){
|
|
|
+ echo -e "netstat -atunp | grep factorio"
|
|
|
echo -e ""
|
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
+ echo -e "> Game\tINBOUND\t${port}\ttcp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_projectzomboid(){
|
|
|
+fn_details_goldsource(){
|
|
|
+ echo -e "netstat -atunp | grep hlds_linux"
|
|
|
+ echo -e ""
|
|
|
+ {
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
+ echo -e "> Game/RCON\tINBOUND\t${port}\ttcp/udp"
|
|
|
+ echo -e "< Client\tOUTBOUND\t${clientport}\tudp"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+}
|
|
|
+
|
|
|
+fn_details_hurtworld(){
|
|
|
+ echo -e "netstat -atunp | grep Hurtworld"
|
|
|
+ echo -e ""
|
|
|
+ {
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
+ echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+}
|
|
|
+
|
|
|
+fn_details_minecraft(){
|
|
|
echo -e "netstat -atunp | grep java"
|
|
|
echo -e ""
|
|
|
{
|
|
|
@@ -426,29 +457,31 @@ fn_details_projectzomboid(){
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
+fn_details_mumble(){
|
|
|
+ echo -e "netstat -atunp | grep murmur"
|
|
|
+ echo -e ""
|
|
|
+ {
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
+ echo -e "> Voice\tINBOUND\t${port}\tudp"
|
|
|
+ echo -e "> ServerQuery\tINBOUND\t${port}\ttcp"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+}
|
|
|
|
|
|
-fn_details_realvirtuality(){
|
|
|
- echo -e "netstat -atunp | grep arma3server"
|
|
|
+fn_details_projectzomboid(){
|
|
|
+ echo -e "netstat -atunp | grep java"
|
|
|
echo -e ""
|
|
|
- if [ -z "${port}" ]||[ -z "${queryport}" ]||[ -z "${masterport}" ]; then
|
|
|
- echo -e "${red}ERROR!${default} Missing/commented ports in ${servercfg}."
|
|
|
- echo -e ""
|
|
|
- fi
|
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
- echo -e "> Steam: Master traffic\tINBOUND\t${masterport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_refractor(){
|
|
|
- echo -e "netstat -atunp | grep bf1942_lnxd"
|
|
|
+fn_details_quake(){
|
|
|
+ echo -e "netstat -atunp | grep mvdsv"
|
|
|
echo -e ""
|
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Game/Query\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
+ echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
@@ -470,39 +503,55 @@ fn_details_quake3(){
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_quake(){
|
|
|
- echo -e "netstat -atunp | grep mvdsv"
|
|
|
+fn_details_quakelive(){
|
|
|
+ echo -e "netstat -atunp | grep qzeroded"
|
|
|
echo -e ""
|
|
|
+ if [ -z "${port}" ]||[ -z "${rconport}" ]||[ -z "${statsport}" ]; then
|
|
|
+ echo -e "${red}ERROR!${default} Missing/commented ports in ${servercfg}."
|
|
|
+ echo -e ""
|
|
|
+ fi
|
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
+ echo -e "> Rcon\tINBOUND\t${rconport}\tudp"
|
|
|
+ echo -e "> Stats\tINBOUND\t${statsport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_quakelive(){
|
|
|
- echo -e "netstat -atunp | grep qzeroded"
|
|
|
+fn_details_realvirtuality(){
|
|
|
+ echo -e "netstat -atunp | grep arma3server"
|
|
|
echo -e ""
|
|
|
- if [ -z "${port}" ]||[ -z "${rconport}" ]||[ -z "${statsport}" ]; then
|
|
|
+ if [ -z "${port}" ]||[ -z "${queryport}" ]||[ -z "${masterport}" ]; then
|
|
|
echo -e "${red}ERROR!${default} Missing/commented ports in ${servercfg}."
|
|
|
echo -e ""
|
|
|
fi
|
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> Rcon\tINBOUND\t${rconport}\tudp"
|
|
|
- echo -e "> Stats\tINBOUND\t${statsport}\tudp"
|
|
|
+ echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
+ echo -e "> Steam: Master traffic\tINBOUND\t${masterport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_wolfensteinenemyterritory(){
|
|
|
- echo -e "netstat -atunp | grep etded"
|
|
|
+fn_details_refractor(){
|
|
|
+ echo -e "netstat -atunp | grep bf1942_lnxd"
|
|
|
echo -e ""
|
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game/Query\tINBOUND\t${port}\tudp"
|
|
|
+ echo -e "> Steam: Query\tINBOUND\t${queryport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
+fn_details_rust(){
|
|
|
+ echo -e "netstat -atunp | grep Rust"
|
|
|
+ echo -e ""
|
|
|
+ {
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
+ echo -e "> Game/Query\tINBOUND\t${port}\ttcp/udp"
|
|
|
+ echo -e "> RCON\tINBOUND\t${rconport}\ttcp"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+}
|
|
|
|
|
|
fn_details_seriousengine35(){
|
|
|
echo -e "netstat -atunp | grep Sam3_Dedicate"
|
|
|
@@ -514,15 +563,41 @@ fn_details_seriousengine35(){
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
+fn_details_sdtd(){
|
|
|
+ echo -e "netstat -atunp | grep 7DaysToDie"
|
|
|
+ echo -e ""
|
|
|
+ {
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
+ echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
+ echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
+ echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp"
|
|
|
+ echo -e "> Telnet\tINBOUND\t${telnetport}\ttcp"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+ echo -e ""
|
|
|
+ echo -e "${lightgreen}${servername} WebAdmin${default}"
|
|
|
+ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
+ {
|
|
|
+ echo -e "${blue}WebAdmin enabled:\t${default}${webadminenabled}"
|
|
|
+ echo -e "${blue}WebAdmin url:\t${default}http://${ip}:${webadminport}"
|
|
|
+ echo -e "${blue}WebAdmin password:\t${default}${webadminpass}"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+ echo -e ""
|
|
|
+ echo -e "${lightgreen}${servername} Telnet${default}"
|
|
|
+ printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
+ {
|
|
|
+ echo -e "${blue}Telnet enabled:\t${default}${telnetenabled}"
|
|
|
+ echo -e "${blue}Telnet address:\t${default}${ip} ${telnetport}"
|
|
|
+ echo -e "${blue}Telnet password:\t${default}${telnetpass}"
|
|
|
+ } | column -s $'\t' -t
|
|
|
+}
|
|
|
+
|
|
|
fn_details_source(){
|
|
|
echo -e "netstat -atunp | grep srcds_linux"
|
|
|
echo -e ""
|
|
|
{
|
|
|
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
echo -e "> Game/RCON\tINBOUND\t${port}\ttcp/udp"
|
|
|
- if [ -n "${sourcetvport}" ]; then
|
|
|
- echo -e "> SourceTV\tINBOUND\t${sourcetvport}\tudp"
|
|
|
- fi
|
|
|
+ echo -e "> SourceTV\tINBOUND\t${sourcetvport}\tudp"
|
|
|
echo -e "< Client\tOUTBOUND\t${clientport}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
@@ -568,16 +643,6 @@ fn_details_teamspeak3(){
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_mumble(){
|
|
|
- echo -e "netstat -atunp | grep murmur"
|
|
|
- echo -e ""
|
|
|
- {
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Voice\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> ServerQuery\tINBOUND\t${port}\ttcp"
|
|
|
- } | column -s $'\t' -t
|
|
|
-}
|
|
|
-
|
|
|
fn_details_teeworlds(){
|
|
|
echo -e "netstat -atunp | grep teeworlds_srv"
|
|
|
echo -e ""
|
|
|
@@ -596,54 +661,6 @@ fn_details_terraria(){
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_sdtd(){
|
|
|
- echo -e "netstat -atunp | grep 7DaysToDie"
|
|
|
- echo -e ""
|
|
|
- {
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
- echo -e "> WebAdmin\tINBOUND\t${webadminport}\ttcp"
|
|
|
- echo -e "> Telnet\tINBOUND\t${telnetport}\ttcp"
|
|
|
- } | column -s $'\t' -t
|
|
|
- echo -e ""
|
|
|
- echo -e "${lightgreen}${servername} WebAdmin${default}"
|
|
|
- printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
- {
|
|
|
- echo -e "${blue}WebAdmin enabled:\t${default}${webadminenabled}"
|
|
|
- echo -e "${blue}WebAdmin url:\t${default}http://${ip}:${webadminport}"
|
|
|
- echo -e "${blue}WebAdmin password:\t${default}${webadminpass}"
|
|
|
- } | column -s $'\t' -t
|
|
|
- echo -e ""
|
|
|
- echo -e "${lightgreen}${servername} Telnet${default}"
|
|
|
- printf '%*s\n' "${COLUMNS:-$(tput cols)}" '' | tr ' ' =
|
|
|
- {
|
|
|
- echo -e "${blue}Telnet enabled:\t${default}${telnetenabled}"
|
|
|
- echo -e "${blue}Telnet address:\t${default}${ip} ${telnetport}"
|
|
|
- echo -e "${blue}Telnet password:\t${default}${telnetpass}"
|
|
|
- } | column -s $'\t' -t
|
|
|
-}
|
|
|
-
|
|
|
-fn_details_hurtworld(){
|
|
|
- echo -e "netstat -atunp | grep Hurtworld"
|
|
|
- echo -e ""
|
|
|
- {
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
|
|
|
- echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
- } | column -s $'\t' -t
|
|
|
-}
|
|
|
-
|
|
|
-fn_details_rust(){
|
|
|
- echo -e "netstat -atunp | grep Rust"
|
|
|
- echo -e ""
|
|
|
- {
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
- echo -e "> Game/Query\tINBOUND\t${port}\ttcp/udp"
|
|
|
- echo -e "> RCON\tINBOUND\t${rconport}\ttcp"
|
|
|
- } | column -s $'\t' -t
|
|
|
-}
|
|
|
-
|
|
|
fn_details_unreal(){
|
|
|
echo -e "netstat -atunp | grep ucc-bin"
|
|
|
echo -e ""
|
|
|
@@ -691,16 +708,16 @@ fn_details_ut3(){
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
-fn_details_ark(){
|
|
|
- echo -e "netstat -atunp | grep ShooterGame"
|
|
|
+fn_details_wolfensteinenemyterritory(){
|
|
|
+ echo -e "netstat -atunp | grep etded"
|
|
|
echo -e ""
|
|
|
{
|
|
|
- echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL\tINI VARIABLE"
|
|
|
- echo -e "> Game\tINBOUND\t${port}\tudp\tPort=${port}"
|
|
|
- echo -e "> Query\tINBOUND\t${queryport}\tudp"
|
|
|
+ echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
|
|
|
+ echo -e "> Game/Query\tINBOUND\t${port}\tudp"
|
|
|
} | column -s $'\t' -t
|
|
|
}
|
|
|
|
|
|
+
|
|
|
# Run checks and gathers details to display.
|
|
|
|
|
|
fn_display_details() {
|
|
|
@@ -729,6 +746,8 @@ fn_display_details() {
|
|
|
fn_details_refractor
|
|
|
elif [ "${engine}" == "dontstarve" ]; then
|
|
|
fn_details_dontstarve
|
|
|
+ elif [ "${engine}" == "goldsource" ]; then
|
|
|
+ fn_details_goldsource
|
|
|
elif [ "${engine}" == "lwjgl2" ]; then
|
|
|
fn_details_minecraft
|
|
|
elif [ "${engine}" == "projectzomboid" ]; then
|
|
|
@@ -737,7 +756,7 @@ fn_display_details() {
|
|
|
fn_details_realvirtuality
|
|
|
elif [ "${engine}" == "seriousengine35" ]; then
|
|
|
fn_details_seriousengine35
|
|
|
- elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]; then
|
|
|
+ elif [ "${engine}" == "source" ]; then
|
|
|
fn_details_source
|
|
|
elif [ "${engine}" == "spark" ]; then
|
|
|
fn_details_spark
|
|
|
@@ -783,6 +802,8 @@ fn_display_details() {
|
|
|
fn_details_rust
|
|
|
elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
|
|
|
fn_details_wolfensteinenemyterritory
|
|
|
+ elif [ "${gamename}" == "Factorio" ]; then
|
|
|
+ fn_details_factorio
|
|
|
else
|
|
|
fn_print_error_nl "Unable to detect server engine."
|
|
|
fi
|
|
|
@@ -795,3 +816,4 @@ then
|
|
|
fn_display_details
|
|
|
core_exit.sh
|
|
|
fi
|
|
|
+
|