Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is this project to be compiled on WSL and then run on winxp? Have you ever thought of developing on VS2019 directly #36

Open
shadowbanewuha opened this issue Oct 31, 2022 · 25 comments

Comments

@shadowbanewuha
Copy link

No description provided.

@shadowbanewuha
Copy link
Author

`
[ 20%] Built target sol2
[ 22%] Built target SQLiteCpp
[ 24%] Built target tinyxml2
[ 26%] Built target utf8cpp
[ 28%] Built target libzstd
[ 28%] Built target mir2x_3rds
[ 33%] Built target common
Consolidate compiler generated dependencies of target monoserver

[ 33%] Linking CXX executable monoserver
ld: library not found for -lXrender
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [server/src/monoserver] Error 1
make[1]: *** [server/src/CMakeFiles/monoserver.dir/all] Error 2
make: *** [all] Error 2

AltaideMacBook-Pro:b altai$ brew install libxrender
Error:
homebrew-core is a shallow clone.
To brew update, first run:
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
This command may take a few minutes to run due to the large size of the repository.
This restriction has been made on GitHub's request because updating shallow
clones is an extremely expensive operation due to the tree layout and traffic of
Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
automatically to avoid repeatedly performing an expensive unshallow operation in
CI systems (which should instead be fixed to not use shallow clones). Sorry for
the inconvenience!
Warning: libxrender 0.9.10 is already installed and up-to-date.
To reinstall 0.9.10, run:
brew reinstall libxrender

AltaideMacBook-Pro:b altai$
`

link error....

@etorth
Copy link
Owner

etorth commented Oct 31, 2022

was able to build with vs but later the coroutine support breaks it.

@etorth
Copy link
Owner

etorth commented Oct 31, 2022

I may consider rollback fltk to 1.3.x, I previously tried 1.4.0.

@shadowbanewuha
Copy link
Author

Where is. wil. wix files

@etorth
Copy link
Owner

etorth commented Nov 10, 2022

if just to run game, you don't need it.

If you are gonna run tools, you can find it here: https://github.com/etorth/CBWCQ3.git

@shadowbanewuha
Copy link
Author

The execution time of these sh files, such as monsterwil2png.sh, monstergen.sh......
at compile time or install time or run time ?

@etorth
Copy link
Owner

etorth commented Nov 11, 2022

You don't need to run it, it's used to generate gfx files for runtime.
All the generated file are already included when you clone the repo.

@shadowbanewuha
Copy link
Author

  {
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_progUseDB,    "root/texture/progUseDB"   ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_itemDB,       "root/texture/itemDB"      ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_mapDB,        "root/texture/mapDB"       ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_fontexDB,     "root/font/fontexDB"       ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_heroDB,       "root/texture/heroDB"      ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_hairDB,       "root/texture/hairDB"      ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_monsterDB,    "root/texture/monsterDB"   ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_weaponDB,     "root/texture/weaponDB"    ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_helmetDB,     "root/texture/helmetDB"    ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_magicDB,      "root/texture/magicDB"     ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_equipDB,      "root/texture/equipDB"     ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_standNPCDB,   "root/texture/standNPCDB"  ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_selectCharDB, "root/texture/selectCharDB"); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_mapBinDB,     "root/map/mapBinDB"        ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_emojiDB,      "root/emoji/emojiDB"       ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_bgmDB,        "root/sound/bgmDB"         ); }},
      {1, [this](size_t weight){ loadDB(weight, g_xmlConf, g_seffDB,       "root/sound/seffDB"        ); }},
  }

root/texture/***DB, root/map/mapBinDB, root/emoji/emojiDB,root/sound/bgmDB,root/sound/seffDB
Where are these documents

@etorth
Copy link
Owner

etorth commented Nov 16, 2022

Are u seeing loading failure for these files?

@shadowbanewuha
Copy link
Author

Yes. Can I generate these files myself,use these monsterwil2png.sh、magicwil2png.sh .......

@etorth
Copy link
Owner

etorth commented Nov 17, 2022

You don't need to generate them by yourself, if you see issue loading it, means you didn't install git-lfs.
git-lfs should pull all these files automatically.

@shadowbanewuha
Copy link
Author

I installed git lfs, but these pulled files are texture\monster. zsdb, texture\magic. zsdb....

@shadowbanewuha
Copy link
Author

I found that zsdbmaker can decode these files and get png pictures

@shadowbanewuha
Copy link
Author

Oh, I see. The configuration.xml records the relationship between them

@shadowbanewuha
Copy link
Author

shadowbanewuha commented Nov 21, 2022

I have compiled and run the monoserver now, but how can the client establish a link with it?

@etorth
Copy link
Owner

etorth commented Nov 21, 2022

I have compiled and run the monoserver now, but how can the client establish a link with it?

You should be able to run with default setup to connect to the server.
If not, what kind of error you have seen?

@shadowbanewuha
Copy link
Author

load map failed; ID = 24, Name = 道馆_1

@shadowbanewuha
Copy link
Author

MapBinDB::loadResource(24); --> Mir2xMapData .w=600, .h=0, .blockList.size=600 ; Why is this value 0

@etorth
Copy link
Owner

etorth commented Nov 23, 2022

I feel something is wrong for your mapdb.zsdb

@shadowbanewuha
Copy link
Author

Seems to be the problem here
cerealf.hpp
T t; { cereal::PortableBinaryInputArchive ar(ss); ar(t); }

@shadowbanewuha
Copy link
Author

.w and .h use int64_t instead of size_t , now it can work normally.
But there was a runtime error :
ServerMap::ServerMapLuaModule::resumeLoop() ----- throw fflerror("ServerMap coroutine is not callable");

Is this because I use VS2019 to build?

@etorth
Copy link
Owner

etorth commented Nov 24, 2022

Likely something wrong when serverMap executes the lua scripts.
Lua scripts are used to generate monsters, the lua coroutine get polled to advance.

Please check your log file see what's the error.

@shadowbanewuha
Copy link
Author

Is this because VS2019 does not support coroutine?

@etorth
Copy link
Owner

etorth commented Nov 25, 2022

Is this because VS2019 does not support coroutine?

This is not C++ coroutine, it's lua coroutine.
If you can pass the compilation, likely you already have C++ coroutine support.

But lua coroutine looks ran into issue.
As said, did you check the log?

@shadowbanewuha
Copy link
Author

The log does have a problem. It indicates that the lua file cannot be found, although the lua file path is correct.
I think it may be the problem of utf8 coding or gbk coding.

Since VS supports coroutine, I will continue to built it on VS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants