Raised This Month: $51 Target: $400
 12% 

[META] ERROR: Failed to find memloc for regcmd 'orpheu'


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
ZEDD_Intensity
Senior Member
Join Date: Jun 2016
Old 11-09-2017 , 10:48   [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #1

Greetings AMXX,

Hope y'all are having a good time.

I'm here to get some help regarding an AMX Module Malfunction, Orpheu

I'm running a DeathRun Server that requires the plugin, Block Reconnect Respawn by Sylwester for avoiding players to spawn in the middle on an on-going round. To support the plugin's requirements, my server is running Orpheu v2.6.3 by Arkshine.

Whenever I've tried to fire the server up with brr_nokill.amxx, it gives me a "Failed to find memloc" error.
Code:
[META] ERROR: Failed to find memloc for regcmd 'orpheu'
I searched the forums for solutions and found this.
As per Yami's solution for "ham" :
Quote:
Originally Posted by YamiKaitou View Post
Try deleting anything with the word "ham" in the file name and reuploading them, with the server shut down of course
I assume that the same would apply for orpheu as well, and so I delete entire Orpheu files, redownloaded and re-uploaded with the server shut down and seems like I'm running into the same problem again.
Here's the plugin code :
PHP Code:
#include <amxmodx>
#include <celltrie>
#include <hamsandwich>
#include <orpheu>
#include <orpheu_stocks>

#define MAX_PLAYERS 32
#define VERSION "1.4-nokill"

//----------------------------------------------------------------------------------------------
new _pg_is_h
#define _IsHuman(%1) ( _pg_is_h & 1<<%1 )
#define _SetHuman(%1) _pg_is_h |= 1<<%1
#define _SetNotHuman(%1) _pg_is_h &= ~( 1<<%1 )
//----------------------------------------------------------------------------------------------
new _pg_spawned
#define _HasSpawned(%1) ( _pg_spawned & 1<<%1 )
#define _SetSpawned(%1) _pg_spawned |= 1<<%1
#define _SetNotSpawned(%1) _pg_spawned &= ~(1<<%1)
#define _ResetSpawned() _pg_spawned = 0
//----------------------------------------------------------------------------------------------
new _pg_block
#define _IsBlocked(%1) ( _pg_block & 1<<%1 )
#define _SetBlock(%1) _pg_block |= 1<<%1
#define _SetNoBlock(%1) _pg_block &= ~(1<<%1)
#define _ResetBlocked() _pg_block = 0
//----------------------------------------------------------------------------------------------

new g_pGameRules

new bool:g_stored_ips
new g_p_ip[MAX_PLAYERS+1][16]
new 
Trie:g_trie_ips

new Float:g_late_spawn_time_limit

new pcvar_spawn_time
new pcvar_enabled

new bool:g_block_late_spawn
new g_enabled

public plugin_init(){
    
register_plugin("BlockReconnectRespawn"VERSION"Sylwester")
    
register_cvar("brr_ver"VERSIONFCVAR_SERVER)

    
RegisterHam(Ham_Spawn"player""Player_Spawn"1)
    
    
register_event("HLTV""event_new_round""a""1=0""2=0")
    
register_logevent("logevent_round_start"2"1=Round_Start")
    
pcvar_spawn_time register_cvar("brr_spawn_time""10")
    
pcvar_enabled register_cvar("brr_enabled""1")

    
OrpheuRegisterHookFromObject(g_pGameRules,"FPlayerCanRespawn","CGameRules","OnFPlayerCanRespawn")
    
g_trie_ips TrieCreate()
}


public 
plugin_precache()
    
OrpheuRegisterHook(OrpheuGetFunction("InstallGameRules"),"OnInstallGameRules",OrpheuHookPost)


public 
OnInstallGameRules()
    
g_pGameRules OrpheuGetReturn()


public 
OrpheuHookReturn:OnFPlayerCanRespawn(gamerulesid){
    if(!
_IsHuman(id) || _HasSpawned(id))
        return 
OrpheuIgnored
    
if(_IsBlocked(id)){
        
OrpheuSetReturn(false)
        return 
OrpheuSupercede
    
}

    if(
g_block_late_spawn && g_late_spawn_time_limit get_gametime()){
        
OrpheuSetReturn(false)
        return 
OrpheuSupercede
    
}
    return 
OrpheuIgnored
}


public 
Player_Spawn(id){
    if(!
_IsHuman(id) || !is_user_alive(id))
        return
    
_SetSpawned(id)
}


public 
logevent_round_start(){
    
g_enabled get_pcvar_num(pcvar_enabled)
    new 
late_spawn_time get_pcvar_num(pcvar_spawn_time)
    if(
late_spawn_time <= 0){
        
g_block_late_spawn false
        
return
    }
    
g_block_late_spawn true
    g_late_spawn_time_limit 
get_gametime()+float(late_spawn_time)
}


public 
event_new_round(){
    if(
g_stored_ips){
        
TrieClear(g_trie_ips)
        
g_stored_ips false
    
}
    
_ResetSpawned()
    
_ResetBlocked()
    
g_block_late_spawn false
}


public 
client_putinserver(id){
    if(
is_user_bot(id) || is_user_hltv(id))
        return
    
_SetHuman(id)
    
get_user_ip(idg_p_ip[id], 15)
    if(
g_enabled && TrieKeyExists(g_trie_ipsg_p_ip[id])){
        
_SetBlock(id)
    }
}


public 
client_disconnect(id){
    if(
_HasSpawned(id) && !_IsBlocked(id) && g_enabled){
        
g_stored_ips true
        TrieSetCell
(g_trie_ipsg_p_ip[id], 0)
    }
    
_SetNoBlock(id)
    
_SetNotSpawned(id)
    
_SetNotHuman(id)
}


public 
plugin_end(){
    
TrieDestroy(g_trie_ips)

modules.ini
PHP Code:
;;;
To enable a moduleremove the semi-colon (;) in front of its name.
; If 
it's not here, simply add it its name, one per line.
; You don'
t need to write the _amxx part or the file extension.
;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 
SQL Modules usually need to be enabled manually ;;
;; 
You can have any number on at a time.  Use      ;;
;;  
amx_sql_type in sql.cfg to specify the default ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;
mysql
;sqlite

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 
Put third party modules below here.              ;;
;; 
You can just list their nameswithout the _amxx ;;
;;  or 
file extension.                              ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;



;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 
These modules will be auto-detected and loaded   ;;
;;  as 
needed.  You do not need to enable them here ;;
;;  
unless you have problems.                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

fun
engine
fakemeta
;geoip
;sockets
;regex
;nvault
cstrike
csx
hamsandwich 
brr_nokill.amxx was compiled locally as it has Orpheu Dependencies.

Hope these details are enough to analyze the case. I'd appreciate any help!

Kind Regards,
ZEDD
ZEDD_Intensity is offline
wickedd
Veteran Member
Join Date: Nov 2009
Old 11-09-2017 , 12:06   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #2

Well I don't know a lot about orpheu but I did find another plugin that you can use. It doesn't requires
orpheu, so maybe you can give it a try.

Here you go
__________________
Just buy the fucking game!!!!
I hate No-Steamers and lazy ass people.
wickedd is offline
ZEDD_Intensity
Senior Member
Join Date: Jun 2016
Old 11-09-2017 , 16:38   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #3

Quote:
Originally Posted by wickedd View Post
Well I don't know a lot about orpheu but I did find another plugin that you can use. It doesn't requires
orpheu, so maybe you can give it a try.

Here you go
Hi again wickedd,

I really appreciate your prompt response.

Thanks loads for linking me that plugin. I've installed it on my DataCenter and will test it within next 14 hours. I'm pretty sure it works just how described it'll make it tremendously easy for me to as the "Orpheu" error totally killed my server. I'm temporarily disabled it. I'll make sure I edit this reply of mine if anything goes wrong.

Thank ya,
ZEDD
ZEDD_Intensity is offline
klippy
AlliedModders Donor
Join Date: May 2013
Location: Serbia
Old 11-10-2017 , 11:05   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #4

In the same thread you linked:
Quote:
Originally Posted by sawce View Post
This is a harmless warning, metamod just spits that out when registering server commands.
klippy is offline
ZEDD_Intensity
Senior Member
Join Date: Jun 2016
Old 11-10-2017 , 13:23   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #5

Quote:
Originally Posted by KliPPy View Post
In the same thread you linked:
Hey,

Thanks, yes I noticed that. But also noticed that, error is an error. Harmless or not, it is called an "error" for a reason. If there's an error, there has to be a solution. It'd be a different case if it's not found yet.
Quote:
Originally Posted by ivomacedo View Post
L 12/21/2010 - 09:43:16: [META] dll: Loaded plugin 'MySQL': MySQL v1.8.1.3746 Aug 16 2008, AMX Mod X Dev Team
L 12/21/2010 - 09:43:16: [META] dll: Loaded plugin 'CSX': CSX v1.8.1.3746 Aug 16 2008, AMX Mod X Dev Team
L 12/21/2010 - 09:43:16: [META] dll: Loaded plugin 'CStrike': CStrike v1.8.1.3746 Aug 16 2008, AMX Mod X Dev Team
L 12/21/2010 - 09:43:16: [META] dll: Loaded plugin 'Engine': Engine v1.8.1.3746 Aug 16 2008, AMX Mod X Dev Team
L 12/21/2010 - 09:43:16: [META] dll: Loaded plugin 'FakeMeta': FakeMeta v1.8.1.3746 Aug 16 2008, AMX Mod X Dev Team
L 12/21/2010 - 09:43:16: [META] ERROR: Failed to find memloc for regcmd 'ham'
L 12/21/2010 - 09:43:16: [META] dll: Loaded plugin 'Ham Sandwich': Ham Sandwich v1.8.1.3746 Aug 16 2008, AMX Mod X Dev Team
L 12/21/2010 - 09:43:16: [META] dll: Loaded plugin 'Fun': Fun v1.8.1.3746 Aug 16 2008, AMX Mod X Dev Team

But there's some solution how to fix that?
Error is a error :S
Also, not just being harmless, it doesn't let the server boot up. Everytime i try to run startserver CLI, it doesn't load the plugin up and stops with the mentioned error. The only way I could start it is by disabling the plugin. I'm currently using this code as brr_kill.amxx.
PHP Code:
#include <amxmodx>
#include <celltrie>
#include <hamsandwich>
#include <cstrike>
#include <fun>

#define MAX_PLAYERS 32
#define VERSION "1.4-kill"

//----------------------------------------------------------------------------------------------
new _pg_is_h
#define _IsHuman(%1) ( _pg_is_h & 1<<%1 )
#define _SetHuman(%1) _pg_is_h |= 1<<%1
#define _SetNotHuman(%1) _pg_is_h &= ~( 1<<%1 )
//----------------------------------------------------------------------------------------------
new _pg_spawned
#define _HasSpawned(%1) ( _pg_spawned & 1<<%1 )
#define _SetSpawned(%1) _pg_spawned |= 1<<%1
#define _SetNotSpawned(%1) _pg_spawned &= ~(1<<%1)
#define _GetSpawned() _pg_spawned
//----------------------------------------------------------------------------------------------
new _pg_block
#define _IsBlocked(%1) ( _pg_block & 1<<%1 )
#define _SetBlock(%1) _pg_block |= 1<<%1
#define _SetNoBlock(%1) _pg_block &= ~(1<<%1)
#define _GetBlocked() _pg_block
//----------------------------------------------------------------------------------------------
#define _NewRoundReset() _GetSpawned()&=_GetBlocked()&=_GetSpawned()
//----------------------------------------------------------------------------------------------

new bool:g_stored_ips
new g_p_ip[MAX_PLAYERS+1][16]
new 
Trie:g_trie_ips

new Float:g_late_spawn_time_limit

new pcvar_spawn_time
new pcvar_enabled

new bool:g_block_late_spawn
new g_enabled

public plugin_init(){
    
register_plugin("BlockReconnectRespawn"VERSION"Sylwester")
    
register_cvar("brr_ver"VERSIONFCVAR_SERVER)

    
RegisterHam(Ham_Spawn"player""Player_Spawn"1)
    
    
register_message(get_user_msgid("ClCorpse"), "block_ClCorpse_msg")
    
register_message(get_user_msgid("DeathMsg"), "block_DeathMsg_msg")
    
register_event("HLTV""event_new_round""a""1=0""2=0")
    
register_logevent("logevent_round_start"2"1=Round_Start")
    
    
pcvar_spawn_time register_cvar("brr_spawn_time""0")
    
pcvar_enabled register_cvar("brr_enabled""1")

    
g_trie_ips TrieCreate()
}


public 
block_ClCorpse_msg(msg_idmsg_destmsg_entity){
    if(
_IsBlockedget_msg_arg_int(12) ))
        return 
PLUGIN_HANDLED
    
return PLUGIN_CONTINUE
}    


public 
block_DeathMsg_msg(msg_idmsg_destmsg_entity){
    if(
_IsBlockedget_msg_arg_int(2) ))
        return 
PLUGIN_HANDLED
    
return PLUGIN_CONTINUE
}


