Senior Member
|
11-12-2017
, 05:42
Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
|
#12
|
Quote:
Originally Posted by Spirit_12
Signatures are specific code locations that you can hook with Orpheu directly from the game binary. Like in this case you are hooking the player spawn function and overriding it. Orpheu signatures are stored in configs/orpheu folder.
In your case look at configs/orpheu/functions/InstallGameRules file.
This is the old signature, which can be clearly seen for Linux entry. Here is the updated signature. Replace the contents of your InstallGameRules file with this and it should work or at the very least stop the crashes.
]
|
Greetings, Spirit,
Thanks a lot for your detailed prompt reply.
I did exactly what you said.
Just for a bit more clarity of the case, "InstallGameRules" file was never provided with the download of Orpheu v2.6.3. The folders "functions" and "Virtual Functions" were empty. No InstallGameRules file came alongwith the stock download. The file I HAD was from the Plugin, brr_nokill as an Additional Content.
The old InstallGameRules I had (without applying Spirit_12's update) :
PHP Code:
{
"name" : "InstallGameRules",
"library" : "mod",
"return" :
{
"type" : "CHalfLifeMultiplay *"
},
"identifiers":
[
{
"os" : "windows",
"mod" : "cstrike",
"value" : [0x68,"*","*","*","*",0xFF,"*","*","*","*","*",0x83,0xC4,0x4,0xFF,"*","*","*","*","*",0xA1,"*","*","*","*",0xD9,0x40,0x14],
"info" : "Works for Condition Zero"
},
{
"os" : "linux",
"mod" : "cstrike",
"value" : "InstallGameRules__Fv"
},
{
"os" : "windows",
"mod" : "SvenCoop",
"value" : [0x55,0x8B,0xEC,0x6A,0xFF,0x68,"*","*","*","*",0x64,"*","*","*","*","*",0x50,0x81,"*","*","*","*","*",0xA1,"*","*","*","*",0x33,0xC5,0x89,0x45,0xF0]
},
{
"os" : "windows",
"mod" : "ns",
"value" : [0x6A,0xFF,0x68,"*","*","*","*",0x64,"*","*","*","*","*",0x50,0x64,"*","*","*","*","*","*",0x51,0x68]
},
{
"os" : "linux",
"mod" : "ns",
"value" : "_Z16InstallGameRulesv"
},
{
"os" : "windows",
"mod" : "dod",
"value" : [0x55,0x8B,0xEC,0x83,0xEC,0x48,0x53,0x56,0x57,0x68,"*","*","*","*",0xFF,"*","*","*","*","*",0x83,0xC4,0x04,0xFF]
},
{
"os" : "linux",
"mod" : "dod",
"value" : "InstallGameRules__Fv"
},
{
"os" : "windows",
"mod" : "valve",
"value" : [0x68,"*","*","*","*",0xFF,"*","*","*","*","*",0x83,0xC4,0x04,0xFF,"*","*","*","*","*",0x8B]
},
{
"os" : "linux",
"mod" : "valve",
"value" : "InstallGameRules__Fv"
},
{
"os" : "windows",
"mod" : "ts",
"value" : [0x6A,0xFF,0x68,"*","*","*","*",0x64,"*","*","*","*","*",0x50,0x64,"*","*","*","*","*","*",0x51,0x56,0x68]
},
{
"os" : "linux",
"mod" : "ts",
"value" : "InstallGameRules__Fv"
}
]
}
With this file, the server could not be started.
After applying Spirit_12's patch, the server could successfully start, as it's empty at first.
After a couple minutes, it crashed. I noticed a thing, when a player tries to connect, and brr_nokill doens't let it spawn and to do that, it accesses the InstallGameRules file, and that's exactly when the crash happens, that's what I assume as it never crashed with 0 players, no traffic. So, we're definitely getting somewhere.
Also, I also had another file from the plugin as an Additional Orpheu download in /configs/orpheu/virtualfunctions/CGameRules/ FPlayerCanRespawn
If it has anything to do with it, the contents of that file are down below :
PHP Code:
{
"name" : "FPlayerCanRespawn",
"class" : "CGameRules",
"library" : "mod",
"return" :
{
"type" : "bool"
},
"arguments" :
[
{
"type" : "CBasePlayer *"
}
],
"indexes" :
[
{
"os" : "windows",
"mod" : "SvenCoop",
"value" : 20
},
{
"os" : "windows",
"mod" : "cstrike",
"value" : 20
},
{
"os" : "linux",
"mod" : "cstrike",
"value" : 22
},
{
"os" : "windows",
"mod" : "dod",
"value" : 20
},
{
"os" : "linux",
"mod" : "dod",
"value" : 22
},
{
"os" : "windows",
"mod" : "valve",
"value" : 20
},
{
"os" : "linux",
"mod" : "valve",
"value" : 22
},
{
"os" : "windows",
"mod" : "ns",
"value" : 20
},
{
"os" : "linux",
"mod" : "ns",
"value" : 22
},
{
"os" : "windows",
"mod" : "ts",
"value" : 19
},
{
"os" : "linux",
"mod" : "ts",
"value" : 21
},
{
"os" : "windows",
"mod" : "tfc",
"value" : 20
},
{
"os" : "linux",
"mod" : "tfc",
"value" : 22
}
]
}
I hope this helps in analyzing the problem a bit deeper.
Thanks again for all the help, couldn't have expected any better!
Regards,
ZEDD
|
|