Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Help and support regarding PR:BF2 installation and in-game issues
Post Reply
m1k3th3sp1k3
Posts: 5
Joined: 2025-08-30 10:24

Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by m1k3th3sp1k3 »

I am using Linux Mint 22.1 and trying to install PR:BF2 the same way as I managed to install Battlefield 2 - Complete Collection successfully under Lutris.

Image

Step 1. Latest prbf2_1.8.0.0_ full directory downloaded via torrent and saved into /home/mike/Games/Downloads/prbf2_1.8.0.0_ full directory.

Step 2. Installed setup.exe in Lutris 0.5.14 using "Install a Windows game from an executable" using Project Reality as Game name with installer preset as Windows 10 64 bit.

Image

Image

Step 3. Lutris creates the new game called Project Reality just fine. :D

Image

Step 4. I double click Project Reality, it starts a black window and then stops after a while.

Here is the Wine log:

Code: Select all

Started initial process 10340 from gamemoderun /usr/bin/wine /home/mike/Games/project-reality/drive_c/Program Files (x86)/Project Reality/Project Reality BF2/PRBF2_w32ded.exe
Start monitoring process.
ERROR: ld.so: object 'libgamemodeauto.so.0' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object 'libgamemodeauto.so.0' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
gamemodeauto: 
PlayerManager created
ObjectManager created
GameLogic created
Serversettings created
No maps in maplist. Please add atleast one map, or use +loadLevel command.Initial process has exited (return code: 0)
gamemodeauto: 
Monitored process exited.
All processes have quit
Exit with return code 0
Step 5. Project Reality is then reconfigured in Lutris under Game Options and +loadLevel adak is added into the Arguments line. adak is the first map in the maplist.con file on line 20.

The executable used is /home/mike/Games/project-reality/drive_c/Program Files (x86)/Project Reality/Project Reality BF2/PRBF2_w32ded.exe

I keep getting the same error as above.

I cannot find the prlauncher.log file to upload here at C:\Program Files (x86)\Project Reality\Project Reality BF2\mods\pr\bin\prlauncher.log because I don't think the PRLauncher.exe file is ever being called anywhere.

Can anyone please assist me to get this working?


NEW PROGRESS UPDATE!!

I questioned myself why PRBF2_w32ded.exe is used as the executable after I compared it to my BF2 - Complete Collection installation and I tried just PRBF2.exe found in C:\Program Files (x86)\Project Reality\Project Reality BF2\mods\pr\bin\ and the Project Reality intro video then starts to play and I get a message saying:

Code: Select all

GAME MESSAGE     Cannot interact with PR Launcher

You must use the Project Reality BF2 Launcher in order to play this modification.
This is located in the PR:BF2 game directory.
Example: C:\Program Files\Project Reality\Project Reality BF2\mods\pr\bin\PRLauncher.exe
I guess that's the next step to try. :)

ANOTHER SMALL UPDATE >> 1 SMALL STEP CLOSER

Changed the executable to be /home/mike/Games/project-reality/drive_c/Program Files (x86)/Project Reality/Project Reality BF2/PRBF2_w32ded.exe

Image

So I guess there is more to try....

Image

Added the Argument: +modPath mods/pr like so:

Image

Image

and we get some STEAM .... :twisted:

Image

Image

So I just had to click the green Sign in through STEAM button ....

Image

I'll be back with an update once PR is updated!!

Image

Image

Image

Image

Image

Image

Image

Still updating ....

Image

This one is taking a long time ......

PC froze.... :o

Restarted PR in some Wine....Now downloading far faster!! (Must be the Hosting Content Provider 8) )

Image

Image

Image

And then, a few beers later.... :lol:

Image

Then I choose to Play Offline:

Image

Then the disaster....

Image

Can't upload the log file because it says this board doesn't accept attachments anymore..... so here is the log:

Code: Select all

Project Reality Log File
PRLauncher.exe started at: 2025-08-30T17:53:27

