Open etinin opened 7 years ago
Currently work only Battle.net part, i didn't test in official bnet servers, but on pvpgn this work very well. For now remain "game hosting" part. I need to realize how to implement broken SHA1 algorithm, for calculate map crc, sha1 and other params from map file. Than game join and handling protocol methods. But i don't have enough time to work on this as well. And i don't know how many time it takes.
Yay, I have some progress, I found https://github.com/wowserhq/wowser (WoW client in the browser) and I can reuse some code to implement extracting information from MPQ files and calculate SHA1
Does centos also work?
You need compile libbncsutil.so and libstorm.so and this should work. Now only as chat bot
Hi. It's the awesome project. Once I thought about this idea and you started to do this in pro level. Nice job. For now I am a little bit confused with check this out because I know node.js but not C++ stuff and I get stuck on error Error: Dynamic Linking Error: /home/redcode/Downloads/ghost.js-master/libbncsutil.so: wrong ELF class: ELFCLASS32
and similar related to compiling libbncsutil.so. It's so strange to be exiting on node.js coding and stopped on C++:). I hope you continue contributing.
Seems to libbncsutil
need to be compiled with 64bit flag
@JiLiZART, I tried it, but no matter what I do I get this error
Error: Dynamic Linking Error: /home/gladiko/wc3/ghost/ghost.js/libbncsutil.so: undefined symbol: __gmpz_mul_ui
What I have checked : Ubuntu - 18.10 x64 Node.js - 6v, 8v, 10v, 12v Gcc/G++ - 4.4v, 4.8v, 5v, 8v Libbncsutil - 1.3.1v, 1.3.2v, 1.4.0v, 1.4.1v, and version from this repo
Also I installed libgmp3-dev
and build from source with a lot of versions.
And duplicate for sure to other dirs :
/usr/local/lib/libgmp.so.10
/usr/local/lib/libgmp.so.10.3.2
/usr/local/lib/libgmp.so
/usr/lib/libgmp.so.10
/usr/lib/x86_64-linux-gnu/libgmp.so.10
/usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
/usr/lib/x86_64-linux-gnu/libgmp.so
/usr/lib/libgmp.so
/usr/lib/i386-linux-gnu/libgmp.so.10
/usr/lib/i386-linux-gnu/libgmp.so.10.3.2
/usr/lib/i386-linux-gnu/libgmp.so
Last chance I play a little bit with the makefile explicitly specifying path in this way LDFLAGS = -L/usr/local/lib/ -L/usr/lib -L/usr/lib/x86_64-linux-gnu -lgmp -shared
and etc.
Now after a couple of days and totally ruined mind I have no idea what the hell is this:)
Can you please share your proper environment set and build tools versions or give an advice if you have something different from Linux?
@gladiko You can check this repo https://github.com/w3gh/bncsutil and this CI config https://github.com/w3gh/bncsutil/blob/master/.travis.yml its builds on Linux env
I started to implement Game Protocol, so soon (i hope) it will be able to host and join to game 👍
And also I have refs to support Casc (new blizzard archive files) and implement Reforged support (i hope)
Wow, this is awesome! I am still keeping a server mostly for this purpose but I don't want to spend more time with C++. So your project last hope to resurrect it :) I bet that you are the last one from the old school wc3 ghost community who can finish it in a proper way. Please, can you tell me what the things are left there? I am interested just in a base game skeleton without 100+ extra features from ghost++/ghost one. And it will be easy to go forward from that point.
Now I need to implement base protocols for able to play without any features like spoofchecks, bans, scores etc
Is this currently working? If not, what needs to be done?