InvoxiPlayGames / FestivalInstrumentMapper

Maps most existing Rock Band / Guitar Hero instruments as Xbox One instruments for Fortnite Festival.
http://festivalinstrumentmapper.com
GNU General Public License v2.0
140 stars 8 forks source link

Issues with "debloated" Windows #64

Open InvoxiPlayGames opened 4 months ago

InvoxiPlayGames commented 4 months ago

This issue only applies if you've ever "de-bloated" Windows, or used any modded "distro" of Windows. If you aren't using them, or don't know what that means, check for other issues or submit a new one.

Many Windows "de-bloat" scripts or pre-made "distros" end up removing a bunch of random services, drivers and applications without considering what the underlying services actually do and how they interact with one another. These often remove anything with "Xbox" in the name, sometimes including the services needed to support or emulate Xbox One controllers. If you've used one of these scripts, these issues can show up, even if everything is configured properly:

I'd like to know if anyone has found a solution to recovering Xbox One controller emulation support from the messed up state that Windows is put in. If you've been able to get it working, without a reinstall, please let others know what worked in this thread.

Certain debloat tools also include options to reinstall Xbox stuff as a whole - if yours has that option, try that first.

Known so far:

Because the issues are so varied, we will still not be providing active help to people using these versions of Windows, this issue is just to help people try to find a solution.

april83c commented 4 months ago

I'm using AME 11, where XboxGipSvc is still available and running, and I have the issue where Fortnite doesn't see the guitar. It seems that the only Xbox things that AME 11 messes with are

# Configuration/tasks/services.yml
  - !service:
    name: "XblAuthManager"
    operation: stop
  - !service:
    name: "XblGameSave"
    operation: stop
  - !service:
    name: "XboxNetApiSvc"
    operation: stop
# Configuration/tasks/appx.yml
  - !appx: {name: '*Xbox.TCUI*', type: family}
  - !appx: {name: '*XboxApp*', type: family}
  - !appx: {name: '*XboxGameCallableUI*', type: family}
  - !appx: {name: '*XboxGameOverlay*', type: family}
  - !appx: {name: '*XboxGamingOverlay*', type: family}
  - !appx: {name: '*XboxIdenitity*', type: family}
  - !appx: {name: '*XboxSpeechToTextOverlay*', type: family}

Enabling the stopped services doesn't fix the issue, so I assume one of the removed Appx packages is required for controller authentication? I'd assume it's probably Xbox.TCUI or XboxGameCallableUI but I don't really have a way to test (I guess I could use a VM and get rid of them one by one until it breaks but I don't really think it's feasible to run Fortnite in a VM... is there a better way to test if the controller authentication works (than running Fortnite)?)

InvoxiPlayGames commented 4 months ago

If you filter Device Manager by "Devices by connection", a new "USB Input Device" listing will show up as a "HID-compliant Device" with the VID/PID of the PDP Jaguar.

image

This doesn't necessarily mean that Fortnite will see and be able to use the guitar (since the API for controller emulation isn't the same as the API for using IGameInput), but it does mean that the emulated controller is at the very least showing up properly.

You can technically "run" Fortnite on a VM if you have GPU support (VMware Workstation should have good enough DirectX 11?) and replace the anticheat executables (ending _BE, _EAC_EOS) with copies of the full game client, but you won't be able to join any game (you'll get kicked soon after you start a song, and might get banned so I'd use a different account, I am not responsible etc etc). It'd be good enough for testing controllers in the menus if you're willing to copy over a 40GB game.

SMHUNTERSM commented 4 months ago

My windows version is original and is not modified in this way the services are installed and working but when mapping the controls the app freezes for a while and then reacts to show error I am trying to use the wiiuitar.

rodentrob commented 3 months ago

I think I found the solution to this and other related issues I see posted:

TLDR;

  • Install/Reinstall Microsoft Edge/Edge Enterprise AND Microsoft Edge Webview2 and reboot
  • Make your guitar go in a player slot except Player (1)
  • Your PC should play Xbox games online (more on services troubleshoot)

Tested in: Xplorer 360 Fender Stratocaster 360 World Tour 360 wireless with receiver

Troubleshoot:

Remember to backup your registry https://answers.microsoft.com/en-us/windows/forum/all/this-software-already-installed-on-your-system/8131f546-8d4a-40a6-a5ac-27c0b224d28d (I also deleted this registry before installing edge again HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\msedge.exe\0)

I used this debloater in my last test, ONLY use delete Edge from the tweaks section (you dont need to watch the full video ) Once uninstalled, you can install it via the same prompt again along with webview2 or use the GUI https://www.youtube.com/watch?v=5_AaHXrelTE

65

In my case HidHide never worked so I uninstalled it, here are some workarounds (You need to have installed Edge and webview2 correctly):

Edit: I gave another chance to HidHide and sometimes works sometimes doesnt, but as long as you have your guitar on anything besides player (1) any method works

  1. First connect another controller, or emulate a controller using x360ce, it should be in the slot of Player (1)
  2. Then connect your guitar controller so it appears as Player (2) (or 3,4 doesnt matter as long it isnt 1)
  3. Run FestivalInstrumentMapper
  4. Refresh devices and select your guitar
  5. Make sure the "Tell HidHide to Hide ..." in FestivalInstrumentMapper is disabled (or simply don't install HidHide so it's disabled_,)

Edit: if you have it installed try it, it might work altough sometimes doesnt work for me

  1. Press Start mapping
  2. Start Fortnite
  3. It should be working now, you can control the menu with the keyboard or the Player 1 controller
  4. If you got you guitar as Player (1) by accident restart your pc or log out and repeat from the start

I got this error by connecting 2 guitars at the same time and played pro mode 1 guitar was Player(1) the other Player(2) It happens because both controllers conflict each other and switch constantly and framerate blows I just rebooted did the above method ensuring the guitar was only Player(2) and pro mode worked again

So far all my Guitar Hero guitars show this symptom but the Rock Band guitars are fine

In the pic are some of the debloated apps I safely deleted via Bloatbox Not pictured but also deleted, Paint3D, Calendar and Cortana (Cortana id is F024294D.407397AB99398) bloat

In my case: XblAuthManager XblGameSave XboxGipSvc XboxNetApiSvc GamingServices GameInputService The Xbox App

rodentrob commented 3 months ago

I updated my previous post with more info and better formating

SMHUNTERSM commented 3 months ago

@rodentrob But my problem is that when I connect my wiiuitar using the wiitharthing program to recognize it as an xbox guitar (since I don't have the raphnet) when I select my guitar in the festivalmapper program and click on mapping the program stays a few seconds without responding and then returns to respond but with the error 80080005

rodentrob commented 3 months ago

@SMHUNTERSM My reply is not meant for you but for the general discussion on this thread please see the OP:

This issue only applies if you've ever "de-bloated" Windows, or used any modded "distro" of Windows. If you aren't using them, or don't know what that means, check for other issues or submit a new one.

You aren't using debloated windows and your issue is already posted in another thread