Critical Error: An unhandled exception has occured. Details are as follows:

'mainButtonTextTranslation-42432339' name is not valid for identifier.

Further details can be found in the following file:

[url]C:\Program Files (x86)\Project Reality\Project Reality BF2\mods\pr\bin\PRLauncher.log[/url]

Please report this error to the Project Reality Team, and include the log file in your report.

[url="https://www.realitymod.com/forum/forumdisplay.php?f=27"]Visit Support Forum[/url]

 > System.ArgumentException: 'mainButtonTextTranslation-42432339' name is not valid for identifier.
  at System.Xaml.NameScope.RegisterName (System.String name, System.Object scopedElement) [0x00066] in <3ac7c370558c4af79419136df475e55c>:0 
  at System.Windows.FrameworkElement.RegisterName (System.String name, System.Object scopedElement) [0x00011] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at Reality.UI.MainButton.p () [0x000ad] in <671e04e76ff74895b06a8f769828f700>:0 
  at Reality.UI.MainButton.OnApplyTemplate () [0x00071] in <671e04e76ff74895b06a8f769828f700>:0 
  at System.Windows.FrameworkElement.ApplyTemplate () [0x00050] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x00037] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Controls.Grid.MeasureOverride (System.Windows.Size constraint) [0x00058] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Controls.Grid.MeasureOverride (System.Windows.Size constraint) [0x00058] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at MS.Internal.Helper.MeasureElementWithSingleChild (System.Windows.UIElement element, System.Windows.Size constraint) [0x00023] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Controls.ContentPresenter.MeasureOverride (System.Windows.Size constraint) [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Controls.Decorator.MeasureOverride (System.Windows.Size constraint) [0x00011] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.AdornerDecorator.MeasureOverride (System.Windows.Size constraint) [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Controls.Border.MeasureOverride (System.Windows.Size constraint) [0x00115] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x002ab] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Window.MeasureOverrideHelper (System.Windows.Size constraint) [0x000f4] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.MeasureOverride (System.Windows.Size availableSize) [0x0006e] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.FrameworkElement.MeasureCore (System.Windows.Size availableSize) [0x0004b] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.Measure (System.Windows.Size availableSize) [0x001d1] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndSource.SetLayoutSize () [0x000cb] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndSource.set_RootVisualInternal (System.Windows.Media.Visual value) [0x00156] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndSource.set_RootVisual (System.Windows.Media.Visual value) [0x00009] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Window+SourceWindowHelper.set_RootVisual (System.Windows.Media.Visual value) [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.SetRootVisual () [0x00016] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.SetRootVisualAndUpdateSTC () [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.SetupInitialState (System.Double requestedTop, System.Double requestedLeft, System.Double requestedWidth, System.Double requestedHeight) [0x003cc] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.CreateSourceWindow (System.Boolean duringShow) [0x00186] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.CreateSourceWindowDuringShow () [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.SafeCreateWindowDuringShow () [0x0000c] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.ShowHelper (System.Object booleanBox) [0x00057] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Window.Show () [0x00025] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at -.C+x.p (System.Object p, System.EventArgs f) [0x0005b] in <71cdf0fedb93485299204fa55e918dc7>:0 
  at PRLauncher.WPF.ViewModel.LoginWindowViewModel.TriggerFinish (System.Object p) [0x0001a] in <71cdf0fedb93485299204fa55e918dc7>:0 
  at PRLauncher.WPF.ViewModel.Pages.LoginPageViewModel.OnOffline (System.Object p) [0x0000f] in <71cdf0fedb93485299204fa55e918dc7>:0 
  at Reality.Utils.WPF.RelayCommand.Execute (System.Object ) [0x00000] in <f63b3869b4eb4073ddc47bff408c3ac3>:0 
  at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource (System.Windows.Input.ICommandSource commandSource, System.Boolean userInitiated) [0x00073] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at MS.Internal.Commands.CommandHelpers.ExecuteCommandSource (System.Windows.Input.ICommandSource commandSource) [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.OnClick () [0x0003d] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.DispatchNavigation (System.Object sender) [0x00011] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.DoUserInitiatedNavigation (System.Object sender) [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.OnMouseLeftButtonUp (System.Object sender, System.Windows.Input.MouseButtonEventArgs e) [0x0005e] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.OnMouseLeftButtonUp (System.Windows.Input.MouseButtonEventArgs e) [0x00009] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.OnMouseLeftButtonUpThunk (System.Object sender, System.Windows.Input.MouseButtonEventArgs e) [0x00041] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler (System.Delegate genericHandler, System.Object genericTarget) [0x00008] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventArgs.InvokeHandler (System.Delegate handler, System.Object target) [0x0000a] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object target, System.Windows.RoutedEventArgs routedEventArgs) [0x00041] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RouteItem.InvokeHandler (System.Windows.RoutedEventArgs routedEventArgs) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlersImpl (System.Object source, System.Windows.RoutedEventArgs args, System.Boolean reRaised) [0x00137] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.ReInvokeHandlers (System.Object source, System.Windows.RoutedEventArgs args) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.ReRaiseEventAs (System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args, System.Windows.RoutedEvent newEvent) [0x0006e] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.CrackMouseButtonEventAndReRaiseEvent (System.Windows.DependencyObject sender, System.Windows.Input.MouseButtonEventArgs e) [0x00011] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.OnMouseUpThunk (System.Object sender, System.Windows.Input.MouseButtonEventArgs e) [0x00059] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler (System.Delegate genericHandler, System.Object genericTarget) [0x00008] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventArgs.InvokeHandler (System.Delegate handler, System.Object target) [0x0000a] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object target, System.Windows.RoutedEventArgs routedEventArgs) [0x00041] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RouteItem.InvokeHandler (System.Windows.RoutedEventArgs routedEventArgs) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlersImpl (System.Object source, System.Windows.RoutedEventArgs args, System.Boolean reRaised) [0x00137] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlers (System.Object source, System.Windows.RoutedEventArgs args) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.RaiseEventImpl (System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args) [0x00060] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.ContentElement.RaiseTrustedEvent (System.Windows.RoutedEventArgs args) [0x0001d] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.ContentElement.RaiseEvent (System.Windows.RoutedEventArgs args, System.Boolean trusted) [0x0001b] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.InputManager.ProcessStagingArea () [0x00290] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.InputManager.ProcessInput (System.Windows.Input.InputEventArgs input) [0x0002c] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.InputProviderSite.ReportInput (System.Windows.Input.InputReport inputReport) [0x0004b] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndMouseInputProvider.ReportInput (System.IntPtr hwnd, System.Windows.Input.InputMode mode, System.Int32 timestamp, System.Windows.Input.RawMouseActions actions, System.Int32 x, System.Int32 y, System.Int32 wheel) [0x002d5] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndMouseInputProvider.FilterMessage (System.IntPtr hwnd, MS.Internal.Interop.WindowMessage msg, System.IntPtr wParam, System.IntPtr lParam, System.Boolean& handled) [0x002c3] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndSource.InputFilterMessage (System.IntPtr hwnd, System.Int32 msg, System.IntPtr wParam, System.IntPtr lParam, System.Boolean& handled) [0x00069] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at MS.Win32.HwndWrapper.WndProc (System.IntPtr hwnd, System.Int32 msg, System.IntPtr wParam, System.IntPtr lParam, System.Boolean& handled) [0x0003a] in <75de555cd62f40719584e76ba8a177cc>:0 
  at MS.Win32.HwndSubclass.DispatcherCallbackOperation (System.Object o) [0x00042] in <75de555cd62f40719584e76ba8a177cc>:0 
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate callback, System.Object args, System.Int32 numArgs) [0x000c6] in <75de555cd62f40719584e76ba8a177cc>:0 
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen (System.Object source, System.Delegate callback, System.Object args, System.Int32 numArgs, System.Delegate catchHandler) [0x00004] in <75de555cd62f40719584e76ba8a177cc>:0 
Critical Error: An unhandled exception has occured. Details are as follows:

Bad EXE format for %1.


Further details can be found in the following file:

[url]C:\Program Files (x86)\Project Reality\Project Reality BF2\mods\pr\bin\PRLauncher.log[/url]

Please report this error to the Project Reality Team, and include the log file in your report.

[url="https://www.realitymod.com/forum/forumdisplay.php?f=27"]Visit Support Forum[/url]

 > System.ComponentModel.Win32Exception (0x80004005): Bad EXE format for %1.

  at System.Diagnostics.Process.StartWithShellExecuteEx (System.Diagnostics.ProcessStartInfo startInfo) [0x00102] in <8952465fb96e46a5814cafa7e731ff3a>:0 
  at System.Diagnostics.Process.Start () [0x00032] in <8952465fb96e46a5814cafa7e731ff3a>:0 
  at (wrapper remoting-invoke-with-check) System.Diagnostics.Process.Start()
  at System.Diagnostics.Process.Start (System.Diagnostics.ProcessStartInfo startInfo) [0x0001b] in <8952465fb96e46a5814cafa7e731ff3a>:0 
  at System.Diagnostics.Process.Start (System.String fileName) [0x00006] in <8952465fb96e46a5814cafa7e731ff3a>:0 
  at Reality.UI.MessageBox.RealityMessageBoxWindow.p (System.Object p, System.Windows.Navigation.RequestNavigateEventArgs f) [0x0002a] in <671e04e76ff74895b06a8f769828f700>:0 
  at System.Windows.Navigation.RequestNavigateEventArgs.InvokeEventHandler (System.Delegate genericHandler, System.Object genericTarget) [0x00026] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.RoutedEventArgs.InvokeHandler (System.Delegate handler, System.Object target) [0x0000a] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object target, System.Windows.RoutedEventArgs routedEventArgs) [0x00041] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RouteItem.InvokeHandler (System.Windows.RoutedEventArgs routedEventArgs) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlersImpl (System.Object source, System.Windows.RoutedEventArgs args, System.Boolean reRaised) [0x00137] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlers (System.Object source, System.Windows.RoutedEventArgs args) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.RaiseEventImpl (System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args) [0x00060] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.ContentElement.RaiseEvent (System.Windows.RoutedEventArgs e) [0x0001c] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Documents.Hyperlink.NavigateToUri (System.Windows.IInputElement sourceElement, System.Uri targetUri, System.String targetWindow) [0x00069] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.RaiseNavigate (System.Windows.IInputElement element, System.Uri targetUri, System.String targetWindow) [0x0000d] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.DoNavigation (System.Object sender) [0x00032] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.OnClick () [0x00024] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.DispatchNavigation (System.Object sender) [0x00011] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.DoUserInitiatedNavigation (System.Object sender) [0x00001] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.OnMouseLeftButtonUp (System.Object sender, System.Windows.Input.MouseButtonEventArgs e) [0x0005e] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.Documents.Hyperlink.OnMouseLeftButtonUp (System.Windows.Input.MouseButtonEventArgs e) [0x00009] in <d31f3a57049e4054ad4371f364def5bc>:0 
  at System.Windows.UIElement.OnMouseLeftButtonUpThunk (System.Object sender, System.Windows.Input.MouseButtonEventArgs e) [0x00041] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler (System.Delegate genericHandler, System.Object genericTarget) [0x00008] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventArgs.InvokeHandler (System.Delegate handler, System.Object target) [0x0000a] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object target, System.Windows.RoutedEventArgs routedEventArgs) [0x00041] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RouteItem.InvokeHandler (System.Windows.RoutedEventArgs routedEventArgs) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlersImpl (System.Object source, System.Windows.RoutedEventArgs args, System.Boolean reRaised) [0x00137] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.ReInvokeHandlers (System.Object source, System.Windows.RoutedEventArgs args) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.ReRaiseEventAs (System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args, System.Windows.RoutedEvent newEvent) [0x0006e] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.CrackMouseButtonEventAndReRaiseEvent (System.Windows.DependencyObject sender, System.Windows.Input.MouseButtonEventArgs e) [0x00011] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.OnMouseUpThunk (System.Object sender, System.Windows.Input.MouseButtonEventArgs e) [0x00059] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler (System.Delegate genericHandler, System.Object genericTarget) [0x00008] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventArgs.InvokeHandler (System.Delegate handler, System.Object target) [0x0000a] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object target, System.Windows.RoutedEventArgs routedEventArgs) [0x00041] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.RouteItem.InvokeHandler (System.Windows.RoutedEventArgs routedEventArgs) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlersImpl (System.Object source, System.Windows.RoutedEventArgs args, System.Boolean reRaised) [0x00137] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.EventRoute.InvokeHandlers (System.Object source, System.Windows.RoutedEventArgs args) [0x00001] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.UIElement.RaiseEventImpl (System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args) [0x00060] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.ContentElement.RaiseTrustedEvent (System.Windows.RoutedEventArgs args) [0x0001d] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.ContentElement.RaiseEvent (System.Windows.RoutedEventArgs args, System.Boolean trusted) [0x0001b] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.InputManager.ProcessStagingArea () [0x00290] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.InputManager.ProcessInput (System.Windows.Input.InputEventArgs input) [0x0002c] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Input.InputProviderSite.ReportInput (System.Windows.Input.InputReport inputReport) [0x0004b] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndMouseInputProvider.ReportInput (System.IntPtr hwnd, System.Windows.Input.InputMode mode, System.Int32 timestamp, System.Windows.Input.RawMouseActions actions, System.Int32 x, System.Int32 y, System.Int32 wheel) [0x002d5] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndMouseInputProvider.FilterMessage (System.IntPtr hwnd, MS.Internal.Interop.WindowMessage msg, System.IntPtr wParam, System.IntPtr lParam, System.Boolean& handled) [0x002c3] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at System.Windows.Interop.HwndSource.InputFilterMessage (System.IntPtr hwnd, System.Int32 msg, System.IntPtr wParam, System.IntPtr lParam, System.Boolean& handled) [0x00069] in <c8543cf9ae2e4c3ea7ec30d842c3dd79>:0 
  at MS.Win32.HwndWrapper.WndProc (System.IntPtr hwnd, System.Int32 msg, System.IntPtr wParam, System.IntPtr lParam, System.Boolean& handled) [0x0003a] in <75de555cd62f40719584e76ba8a177cc>:0 
  at MS.Win32.HwndSubclass.DispatcherCallbackOperation (System.Object o) [0x00042] in <75de555cd62f40719584e76ba8a177cc>:0 
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate callback, System.Object args, System.Int32 numArgs) [0x000c6] in <75de555cd62f40719584e76ba8a177cc>:0 
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen (System.Object source, System.Delegate callback, System.Object args, System.Int32 numArgs, System.Delegate catchHandler) [0x00004] in <75de555cd62f40719584e76ba8a177cc>:0 
I rerun the game, but this time I choose to sign in through STEAM but then this happens:

