21 Commits

Author SHA1 Message Date
chacha
26857087f9 update to 122 2026-01-26 20:50:58 +00:00
cclecle
a43e1cec86 update to 121f 2025-08-25 20:44:33 +02:00
cclecle
d85e5f0d16 update to 121 2024-10-11 20:49:07 +01:00
cclecle
196b208af2 update to version 120 2024-07-04 18:50:47 +01:00
cclecle
e731098dae update v111 -> v115d 2023-08-30 23:41:25 +01:00
81f7c798a9 Update 'Run.sh' 2023-04-15 20:03:38 +02:00
cclecle
91f9940aad remove old countryflag texture (packaged separately) 2022-11-13 14:09:28 +00:00
cclecle
6c17bfd942 update to 111c 2022-11-08 22:24:16 +00:00
94627e4c84 Mise à jour de 'Run.sh' 2022-07-27 15:00:40 +00:00
cclecle
991885366b update to 109e 2022-07-27 16:23:04 +02:00
b982a3b938 Mise à jour de 'Run.sh' 2022-07-27 14:19:45 +00:00
7c7c0b3fcb Mise à jour de 'Run.sh' 2022-07-27 03:00:40 +00:00
660d953263 Mise à jour de 'Run.sh' 2022-07-27 02:42:11 +00:00
29a321f217 Mise à jour de 'Run.sh' 2022-07-27 01:45:04 +00:00
cclecle
05457131c1 update to SSB109 2022-07-20 01:21:27 +02:00
3e27a1b5cb Mise à jour de 'Run.sh' 2022-06-10 21:58:16 +00:00
cclecle
e3e8c9d402 update to 108c 2022-06-09 08:47:46 +02:00
ba4be519bd Mise à jour de 'Run.sh' 2022-05-15 21:56:20 +00:00
81d416e55f integ 2022-05-14 11:28:34 +02:00
df0badafd1 Mise à jour de 'Run.sh' 2022-05-08 23:19:03 +00:00
4baa56d466 fix install script 2022-05-08 19:20:25 +02:00
7 changed files with 898 additions and 659 deletions

File diff suppressed because it is too large Load Diff

77
Run.sh
View File

