Proton icon indicating copy to clipboard operation
Proton copied to clipboard

Halo Infinite (1240440)

Open CDAGaming opened this issue 4 years ago • 861 comments
trafficstars

Compatibility Report

  • Name of the game with compatibility issues: Halo Infinite
  • Steam AppID of the game: 1240440 (Believed to be this ID)

Note:

Creating a preliminary post regarding this due to the initial Technical Preview Flight being released today. It is unknown by what source the assets will be available to download on, but the feedback from other users on Proton regarding Linux issues would be applicable to view here in preparation for the Steam Release this holiday season.

CDAGaming avatar Jul 29 '21 16:07 CDAGaming

Hello @CDAGaming, preemptively opening a compatibility report with no info is pointless. Let's wait until someone who has access to the game gives feedback.

kisak-valve avatar Jul 29 '21 16:07 kisak-valve

Ok I have access and tried it earlier and It just immediately closes (nothing appears) status on Steam goes back to "Online" please give me information on how I can gather information to help diagnose.

okseb avatar Jul 30 '21 03:07 okseb

@kisak-valve Please reopen this, as this is now available to users.

CDAGaming avatar Jul 30 '21 04:07 CDAGaming

Hello @CDAGaming, looking around, no, the main game does not appear to have been released.

Instead, access to a separate insider build (1240410) was handed out and #5032 was opened to with info on how the insider build runs with Proton.

kisak-valve avatar Jul 30 '21 12:07 kisak-valve

@kisak-valve the beta of Halo Infinite has dropped today under AppId 1240440, so can be reopened now yeah? I have also attached a pair of log files, one each for Proton 6.3-7 and Experimental. In both cases, launching the game causes the button to switch from "Play" to "Stop" for a few seconds before the game exits. I was also using the Steam Client Beta for both attempts.

proton-experimental-log-1240440-15Nov2021.log proton-637-log-1240440-15Nov2021.log

fontivan avatar Nov 15 '21 19:11 fontivan

Like @shagia, insta-death. Here's my console log using konsole --hold -e %command%:

https://gist.github.com/cybik/43b99328f170ca60b3a66f0ef536f8f2 (also contains steam-1240440.log)

Note that my log comes from a GE, not mainline. I'm assuming experimental and mainline are not showing much difference.

cybik avatar Nov 15 '21 19:11 cybik

I should have clarified the Proton branch I'm using: I'm using the latest experimental (bleeding edge) branch myself in response to the post @cybik is referring to. I'll try mainline later today.

shagia avatar Nov 15 '21 19:11 shagia

Still no boot on Proton Experimental or Proton-6.21-GE-1.

Noticed this in the log (used Proton GE): steam-1240440.log

53880.430:010c:0110:err:module:LdrInitializeThunk "Arbiter.dll" failed to initialize, aborting

53880.430:010c:0110:err:module:LdrInitializeThunk Initializing dlls for L"Z:\\home\\server\\.local\\share\\Steam\\steamapps\\common\\Halo Infinite\\HaloInfinite.exe" failed, status c0000142 pid 59450 != 59449, skipping destruction (fork without exec?)

Is "Arbiter.dll" anti-cheat?

ServerOmega avatar Nov 15 '21 20:11 ServerOmega

Replying to https://github.com/ValveSoftware/Proton/issues/5030#issuecomment-969290284

I suppose so. Tried to attach a debugger to it but it just traps it with an INT3 instruction and immediately quits the game afterwards.

pongo1231 avatar Nov 15 '21 20:11 pongo1231

Note that my log comes from a GE, not mainline. I'm assuming experimental and mainline are not showing much difference.

I'm actually getting a different output when running with experimental (mainline). With GE it mentions Arbiter.dll but not with experimental. I'm not sure if it gets stuck earlier or farther ahead than GE.

Edit: Here's my log

ErikReider avatar Nov 15 '21 21:11 ErikReider

I've got some slightly different behavior on Proton 5.0-10. It doesn't open anything, but it doesn't exit either, it just stays running. The proton log still has errors about Arbiter.dll though, so maybe just different behavior after exceptions.

Coreforge avatar Nov 15 '21 21:11 Coreforge

Has anyone attempted viewing Arbiter.dll through a program such as Ghidra?

Equilius-Fromjaf avatar Nov 15 '21 21:11 Equilius-Fromjaf

I tried loading it. It doesn't export many functions (entry and two others), and analyzing took up all 32GB of ram so I had to stop it.

Coreforge avatar Nov 15 '21 21:11 Coreforge

Tried with Proton Experimental, no dice.

Gist

steam-1240440.log

Switching to 6.3.7 installing Visual C++ x64 and x86 from here produces a different log, in which arbiter.dll seems to be loading. Now what nsiproxy is I have no idea. steam-1240440.log

jr1991-g avatar Nov 15 '21 23:11 jr1991-g

Interesting, it looks like I actually have no problem loading Arbiter.dll:

trace:loaddll:build_module Loaded L"Z:\\home\\aldrenean\\.local\\share\\Steam\\steamapps\\common\\Halo Infinite\\Arbiter.dll" at 0000000180000000: native

These are the error/fail messages I got in my proton log:

err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\nsiproxy": c0000003

fixme:service:scmdatabase_autostart_services Auto-start service L"nsiproxy" failed to start: 87

err:steam:initialize_vr_data Could not load libopenvr_api.so.

err:virtual:virtual_setup_exception stack overflow 1872 bytes in thread 0108 addr 0x7fc8e57c0ed4 stack 0x5408b0 (0x540000-0x541000-0x940000)

This is on Proton Experimental.

aldrenean avatar Nov 16 '21 00:11 aldrenean

What version of Wine is Proton Experimental based on, since the changelog of the recent Wine 6.19 seems to have a lot regarding whatever nsiproxy is. https://www.winehq.org/announce/6.19

Equilius-Fromjaf avatar Nov 16 '21 01:11 Equilius-Fromjaf

I got these errors initially, but after launching it a few times I just get this:

gavin@jeff ~/.s/s/s/c/Halo Infinite> WINEARCH=win64 WINEPREFIX=/home/gavin/.steam/steam/steamapps/compatdata/1240440/pfx STEAM_COMPAT_CLIENT_INSTALL_PATH="$HOME/.steam/steam" STEAM_COMPAT_DATA_PATH=~/.proton/ ~/.steam/steam/steamapps/common/Proton\ -\ Experimental/proton run HaloInfinite.exe
esync: up and running.
wine: RLIMIT_NICE is <= 20, unable to use setpriority safely
WARNING: radv is not a conformant Vulkan implementation, testing use only.
WARNING: radv is not a conformant Vulkan implementation, testing use only.
gavin@jeff ~/.s/s/s/c/Halo Infinite> 