Image

Image

Nothing happens and no browser window is opened, so I have to click cancel, then this happens:

Image

Code: Select all

Project Reality Log File
PRLauncher.exe started at: 2025-08-30T18:10:49

Critical Error: An unhandled exception has occured. Details are as follows:

Unknown error (0x2a4)

Further details can be found in the following file:

[url]C:\Program Files (x86)\Project Reality\Project Reality BF2\mods\pr\bin\PRLauncher.log[/url]

Please report this error to the Project Reality Team, and include the log file in your report.

[url="https://www.realitymod.com/forum/forumdisplay.php?f=27"]Visit Support Forum[/url]

 > System.IO.IOException: Unknown error (0x2a4)
  at System.Threading.Tasks.TaskToApm.End (System.IAsyncResult asyncResult) [0x0002a] in <de4d51d88e3b4eea89a8d6a3a9854818>:0 
  at System.IO.Pipes.NamedPipeServerStream.EndWaitForConnection (System.IAsyncResult asyncResult) [0x00000] in <c862f8f51a4640ddb2de7db2d52563d8>:0 
  at System.Threading.Tasks.TaskFactory`1[TResult].FromAsyncCoreLogic (System.IAsyncResult iar, System.Func`2[T,TResult] endFunction, System.Action`1[T] endAction, System.Threading.Tasks.Task`1[TResult] promise, System.Boolean requiresSynchronization) [0x00019] in <de4d51d88e3b4eea89a8d6a3a9854818>:0 
