SmileYzn / MatchBot

Counter-Strike 1.6 Match Plugin for ReHLDS and ReGameDLL_CS
GNU General Public License v3.0
30 stars 15 forks source link

mod can not run in metamod! #76

Closed Escap3d closed 1 year ago

Escap3d commented 1 year ago

Screenshot 2023-06-28 113509 Screenshot 2023-06-28 113536

only not work on linux .. windows work fine

SmileYzn commented 1 year ago

Test it lastest build from here:

https://github.com/SmileYzn/MatchBot/actions/runs/5397369759

Escap3d commented 1 year ago

Test it lastest build from here:

https://github.com/SmileYzn/MatchBot/actions/runs/5397369759

no bro same issue

axl303 commented 1 year ago

Install curl on linux and also try to enable debug info in metamod so you can see what's the reason to not loading the module.

SmileYzn commented 1 year ago

Post linux system specifications!

Escap3d commented 1 year ago

Unbuntu 20.04

SmileYzn commented 1 year ago

Unbuntu 20.04

Ohhhh that is a complete system information!

Did you even tried to install libcurl?

drakin003 commented 1 year ago

Hello, regarding this matter

i have followed the steps that you mentioned above i have installed curl, it was already installed but i did reinstalled it

curl 7.68.0 (x86_64-pc-linux-gnu) libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3 Release-Date: 2020-01-08

i am using this rehlds server on open game panel, and its running on ubuntu 20.04.6 LTS (fully updated)

the debug.log only shows startup command:

CRASH: Thu Jun 26 15:53:19 UTC 2023 Start Line: ./hlds_linux -game cstrike -pidfile ogp_game_startup.pid +map de_dust2 +ip 172.31.3.86 +port 27016 +maxplayers 18 -insecure -debug End of crash report

as you can see the last crash was on jun 26,

the server is not crashing, its just i can't get matchbot to load i even tried some metamod commands like meta retry, force unload then load again nothing worked

i don't know what else i can do to run this mod, other plugins seem to run just fine

feel free to ask anything you want

SmileYzn commented 1 year ago

@vegas003 Welcome!

I'm installing a centos7 VM to see what is happening with mod

I thinking the libcurl need to be installed, but need to see what other libs can require too

just turn logs on (log on) on server.cfg and do a meta retry [matchbot plugin index] (Like meta retry 3)

And see what result is returned in logs or server console

SmileYzn commented 1 year ago

image

Install libcurl.i686 seems to fix the problem! Please, pay attention that is a i386 library (On ubuntu seens to be something like libcurl:i386)

sudo yum install libcurl.i686

Or on ubuntu try
sudo apt install libcurl:i386 
drakin003 commented 1 year ago

your right libcurl is missing

L 06/28/2023 - 19:03:13: [META] ERROR: dll: Failed query plugin ''; Couldn't open file '/home/ogp_agent/OGP_User_Files/2/cstrike/addons/matchbot/dlls/matchbot_mm.so': libcurl.so.4: cannot open shared object file: No such file or directory L 06/28/2023 - 19:03:13: [META] ERROR: dll: Skipping plugin ''; couldn't query L 06/28/2023 - 19:03:13: [META] ERROR: dll: Couldn't close plugin file 'matchbot_mm.so': invalid handle Retry failed for plugin ''

when i am trying to install libcurl using the command you provided it says Unable to locate package libcurl:i386

i am using aws ec2.

edit: i have installed curl but now i am getting Couldn't open file '/home/ogp_agent/OGP_User_Files/2/cstrike/addons/matchbot/dlls/matchbot_mm.so': libssl.so.10: cannot open shared object file: No such file or directory

SmileYzn commented 1 year ago

@vegas003 What is the system? ubuntu 20.04??

Anyway try with sudo apt install libcurl3:i386

You need to enable i386 support if you already done, ignore it:

sudo add-apt-repository multiverse
sudo apt install software-properties-common
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libcurl3 libcurl3:i386
drakin003 commented 1 year ago

@SmileYzn yes ubuntu 20.04 here's full os info using cat /etc/os-release command

