List active ds2play
1 17
unset ds2play1[ActiveDS2Names]
Slide
fteprompt "Enter a name for new media server"
readAnswer newServerName
echo
while [[ " ${ds2play1[ActiveDS2Names]} " =~ " ${newServerName} " ]]; do
fteprompt "There is already a media server with this name, enter another one (or enter to cancel)"
readAnswer newServerName
if [[ -z "$newServerName" ]]; then
ibosh return
return
fi
echo
done
current=1
if ibosh gameserver "$newServerName"; then
operationsInGameserverMenu mode new
current=0
fi
read -ra DS2ServerArgs <<<"$(cat ../../DS2start/defaultDs2Args.txt)"
function checkBox
{
#parameters:
# $1 - index of DS2ServerArgs element
# $2 - variable to write to
# $3 - checked/not-checked
if [[ "${DS2ServerArgs[$1]}" == "Y" ]]; then
$2="$3"
else
$2="not-$3"
fi
}
function fixParameters
{
#remove commands that start with:
unset additionalCommands
declare -a additionalCommands
for command in "${DS2ServerArgs[@]}"; do
if [[ ! ("$command" =~ ^-D ) && (! "$command" =~ ^-U ) && (! "$command" =~ ^-B ) && (! "$command" =~ ^-M ) && (! "$command" =~ ^-R ) && (! "$command" =~ ^-S ) && (! "$command" =~ ^-F )]]; then
additionalCommands+=("$command")
else
#echo "$command is wrong"
#sleep 2
#ibosh printLine "In confirmation NS1, error: Wrong input key $command"
#sleep 2
echo nagger
fi
done
}
function NetArgs
{
readAnswer ServerPort
echo
readAnswer maxPlayers
echo
readAnswer remoteBacklog
echo
readAnswer protocolType willBeUsedTCP
echo
readAnswer netUseAuto passing
echo
readAnswer netAutoPort
echo
checkBox 3 willLockRemote "-Locked"
checkBox 4 slowPickAllow slowPickAllow "Slow"
checkBox 4 slowAutoAuto slowAutoAuto "Auto"
checkBox 4 slowFavorAuto slowFavorAuto "Favor"
checkBox 5 chatDisable chatDisable "Disable"
readAnswer gameBranch # 6
checkBox 8 trapBadNetworking trapBadNetworking "BadNetworking"
checkBox 9 netSearchEnable "-Searchable"
checkBox 10 gameFunType "-Hide" #skip a generation "Game is Hidden" and "private Game" - from Timofeep
checkBox 10 gameFunType "-Private"
readAnswer GameName # 11
echo
readAnswer passwordNeeded # 12
echo
readAnswer password
echo
}
function NetArgsSlower
{
fteprompt "Enter server port"
readAnswer ServerPort
echo
fteprompt "Enter maximum players"
readAnswer maxPlayers
echo
fteprompt "Enter maximum backlog for remote connection"
readAnswer remoteBacklog
echo
fteprompt "Enter protocol type (e.g., UDP)"
readAnswer protocolType
echo
fteprompt "Is network type auto-passing?"
readAnswer passing
echo
fteprompt "Enter auto-passing port"
readAnswer netAutoPort
echo
fteprompt "Will remote clients be locked?"
readAnswer willLockRemote
echo
fteprompt "Allow application to use slow picking"
readAnswer panel
echo
checkBox 0 panel slowPickAllow "Slow"
checkBox 0 panel slowAutoAuto slowAutoAuto "Auto"
checkBox 0 panel slowFavorAuto slowFavorAuto "Favor"
checkBox 1 panel gameFun "Disable slow picking"
fteprompt "Pick your game branch"
readAnswer gameBranch
echo
fteprompt "Allow apps to search for network"
readAnswer netSearchEnable
echo
fteprompt "Which type of game is this?"
readAnswer gameFunType
echo
checkBox 3 panel gameFunType "-Hide"
checkBox 3 panel gameFunType "-Private"
fteprompt "Name your game"
readAnswer GameName
echo
fteprompt "Will game require password?"
readAnswer passwordNeeded
echo
readAnswer password
}
function ViewFar
{
checkBox 10 showMonsterTraps "Monsters View"
checkBox 10 showFarTraps "Traps View"
checkBox 10 showUnseen "Hide Unseen"
}
function AdjustableFar
{
echo
fteprompt "How far back should unexplored shades recede?"
readAnswer unexploredShadesBack
echo
fteprompt "And how solid should they be?"
readAnswer solidness
echo
fteprompt "How much should you see of ceilings and floors?"
readAnswer viewUD
echo
fteprompt "How much should you see of walls?"
readAnswer viewLR
}
function line
{
str=
untill=$1
shift
while [[ $untill -ne 0 ]]; do
untill=$untill-1
if [[ $untill -eq 0 ]]; then
str="$1"
else
str="$str $1"
fi
shift
done
echo $str
}
function Compact
{
#parameters
# $1 - which arg is last
let curgen=1
let size=0
while [[ $curgen -le $1 ]]; do
let curgen=$curgen+1
let size=$size+${#DS2ServerArgs[$1]}
done
echo "${DS2ServerArgs[$1]}"
shift
shift
while [[ ! (${#FTEMapArgs[@]} -ge 1) ]]; do
echo
rest=$(line ${#FTEMapArgs[@]} "${FTEMapArgs[@]}")
echo
echo "+ $rest"
done
}
function FarArgs
{
echo
checkBox 2 overrideSeek "Seek items faster"
echo
fteprompt "Will this map be larger than usual?"
readAnswer mapLarge
echo
option view far wall
option view far roof
fteprompt "Will you allow vultures to view map?"
readAnswer view
echo
fteprompt "What level of far code do you want?"
readAnswer code
echo
checkBox 11 farGrow "Make far grow"
checkBox 11 highDetailPhysics "Use high detailed physics"
checkBox 11 syntaxHighLight "Syntax highlight"
checkBox 11 loading "Show backgroud color on loading dir, and other dirs as well? (Loading and using graphics)"
checkBox 11 hudUpdateSomewhere "Release special hud update to weybow?"
}
function Transparency
{
readAnswer transparency
echo
let rest=${#FTEMapArgs[@]}
while [[ $rest -ne 0 ]]; do
let rest=$rest-1
checkBox $rest FTEMapArgs[$rest] "-vgui"
done
}
function debugImp
{
echo
fteprompt "Show errors?"
readAnswer errors
echo
fteprompt "Why are there no direct coords?"
readAnswer coords
echo
fteprompt "Show blip on ramp?"
readAnswer blip
echo
fteprompt "Make debug regions visible?"
readAnswer dbg_reg
echo
fteprompt "Make debugging materials visible?"
readAnswer dbg_mat
echo
}
echo
fteprompt "Enter any additional command-line arguments - not extended - that need to go in while the application starts"
echo "(e.g., +cl_runvar [time variable] value):Or "Maneuver left" "What the hell!?" "+password (2) Pass)"; (don't use spaces)"
readAnswer additionalCommands
echo
while (($current -lt ${#DS2ServerArgs[@]})); do
if [[ "$current" == "0" ]]; then
checkBox 0 dbpassEnable "Use Encrypted Password (-pass)"
readAnswer GameType
elif [[ "$current" == "1" ]]; then
fteprompt "Is it OK to use saved coordinates?"
checkBox 1 Ult_Check+set0 "Use saved coordinates?" "-use coordinates from last game"
readAnswer NGcoords
if ibosh yes "$NGcoords"; then
checkBox 1 Ult_Check+set0 "not-OK" "-do not use last game"
fi
else
echo
echo " [ ${DS2ServerArgs[$current]} ] "
echo
((current++))
continue
elif [[ "$current" == "2" ]]; then
fteprompt "Do you want to use the server previously acquired data?"
checkBox 2 shpower "Use server's data - thats - not ctfs, right?"
readAnswer Use_Mem
if ibosh no "$Use_Mem"; then
checkBox 1 Ult_Check+set1 "-use cache"
fi
#items from code 0 are thrown away externally
checkBox 1 Ult_Check+set1 USE[0] "-gold"
checkBox 1 Ult_Check+set1 USE[0]+CTF "-ctfs"
readAnswer IntPut
checkBox 1 Ult_Check+set1 $IntPut "-make server save CTFS and save items as well"
#get VE[3]
checkBox 1 Ult_Check+set1 $VE[3] "-items in the map"
checkBox 1 Ult_Check+set1 $VE[3]+Friend "-burger king"
checkBox 1 Ult_Check+set1 $VE[3]+Commando "-burgers"
elif [[ "$current" == "3" ]]; then
format="-format native"
format="not-$format"
fi
((current++))
done
fteprompt "Enter a command line argument to use this time"
echo "(32 characters maximum)"
temp=0
proper="No"; vgui="no"; error="no"
prevTemp=$temp
prevProp=$proper
if [[ $DS2ServerArgs == *"+secret"* ]]; then
gamepass="a-valid-g "
correctpass="69"
dochostname="nameofthem " #48 characters
else
if [[ $DS2ServerArgs != *"+noinstr "* ]]; then
setist="-secret Kia doctorjeff992 ini=uri if you log"
else
setist="$" #error
fi
fi
while44=0
while [[ "$temp" -lt 50 && "$correctpass" != [0-9] && $dochostname != [0-9] ]]; do
if [[ "$proper" != "$prevProp" ]]
then
fteprompt "Proper tour password?"
readAnswer proper
echo
else
fteprompt "Is the password correct?"
readAnswer correctpass
echo
fi
if [[ "$proper" != "T" && "$proper" != "N" ]]; then
fteprompt
echo
fteprompt "Enter a guest hostname"
readAnswer dochostname
escaped="${dochostname//:[[:digit:]]\\}}"
escaped="${escaped//^\\D+(?=[[:digit:]])/}"
formatted="${escaped// /$}startswith:{"
#continue
went=continue
fi
temp=$temp+1
done
echo
fteprompt "Do you plan to make changes to the server currently in progress? (e.g., make 2 new games not out of this one)"
echo "(e.g., a big schedule change): Or "+info 〉§color ⊠⊡⊔"
readAnswer change
if [[ "$change" == "+info" ]]; then
echo
echo
ibosh one-line-color "Which type of hours?"
echo
echo
ibosh one-line-blob "1. One of the new games to Change the new ADD_SIP_HOME!" ibosh--singleton
echo
echo
ibosh one-line-circle "2. Make the changes instead of creating new games and deleting any existing ones" ibosh--array
echo
read Answer
if ibosh choose 1 "$Answer"; then
"true"
echo
echo
echo "There are 15 change hours"
echo
echo "Choose to change the first 3"
echo
echo
ibosh one-line "Enter a time, or if you want the server to be renewed"
else
echo
echo
echo "Enter the type of hours you need."
ibosh array-circle str Circle setup instead choice? ibosh-sudoco
ibosh choose str Str circle circle change "EndTime" array-circle ibosh-array circle choose
"true"
clear
break
fi
fi
echo
fteprompt "Enter choices that need to be made about your server:"
echo "simplify Troubleshooting (inspecterror Checking)"
echo
while [[ $# -gt 0 ]]; do
readAnswer text
echo
out=$(./shell-ds output-json ../operation