--- End of stack trace from previous location where exception was thrown ---

  at   . (System.Threading.CancellationToken ) [0x00139] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
  at (wrapper managed-to-native) System.Reflection.RuntimeMethodInfo.InternalInvoke(System.Reflection.RuntimeMethodInfo,object,object[],System.Exception&)
  at System.Reflection.RuntimeMethodInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x0006a] in <de4d51d88e3b4eea89a8d6a3a9854818>:0 
--- End of stack trace from previous location where exception was thrown ---

  at  . (System.Exception ) [0x0000b] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
  at  . (System.Object ) [0x00012] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
  at  . (System.Reflection.MethodBase , System.Boolean ) [0x00228] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
  at  .  (  ,  ) [0x0001a] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
  at  . () [0x00050] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
  at  . (System.Boolean ) [0x00062] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
--- End of stack trace from previous location where exception was thrown ---

  at Reality.BF2.ExternalLogin.ExternalLogin.SignInAsync (System.Threading.CancellationToken ) [0x0007e] in <7c2481ca87e84d6401b8b4a8b7481188>:0 
  at PRLauncher.WPF.ViewModel.Pages.LoginPageViewModel.OnLogin (System.Object p) [0x002a8] in <71cdf0fedb93485299204fa55e918dc7>:0 
  at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_0 (System.Object state) [0x00000] in <de4d51d88e3b4eea89a8d6a3a9854818>:0 
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate callback, System.Object args, System.Int32 numArgs) [0x000e7] in <75de555cd62f40719584e76ba8a177cc>:0 
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen (System.Object source, System.Delegate callback, System.Object args, System.Int32 numArgs, System.Delegate catchHandler) [0x00004] in <75de555cd62f40719584e76ba8a177cc>:0 
I don't know what to do now.....please help me. :cry:
m1k3th3sp1k3
Posts: 5
Joined: 2025-08-30 10:24