No errors (i'm pretty sure that second line is just a warning). It just closes.

But what's also interesting is the fact that a similar issue is being reported on Windows 10, on the Steam page: https://steamcommunity.com/app/1240440/discussions/0/5963323773768307774/

IoIxD avatar Nov 16 '21 01:11 IoIxD

With ProtonGE on Wine 6.21 and x64 Visual C++ installed the only errors I get are those:

5681.383:0110:0114:err:module:LdrInitializeThunk "Arbiter.dll" failed to initialize, aborting 5681.383:0110:0114:err:module:LdrInitializeThunk Initializing dlls for L"Z:\\home\\ich\\.local\\share\\Steam\\steamapps\\common\\Halo Infinite\\HaloInfinite.exe" failed, status c0000142 steam-1240440.log

windblows95 avatar Nov 16 '21 01:11 windblows95

Replying to https://github.com/ValveSoftware/Proton/issues/5030#issuecomment-969635514

I get the same error with GE 6.21

I also tried disabling Arbiter and forcing native

Fullbrik avatar Nov 16 '21 01:11 Fullbrik

Using Proton 6.3-7 I get: 12473.049:010c:0110:err:virtual:virtual_setup_exception stack overflow 1936 bytes in thread 0110 addr 0x7f49928269a9 stack 0x540870 (0x540000-0x541000-0x940000) steam-1240440.log

PeterMX avatar Nov 16 '21 02:11 PeterMX

With Proton Experimental I'm getting: pid 110292 != 110289, skipping destruction (fork without exec?) With PROTON_USE_WINED3D=1.

steam-1240440.log system_info.txt

adrianrlaw avatar Nov 16 '21 02:11 adrianrlaw

Proton Experimental on 5.15.2-arch1-1 Arch Linux logs: steam-1240440.log sysinfo.txt

It appears to load Arbiter but later exits:

110769.084:0104:0108:trace:loaddll:build_module Loaded L"Z:\\mnt\\local\\SteamLibrary\\steamapps\\common\\Halo Infinite\\Arbiter.dll" at 0000000180000000: native
...
110771.494:005c:006c:trace:seh:dump_unwind_info **** func 1ac90-1ad76
110771.494:005c:006c:trace:seh:dump_unwind_info unwind info at 00000002279D4A70 flags 0 prolog 0x8 bytes function 00000002279BAC90-00000002279BAD76
110771.494:005c:006c:trace:seh:dump_unwind_info     0x8: subq $0x160,%rsp
110771.494:005c:006c:trace:seh:dump_unwind_info     0x1: pushq %rbx
110771.494:005c:006c:trace:seh:RtlRestoreContext returning to 00000002279C403A stack 000000000162F740
110771.494:005c:0078:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x226fe2c,4,(nil))
110771.494:005c:007c:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x287fe2c,4,(nil))
110771.494:005c:0080:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x2e8fe2c,4,(nil))
110771.495:005c:0074:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x1c3fe2c,4,(nil))
110771.522:00cc:00e0:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x151fe2c,4,(nil))
110771.522:005c:006c:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\drivers\\winebus.sys" : builtin
110771.523:005c:006c:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\drivers\\wineusb.sys" : builtin
110771.524:005c:006c:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\drivers\\winehid.sys" : builtin
110771.524:005c:006c:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\hidclass.sys" : builtin
110771.525:005c:006c:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x162fe2c,4,(nil))
110771.594:0030:008c:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x336fe2c,4,(nil))
110771.594:0030:0064:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x274fe2c,4,(nil))
110771.594:0030:0054:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x213fe2c,4,(nil))
110771.594:0030:0070:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x2d5fe2c,4,(nil))
110771.594:0030:0118:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x3f8fe2c,4,(nil))
110771.594:0030:0044:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x151fe2c,4,(nil))
110771.594:0030:00d4:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0x459fe2c,4,(nil))
110771.594:0030:0038:trace:seh:NtQueryInformationThread (0xfffffffffffffffe,12,0xf0fe2c,4,(nil))
pid 70842 != 70841, skipping destruction (fork without exec?)

StaticRocket avatar Nov 16 '21 03:11 StaticRocket

I could be wrong here, but I found this talking about the arbiter.dll and maybe explaining a bit about it. This was from 2019 tho, either 343 made their own or they use a version of this one. I submit this as a noob that wants to help if he can. I dont see anything useful on this page but maybe someone else can http://windowsbulletin.com/files/dll/windows-software-developer/third-party-application/arbiter-dll

Ill keep testing and mention anything I find

ZAGON117 avatar Nov 16 '21 06:11 ZAGON117

Replying to https://github.com/ValveSoftware/Proton/issues/5030#issuecomment-969290284 Is "Arbiter.dll" anti-cheat?

It's most likely an anti-cheat measure for Windows. The VFIO community is currently able to bypass this as they do other anti-cheat with hypervisor.

RadiantOblivion avatar Nov 16 '21 06:11 RadiantOblivion

Has anyone attempted viewing Arbiter.dll through a program such as Ghidra?

Took a good half hour but i am able to load Arbiter.dll into Ghidra. Unfortunately i am very weak with analyzing x86 binaries.

