summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorRicardo (XenGi) Band2023-05-03 20:58:56 +0200
committerRicardo (XenGi) Band2023-05-03 21:31:54 +0200
commitcdd491ca44b4b125eb1299d88d5f588487c24ddd (patch)
tree32de66c0221fa8d908facab75179d1f20572b191
parent23d62a598cd4e5db8933a107614bec2b7b741713 (diff)
downloadaur-cdd491ca44b4b125eb1299d88d5f588487c24ddd.tar.gz
massively simplify package; dropping support for anthorlogy DVD for now. Also made a new icon.
-rw-r--r--.SRCINFO42
-rw-r--r--PKGBUILD239
-rw-r--r--disk.list382
-rw-r--r--unrealtournament.install4
-rw-r--r--ut.desktop2
-rw-r--r--ut.svg.zstdbin0 -> 3394 bytes
-rw-r--r--utcustom.sh106
-rw-r--r--utpg.list147
8 files changed, 83 insertions, 839 deletions
diff --git a/.SRCINFO b/.SRCINFO
index bc096f5933a0..500c245d09ef 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,40 +1,20 @@
pkgbase = unrealtournament
pkgdesc = The classic Unreal Tournament from 1999 (Retail CD or DVD required)
- pkgver = 469b
- pkgrel = 4
+ pkgver = 469c
+ pkgrel = 2
url = http://www.unrealtournament.com/
arch = i686
arch = x86_64
- groups = ut1999-goty
license = custom
- makedepends = makepkg-unreal
- makedepends = unshield
- makedepends = lib32-fakeroot
- depends = libnotify
- depends = lib32-sdl
- depends = lib32-libgl
- provides = ut1999
- conflicts = ut1999
- conflicts = ut
- conflicts = ut-server
- noextract = OldUnreal-UTPatch469b-Linux.tar.bz2
- source = ut436.run::https://gitlab.com/XenGi/oldgames/-/raw/master/ut/unreal.tournament_436-multilanguage.run
- source = ut436goty.run::https://gitlab.com/XenGi/oldgames/-/raw/master/ut/unreal.tournament_436-multilanguage.goty.run
- source = https://gitlab.com/XenGi/oldgames/-/raw/master/ut/ALAudio-86eade1c.zip
- source = https://gitlab.com/XenGi/oldgames/-/raw/master/ut/OpenGLDrv-3.6-86eade1c.zip
- source = https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v469b/OldUnreal-UTPatch469b-Linux.tar.bz2
+ optdepends = innoextract: Extract GOG release
+ noextract = OldUnreal-UTPatch469c-Linux.tar.bz2
source = ut.desktop
- source = disk.list
- source = utcustom.sh
- source = https://gitlab.com/XenGi/oldgames/raw/master/ut/ut.svgz
- sha256sums = 8c0f0e266744ed18b14f6f6777d9ce8ed3ece120ccc37e7bbffa92e5a92ad2a8
- sha256sums = cb704cf21625c12eaf181fabd24297bcf1f51576afa691067a56e3e6f38f6d34
- sha256sums = 674ae459b3ff6d442cce0e4b115244f3db5384923e6b848626aa67b370b7148b
- sha256sums = b985a79323bee32ad24cce30afbfe63c47dcd43e3e06fa226b3ea42bbc4b0c0e
- sha256sums = 99b0832dfa5e8122b79c05b0d3cd22a277e36b865a1079941ee62c986cd92c1f
- sha256sums = 9aac034bbfe75afc1bbcc1f280025d6c36d77d4e00e68a3b11a2e3855f37756e
- sha256sums = e31d9c7b91254128214dfa606058b78ece25a5a10fe2a2b8fd19575a9c7b2dbb
- sha256sums = b9159b838ce79f8539f8911e0124f099639b81d005780e5da1b112f6767b9523
- sha256sums = 75ed2ef644f5e7100553241f195247dcad58d59a63b855d6895d421fdbfb9c1a
+ source = ut.svg.zstd
+ sha256sums = fea5efdcac67564f2b5b8ef215115990739243a53a5f86e67f9414081d5b28dc
+ sha256sums = 8fc6bc71f20b8395d75fad8b30d18fc6c9d39fee1f9633be090ad8fd779e8827
+ source_i686 = OldUnreal-UTPatch469c-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v469c/OldUnreal-UTPatch469c-Linux-x86.tar.bz2
+ sha256sums_i686 = 30978800c100e8c5a20fbc66a04b9e12f843424b3a811b04e6fb8e1b6b5d6543
+ source_x86_64 = OldUnreal-UTPatch469c-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v469c/OldUnreal-UTPatch469c-Linux-amd64.tar.bz2
+ sha256sums_x86_64 = 4c99bde06d26b724f14471d374d4d6105dbdc98c56ec2a40af3fa541956eeed9
pkgname = unrealtournament
diff --git a/PKGBUILD b/PKGBUILD
index d2c5092214bb..ffcdf11716bb 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,195 +2,90 @@
# M0Rf30
# Mantainer: XenGi
pkgname=unrealtournament
-pkgver=469b
-pkgrel=4
+pkgver=469c
+pkgrel=2
pkgdesc="The classic Unreal Tournament from 1999 (Retail CD or DVD required)"
arch=('i686' 'x86_64')
url="http://www.unrealtournament.com/"
license=('custom')
-groups=(ut1999-goty)
-[ "$CARCH" = "i686" ] && depends=(libnotify sdl libgl)
-[ "$CARCH" = "x86_64" ] && depends=(libnotify lib32-sdl lib32-libgl)
-makedepends=(makepkg-unreal unshield lib32-fakeroot)
-provides=(ut1999)
-conflicts=(ut1999 ut ut-server)
-source=("ut436.run::https://gitlab.com/XenGi/oldgames/-/raw/master/ut/unreal.tournament_436-multilanguage.run"
- "ut436goty.run::https://gitlab.com/XenGi/oldgames/-/raw/master/ut/unreal.tournament_436-multilanguage.goty.run"
- "https://gitlab.com/XenGi/oldgames/-/raw/master/ut/ALAudio-86eade1c.zip"
- "https://gitlab.com/XenGi/oldgames/-/raw/master/ut/OpenGLDrv-3.6-86eade1c.zip"
- "https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v${pkgver}/OldUnreal-UTPatch${pkgver}-Linux.tar.bz2"
- "ut.desktop"
- "disk.list"
- "utcustom.sh"
- "https://gitlab.com/XenGi/oldgames/raw/master/ut/ut.svgz")
+optdepends=('innoextract: Extract GOG release')
+source=("ut.desktop"
+ "ut.svg.zstd")
+source_i686+=("OldUnreal-UTPatch${pkgver}-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v${pkgver}/OldUnreal-UTPatch${pkgver}-Linux-x86.tar.bz2")
+source_x86_64+=("OldUnreal-UTPatch${pkgver}-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v${pkgver}/OldUnreal-UTPatch${pkgver}-Linux-amd64.tar.bz2")
noextract=("OldUnreal-UTPatch${pkgver}-Linux.tar.bz2")
-sha256sums=('8c0f0e266744ed18b14f6f6777d9ce8ed3ece120ccc37e7bbffa92e5a92ad2a8'
- 'cb704cf21625c12eaf181fabd24297bcf1f51576afa691067a56e3e6f38f6d34'
- '674ae459b3ff6d442cce0e4b115244f3db5384923e6b848626aa67b370b7148b'
- 'b985a79323bee32ad24cce30afbfe63c47dcd43e3e06fa226b3ea42bbc4b0c0e'
- '99b0832dfa5e8122b79c05b0d3cd22a277e36b865a1079941ee62c986cd92c1f'
- '9aac034bbfe75afc1bbcc1f280025d6c36d77d4e00e68a3b11a2e3855f37756e'
- 'e31d9c7b91254128214dfa606058b78ece25a5a10fe2a2b8fd19575a9c7b2dbb'
- 'b9159b838ce79f8539f8911e0124f099639b81d005780e5da1b112f6767b9523'
- '75ed2ef644f5e7100553241f195247dcad58d59a63b855d6895d421fdbfb9c1a')
-
-# You can uncomment and set these two variables in order to override the auto
-# detection done in build() by _detect_cdpath() and _detect_cdversion().
-#_cdpath="/mnt" # path to your mounted UT CD or DVD
-#_cdversion="" # "default" or "anthology"
-
-# Detect the mount point of the install medium.
-_detect_cdpath() {
+sha256sums=('fea5efdcac67564f2b5b8ef215115990739243a53a5f86e67f9414081d5b28dc'
+ '8fc6bc71f20b8395d75fad8b30d18fc6c9d39fee1f9633be090ad8fd779e8827')
+sha256sums_i686+=('30978800c100e8c5a20fbc66a04b9e12f843424b3a811b04e6fb8e1b6b5d6543')
+sha256sums_x86_64+=('4c99bde06d26b724f14471d374d4d6105dbdc98c56ec2a40af3fa541956eeed9')
+
+prepare() {
+ # Mount the UT (GOTY) cd/image or unpack the GOG distribution with the innoextract tool.
+ # We will refer to the root directory of your game cd/image or GOG distribution as the distribution directory.
echo "Searching for mount point of install medium..."
-
- for mountpoint in $(egrep "(iso9660|udf)" /etc/mtab | awk '{print $2}'); do
- if [ -f "${mountpoint}/SYSTEM/UnrealTournament.exe" ] || [ -f "${mountpoint}/Disk1/data1.hdr" ]; then
- _cdpath="${mountpoint}"
+ for mountpoint in $(grep -E "(iso9660|udf)" /etc/mtab | awk '{print $2}'); do
+ if [ -f "${mountpoint}/SYSTEM/UnrealTournament.exe" ]; then
+ export _dist_dir="${mountpoint}"
break
fi
done
- if [ -z "${_cdpath}" ]; then
+ # #########################################################################
+ # Set the path to your extracted GOG dirtectory here if needed:
+ #export _dist_dir=""
+ # #########################################################################
+
+ if [ -z "${_dist_dir}" ]; then
cat << EOF >&2
-No mounted valid Unreal Tournament CD or Unreal Anthology
-DVD has been detected while scanning all "iso9660"
-and all "udf" filesystems in "/etc/mtab" for the file
-"SYSTEM/UnrealTournament.exe" or the file "Disk1/data1.hdr".
-Make sure you mounted the right disk correctly. If it still
-doesn't work you can try setting the "_cdpath" and/or the
-"_cdversion" variable in this PKGBUILD to your mount point and
-your version of UT manually.
+No mounted valid Unreal Tournament CD has been detected while scanning all
+"iso9660" and all "udf" filesystems in "/etc/mtab" for the file
+"SYSTEM/UnrealTournament.exe". Make sure you mounted the disk correctly.
+If it still doesn't work you can try setting the "_dist_dir" variable in this
+PKGBUILD to your mount point or GOG directory manually. For the GOG release,
+use the innoextract tool and set the variable to the output directory.
EOF
return 1
else
- echo "${_cdpath} looks promising."
+ echo "${_dist_dir} looks promising."
fi
-}
-
-# Determine which method should be used for extracting the files from the
-# install medium.
-_detect_cdversion() {
- echo "Determining install method... "
-
- if [ -f "${_cdpath}/SYSTEM/UnrealTournament.exe" ]; then
- _cdversion="default"
- elif [ -f "${_cdpath}/Disk1/data1.hdr" ]; then
- _cdversion="anthology"
- elif [ -f "${_cdpath}/System/UnrealTournament.exe" ]; then
- _cdversion="default"
- else
- echo "Could not determine _cdversion." >&2
- return 1
- fi
- echo " Using \"${_cdversion}\" method."
-}
-
-# Install files from most UT99 CDs.
-_build_default() {
- echo "Extracting files from ${_cdpath}..."
- cd "${srcdir}"
-
- _unreal_install_files "${_cdpath}" "${pkgdir}/opt/ut" "*./System400/.*" < disk.list || return 1
-
- _install_patches || return 1
-
- echo "Decompressing maps from ${_cdpath}..."
- grep "Maps/" disk.list | sed -e "s/$/\.uz/" | _unreal_decompress_files "${_cdpath}" "${pkgdir}/opt/ut" || return 1
- grep "Maps/" disk.list | _unreal_move_files "${pkgdir}/opt/ut/System" "${pkgdir}/opt/ut" || return 1
- rm -f -- "${pkgdir}/opt/ut/System/ucc.log"
-}
-
-# Install files from the Unreal Anthology DVD.
-_build_anthology() {
- echo "Extracting files from ${_cdpath}..."
- cd "${srcdir}"
- ln -fs -- ${_cdpath}/Disk*/data* -t . || return 1
- unshield -g 3_UnrealTournament_Help -d dvd x data1.hdr || return 1
- unshield -g 3_UnrealTournament_Maps -d dvd x data1.hdr || return 1
- unshield -g 3_UnrealTournament_Music -d dvd x data1.hdr || return 1
- unshield -g 3_UnrealTournament_Sounds_All -d dvd x data1.hdr || return 1
- unshield -g 3_UnrealTournament_Sounds_English -d dvd x data1.hdr || return 1
- unshield -g 3_UnrealTournament_System_All -d dvd x data1.hdr || return 1
- unshield -g 3_UnrealTournament_System_English -d dvd x data1.hdr || return 1
- unshield -g 3_UnrealTournament_Textures -d dvd x data1.hdr || return 1
- _unreal_move_files dvd "${pkgdir}/opt/ut" < disk.list || return 1
- _install_patches || return 1
-}
-
-# Add files for running UT on Linux, apply the patches shipped by Loki and add
-# some third party fixes.
-_install_patches() {
- echo "Adding Loki's Linux runtime files..."
- cd "${srcdir}"
-
- sh ./ut436.run --tar xfC 436 || return 1
- sh ./ut436goty.run --tar xfC 436goty || return 1
-
- cd 436goty
- zcat ../ut.svgz > ../ut.svg
- install --mode=755 -D ../ut.svg "${pkgdir}/usr/share/pixmaps/ut.svg"
- install --mode=644 -- README "${pkgdir}/opt/ut/Help/README"
- install --mode=644 -- README.Loki "${pkgdir}/opt/ut/Help/README.Loki"
- install --mode=755 -- bin/Linux/x86/ucc "${pkgdir}/opt/ut/ucc"
- install --mode=755 -- ../utcustom.sh "${pkgdir}/usr/bin/ut"
- chmod +x $pkgdir/usr/bin/ut
- ln -fs -- /opt/ut/ut "${pkgdir}ut"
-
- tar xfC data.tar.gz "${pkgdir}/opt/ut" --exclude=System/UnrealTournament.ini.PATCH || return 1
- chmod 644 -- "${pkgdir}/opt/ut/System/OpenGLDrv.int"
- install --mode=644 -D -- "${pkgdir}/opt/ut/System/License.int" \
- "${pkgdir}/usr/share/licenses/${pkgname}/License.int"
-
- tar xfC UT436-OpenGLDrv-Linux-090602.tar.gz "${pkgdir}/opt/ut" || return 1
- tar xfC OpenGL.ini.tar.gz "${pkgdir}/opt/ut" || return 1
- tar xfC Credits.tar.gz "${pkgdir}/opt/ut" || return 1
- tar xfC NetGamesUSA.com.tar.gz "${pkgdir}/opt/ut" || return 1
-
- # As there is no distinction between GOTY and non-GOTY CDs yet, we just try
- # to patch everything that applies. Also Loki's patcher is too unreliable.
- cd "${srcdir}"
- echo "Trying to apply Loki's 436 Xdelta patches..."
- _unreal_fail_safe_patcher 436/setup.data/data "${pkgdir}/opt/ut"
- _unreal_fail_safe_patcher 436goty/setup.data/data "${pkgdir}/opt/ut"
-
- echo "Applying OldUnreal patch"
- tar xfC OldUnreal-UTPatch${pkgver}-Linux.tar.bz2 "${pkgdir}/opt/ut"
+ # Set game destination
+ export _game_dir="/opt/ut"
}
package() {
- source /usr/lib/makepkg/unreal.sh || return 1
-
- if [ -z "${_cdpath}" ]; then
- _detect_cdpath || return 1
- else
- echo "Using ${_cdpath} as install medium."
- fi
- if [ -z "${_cdversion}" ]; then
- _detect_cdversion || return 1
- else
- echo "Using \"${_cdversion}\" install method."
- fi
-
- install --directory -- ${srcdir}/{436,436goty,451utpg} \
- ${pkgdir}/usr/bin \
- ${pkgdir}/opt/ut/{Help,Logs,Maps,Music,Sounds,System,Textures} \
- ${pkgdir}/opt/ut/Web/{images,inc,plaintext/inc} || return 1
- install --mode=644 -D -- "${srcdir}/ut.desktop" \
- "${pkgdir}/usr/share/applications/ut.desktop"
- # Update OpenGL driver to 3.6 and ALaudio
- cp $srcdir/*.so* $pkgdir/opt/ut/System
-
- case "${_cdversion}" in
- ("default")
- _build_default || return 1
- ;;
- ("anthology")
- _build_anthology || return 1
- ;;
- (*)
- echo "Unknown _cdversion: ${_cdversion}" >&2
- return 1
- ;;
- esac
+ # Create game directory
+ install --mode 755 -d -- ${pkgdir}${_game_dir}
+
+ # Unpack patch into game directory
+ tar xaf ${srcdir}/OldUnreal-UTPatch${pkgver}-Linux.tar.bz2 -C ${pkgdir}${_game_dir}
+
+ # Copy the Music and Sounds directories from the distribution directory into the game directory
+ cp -r ${_dist_dir}/Music/ ${pkgdir}${_game_dir}
+ cp -r ${_dist_dir}/Sounds/ ${pkgdir}${_game_dir}
+
+ # Copy the contents of the Textures directory from the distribution directory into the existing Textures directory
+ # within your game directory WITHOUT REPLACING the existing files
+ cp -n ${_dist_dir}/Textures/* ${pkgdir}${_game_dir}/Textures/ || true
+
+ # Create a Maps directory within the game directory and copy over the unpacked Maps (i.e., map files with a .unr
+ # extension) from the distribution directory
+ install --mode=755 -d -- ${pkgdir}${_game_dir}/Maps
+ cp ${_dist_dir}/Maps/*.unr ${pkgdir}${_game_dir}/Maps/
+
+ # Extract all compressed maps (i.e., maps with a .uz extension) into your game's Maps directory as follows.
+ # If there are no compressed maps in your game distribution folder, you may ignore this step.
+ #for i in /mnt/Maps/*.uz; do ./System64/ucc-bin decompress $i; done
+ [ "$CARCH" = "i686" ] && _system_dir=${_game_dir}/System
+ [ "$CARCH" = "x86_64" ] && _system_dir=${_game_dir}/System64
+
+ find ${_dist_dir}/Maps/ -name "*.uz" -exec ${pkgdir}${_system_dir}/ucc-bin decompress {} \;
+ #find ${_dist_dir}/Maps/ -name "*.uz" -exec sh -c "mv ${pkgdir}${_system_dir}/\$\{1%\} ${pkgdir}${_game_dir}/Maps/" _ {}\;
+
+ install --mode 755 -d -- ${pkgdir}/usr/bin
+ ln -s ${_system_dir}/ut-bin ${pkgdir}/usr/bin/ut
+ install --mode=755 -d -- "${pkgdir}/usr/share/pixmaps"
+ zstdcat "${srcdir}/ut.svg.zstd" > "${pkgdir}/usr/share/pixmaps/ut.svg"
+ install --mode=644 -D -- "${srcdir}/ut.desktop" "${pkgdir}/usr/share/applications/ut.desktop"
}
+
diff --git a/disk.list b/disk.list
deleted file mode 100644
index 9d869e46c9cc..000000000000
--- a/disk.list
+++ /dev/null
@@ -1,382 +0,0 @@
-Help/ReadMe.htm
-Help/UnrealTournamentSetupLogo.bmp
-Maps/AS-Frigate.unr
-Maps/AS-Guardia.unr
-Maps/AS-HiSpeed.unr
-Maps/AS-Mazon.unr
-Maps/AS-OceanFloor.unr
-Maps/AS-Overlord.unr
-Maps/AS-Rook.unr
-Maps/AS-Tutorial.unr
-Maps/CTF-Command.unr
-Maps/CTF-Coret.unr
-Maps/CTF-Dreary.unr
-Maps/CTF-EternalCave.unr
-Maps/CTF-Face.unr
-Maps/CTF-Gauntlet.unr
-Maps/CTF-LavaGiant.unr
-Maps/CTF-Niven.unr
-Maps/CTF-November.unr
-Maps/CTF-Tutorial.unr
-Maps/CityIntro.unr
-Maps/DM-Barricade.unr
-Maps/DM-Codex.unr
-Maps/DM-Conveyor.unr
-Maps/DM-Curse][.unr
-Maps/DM-Deck16][.unr
-Maps/DM-Fetid.unr
-Maps/DM-Fractal.unr
-Maps/DM-Gothic.unr
-Maps/DM-Grinder.unr
-Maps/DM-HyperBlast.unr
-Maps/DM-KGalleon.unr
-Maps/DM-Liandri.unr
-Maps/DM-Morbias][.unr
-Maps/DM-Morpheus.unr
-Maps/DM-Oblivion.unr
-Maps/DM-Peak.unr
-Maps/DM-Phobos.unr
-Maps/DM-Pressure.unr
-Maps/DM-Pyramid.unr
-Maps/DM-Stalwart.unr
-Maps/DM-StalwartXL.unr
-Maps/DM-Tempest.unr
-Maps/DM-Turbine.unr
-Maps/DM-Tutorial.unr
-Maps/DM-Zeto.unr
-Maps/DOM-Cinder.unr
-Maps/DOM-Condemned.unr
-Maps/DOM-Cryptic.unr
-Maps/DOM-Gearbolt.unr
-Maps/DOM-Ghardhen.unr
-Maps/DOM-Lament.unr
-Maps/DOM-Leadworks.unr
-Maps/DOM-MetalDream.unr
-Maps/DOM-Olden.unr
-Maps/DOM-Sesmar.unr
-Maps/DOM-Tutorial.unr
-Maps/EOL_Assault.unr
-Maps/EOL_CTF.unr
-Maps/EOL_Challenge.unr
-Maps/EOL_Deathmatch.unr
-Maps/EOL_Domination.unr
-Maps/EOL_Statues.unr
-Maps/Entry.unr
-Maps/UT-Logo-Map.unr
-Maps/UTCredits.unr
-Music/Botmca9.umx
-Music/Botpck10.umx
-Music/Cannon.umx
-Music/Colossus.umx
-Music/Course.umx
-Music/Credits.umx
-Music/Ending.umx
-Music/Enigma.umx
-Music/Foregone.umx
-Music/Godown.umx
-Music/Lock.umx
-Music/Mech8.umx
-Music/Mission.umx
-Music/Nether.umx
-Music/Organic.umx
-Music/Phantom.umx
-Music/Razor-ub.umx
-Music/Run.umx
-Music/SaveMe.umx
-Music/Savemeg.umx
-Music/Seeker.umx
-Music/Seeker2.umx
-Music/Skyward.umx
-Music/Strider.umx
-Music/Suprfist.umx
-Music/UnWorld2.umx
-Music/Uttitle.umx
-Music/Wheels.umx
-Music/firebr.umx
-Music/utmenu23.umx
-Sounds/Activates.uax
-Sounds/Addon1.uax
-Sounds/AmbAncient.uax
-Sounds/AmbCity.uax
-Sounds/AmbModern.uax
-Sounds/AmbOutside.uax
-Sounds/Announcer.uax
-Sounds/BossVoice.uax
-Sounds/DDay.uax
-Sounds/DMatch.uax
-Sounds/DoorsAnc.uax
-Sounds/DoorsMod.uax
-Sounds/Extro.uax
-Sounds/Female1Voice.uax
-Sounds/Female2Voice.uax
-Sounds/FemaleSounds.uax
-Sounds/LadderSounds.uax
-Sounds/Male1Voice.uax
-Sounds/Male2Voice.uax
-Sounds/MaleSounds.uax
-Sounds/Pan1.uax
-Sounds/TutVoiceAS.uax
-Sounds/TutVoiceCTF.uax
-Sounds/TutVoiceDM.uax
-Sounds/TutVoiceDOM.uax
-Sounds/VRikers.uax
-Sounds/noxxsnd.uax
-Sounds/openingwave.uax
-Sounds/rain.uax
-System/ALAudio.so
-System/Audio.so
-System/BossSkins.int
-System/BotPack.u
-System/Botpack.int
-System/CommandoSkins.int
-System/Core.int
-System/Core.so
-System/Core.u
-System/Editor.int
-System/Editor.so
-System/Editor.u
-System/Engine.int
-System/Engine.so
-System/Engine.u
-System/FCommandoSkins.int
-System/Female1Skins.int
-System/Female2Skins.int
-System/Fire.so
-System/Fire.u
-System/GlideDrv.int
-System/GlideDrv.so
-System/IpDrv.int
-System/IpDrv.so
-System/IpDrv.u
-System/IpServer.int
-System/IpServer.u
-System/License.int
-System/Male1Skins.int
-System/Male2Skins.int
-System/Male3Skins.int
-System/Manifest.int
-System/NullDrv.so
-System/NullNetDriver.so
-System/NullRender.so
-System/OpenGLDrv.int
-System/OpenGLDrv.so
-System/Render.so
-System/SDLDrv.so
-System/SDLGLDrv.int
-System/SDLGLDrv.so
-System/SDLSoftDrv.int
-System/SDLSoftDrv.so
-System/SGirlSkins.int
-System/SkTrooperSkins.int
-System/SoldierSkins.int
-System/Startup.int
-System/UBrowser.int
-System/UBrowser.u
-System/UMenu.int
-System/UMenu.u
-System/UTBrowser.u
-System/UTMenu.int
-System/UTMenu.u
-System/UTServerAdmin.int
-System/UTServerAdmin.u
-System/UWeb.int
-System/UWeb.so
-System/UWeb.u
-System/UWindow.u
-System/Unreal.int
-System/UnrealEd.ini
-System/UnrealEd.int
-System/UnrealI.int
-System/UnrealI.u
-System/UnrealIOrder.int
-System/UnrealShare.int
-System/UnrealShare.u
-System/UnrealTournament.ini
-System/UnrealTournament.int
-System/User.ini
-System/libSDL-1.1.so.0
-System/libmikmod.so.2
-System/libopenal-0.0.so
-System/ucc-bin
-System/ut-bin
-Textures/AlfaFX.utx
-Textures/Ancient.utx
-Textures/ArenaTex.utx
-Textures/Belt_fx.utx
-Textures/BluffFX.utx
-Textures/BossSkins.utx
-Textures/CTF.utx
-Textures/ChizraEFX.utx
-Textures/Coret_FX.utx
-Textures/Creative.utx
-Textures/Crypt.utx
-Textures/Crypt2.utx
-Textures/Crypt_FX.utx
-Textures/DDayFX.utx
-Textures/DMeffects.utx
-Textures/DacomaFem.utx
-Textures/DacomaSkins.utx
-Textures/DecayedS.utx
-Textures/Detail.utx
-Textures/Egypt.utx
-Textures/EgyptPan.utx
-Textures/FCommandoSkins.utx
-Textures/Faces.utx
-Textures/Female1Skins.utx
-Textures/Female2Skins.utx
-Textures/FireEng.utx
-Textures/FlareFX.utx
-Textures/FractalFX.utx
-Textures/GenEarth.utx
-Textures/GenFX.utx
-Textures/GenFluid.utx
-Textures/GenIn.utx
-Textures/GenTerra.utx
-Textures/GenWarp.utx
-Textures/GothFem.utx
-Textures/GothSkins.utx
-Textures/GreatFire.utx
-Textures/GreatFire2.utx
-Textures/HubEffects.utx
-Textures/ISVFX.utx
-Textures/Indus1.utx
-Textures/Indus2.utx
-Textures/Indus3.utx
-Textures/Indus4.utx
-Textures/Indus5.utx
-Textures/Indus6.utx
-Textures/Indus7.utx
-Textures/JWSky.utx
-Textures/LadderFonts.utx
-Textures/LadrArrow.utx
-Textures/LadrStatic.utx
-Textures/LavaFX.utx
-Textures/Lian-X.utx
-Textures/Liquids.utx
-Textures/Logo.utx
-Textures/Male1Skins.utx
-Textures/Male2Skins.utx
-Textures/Male3Skins.utx
-Textures/MenuGr.utx
-Textures/Metalmys.utx
-Textures/Mine.utx
-Textures/NaliCast.utx
-Textures/NaliFX.utx
-Textures/NivenFX.utx
-Textures/Old_FX.utx
-Textures/Palettes.utx
-Textures/PhraelFx.utx
-Textures/PlayrShp.utx
-Textures/Queen.utx
-Textures/RainFX.utx
-Textures/Render.utx
-Textures/RotatingU.utx
-Textures/SGirlSkins.utx
-Textures/Scripted.utx
-Textures/ShaneChurch.utx
-Textures/ShaneDay.utx
-Textures/ShaneSky.utx
-Textures/SkTrooperSkins.utx
-Textures/Skaarj.utx
-Textures/SkyBox.utx
-Textures/SkyCity.utx
-Textures/Slums.utx
-Textures/Soldierskins.utx
-Textures/SpaceFX.utx
-Textures/Starship.utx
-Textures/TCrystal.utx
-Textures/Terranius.utx
-Textures/TrenchesFX.utx
-Textures/UT.utx
-Textures/UT_ArtFX.utx
-Textures/UTbase1.utx
-Textures/UTcrypt.utx
-Textures/UTtech1.utx
-Textures/UTtech2.utx
-Textures/UTtech3.utx
-Textures/UWindowFonts.utx
-Textures/XFX.utx
-Textures/XbpFX.utx
-Textures/Xtortion.utx
-Textures/castle1.utx
-Textures/city.utx
-Textures/commandoskins.utx
-Textures/credits.utx
-Textures/eol.utx
-Textures/of1.utx
-Web/current.uhtm
-Web/current_console.uhtm
-Web/current_console_log.uhtm
-Web/current_console_send.uhtm
-Web/current_game.uhtm
-Web/current_menu.uhtm
-Web/current_mutators.uhtm
-Web/current_players.uhtm
-Web/defaults.uhtm
-Web/defaults_bots.uhtm
-Web/defaults_ippolicy-d.uhtm
-Web/defaults_ippolicy-f.uhtm
-Web/defaults_ippolicy-h.uhtm
-Web/defaults_maps.uhtm
-Web/defaults_menu.uhtm
-Web/defaults_rules.uhtm
-Web/defaults_server.uhtm
-Web/defaults_settings.uhtm
-Web/images/1-1.gif
-Web/images/1-2.gif
-Web/images/1.gif
-Web/images/2-1.gif
-Web/images/2-2.gif
-Web/images/3-1.gif
-Web/images/3-2.gif
-Web/images/4-1.gif
-Web/images/4-2.gif
-Web/images/5-1.gif
-Web/images/5-2.gif
-Web/images/6-1.gif
-Web/images/6-2.gif
-Web/images/7-1.gif
-Web/images/7-2.gif
-Web/images/7-3.gif
-Web/images/image.gif
-Web/images/logo.gif
-Web/images/m1-1.gif
-Web/images/m1-2.gif
-Web/images/m3-1.gif
-Web/images/m3-2.gif
-Web/images/right.gif
-Web/inc/content_footer_tables.inc
-Web/inc/content_header_tables.inc
-Web/inc/footer.inc
-Web/inc/header.inc
-Web/inc/menu_footer.inc
-Web/inc/menu_header.inc
-Web/inc/top_begin.inc
-Web/inc/top_end.inc
-Web/menu.uhtm
-Web/message.uhtm
-Web/plaintext/current.uhtm
-Web/plaintext/current_console.uhtm
-Web/plaintext/current_console_log.uhtm
-Web/plaintext/current_console_send.uhtm
-Web/plaintext/current_game.uhtm
-Web/plaintext/current_menu.uhtm
-Web/plaintext/current_mutators.uhtm
-Web/plaintext/current_players.uhtm
-Web/plaintext/defaults.uhtm
-Web/plaintext/defaults_bots.uhtm
-Web/plaintext/defaults_ippolicy-d.uhtm
-Web/plaintext/defaults_ippolicy-f.uhtm
-Web/plaintext/defaults_ippolicy-h.uhtm
-Web/plaintext/defaults_maps.uhtm
-Web/plaintext/defaults_menu.uhtm
-Web/plaintext/defaults_rules.uhtm
-Web/plaintext/defaults_server.uhtm
-Web/plaintext/defaults_settings.uhtm
-Web/plaintext/inc/footer.inc
-Web/plaintext/inc/header.inc
-Web/plaintext/inc/whiteheader.inc
-Web/plaintext/menu.uhtm
-Web/plaintext/message.uhtm
-Web/plaintext/root.uhtm
-Web/root.uhtm
diff --git a/unrealtournament.install b/unrealtournament.install
new file mode 100644
index 000000000000..d8da28483e1e
--- /dev/null
+++ b/unrealtournament.install
@@ -0,0 +1,4 @@
+post_install () {
+ echo "If you can't query any master servers try this: https://www.oldunreal.com/wiki/index.php?title=Masterserver_Guide"
+}
+
diff --git a/ut.desktop b/ut.desktop
index e411b2182997..361f74cc469e 100644
--- a/ut.desktop
+++ b/ut.desktop
@@ -2,7 +2,7 @@
Name=Unreal Tournament
GenericName=Classic Shooter
Comment=Unreal Tournament GOTY Edition
-Exec=/usr/bin/padsp /usr/bin/ut
+Exec=/usr/bin/ut
Icon=ut
Type=Application
Categories=Application;Game;ActionGame;
diff --git a/ut.svg.zstd b/ut.svg.zstd
new file mode 100644
index 000000000000..71462fcd4c80
--- /dev/null
+++ b/ut.svg.zstd
Binary files differ
diff --git a/utcustom.sh b/utcustom.sh
deleted file mode 100644
index a427351b042a..000000000000
--- a/utcustom.sh
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/bin/bash
-#
-# Unreal Tournament startup script
-#
-
-# Modifications by Eskild Hustvedt
-
-# The user preferences directory
-UT_PREFS="${HOME}/.loki/ut"
-UT_DATA_PATH="/opt/ut/"
-
-# Function to reveal osspd execution - not needed since patch 469b
-#a=$(ps -U root | grep osspd)
-#if [ -z $a ]; then
-# notify-send UT -i ut "Please execute <p><b>service osspd start</b></p><p>or</p><b>systemctl start osspd.service</b>";
-# exit 1;
-#fi
-
-# Function to find the real directory a program resides in.
-# Feb. 17, 2000 - Sam Lantinga, Loki Entertainment Software
-FindPath()
-{
- fullpath="`echo $1 | grep /`"
- if [ "$fullpath" = "" ]; then
- oIFS="$IFS"
- IFS=:
- for path in $PATH
- do if [ -x "$path/$1" ]; then
- if [ "$path" = "" ]; then
- path="."
- fi
- fullpath="$path/$1"
- break
- fi
- done
- IFS="$oIFS"
- fi
- if [ "$fullpath" = "" ]; then
- fullpath="$1"
- fi
- # Is the awk/ls magic portable?
- if [ -L "$fullpath" ]; then
- fullpath="`ls -l "$fullpath" | awk '{print $11}'`"
- fi
- dirname $fullpath
-}
-
-# Set the home if not already set.
-if [ "${UT_DATA_PATH}" = "" ]; then
- UT_DATA_PATH="`FindPath $0`/System"
-fi
-
-LD_LIBRARY_PATH=.:${UT_DATA_PATH}:${LD_LIBRARY_PATH}
-
-export LD_LIBRARY_PATH
-export UT_DATA_PATH
-
-create_prefpath()
-{
- path="${UT_PREFS}/$1"
- if [ ! -d "$path" ]; then
- echo "Creating directory $path"
- mkdir "$path"
- fi
-}
-
-copy_if_needed()
-{
- dist="${UT_DATA_PATH}/$1"
- file="${UT_PREFS}/$1"
- if [ ! -f "$file" ]; then
- echo "Installing default $file"
- cp "$dist" "$file"
- fi
-}
-
-# Hey, it's fun time!
-if [ ! -d ${HOME}/.loki ]
-then
- mkdir ${HOME}/.loki
-fi
-
-if [ ! -d ${UT_PREFS} ]
-then
- echo "Creating preferences directory..."
- create_prefpath
-fi
-create_prefpath System
-
-# Flood the CPU for four seconds so that it is running at the currect speed
-RandomFork () {
- while [ "$SECONDS" -le "4" ]; do
- let MYRND="$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM*$RANDOM$RANDOM+$RANDOM*$RANDOM/$RANDOM*$RANDOM"
- done
-}
-RandomFork &
-
-# Let's boogie!
-if [ -x "${UT_DATA_PATH}/System/ut-bin" ]
-then
- echo -n "Sleeping for 1 second... ";sleep 1s;echo "done - launching UT"
- cd "${UT_DATA_PATH}/System"
- exec "./ut-bin" -log $*
-fi
-echo "Couldn't run Unreal Tournament (ut-bin). Is UT_DATA_PATH set?"
-exit 1
diff --git a/utpg.list b/utpg.list
deleted file mode 100644
index 9adff328ae47..000000000000
--- a/utpg.list
+++ /dev/null
@@ -1,147 +0,0 @@
-Help/ReleaseNotes.htm
-System/Core.int
-System/Core.so
-System/Core.u
-System/Editor.so
-System/Engine.int
-System/Engine.so
-System/Engine.u
-System/Fire.so
-System/GlideDrv.int
-System/IpDrv.int
-System/IpDrv.so
-System/IpDrv.u
-System/IpServer.int
-System/IpServer.u
-System/NullDrv.so
-System/NullNetDriver.so
-System/NullRender.so
-System/OpenGLDrv.int
-System/OpenGLDrv.so
-System/Render.so
-System/SDLDrv.so
-System/SDLGLDrv.so
-System/UBrowser.int
-System/UBrowser.u
-System/UTServerAdmin.int
-System/UTServerAdmin.u
-System/UWeb.int
-System/UWeb.so
-System/UWeb.u
-System/UnrealEd.ini
-System/UnrealEd.int
-System/Editor.int
-System/editorres
-System/editorres/AddMover.bmp
-System/editorres/AddSpecial.bmp
-System/editorres/BBCone.bmp
-System/editorres/BBCube.bmp
-System/editorres/BBCurvedStair.bmp
-System/editorres/BBCylinder.bmp
-System/editorres/BBGeneric.bmp
-System/editorres/BBLinearStair.bmp
-System/editorres/BBSheet.bmp
-System/editorres/BBSphere.bmp
-System/editorres/BBSpiralStair.bmp
-System/editorres/BBTerrain.bmp
-System/editorres/BBVolumetric.bmp
-System/editorres/BrushClip.bmp
-System/editorres/BrushClipDelete.bmp
-System/editorres/BrushClipFlip.bmp
-System/editorres/BrushClipSplit.bmp
-System/editorres/HideSelected.bmp
-System/editorres/InvertSelections.bmp
-System/editorres/ModeAdd.bmp
-System/editorres/ModeBrushClip.bmp
-System/editorres/ModeCamera.bmp
-System/editorres/ModeDeintersect.bmp
-System/editorres/ModeFaceDrag.bmp
-System/editorres/ModeIntersect.bmp
-System/editorres/ModeRotate.bmp
-System/editorres/ModeScale.bmp
-System/editorres/ModeSubtract.bmp
-System/editorres/ModeVertex.bmp
-System/editorres/ShowAll.bmp
-System/editorres/ShowSelected.bmp
-System/editorres/TexturePan.bmp
-System/editorres/TextureRotate.bmp
-System/editorres/vssver.scc
-System/edsplash.bmp
-System/ucc-bin
-System/ut-bin
-Web/current.uhtm
-Web/current_console.uhtm
-Web/current_console_log.uhtm
-Web/current_console_send.uhtm
-Web/current_game.uhtm
-Web/current_menu.uhtm
-Web/current_mutators.uhtm
-Web/current_players.uhtm
-Web/defaults.uhtm
-Web/defaults_bots.uhtm
-Web/defaults_ippolicy-d.uhtm
-Web/defaults_ippolicy-f.uhtm
-Web/defaults_ippolicy-h.uhtm
-Web/defaults_maps.uhtm
-Web/defaults_menu.uhtm
-Web/defaults_rules.uhtm
-Web/defaults_server.uhtm
-Web/defaults_settings.uhtm
-Web/images/1-1.gif
-Web/images/1-2.gif
-Web/images/1.gif
-Web/images/2-1.gif
-Web/images/2-2.gif
-Web/images/3-1.gif
-Web/images/3-2.gif
-Web/images/4-1.gif
-Web/images/4-2.gif
-Web/images/5-1.gif
-Web/images/5-2.gif
-Web/images/6-1.gif
-Web/images/6-2.gif
-Web/images/7-1.gif
-Web/images/7-2.gif
-Web/images/7-3.gif
-Web/images/image.gif
-Web/images/logo.gif
-Web/images/m1-1.gif
-Web/images/m1-2.gif
-Web/images/m3-1.gif
-Web/images/m3-2.gif
-Web/images/right.gif
-Web/inc/content_footer_tables.inc
-Web/inc/content_header_tables.inc
-Web/inc/footer.inc
-Web/inc/header.inc
-Web/inc/menu_footer.inc
-Web/inc/menu_header.inc
-Web/inc/top_begin.inc
-Web/inc/top_end.inc
-Web/menu.uhtm
-Web/message.uhtm
-Web/plaintext/current.uhtm
-Web/plaintext/current_console.uhtm
-Web/plaintext/current_console_log.uhtm
-Web/plaintext/current_console_send.uhtm
-Web/plaintext/current_game.uhtm
-Web/plaintext/current_menu.uhtm
-Web/plaintext/current_mutators.uhtm
-Web/plaintext/current_players.uhtm
-Web/plaintext/defaults.uhtm
-Web/plaintext/defaults_bots.uhtm
-Web/plaintext/defaults_ippolicy-d.uhtm
-Web/plaintext/defaults_ippolicy-f.uhtm
-Web/plaintext/defaults_ippolicy-h.uhtm
-Web/plaintext/defaults_maps.uhtm
-Web/plaintext/defaults_menu.uhtm
-Web/plaintext/defaults_rules.uhtm
-Web/plaintext/defaults_server.uhtm
-Web/plaintext/defaults_settings.uhtm
-Web/plaintext/inc/footer.inc
-Web/plaintext/inc/header.inc
-Web/plaintext/inc/whiteheader.inc
-Web/plaintext/menu.uhtm
-Web/plaintext/message.uhtm
-Web/plaintext/root.uhtm
-Web/root.uhtm