NAME="Ubuntu" VERSION="20.04.6 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.6 LTS" VERSION_ID="20.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=focal UBUNTU_CODENAME=focal

and i i have installed libcurl, but there's another error: L 06/28/2023 - 19:30:03: [META] ERROR: dll: Failed query plugin ''; Couldn't open file '/home/ogp_agent/OGP_User_Files/2/cstrike/addons/matchbot/dlls/matchbot_mm.so': libssl.so.10: cannot open shared object file: No such file or directory

this time libssl.so.10 ??!?

EDIT: getting libssl.so.10: wrong ELF class: ELFCLASS64 now

SmileYzn commented 1 year ago

@vegas003

Do the same for libssl:

Try this tip from: https://askubuntu.com/a/339371

Ps. Ubuntu 20.04 seems to be strange, since installing libcurl will install all their dependencies!

SmileYzn commented 1 year ago

@vegas003

Sorry it is: sudo apt-get install libssl1.0.0:i386

drakin003 commented 1 year ago

i have already tried this command didnt worked,

now i am thinking maybe open game panel dont have access to shared libraries but ogp user has all privileges or there's something wrong with os or its broken that it can't seem to find or access shared libraries folder but then again it did manage to find libcurl files,

i will now install a new rehlds server on another vps and will let you know if mod worked or not

drakin003 commented 1 year ago

@SmileYzn so i tried to run this mod on 3 different vps providers using ubuntu 20.04, none of them worked all giving libssl not found error, then i switched to centos 7.9 and it worked like magic! still not sure why its not working on ubuntu 20.04, i always use ubuntu since its beginner friendly maybe you can take a look? i will now install centos 7 on my other servers

anyway thanks for your help, your great @SmileYzn keep cs 1.6 alive :)

drakin003 commented 1 year ago

Capture

SmileYzn commented 1 year ago

Maybe libssl is buggy at Ubuntu 20.04.

drk1351 commented 1 year ago

Hi smiley is the dlls file in the source code public?

SmileYzn commented 1 year ago

Hi smiley is the dlls file in the source code public?

Try to explain better, Please :pray:

drk1351 commented 1 year ago