public 
Player_Spawn(id){
    if(!
is_user_alive(id) || !_IsHuman(id))
        return
    if(
_HasSpawned(id)){
        if(
_IsBlocked(id)){
            
_SetNoBlock(id)
            
set_user_rendering(idkRenderFxGlowShell000kRenderTransAlpha255)
        }
        return
    }
    
_SetSpawned(id)
    if(!
_IsBlocked(id)){
        if(
g_block_late_spawn && g_late_spawn_time_limit get_gametime())
            
_SetBlock(id)
        else
            return
    }
    
set_user_rendering(idkRenderFxGlowShell000kRenderTransAlpha0)
    
strip_user_weapons(id)
    
set_user_frags(idget_user_frags(id)+1)
    
cs_set_user_deaths(idcs_get_user_deaths(id)-1)
    
user_kill(id)
}


public 
logevent_round_start(){
    
g_enabled get_pcvar_num(pcvar_enabled)
    new 
late_spawn_time get_pcvar_num(pcvar_spawn_time)
    if(
late_spawn_time <= 0){
        
g_block_late_spawn false
        
return
    }
    
g_block_late_spawn true
    g_late_spawn_time_limit 
get_gametime()+float(late_spawn_time)
}


public 
event_new_round(){
    if(
g_stored_ips){
        
TrieClear(g_trie_ips)
        
g_stored_ips false
    
}
    
_NewRoundReset()
    
g_block_late_spawn false
}


