RetroPie-Extra
RetroPie-Extra copied to clipboard
Create Unreal Tournament installer.
This will install Unreal Tournament 99 for x86, amd64, and arm64. I haven't tested arm64. Don't have a arm64 install available right now.
ill give it a try once im back on my pi5,
It occurred to me, please wait a little before testing. I did use some variables that are defined in this patch: https://www.github.com/RetroPie/RetroPie-Setup/pull/3951?notification_referrer_id=NT_kwDOALuzzbQxMTUzNTQxODIwMzoxMjMwMTI2MQ#issuecomment-2251316568
installs fine, i need to find the game files to test it all the way
i edited my config and i now get this
`` Parameters: Executing: /opt/retropie/ports/ut/SystemARM64/ut-bin WARNING: using preference directory: /home/pi/.utpg/System/ WARNING: Using system ini file: /opt/retropie/configs/ports/ut/System/UnrealTournament.ini WARNING: Using user ini file: /opt/retropie/configs/ports/ut/System/User.ini Failed to enter Entry: Can't find file Entry.
History: UGameEngine::Init <- InitEngine <- main
Exiting due to error ``
not sure if im missing a file or what
I'll look into both. It doesn't look like you are missing any files.
I've updated the installer to add ARM64.
Will you please run the installer again and let me know if it works.
If it works, I suspect it's a problem caused by: "Make sure you do not overwrite the Texture files that came with the patch, otherwise the in-game text will render incorrectly." and "Please ensure that you do NOT copy the contents of the System directory in your cd/GoG image into the game directory, otherwise the game will not launch!" from https://github.com/OldUnreal/UnrealTournamentPatches
I tried to set it up so that the files when moved would remain owned by root to try and prevent that.
If that works, I may change it to not move the System directory. That may prevent the problem in the future. I did it the way I did so that people could add new files if necessary while trying to set it up so they couldn't overwrite the existing files. That may not work as well as I wanted. And I am not sure if it will ever be necessary to add files to the system directory.
I am not sure if it will ever be necessary to add files to the system directory
its something that we can test. yes i was confused at first by the folders being locked, but i do see why you did it. i say lets getting it working, and then worry about cleaning it up and making it dummy proof (as much as we can)
Okay, I've removed the 'System' directory from the list of directories that are moved, and tested it that way. The game runs perfectly without moving the directory. This way people won't overwrite anything in there.
At this point I am thinking unless someone has any trouble because they can't add files to the system directory to simply leave it alone.
The single Texture file is the only one of concern at this point for dummy proofing (and I added a note in the Help file for that.)
(and I added a note in the Help file for that.)
sounds good. ill give it a try again
question
does Unreal Tournament 2004 work, makeing sure i have the correct version
Unreal Tournament 2004 is a separate game. I plan on creating a script for that once this is working.
separate game
ok, i didnt know if it was a remake release or what. i only played the first UT, after that i was rocking HalfLife. lol
Half life was great too!
UT2004 will be x86 only. The source for that was never completely released, so even today to run it you're running the last patched binaries that were compiled 2004ish.
It is possible to modify UnrealTournament.ini (or User.ini I forgot which) to enable online play again for both games. I decided that was a bit out of the scope for this script. Although I did set up an ansible playbook that works with RetroPie and can update the files correctly. Still very much a WIP https://github.com/hearthminion/ansible-collection-games/tree/develop/roles/unrealtournament
The original Unreal is also available for linux (and ARM not sure if it requires 64bit or not).
so are all the folders ment to be set to root? if they are, then there is no way to get the game files in
do i need to have the game data already in the ut folder before its installed?
I just remembered that you changed over the command line for changing ownership but I don't know when the main retropie implemented that and I'm still running a build from 5 weeks ago so maybe that is the reason why I was having ownership issues
I just thought of that
when i tryied it by having the game files in the ut before i install
i get
arameters:
Executing: /opt/retropie/ports/ut/SystemARM64/ut-bin
[ALSOFT] (EE) Could not query RTKit: No such file or directory (2)
[ALSOFT] (EE) Could not query RTKit: No such file or directory (2)
[ALSOFT] (EE) Could not query RTKit: No such file or directory (2)
I'll check. It occurred to me, since we decided to stop the dummy proofing for now at least, I probably want to check the permissions again.
As for when the permissions patch, it was only added in the last few days.
I was impressed with how fast you were on this after they added it. I hadn't even gotten around to double checking everything since they added it.
Yeah I get bored at work. So I'm always learking around GitHub and the forum. So I saw that it was added not too long ago
So now, as long as you have at least commit d67e88db (and probably better 18c2b430 from two days ago) on RetroPie-Setup then this should set the permissions properly throughout.
ok, so i dont have a PC to test this on, but i can make it work on my Pi5, it does work, but does not work on the Pi5 well. ( which is fine) the screen (no matter what i tried) is always off center and needed to use XINIT to work
so this script is fine to go, and we just keep it for x86 only
I'm good with that.
I was hopeful that as old as it was, that it'd work well on a pi5. Did you put XINIT in front of the command to get it to work. I'm thinking I'll add that, so if/when the pi 6 comes out we already have it ready to try without having to remember exactly what we did to get it to work before.
yes xinit was used but no matter what resolution i picked from the run command, it would not go to full screen. it was always off center
which is odd since the UT logo before the intro is centered
which does suck since it does seem like it plays very well. i dont know much about xinit and not sure if there is a way to force it to do something different.
from all that i have used its just XINIT and thats it
Also, will you please do another couple tests:
- In /opt/retropie/ports/ut/Systme64 make a backup of libSDL2.0.so.0 and symlink the system libSDL2.0.so.0
I may have the names slightly off. That's usually a fix for a bug on x86 when using multiple monitors, so I wasn't planning on putting it in here, but if it helps I might.
- If that doesn't work, You may need to edit the ini file to change the resolution.
I stumbled across this: https://www.github.com/OldUnreal/UnrealTournamentPatches/issues/1479
They were having some font issues (which it doesn't sound like you have) but said otherwise the game ran well even on a pi3
Damn that was a pain in the ass, but i got it working
so in the /opt/retropie/configs/ports/ut/System/UnrealTournament.ini
needed to change the settings to this
[SDLDrv.SDLClient]
FullscreenViewportX=1920
FullscreenViewportY=1080
FullscreenColorBits=32
the default value was too low and was messing it all up, and changing through the menu did not do shit
Okay, so I see a few potential solutions:
- Create an UnrealTournament.ini inside our repo that we install with those settings already set.
- Add something to the help description that they will need to edit that file with the correct settings for those values.
Option 1, will probably work 90% of the time out of the box. That is a fairly common resolution. But considering this is Retropie, that may not be the case.
Option 2 requires more work on the user, but would be more consistent for everyone.
Did you have to remove libSDL and replace it with a symlink?
Did you have to remove libSDL and replace it with a symlink?
i did, and nothing was different
i think what we should do is both option 1 and 2. 1 will be the default and we put in the how to in the help on what lines need to be editied to fix it for the uses setup
one of my scripts i think pulls what resolution is picked and then edits something, but i cant remember what one, and if it will even work for what needs to be down
Okay. The reason I asked, on my system, 2 monitors the packaged libSDL would overwrite any changes I made to the UnrealTournament.ini resolution settings. Basically I'd modify the resolution so it'd use one monitor, and it'd reset that and use both.
If we're providing our own UnrealTournament.ini we should probably test that too.
One big advantage to providing our own ini file is I cam go ahead and set the proper multiplayer servers, so people can actually play online.
set the proper multiplayer servers, so people can actually play online.
im down with that
Got a bit busy this week, hoping next week is better. Adding the ini file should be the easy part.
Got a bit busy this week
It all good. There's no rush
we are good here. accepting the pull