I download your file and nope so. File :(

drk1351 commented 1 year ago

I download your file and nope so. File :( Missing dlls file bro :/

axl303 commented 1 year ago

Hi smiley is the dlls file in the source code public?

The source code is public, can't you see it? https://github.com/SmileYzn/MatchBot/tree/main/MatchBot If you want a compiled .so (Linux) or a .dll (Windows) file, just go to Actions -> https://github.com/SmileYzn/MatchBot/actions There you can see Linux and Windows Builds.

@SmileYzn so i tried to run this mod on 3 different vps providers using ubuntu 20.04, none of them worked all giving libssl not found error, then i switched to centos 7.9 and it worked like magic! still not sure why its not working on ubuntu 20.04, i always use ubuntu since its beginner friendly maybe you can take a look? i will now install centos 7 on my other servers

anyway thanks for your help, your great @SmileYzn keep cs 1.6 alive :)

Try to see if there is a rename on package or something else (dig a bit more in google if you have time). In Debian 11 there were some package or name changes (don't remember tho) when I tried to install the required things to run a CS 1.6 server.

Like vegas: I'm gonna say thanks smiley :) you da best!

SmileYzn commented 1 year ago

@vegas003 @axl303

The problem with libssl is simple: The libssl1.0 is never supported on ubuntu 20.04, since it uses libssl1.1 (Newer than 1.0) Soo, we are stuck on some things:

  1. At actual builds on CentOS 7.9, the curl will use libssl1.0 and will fuck Ubuntu newest versions that uses newest library like libssl and libcurl!

  2. Change to build with modern Ubuntu version, mod probably will work n1ce on newest S.O versions, but will fuck old S.O like CentOS! (And for poor hosting services, they still using outdated game panels with systems like CentOS 7.9!)

What to do in this case? LINK ALL SHIT AS STATIC, STATIC EVERYTHING!!

And that's definitely not an option!

Seeing a lot of other modules for AMX like Amxx Curl, their do a static link? I never tested, yes maybe.

I will upgrade Match Bot to work with newest systems and move out of build from CentOS! And it will require newest versions of libcurl, and others (For Web API, Stats etc)

It is my final word about that.

And finally, for now you still need to do a manual install of libssl1.0 on Ubuntu 20.04, maybe with this will require an manual install of libcrypto too.

SmileYzn commented 1 year ago

@vegas003 @axl303

There is, new build is there :+1:

drk1351 commented 1 year ago

Currently loaded plugins: description stat pend file vers src load unload [ 1] badf load matchbot_mm.so v - ini - -
[ 2] Reunion RUN - reunion_mm_i386.so v0.1.92d ini Start Never [ 3] ReAuthCheck RUN - reauthcheck_mm_i386.so v0.1.6 ini Start Never [ 4] AMX Mod X RUN - amxmodx_mm_i386.so v1.10.0.5461 ini Start ANY
[ 5] WHBlocker RUN - whblocker_mm_i386.so v1.5.697 ini Chlvl ANY
[ 6] HitBox Fix RUN - hitbox_fix_mm_i386.so v1.1.2 ini Start ANY
[ 7] Accuracy Fix RUN - accuracyfix_mm.so v1.0.1 ini ANY ANY
[ 8] ReAPI RUN - reapi_amxx_i386.so v5.22.0.254-dev pl4 ANY Never [ 9] ReAimDetector RUN - reaimdetector_amxx_i386.so v0.2.2 pl4 ANY Never [10] Fun RUN - fun_amxx_i386.so v1.10.0.5461 pl4 ANY ANY
[11] CStrike RUN - cstrike_amxx_i386.so v1.10.0.5461 pl4 ANY ANY
[12] FakeMeta RUN - fakemeta_amxx_i386.so v1.10.0.5461 pl4 ANY ANY
[13] Engine RUN - engine_amxx_i386.so v1.10.0.5461 pl4 ANY ANY
[14] Ham Sandwich RUN - hamsandwich_amxx_i386.so v1.10.0.5461 pl4 ANY ANY
14 plugins, 13 running

not working 🌵

drakin003 commented 1 year ago

Hello, I've tried different repositories to install libcurl3, libssl1.0.0 or libssl1.0-dev on my Ubuntu 20.04 system, but none of them have worked. I'm considering installing an older OS that supports the required packages as a last resort.

and yes i have tried i386 packages also

updated build doesn't seem to help i am still getting libssl.so.10 not found error.

SmileYzn commented 1 year ago

I did not make an build upgrade fully yet. I will maintain the CentOS build method ultil i find a suitable solution for all!

Soo now i'm trying to build a static linked version in ubuntu 20.04, when i get done i will try to repply on github actions and test it!

Ps. LibSSL 1.1 can't get replaced by libSSL 1.0 without manual changes on ubuntu, and is not recommended anyway!

SmileYzn commented 1 year ago

@vegas003 @axl303 @Escap3d

Someone can try it now on ubuntu 20.04 and / or 22.04 if possible?

Running fine on CentOS 7.9, probably using libssl 1.1 too

SmileYzn commented 1 year ago

image

drk1351 commented 1 year ago

thanks mate, debian 11 is fine, but the translated file is not the same as the one in your link, the file in the action section is not the same, my English is bad, google translator is my helper, I hope you understand :D

SmileYzn commented 1 year ago

Translated file? What is that??

drk1351 commented 1 year ago

This is file https://github.com/SmileYzn/MatchBot/actions

drk1351 commented 1 year ago

not the same with this one https://github.com/SmileYzn/MatchBot/releases/tag/1.0.1

SmileYzn commented 1 year ago

Is the same file! Action builds are automated to compile mod, what is the problem whit file itself? Anyway is not related with this metamod issue.

drk1351 commented 1 year ago

Oh np mate, plugin run 🙈 only the dlls loaded into the action wall did not work for me

drakin003 commented 1 year ago

Hello! the latest build seem to be working fine on ubuntu 20.04 using curl, curl:i386 packages,

thanks for updating.