If you want to help us maintaining this wiki, check out our discord server: https://discord.gg/3u69jMa 

Difference between revisions of "Native Debugging"

From SWRC Wiki
Jump to navigation Jump to search
 
Line 1: Line 1:
<historylink type="back">Go back to Debugging Client</historylink>
One way for debugging a game crash on native level is by using [[Debug_executable_of_SWRC]], which is a modified executable which shows the stacktrace of the crash.
One way for debugging a game crash on native level is by using [[Debug_executable_of_SWRC]], which is a modified executable which shows the stacktrace of the crash.


Just put the executable in system folder and run it. Don't forget to turn bump mapping to low if the games crashes after loading. Now enter 'debug crash' in console and you will get a detailed stacktrace why the game crashed.
An alternative for debugging is running the executable in OllyDBG which allows you to see and modify the game runtime on Assembly level.


An alternative for debugging is running the executable in OllyDBG which allows you to see and modify the game runtime on Assembly level.
Example:
<pre>
Log: General protection fault!


Explain more detailed...
History: UObject::InitProperties <- UObject::InitClassDefaultObject <- UClass::Register <- (TcpipConnection) <- UObject::ProcessRegistrants <- UPackage::BindPackage <- UPackage::UPackage <- UObject::CreatePackage <- UObject::ResolveName <- UObject::StaticLoadObject <- (Core.Class None.IpDrv.TcpNetDriver NULL) <- UObject::StaticLoadClass <- ULevel::Listen <- Listen <- UGameEngine::LoadMap <- LocalMapURL <- UGameEngine::Browse <- ClientTravel <- UGameEngine::Tick <- MainLoop
</pre>

Latest revision as of 10:03, 14 May 2021

One way for debugging a game crash on native level is by using Debug_executable_of_SWRC, which is a modified executable which shows the stacktrace of the crash.

An alternative for debugging is running the executable in OllyDBG which allows you to see and modify the game runtime on Assembly level.

Example:

Log: General protection fault!

History: UObject::InitProperties <- UObject::InitClassDefaultObject <- UClass::Register <- (TcpipConnection) <- UObject::ProcessRegistrants <- UPackage::BindPackage <- UPackage::UPackage <- UObject::CreatePackage <- UObject::ResolveName <- UObject::StaticLoadObject <- (Core.Class None.IpDrv.TcpNetDriver NULL) <- UObject::StaticLoadClass <- ULevel::Listen <- Listen <- UGameEngine::LoadMap <- LocalMapURL <- UGameEngine::Browse <- ClientTravel <- UGameEngine::Tick <- MainLoop