(SOLVED) Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by m1k3th3sp1k3 »

OK, so I solved it!! :mrgreen: :mrgreen:

I tried the whole installation again using the Battlefield 2 installation launcher in Lutris.

Image

Click the top install option.

Image

Create a special PR installation directory:

Image

Instead of pointing to the Battlefield2 setup.exe file, I pointed to the PR setup.exe file

Image

Image

Accept the agreement and Click Next and it begins installing:

Image

And you get:

Image

Image

Click Quit Here and Close the installation

Image

Go into the Game Options and change the Executable to be:

Image

Change the working directory to your /bin/folder in PR directory i.e. /home/mike/Games/battlefield-2-pr-1.8.0.0/drive_c/Program Files/Project Reality/Project Reality BF2/mods/pr/bin/

Image

Click Save and then Play It!!

Image

I chose to play Offline at first just to test:

Image

Image

Image

Image

So now about 50% of the way into the 1.8.0.4 to 1.8.0.5 upgrade, the link keeps being cut......... :o :o :o
User avatar
bad_nade
Support Technician
Posts: 1497
Joined: 2008-04-06 18:26
Location: Finland

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by bad_nade »

@m1k3th3sp1k3 We recommend Arch Linux or CachyOS and distro's latest wine-staging build (v10.16 as of this writing). See this pinned guide for details: PR on Linux+Wine – A text-based install guide. Same guide can be used with Lutris too. First install PR as instructed. Then on Lutris, add PR as a locally installed native Linux game. Go to Game Options tab, use the helper script as the executable, and add start as the only argument. The script takes care of setting up environment variables, working directory, launching Wine, etc.
m1k3th3sp1k3
Posts: 5
Joined: 2025-08-30 10:24

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by m1k3th3sp1k3 »