public 
client_putinserver(id){
    if(
is_user_bot(id) || is_user_hltv(id))
        return
    
_SetHuman(id)
    
get_user_ip(idg_p_ip[id], 15)
    if(
g_enabled && TrieKeyExists(g_trie_ipsg_p_ip[id])){
        
_SetBlock(id)
    }
}


public 
client_disconnect(id){
    if(
_HasSpawned(id) &&  g_enabled){
        
g_stored_ips true
        TrieSetCell
(g_trie_ipsg_p_ip[id], 0)
    }
    
_SetNoBlock(id)
    
_SetNotSpawned(id)
    
_SetNotHuman(id)
}


public 
plugin_end(){
    
TrieDestroy(g_trie_ips)

Not very welcoming to kill players when they just joined, gotta deal with what I have here.

Plugin suggested by wickedd looked just fantastic, but somehow It doesn't seem to do anything on the server, I was sure I was setting it up right.

Hope that makes sense.

Regards,
ZEDD

Last edited by ZEDD_Intensity; 11-10-2017 at 15:39. Reason: added quote
ZEDD_Intensity is offline
klippy
AlliedModders Donor
Join Date: May 2013
Location: Serbia
Old 11-11-2017 , 10:52   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #6

It's an error because the Metamod developer deemed it so, even Sawce said that it's a harmless warning. That's not what crashes your server.
Taking a look at the code, I wouldn't even consider it a warning but an info message. It looks like Metamod prints it if it can't determine from which plugin a cvar or a server command comes from. It seems that info is only used for listing cvars and commands.

Last edited by klippy; 11-11-2017 at 10:53.
klippy is offline
ZEDD_Intensity
Senior Member
Join Date: Jun 2016
Old 11-11-2017 , 12:23   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #7

Quote:
Originally Posted by KliPPy View Post
It's an error because the Metamod developer deemed it so, even Sawce said that it's a harmless warning. That's not what crashes your server.
Taking a look at the code, I wouldn't even consider it a warning but an info message. It looks like Metamod prints it if it can't determine from which plugin a cvar or a server command comes from. It seems that info is only used for listing cvars and commands.
Hi,

I can totally understand and agree with that you're trynna say, but the major problem here is this :

Quote:
Originally Posted by ZEDD_Intensity View Post
Also, not just being harmless, it doesn't let the server boot up. Everytime i try to run startserver CLI, it doesn't load the plugin up and stops with the mentioned error. The only way I could start it is by disabling the plugin.
Regards,
ZEDD
ZEDD_Intensity is offline
klippy
AlliedModders Donor
Join Date: May 2013
Location: Serbia
Old 11-11-2017 , 17:25   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #8

Again, that message is not what what crashes your server.
Orpheu is a module that changes process's memory, so many things can go wrong. It's most likely not a problem in Orpheu but in that plugin you are trying to run. One of the problems could be outdated signature files, which is really likely as the mentioned plugin hans't been updated since 2010, but Counter-Strike has been. The 2013 update has indeed broke many existing signatures.

Last edited by klippy; 11-11-2017 at 17:26.
klippy is offline
Spirit_12
Veteran Member
Join Date: Dec 2012
Location: Toronto, CA
Old 11-11-2017 , 18:07   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #9

I would take Klippy's word, and look at some other stuff. He has built his reputation over the years and has never failed me.

I feel like you are not installing Orpehu properly. Remove your plugins that use orpheu and edit the modules.ini file in your configs folder. See, if Orpheu loads like that or not.

Are you using the updated signatures? The ones in your link are old and probably the cause of crash.
__________________

Last edited by Spirit_12; 11-11-2017 at 18:11.
Spirit_12 is offline
ZEDD_Intensity
Senior Member
Join Date: Jun 2016
Old 11-11-2017 , 19:04   Re: [META] ERROR: Failed to find memloc for regcmd 'orpheu'
Reply With Quote #10

Quote:
Originally Posted by Spirit_12 View Post
I would take Klippy's word, and look at some other stuff. He has built his reputation over the years and has never failed me.

I feel like you are not installing Orpehu properly. Remove your plugins that use orpheu and edit the modules.ini file in your configs folder. See, if Orpheu loads like that or not.

Are you using the updated signatures? The ones in your link are old and probably the cause of crash.
Quote:
Originally Posted by KliPPy View Post
Again, that message is not what what crashes your server.
Orpheu is a module that changes process's memory, so many things can go wrong. It's most likely not a problem in Orpheu but in that plugin you are trying to run. One of the problems could be outdated signature files, which is really likely as the mentioned plugin hans't been updated since 2010, but Counter-Strike has been. The 2013 update has indeed broke many existing signatures.
Hey, thanks for trying to help guys.

Yep, Orpheu MIGHT not be the problem, and in logs, All I get, is the error mentioned as the thread subject.

I'm VERY sure that the plugin brr_nokill in the link doesn't let the server start. Whenever its enabled, server never goes online, everything else is just fine. I've got a 24/7 server and so I make it triple-sure that nothing crashes the server. My Starting/First post has the plugin source in it.

Also, what exactly does "signatures" mean here? Could you mind explaining it a bit? I'm sorry if that sounds absurd, but I can't get a context on Signatures.

Regards,
ZEDD

Last edited by ZEDD_Intensity; 11-11-2017 at 19:05. Reason: god damn it, typos.
ZEDD_Intensity is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 09:20.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode