diff options
| author | Sean Hoyt <seanhoyt963@gmail.com> | 2026-03-01 10:50:48 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-02 00:50:48 +0800 |
| commit | b5111232aa13952f58ed1b3b3525ea825662b95c (patch) | |
| tree | 2e7450af7d442c6337e33bba0d81f5cb38622806 /Minecraft.Client/Common/Consoles_App.cpp | |
| parent | d5707899dbc99d5c9520095246fc0bf2425c6235 (diff) | |
feat: Windows64 local multiplayer support (#13)
- Skip QuadrantSignin (profile selector) on Windows64 in both LoadMenu
and CreateWorldMenu, proceeding directly to local play since Xbox Live
stubs always return true for IsSignedInLive()
- Fix IsLocalMultiplayerAvailable() to not require IsHiDef() on Windows64
- Allow pad-connected players to join without a profile sign-in check
- Fix ghost RemotePlayer creation by scanning all local player slots and
matching on server-assigned player index rather than controller slot,
fixing P3/P4 ghost entities when joining out of controller order
- Give each player a unique name (Player 1-4) based on controller index
instead of a single shared stub name
- Use raw XInput (XInputGetState) for secondary controller join detection,
bypassing the 4J toggle system which consumes all button presses before
game logic runs; uses a 120-frame latch for a reliable detection window
- Add .gitignore for Visual Studio build artifacts and output directories
Diffstat (limited to 'Minecraft.Client/Common/Consoles_App.cpp')
| -rw-r--r-- | Minecraft.Client/Common/Consoles_App.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Minecraft.Client/Common/Consoles_App.cpp b/Minecraft.Client/Common/Consoles_App.cpp index 24819250..b325f3a1 100644 --- a/Minecraft.Client/Common/Consoles_App.cpp +++ b/Minecraft.Client/Common/Consoles_App.cpp @@ -8956,7 +8956,11 @@ bool CMinecraftApp::IsLocalMultiplayerAvailable() if( InputManager.IsPadConnected(i) || ProfileManager.IsSignedIn(i) ) ++connectedControllers; } +#ifdef _WINDOWS64 + bool available = connectedControllers > 1; +#else bool available = RenderManager.IsHiDef() && connectedControllers > 1; +#endif #ifdef __ORBIS__ // Check for remote play |