Project File Name: 	Arbiter.dll
Last Modified:	Tue Nov 16 11:34:10 PST 2021
Readonly:	false
Program Name:	Arbiter.dll
Language ID:	x86:LE:64:default (2.9)
Compiler ID:	windows
Processor:	x86
Endian:	Little
Address Size:	64
Minimum Address:	180000000
Maximum Address:	18124f7ff
# of Bytes:	19183668
# of Memory Blocks:	9
# of Instructions:	0
# of Defined Data:	1472
# of Functions:	0
# of Symbols:	83
# of Data Types:	326
# of Data Type Categories:	4
CompanyName:	Copyright (c) 2021 Microsoft
Compiler:	visualstudio:unknown
Created With Ghidra Version:	10.0
Date Created:	Tue Nov 16 11:34:09 PST 2021
Executable Format:	Portable Executable (PE)
Executable Location:	/tmp/something/Arbiter.dll
Executable MD5:	77ebc2639607d6b571686d5758c97973
Executable SHA256:	1f90f72aa741194c98a9c1ada8209e3df5ecb454dab036e8b28f91aa59ff400b
FSRL:	file:///tmp/something/Arbiter.dll?MD5=77ebc2639607d6b571686d5758c97973
FileDescription:	Arbiter Runtime Library
FileVersion:	1.5.0.124
LegalCopyright:	Copyright (c) 2021 Microsoft
PDB Age:	1
PDB File:	loader.pdb
PDB GUID:	922362bf-4ea4-46a7-912b-299d588fc74e
PDB Version:	RSDS
ProductName:	Arbiter Runtime Library
ProductVersion:	1.5.0.124
Relocatable:	true
SectionAlignment:	4096
Translation:	4b00409

edit: Now I see what others were refering to with running out of memory. some of the functions do exhaust 32gb of memory trying to disassemble.

theunkn0wn1 avatar Nov 16 '21 20:11 theunkn0wn1

Seems like the problem is vkd3d and vulkan https://github.com/HansKristian-Work/vkd3d-proton/issues/910#issue-1056672939

ServerOmega avatar Nov 18 '21 06:11 ServerOmega

There seem to be a few different issues going on here.

Proton Experimental and Proton 6.3-8 both crash on launch. The game generates its own crash log, referencing Media Foundation. steam-1240440.log crashCABN.txt

pReader->SetCurrentMediaType(dwStreamIndex, nullptr, pType.Get()) failed (HR=0xc00d5212): 0xc00d5212 seems to infer a missing codec playing one of the intro videos. There doesn't appear to be anything particularly special about the videos.

Container: MP4
Stream 0 (Video): H264 - MPEG-4 AVC (part 10) (av1)
Stream 1 (Audio): MPEG AAC Audio (mp4a) 48000Hz 3F2R/LFE 32bpp

This can be bypassed by moving the video mp4s into a folder where the game can't find them. This will get the game launching, albeit not looking right and at 1-2fps presumably due to the vkd3d issue above. There is a relevant branch vkd3d execute-indirect-advanced but it appears to be in a draft state, too early for testing. For me a d3d12.dll compiled from this tree causes the game to crash shortly after launching.

Proton-GE (6.21) seems to have an unrelated issue where it can't initialize Arbiter.dll. Not relevant here but I've attached the log anyway steam-1240440.log

M-Ro avatar Nov 30 '21 01:11 M-Ro

Can confirm that removing the videos allows me to launch the game, but I have to RMA my card (for separate reasons) and my integrated graphics don't meet minimum specs to run the game so it crashes.

Fullbrik avatar Dec 01 '21 15:12 Fullbrik

I can also confirm that it now launches with the videos moved. The GPU driver crashed and kinda recovered so I couldn't really do anything. I'll try again :)

ErikReider avatar Dec 01 '21 18:12 ErikReider

The game launches and I can get to the menu(s) however the graphics don't update once I hit the menus and I can't do anything other than make sounds clicking on menu links.

I haven't removed the videos and I'm using an AMD 6900XT on Arch Linux.

For what it is worth: The open radeon vulkan driver loads faster however it has graphics artifacts when trying to close the game (had to restart X) the amdvlk driver seems slower but it doesn't get the artifacts when it closes halo and seems to lock harder than the readon vulkan driver.

l33tlinuxh4x0r avatar Dec 01 '21 23:12 l33tlinuxh4x0r