theAsmodai / metamod-r

Metamod is a plugin/DLL manager that sits between the Half-Life Engine and an HL Game mod, allowing the dynamic loading/unloading of mod-like DLL plugins to add functionality to the HL server or game mod. Metamod-r is improved version of metamod.
GNU General Public License v3.0
139 stars 35 forks source link

latest metamod not loading Adrenaline Gamer gamedll out of the box #38

Closed krangm closed 6 years ago

krangm commented 6 years ago

v1.3.0.121 probably because of this https://github.com/theAsmodai/metamod-r/blob/89b29af8a5ae671f3c78403d055dff48d3a0a6ce/metamod/src/game_support.cpp#L14 original gamedll name is ag_i386.so and not just ag.so so to run server you gotta manually point metamod to gamedll in config.ini

tho i had not this problem on metamod v1.3.0.104

krangm commented 6 years ago

// .so file by OpenAG fork

OpenAG pack designed to run on regular HLDS, where you really need to rename ag_i386.so to ag.so for successful run. while ReHLDS has this problem fixed and allow to run original named gamedll without any changes

stamepicmorg commented 6 years ago

are u using hlds or rehlds?


about "_i386.so"-postfix look hrere and here.

probably because of this nope. current version of metamod-r detects "_i386_i486_i686" postfixes automaticly.

@theAsmodai right?


OpenAG pack designed to run or regular HLDS

i have mistake at this description. OpenAG its just alternative client and it has no server's dll. If u will runing AG-server (also with installed client.dll from openAG) - u will be running originalAG-server.

krangm commented 6 years ago

are u using hlds or rehlds?

obv im running ReHLDS, moveover metamod-r no longer supports original HLDS

OpenAG its just alternative client and it has no server's dll. If u will runing AG-server (also with installed client.dll from openAG) - u will be running originalAG-server.

i know that. i meant OpenAG full pack contains both client and server libs, and i know that server one is native AG gamedll. but once again OpenAG full pack designed to run on regular HLDS so they have already renamed server gamedll from ag_i386.so to ag.so to avoid this kind of errors

LoadLibrary failed on p▒▒▒▒▒▒M▒p▒▒▒▒▒▒/▒▒▒▒▒: p▒▒▒▒▒▒M▒p▒▒▒▒▒▒/▒▒▒▒▒: cannot open shared object file: No such file or directory
Host_Error: Couldn't get DLL API from p▒▒▒▒▒▒M▒p▒▒▒▒▒▒/▒▒▒▒▒!
FATAL ERROR (shutting down): Host_Error: Couldn't get DLL API from p▒▒▒▒▒▒M▒p▒▒▒▒▒▒/▒▒▒▒▒!

gamedll name is crucial for regular HLDS, but since metamod-r now works only with ReHLDS the only gamedll name that will work is ag_i386.so

theAsmodai commented 6 years ago

No, postfixes are not automatically checked for gamedll. I'm added ag_i386.so manually.

stamepicmorg commented 6 years ago

@theAsmodai

No, postfixes are not automatically checked for gamedll.

But

const char* g_platform_postfixes[4] =
{
    "_i386.so",
    "_i486.so",
    "_i586.so",
    "_i686.so",
};

https://github.com/theAsmodai/metamod-r/blob/master/metamod/src/utils.cpp

and @In-line tell me about it here: https://github.com/theAsmodai/metamod-r/pull/25/files/21bd869144511734a37a16cf510437c012e153d5

theAsmodai commented 6 years ago

It's only for plugins.ini

stamepicmorg commented 6 years ago

It's only for plugins.ini

I was misinformed. Sorry. I will be fix game-list soon with PR.