Aha!!

Image

Thank you bad_nade. You are a star!!

I'll play a little and let you know...
m1k3th3sp1k3
Posts: 5
Joined: 2025-08-30 10:24

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by m1k3th3sp1k3 »

AAAARGH!! So Close....

Image
User avatar
bad_nade
Support Technician
Posts: 1497
Joined: 2008-04-06 18:26
Location: Finland

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by bad_nade »

m1k3th3sp1k3 wrote: 2025-10-13 10:39 AAAARGH!! So Close....

Image
Mumble needs wine 10 or newer. You wine-ge is built on top of wine 8 or something. You might be able to play if you don't close that error message, and just leave it hanging in the background. Our recommendation is to use latest official wine-staging (v10.16 as of this writing), even if you have build it yourself from the source (it's a bit involved process but not impossible).
m1k3th3sp1k3
Posts: 5
Joined: 2025-08-30 10:24

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by m1k3th3sp1k3 »

ok so I ran:

Code: Select all

sudo apt purge wine* && sudo apt autoremove
sudo mkdir -pm755 /etc/apt/keyrings
wget -O - https://dl.winehq.org/wine-builds/winehq.key | sudo gpg --dearmor -o /etc/apt/keyrings/winehq-archive.key -
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/noble/winehq-noble.sources
sudo apt update
sudo apt install --install-recommends winehq-staging
and then ran:

