diff options
-rw-r--r-- | .SRCINFO | 43 | ||||
-rw-r--r-- | PKGBUILD | 201 | ||||
-rw-r--r-- | disk.list | 382 | ||||
-rw-r--r-- | ut.desktop | 12 | ||||
-rw-r--r-- | utcustom.sh | 106 | ||||
-rw-r--r-- | utpg.list | 147 |
6 files changed, 891 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..4a48370d8e32 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,43 @@ +pkgbase = unrealtournament + pkgdesc = The classic Unreal Tournament from 1999. Retail CD or DVD required. + pkgver = 451 + pkgrel = 8 + url = http://www.unrealtournament.com/ + arch = i686 + arch = x86_64 + groups = ut1999-goty + license = custom + makedepends = makepkg-unreal + makedepends = unshield + depends = ossp + depends = libnotify + depends = lib32-sdl + depends = lib32-libgl + provides = ut1999 + conflicts = ut1999 + conflicts = ut + conflicts = ut-server + noextract = UTPGPatch451.tar.bz2 + source = ut436.run::https://raw.github.com/XenGi/oldgames/master/ut/unreal.tournament_436-multilanguage.run + source = ut436goty.run::https://raw.github.com/XenGi/oldgames/master/ut/unreal.tournament_436-multilanguage.goty.run + source = https://raw.github.com/XenGi/oldgames/master/ut/ALAudio-86eade1c.zip + source = https://raw.github.com/XenGi/oldgames/master/ut/OpenGLDrv-3.6-86eade1c.zip + source = https://raw.github.com/XenGi/oldgames/master/ut/UTPGPatch451.tar.bz2 + source = ut.desktop + source = disk.list + source = utpg.list + source = utcustom.sh + source = https://raw.github.com/XenGi/oldgames/master/ut/ut.svgz + md5sums = 726aede817997a2aefccb8c20601d760 + md5sums = 7012dc6caaa9453dcf8951474556912a + md5sums = 165ced7397e1269f061e356f170a90ba + md5sums = 0bb18191cafbc6e6ae48e0b3577a39ad + md5sums = 77a735a78b1eb819042338859900b83b + md5sums = 8906e3958918af977f5a8583fa7c263f + md5sums = 7fbe728f7cef23d53bdfe6be17b7129a + md5sums = 72efce99d512b1a71587c2c127dccd06 + md5sums = 5575e5771736d143a0ccaa4d4d043bcb + md5sums = cc8e253aac0e008c9fbe0d4cfdf3ffbd + +pkgname = unrealtournament + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..de22a449a7ad --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,201 @@ +# Contributor: quantax -- contact via Arch Linux forum or AUR +# Mantainer: M0Rf30 +pkgname=unrealtournament +pkgver=451 +pkgrel=8 +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=(ossp libnotify sdl libgl) +[ "$CARCH" = "x86_64" ] && depends=(ossp libnotify lib32-sdl lib32-libgl) +makedepends=(makepkg-unreal unshield) +provides=(ut1999) +conflicts=(ut1999 ut ut-server) +source=(ut436.run::'https://raw.github.com/XenGi/oldgames/master/ut/unreal.tournament_436-multilanguage.run' + ut436goty.run::'https://raw.github.com/XenGi/oldgames/master/ut/unreal.tournament_436-multilanguage.goty.run' + https://raw.github.com/XenGi/oldgames/master/ut/ALAudio-86eade1c.zip + https://raw.github.com/XenGi/oldgames/master/ut/OpenGLDrv-3.6-86eade1c.zip + https://raw.github.com/XenGi/oldgames/master/ut/UTPGPatch451.tar.bz2 + ut.desktop + disk.list + utpg.list + utcustom.sh + https://raw.github.com/XenGi/oldgames/master/ut/ut.svgz) +noextract=(UTPGPatch451.tar.bz2) +md5sums=('726aede817997a2aefccb8c20601d760' + '7012dc6caaa9453dcf8951474556912a' + '165ced7397e1269f061e356f170a90ba' + '0bb18191cafbc6e6ae48e0b3577a39ad' + '77a735a78b1eb819042338859900b83b' + '8906e3958918af977f5a8583fa7c263f' + '7fbe728f7cef23d53bdfe6be17b7129a' + '72efce99d512b1a71587c2c127dccd06' + '5575e5771736d143a0ccaa4d4d043bcb' + 'cc8e253aac0e008c9fbe0d4cfdf3ffbd') + +# 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() { + 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}" + break + fi + done + + if [ -z "${_cdpath}" ]; 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. +__EOF__ + return 1 + else + echo " ${_cdpath} 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 451 UTPG patch..." + tar xfC UTPGPatch451.tar.bz2 451utpg || return 1 + _unreal_move_files 451utpg "${pkgdir}/opt/ut" < utpg.list || return 1 + + # Fix a small bug until next UTPG release. Thanks for the hint, elsixdiab. + sed -i '/^LoadClassMismatch/s/\.%s$//' "${pkgdir}/opt/ut/System/Core.int" +} + +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 +} diff --git a/disk.list b/disk.list new file mode 100644 index 000000000000..9d869e46c9cc --- /dev/null +++ b/disk.list @@ -0,0 +1,382 @@ +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/ut.desktop b/ut.desktop new file mode 100644 index 000000000000..361f74cc469e --- /dev/null +++ b/ut.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Name=Unreal Tournament +GenericName=Classic Shooter +Comment=Unreal Tournament GOTY Edition +Exec=/usr/bin/ut +Icon=ut +Type=Application +Categories=Application;Game;ActionGame; +StartupNotify=true +Terminal=false +Encoding=UTF-8 +Version=1.0 diff --git a/utcustom.sh b/utcustom.sh new file mode 100644 index 000000000000..91fa7482dbe2 --- /dev/null +++ b/utcustom.sh @@ -0,0 +1,106 @@ +#!/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 +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 new file mode 100644 index 000000000000..9adff328ae47 --- /dev/null +++ b/utpg.list @@ -0,0 +1,147 @@ +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 |