mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
Temporary fix for rpaks not loading from override dir
This commit is contained in:
parent
587b92659e
commit
0c583d7522
@ -1,7 +1,7 @@
|
||||
REM Remove log files ('log' is no longer used. 'logs' contains current logs, these get automatically cleaned if they exceed 10mb).
|
||||
rd /S /Q "%~dp0log"
|
||||
rd /S /Q "%~dp0logs"
|
||||
REM Remove old navmesh files which where included as an attempt to debug/suppress warnings.
|
||||
REM Remove old NavMesh files which where included as an attempt to debug/suppress warnings.
|
||||
rd /S /Q "%~dp0platform\maps\graphs"
|
||||
rd /S /Q "%~dp0platform\maps\navmesh"
|
||||
REM Remove deprecated binary and configuration files (these are no longer used).
|
||||
@ -12,3 +12,4 @@ del /Q "%~dp0..\r5reloaded.exe"
|
||||
del /Q "%~dp0..\r5apexsdkd64.dll"
|
||||
del /Q "%~dp0..\r5detours.dll"
|
||||
del /Q "%~dp0..\r5dev.dll"
|
||||
del /Q "%~dp0..\paks\Win32\common_empty.rpak"
|
||||
|
@ -18,17 +18,17 @@ vector<RPakHandle_t> g_vLoadedPakHandle;
|
||||
// *pMalloc -
|
||||
// nIdx -
|
||||
// bUnk -
|
||||
// Output : pak file handle on success, -1 (INVALID_PAK_HANDLE) on failure
|
||||
// Output : pak file handle on success, INVALID_PAK_HANDLE on failure
|
||||
//-----------------------------------------------------------------------------
|
||||
RPakHandle_t CPakFile::LoadAsync(const char* szPakFileName, uintptr_t pMalloc, int nIdx, bool bUnk)
|
||||
{
|
||||
RPakHandle_t pakHandle = -1;
|
||||
RPakHandle_t pakHandle = INVALID_PAK_HANDLE;
|
||||
#ifdef DEDICATED
|
||||
// Extraneous files (useless on the dedicated server).
|
||||
if (strcmp(szPakFileName, "ui.rpak") == 0)
|
||||
{
|
||||
static const char* szReplacement = "common_empty.rpak";
|
||||
// Returning -1 (invalid handle) triggers engine error, call is inline.
|
||||
static const char* szReplacement = "empty.rpak";
|
||||
// Returning INVALID_PAK_HANDLE triggers engine error, call is inline.
|
||||
// Replacing the ui.rpak file here with a stub to avoid having to patch.
|
||||
DevMsg(eDLL_T::RTECH, "Loading pak file: '%s' for '%s'\n", szReplacement, szPakFileName);
|
||||
return pakHandle = CPakFile_LoadAsync(szReplacement, pMalloc, nIdx, bUnk);
|
||||
@ -49,7 +49,7 @@ RPakHandle_t CPakFile::LoadAsync(const char* szPakFileName, uintptr_t pMalloc, i
|
||||
DevMsg(eDLL_T::RTECH, "Loading pak file: '%s'\n", szPakFileName);
|
||||
pakHandle = CPakFile_LoadAsync(szPakFileName, pMalloc, nIdx, bUnk);
|
||||
|
||||
if (pakHandle == -1)
|
||||
if (pakHandle == INVALID_PAK_HANDLE)
|
||||
{
|
||||
Error(eDLL_T::RTECH, "%s: Failed read '%s' results '%u'\n", __FUNCTION__, szPakFileName, pakHandle);
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include "tier0/tslist.h"
|
||||
|
||||
typedef int RPakHandle_t;
|
||||
constexpr int INVALID_PAK_HANDLE = -1;
|
||||
|
||||
enum class ePakStatus : int
|
||||
{
|
||||
|
@ -632,7 +632,7 @@ int32_t RTech::OpenFile(const char* szFilePath, void* unused, int64_t* fileSizeO
|
||||
const int32_t fileIdx = RTech_FindFreeSlotInFiles(s_pFileArray);
|
||||
ReleaseSRWLockExclusive(reinterpret_cast<PSRWLOCK>(&*g_pPakFileSlotLock));
|
||||
|
||||
const int32_t fileHandleIdx = fileIdx & 0x3FF; // Something with ArraySize.
|
||||
const int32_t fileHandleIdx = (fileIdx & 0x3FF); // Something with ArraySize.
|
||||
|
||||
m_FileHandles->self[fileHandleIdx].m_nFileNumber = fileIdx;
|
||||
m_FileHandles->self[fileHandleIdx].m_hFileHandle = hFile;
|
||||
@ -688,7 +688,7 @@ RPakLoadedInfo_t* RTech::GetPakLoadedInfo(const char* szPakName)
|
||||
|
||||
void RTech_Utils_Attach()
|
||||
{
|
||||
DetourAttach((LPVOID*)&RTech_OpenFile, &RTech::OpenFile);
|
||||
//DetourAttach((LPVOID*)&RTech_OpenFile, &RTech::OpenFile); // !FIXME: Loading override rpaks doesn't work with this, disabled for now.
|
||||
|
||||
#if not defined DEDICATED && defined (GAMEDLL_S3)
|
||||
DetourAttach((LPVOID*)&RTech_CreateDXTexture, &RTech::CreateDXTexture);
|
||||
@ -698,7 +698,7 @@ void RTech_Utils_Attach()
|
||||
void RTech_Utils_Detach()
|
||||
{
|
||||
// [ PIXIE ]: Everything related to RTech::OpenFile should be compatible across seasons.
|
||||
DetourDetach((LPVOID*)&RTech_OpenFile, &RTech::OpenFile);
|
||||
//DetourDetach((LPVOID*)&RTech_OpenFile, &RTech::OpenFile);
|
||||
|
||||
#if not defined DEDICATED && defined (GAMEDLL_S3)
|
||||
DetourDetach((LPVOID*)&RTech_CreateDXTexture, &RTech::CreateDXTexture);
|
||||
|
Loading…
x
Reference in New Issue
Block a user