Code: Select all

wine --version

and I get
Image
Woohoo!!

so I run:

Code: Select all

WINEPREFIX=~/wine-staging /opt/wine-staging/bin/wine c:\\pr\\prbf2\\mods\\pr\\bin\\PRLauncher.exe
but I get:

Code: Select all

mike@mike-mint:~$ WINEPREFIX=~/wine-staging /opt/wine-staging/bin/wine c:\\pr\\prbf2\\mods\\pr\\bin\\PRLauncher.exe 
002c:fixme:winediag:loader_init wine-staging 10.16 is a testing version containing experimental patches.
002c:fixme:winediag:loader_init Please mention your exact version when filing bug reports on winehq.org.
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
wine: failed to open "c:\\pr\\prbf2\\mods\\pr\\bin\\PRLauncher.exe"
mike@mike-mint:~$ 00e4:fixme:winediag:loader_init wine-staging 10.16 is a testing version containing experimental patches.
00e4:fixme:winediag:loader_init Please mention your exact version when filing bug reports on winehq.org.
011c:fixme:winediag:loader_init wine-staging 10.16 is a testing version containing experimental patches.
011c:fixme:winediag:loader_init Please mention your exact version when filing bug reports on winehq.org.
Damn man, so close yet so far away....
User avatar
bad_nade
Support Technician
Posts: 1497
Joined: 2008-04-06 18:26
Location: Finland

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by bad_nade »

m1k3th3sp1k3 wrote: 2025-10-14 11:50

Code: Select all

WINEPREFIX=~/wine-staging /opt/wine-staging/bin/wine c:\\pr\\prbf2\\mods\\pr\\bin\\PRLauncher.exe
but I get:

