#!/bin/bash # Due to the parameter expansion used this script # requires bash. If you do manage to convert this # to a proper POSIX shell compatible script # don't hesitate to send it to me! # if [ -z $TIMELIMIT ] then TIMELIMIT=5 fi if [ -z $FRAGLIMIT ] then FRAGLIMIT=0 fi if [ -z $CAPTURELIMIT ] then CAPTURELIMIT=0 fi if [ -z $MODE ] then # 0 = tourney, 1 = ffa, 2 = ctf, 3 = tdm MODE=$(( $RANDOM % 4 )) fi if [ -z $SKILL ] then # 1 = i can win, 2 = bring it on, 3 = hurt me plenty, 4 = hardcore, 5 = nightmare SKILL=3 fi # Map choices for the various modes in Q3A # Only maps that have been officially approved for a given mode MAP_TEAM_N=$(( $RANDOM % 8 + 1 )) MAP_TEAM1=q3dm6 MAP_TEAM2=q3dm7 MAP_TEAM3=q3dm8 MAP_TEAM4=q3dm9 MAP_TEAM5=q3dm12 MAP_TEAM6=q3dm14 MAP_TEAM7=q3dm15 MAP_TEAM8=q3tourney4 TEAMMAP=MAP_TEAM${MAP_TEAM_N} MAP_TOURNEY_N=$(( $RANDOM % 7 + 1 )) MAP_TOURNEY1=q3dm2 MAP_TOURNEY2=q3tourney1 MAP_TOURNEY3=q3tourney2 MAP_TOURNEY4=q3tourney3 MAP_TOURNEY5=q3tourney4 MAP_TOURNEY6=q3tourney5 MAP_TOURNEY7=q3tourney6 TOURNEYMAP=MAP_TOURNEY${MAP_TOURNEY_N} MAP_FFA_N=$(( $RANDOM % 18 + 1 )) MAP_FFA1=q3dm2 MAP_FFA2=q3dm3 MAP_FFA3=q3dm4 MAP_FFA4=q3dm5 MAP_FFA5=q3dm6 MAP_FFA6=q3dm7 MAP_FFA7=q3dm8 MAP_FFA8=q3dm9 MAP_FFA9=q3dm10 MAP_FFA10=q3dm11 MAP_FFA11=q3dm12 MAP_FFA12=q3dm13 MAP_FFA13=q3dm14 MAP_FFA14=q3dm15 MAP_FFA15=q3dm16 MAP_FFA16=q3dm17 MAP_FFA17=q3dm18 MAP_FFA18=q3dm19 FFAMAP=MAP_FFA${MAP_FFA_N} MAP_CTF_N=$(( $RANDOM % 4 + 1 )) MAP_CTF1=q3ctf1 MAP_CTF2=q3ctf2 MAP_CTF3=q3ctf3 MAP_CTF4=q3ctf4 CTFMAP=MAP_CTF${MAP_CTF_N} LORD_N=$(( $RANDOM % 6 + 1 )) LORD1=xaero LORD2=uriel LORD3=anarki LORD4=klesk LORD5=hunter LORD6=sarge ARENALORD=LORD${LORD_N} TEAM_N=$(( $RANDOM % 2 + 1 )) TEAM1=Red TEAM2=Blue TEAM=TEAM${TEAM_N} if [ $MODE = "1" ] then quake3 \ +set bot_minplayers 7 \ +set capturelimit $CAPTURELIMIT \ +set fraglimit $FRAGLIMIT \ +set timelimit $TIMELIMIT \ +set g_gametype 0 \ +set g_spSkill $SKILL \ +set sv_maxclients "8" \ +map ${!FFAMAP} elif [ $MODE = "2" ] then quake3 \ +set bot_minplayers 7 \ +set capturelimit $CAPTURELIMIT \ +set fraglimit $FRAGLIMIT \ +set timelimit $TIMELIMIT \ +set g_gametype 4 \ +set g_spSkill $SKILL \ +set sv_maxclients "8" \ +map ${!CTFMAP} \ +wait 5 +team ${!TEAM} elif [ $MODE = "3" ] then quake3 \ +set bot_minplayers 7 \ +set capturelimit $CAPTURELIMIT \ +set fraglimit $FRAGLIMIT \ +set timelimit $TIMELIMIT \ +set g_gametype 3 \ +set g_spSkill $SKILL \ +set sv_maxclients "8" \ +map ${!TEAMMAP} \ +wait 5 +team ${!TEAM} else quake3 \ +set capturelimit $CAPTURELIMIT \ +set fraglimit $FRAGLIMIT \ +set timelimit $TIMELIMIT \ +set g_gametype 1 \ +set g_spSkill $SKILL \ +set sv_maxclients "2" \ +map ${!TOURNEYMAP} \ +addbot ${!ARENALORD} fi