@@ -1,50 +1,79 @@
#!/bin/bash #!/bin/bash
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
OUTPUT_DIR="$2" OUTPUT_DIR="$2"
CFG_FILE="$3"
DEFAULT_CFG_FILE=UnrealTournament.ini DEFAULT_CFG_FILE=UnrealTournament.ini
CFG_FILE="${3:-$DEFAULT_CFG_FILE}"
function add_iniKeyEx() {
crudini --set $OUTPUT_DIR/System/$1 $2 __$3 $4
# Warning: ugly hack with sed to allow multiple key instances + to remove space around '='
sed -i "s/[[:space:]]*__$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')[[:space:]]*=[[:space:]]*/$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')=/g" $OUTPUT_DIR/System/$1
}
# !!Warning!! section is not considered
function del_iniKeyEx() {
sed -i "/[[:space:]]*$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')[[:space:]]*=[[:space:]]*$(echo $4 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')/d" $OUTPUT_DIR/System/$1
}
function add_iniKey() {
add_iniKeyEx $CFG_FILE $1 $2 $3
}
# !!Warning!! section is not considered
function del_iniKey() {
del_iniKeyEx $CFG_FILE $1 $2 $3
}
function add_ServerPackage() {
add_iniKey 'Engine.GameEngine' ServerPackages $1
add_iniKey 'XC_Engine.XC_GameEngine' ServerPackages $1
}
function del_ServerPackage() {
del_iniKey 'Engine.GameEngine' ServerPackages $1
del_iniKey 'XC_Engine.XC_GameEngine' ServerPackages $1
}
function add_ServerActors() {
add_iniKey 'Engine.GameEngine' ServerActors $1
add_iniKey 'XC_Engine.XC_GameEngine' ServerActors $1
}
function del_ServerActors() {
del_iniKey 'Engine.GameEngine' ServerActors $1
del_iniKey 'XC_Engine.XC_GameEngine' ServerActors $1
}
function getmodprefix() {
UFile=$(find $OUTPUT_DIR/System -type f -iname "SmartSB[[:digit:]]*\.u" -exec basename {} \;)
BaseName="${UFile%.*}"
echo "$BaseName"
}
function install() { function install() {
cp $SCRIPT_DIR/Help $OUTPUT_DIR/Help -R rsync -a $SCRIPT_DIR/Help/ $OUTPUT_DIR/Help/ --exclude '.git'
cp $SCRIPT_DIR/System $OUTPUT_DIR/System -R rsync -a $SCRIPT_DIR/System/ $OUTPUT_DIR/System/ --exclude '.git'
cp $SCRIPT_DIR/Textures $OUTPUT_DIR/Textures -R rsync -a $SCRIPT_DIR/Textures/ $OUTPUT_DIR/Textures/ --exclude '.git'
echo install ok echo install ok
} }
function enable() { function enable() {
SSBUFile=$(find $OUTPUT_DIR/System -type f -iname "SmartSB*.u" ! -name "SmartSBStats.u" -exec basename {} \;) BaseName="$(getmodprefix)"
SSBBaseName="${SSBUFile%.*}"
# Warning: ugly hack with sed to allow multiple key instances add_ServerPackage $BaseName
crudini --set $OUTPUT_DIR/System/$CFG_FILE 'Engine.GameEngine' _ServerPackages $SSBBaseName add_ServerPackage SmartSBStats
sed -i 's/_ServerPackages/ServerPackages/g' $OUTPUT_DIR/System/$CFG_FILE add_ServerActors $BaseName.SmartSBServerActor
crudini --set $OUTPUT_DIR/System/$CFG_FILE 'Engine.GameEngine' _ServerPackages SmartSBStats #todo: config SSB ?
sed -i 's/_ServerPackages/ServerPackages/g' $OUTPUT_DIR/System/$CFG_FILE
crudini --set $OUTPUT_DIR/System/$CFG_FILE 'Engine.GameEngine' _ServerActors $SSBBaseName.SmartSBServerActor
sed -i 's/_ServerActors/ServerActors/g' $OUTPUT_DIR/System/$CFG_FILE
echo enable ok echo enable ok
} }
function disable() { function disable() {
SSBUFile=$(find $OUTPUT_DIR/System -type f -iname "SmartSB*.u" ! -name "SmartSBStats.u" -exec basename {} \;) BaseName="$(getmodprefix)"
SSBBaseName="${SSBUFile%.*}"
sed -i "/ServerPackages[[:space:]]*=[[:space:]]*$SSBBaseName/d" $OUTPUT_DIR/System/$CFG_FILE del_ServerPackage $BaseName
sed -i "/ServerPackages[[:space:]]*=[[:space:]]*SmartSBStats/d" $OUTPUT_DIR/System/$CFG_FILE del_ServerPackage SmartSBStats
sed -i "/ServerActors[[:space:]]*=[[:space:]]*$SSBBaseName.SmartSBServerActor/d" $OUTPUT_DIR/System/$CFG_FILE del_ServerActors $BaseName.SmartSBServerActor
echo disable ok echo disable ok
} }
function show_help() { function show_help() {
echo echo
echo "Usage: $0 { install | enable | disable } <UT99_INSTALL_DIR> [<UT99_CONFIG_FILE>]" echo "Usage: $0 { getmodprefix | install | enable | disable } <UT99_INSTALL_DIR> [<UT99_CONFIG_FILE>]"
echo echo
} }
@@ -76,6 +105,10 @@ function check_game_dir() {
} }
case "$1" in case "$1" in
'getmodprefix')
check_game_dir
getmodprefix
;;
'install') 'install')
check_game_dir check_game_dir
install install

View File

@@ -1,2 +0,0 @@
[Public]
Object=(Name=SmartSB107.SmartSB,Class=Class,MetaClass=Engine.Mutator,Description="SmartSB v107")

Binary file not shown.

3
System/SmartSB122.int Normal file
View File

@@ -0,0 +1,3 @@
[Public]
Object=(Name=SmartSB122.SmartSB,Class=Class,MetaClass=Engine.Mutator,Description="SmartSB v122")
Object=(Name=SmartSB122.SmartSBServerActor,Class=Class,MetaClass=Engine.Actor,Description="")

BIN
System/SmartSB122.u Normal file

Binary file not shown.

Binary file not shown.