From 78f192ed768ad0204dae2aa94f4d3100a90fb5e5 Mon Sep 17 00:00:00 2001 From: str1k3r <115313679+S1l3ntStr1ke87@users.noreply.github.com> Date: Tue, 25 Aug 2026 21:52:46 -0400 Subject: [PATCH] fix: windows64 only falling back to 720 & update 4JLibs --- Minecraft.Client/Common/Consoles_App.cpp | 1 + .../Common/Network/GameNetworkManager.cpp | 4 --- Minecraft.Client/Common/UI/UIScene.cpp | 25 +++++++++++++++++++ Minecraft.Client/Windows64/4JLibs | 2 +- .../Windows64/Windows64_Minecraft.cpp | 10 ++++++-- 5 files changed, 35 insertions(+), 7 deletions(-) diff --git a/Minecraft.Client/Common/Consoles_App.cpp b/Minecraft.Client/Common/Consoles_App.cpp index 6c4f04c6..203f0275 100644 --- a/Minecraft.Client/Common/Consoles_App.cpp +++ b/Minecraft.Client/Common/Consoles_App.cpp @@ -6257,6 +6257,7 @@ void CMinecraftApp::InitialiseTips() ZeroMemory(m_TipIDA,sizeof(UINT)*MAX_TIPS_GAMETIP+MAX_TIPS_TRIVIATIP); // Make the first tip tell you that you can play splitscreen in HD modes if you are in SD + //str1k3r - this doesnt work on Windows64, can someone help me with this? please. if(!RenderManager.IsHiDef()) { m_GameTipA[0].uiStringID=IDS_TIPS_GAMETIP_0; diff --git a/Minecraft.Client/Common/Network/GameNetworkManager.cpp b/Minecraft.Client/Common/Network/GameNetworkManager.cpp index 6fefddff..d4b2e383 100644 --- a/Minecraft.Client/Common/Network/GameNetworkManager.cpp +++ b/Minecraft.Client/Common/Network/GameNetworkManager.cpp @@ -2036,11 +2036,7 @@ void CGameNetworkManager::ServerStoppedWait() RenderManager.Tick(); ui.tick(); ui.render(); -#ifdef _WINDOWS64 - RenderManager.Present(g_iScreenWidth, g_iScreenWidth); -#else RenderManager.Present(); -#endif } while( result == WAIT_TIMEOUT ); } else diff --git a/Minecraft.Client/Common/UI/UIScene.cpp b/Minecraft.Client/Common/UI/UIScene.cpp index 1d34195f..41ab2541 100644 --- a/Minecraft.Client/Common/UI/UIScene.cpp +++ b/Minecraft.Client/Common/UI/UIScene.cpp @@ -320,11 +320,36 @@ void UIScene::loadMovie() if(!app.hasArchiveFile(moviePath)) { + //str1k3r - if were on Windows64 we have more fallbacks dont just report a FatalLoadError, try those other swfs before reporting a FatalLoadError +#ifndef _WINDOWS64 app.DebugPrintf("ERROR: Could not find any iggy movie for %ls!\n", moviePath.c_str()); + #ifndef _CONTENT_PACKAGE __debugbreak(); #endif app.FatalLoadError(); +#else + app.DebugPrintf("WARNING: Could not find iggy movie %ls, falling back on 480\n", moviePath.c_str()); + + moviePath = getMoviePath(); + moviePath.append(L"480.swf"); + m_loadedResolution = eSceneResolution_480; + + //str1k3r - while 480 & Vita share basically all the same skins its just a extra fallback :D + if(!app.hasArchiveFile(moviePath)) + { + app.DebugPrintf("WARNING: Could not find iggy movie %ls, falling back on Vita\n", moviePath.c_str()); + + moviePath = getMoviePath(); + moviePath.append(L"Vita.swf"); + m_loadedResolution = eSceneResolution_Vita; + + if(!app.hasArchiveFile(moviePath)) + { + app.FatalLoadError(); + } + } +#endif } } diff --git a/Minecraft.Client/Windows64/4JLibs b/Minecraft.Client/Windows64/4JLibs index 2c2c7b80..4c506590 160000 --- a/Minecraft.Client/Windows64/4JLibs +++ b/Minecraft.Client/Windows64/4JLibs @@ -1 +1 @@ -Subproject commit 2c2c7b8075b19e118808b65585eeacaa98313b75 +Subproject commit 4c50659091a80ee82dce491f0e1d1c565fe649b7 diff --git a/Minecraft.Client/Windows64/Windows64_Minecraft.cpp b/Minecraft.Client/Windows64/Windows64_Minecraft.cpp index 679ba533..c516e512 100644 --- a/Minecraft.Client/Windows64/Windows64_Minecraft.cpp +++ b/Minecraft.Client/Windows64/Windows64_Minecraft.cpp @@ -323,7 +323,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) // Tick UI ui.tick(); ui.render(); - RenderManager.Present(g_iScreenWidth, g_iScreenWidth); + RenderManager.Present(); ui.CheckMenuDisplayed(); // Tick Managers @@ -753,6 +753,9 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance, } RenderManager.Initialise(g_pd3dDevice, g_pSwapChain); + + //str1k3r - set the resolution that we have at time of launch + RenderManager.setResolution(g_iScreenWidth, g_iScreenHeight); app.loadStringTable(); ui.init(g_pd3dDevice,g_pImmediateContext,g_pRenderTargetView,g_pDepthStencilView,g_iScreenWidth,g_iScreenHeight); @@ -878,8 +881,11 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance, ui.tick(); ui.render(); + //str1k3r - now set the resolution a FUCK ton of times to tell 4J to fuck off with their hardcoded shit + RenderManager.setResolution(g_iScreenWidth, g_iScreenHeight); + // Present the frame. - RenderManager.Present(g_iScreenWidth, g_iScreenWidth); + RenderManager.Present(); ui.CheckMenuDisplayed();