Code: Select all

mike@mike-mint:~$ WINEPREFIX=~/wine-staging /opt/wine-staging/bin/wine c:\\pr\\prbf2\\mods\\pr\\bin\\PRLauncher.exe 
002c:fixme:winediag:loader_init wine-staging 10.16 is a testing version containing experimental patches.
002c:fixme:winediag:loader_init Please mention your exact version when filing bug reports on winehq.org.
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
wine: failed to open "c:\\pr\\prbf2\\mods\\pr\\bin\\PRLauncher.exe"
mike@mike-mint:~$ 00e4:fixme:winediag:loader_init wine-staging 10.16 is a testing version containing experimental patches.
00e4:fixme:winediag:loader_init Please mention your exact version when filing bug reports on winehq.org.
011c:fixme:winediag:loader_init wine-staging 10.16 is a testing version containing experimental patches.
011c:fixme:winediag:loader_init Please mention your exact version when filing bug reports on winehq.org.
Damn man, so close yet so far away....
PRLauncher.exe requires that the working directory of the process is the same where the executable is installed (xxx/mods/pr/bin). Thus you have to either cd/pushd to the directory, or use launcher that can define working directory of the process.

Another thing to note is that PRLauncher comes in 32-bit and 64-bit variants. PR installer detects the bitness of the operating system (wine prefix in this case) and installs the one that matches your environment. If your prefix changes from 64 bit to 32 bit afterwards, and you don't reinstall PR, you might end up with PR utility executables that are incompatible with your prefix.

There are four different bitness options when selecting or building Wine
  1. Pure 32-bit build that cannot run 64-bit apps, requires 32-bit Linux libs.
  2. Pure 64-bit build that cannot run 32-bit apps, requires 64-bit Linux libs.
  3. Old WoW64 build (before Wine 9.0) that can run both 32-bit and 64-bit apps, includes both 32-bit and 64-bit Linux libs. This kind of Wine was built with --enable-win64 (for the 64-bit version) and --with-wine64=<path> (for the 32-bit version) configure options, and then combined into one package.
  4. New WoW64 build (possible with Wine 9.0 and newer) that can run both 32-bit and 64-bit apps by doing bitness conversion on-the-fly (just like Windows). This kind of Wine was built with --enable-archs=i386,x86_64 configure option.
While the WINEARCH variable tells the target bitness of the prefix, it's the underlying Wine build that determines what kind of compatibility you will get.
Glam Stachee
Posts: 6
Joined: 2019-01-21 15:40

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by Glam Stachee »

Did you maybe get it working in the end? I'm also a Mint 22.2 pleb.
User avatar
bad_nade
Support Technician
Posts: 1497
Joined: 2008-04-06 18:26
Location: Finland

Re: Installing and Running PR 1.8.1.2 in Lutris on Linux Mint 22.1

Post by bad_nade »

Glam Stachee wrote: 2026-01-10 12:21 Did you maybe get it working in the end? I'm also a Mint 22.2 pleb.
Except for package manager related commands, there is nothing Arch Linux specific in this guide:
https://forum.realitymod.com/viewtopic. ... ae009913bc
So, it should be applicable to most non-atomic Linux distros, including Mint.

Some distros may have compiled their Wine package with compiler options and/or baked-in mitigation that cause PR to crash. One such distro is openSUSE Tumbleweed, it requires compiling wine from sources. Some distros may also have SELinux or AppArmor enabled with policies that prevent PR from working. In case of SELinux, enabling "execheap", "execmod" and "execstack" booleans may help. AppArmor I haven't yet tested. Disabling CPU mitigations may also help.

Atomic distros, like Bazzite, are another story and we are yet to come up with a workable recipe for them. I've seen one user report hinting that it may be possible to get PR running on Bazzite but I have no further details about it.
Post Reply

Return to “PR:BF2 Support”