Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Jakieś tam pliki stare przeportowane na linux 64bit + cmake.


Rekomendowane odpowiedzi

Opublikowano (edytowane)

Bierta i pijta z tego wszyscy.

Pliki oparte o martysama, które przeportowałem na linux 64bit i cmake. To znaczy, że kompilują się i uruchamiają natywnie w 64bit i działają na linux np ubuntu. Robię porządki na dysku może komuś się przyda. Jak chcesz odpalić sobie na ubuntu a nie na freebsd serwer to proszę można się wzorować. Pliki mają z 5 lat więc poza portem na linuxa nic ciekawego. Nie warto kompilować tego nawet bo tam ostro pozmieniane a klienta już nie mam. 

https://mega.nz/file/0UgSQRKI#9hJYGU67NgKbBAhh7MjQKNGKpyDb2XrsaP_WQzw9uX0
https://www.virustotal.com/gui/file-analysis/NzVjODg3ZTU4OWFhMDdjZDIwNTA0ZDQxYjUyODdjMmY6MTc2NTA3MTAzNg==

 

 

Cytat

root@metin2:/home/mt2/game# file game 
game: ELF 64-bit LSB pie executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=0bc08e5abdf006177bad5881c8370825ba367ff0, for GNU/Linux 3.2.0, not stripped




apt install -y screen python cmake gcc g++ gdb make libboost-all-dev libmysqlclient-dev libcrypto++-dev liblzo2-dev libdevil-dev mysql-server
cmake i make 

Edytowane przez PleSX
Opublikowano (edytowane)

Nie ma wirusów... Tak jak pisałem, do wzorowania się, gdyby ktoś chciał portować na 64bit / linux. Jako całość te pliki są bezużyteczne.  

z portu na linux plików to warto zacząć od libthecore/fdwatch.cpp / .h tam się zaczyna implementacja epoll

 

Spoiler

root@metin2:/home/mt2# uname -a
Linux metin2 6.14.11-4-pve #1 SMP PREEMPT_DYNAMIC PMX 6.14.11-4 (2025-10-10T08:04Z) x86_64 x86_64 x86_64 GNU/Linux
root@metin2:/home/mt2# cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=25.04
DISTRIB_CODENAME=plucky
DISTRIB_DESCRIPTION="Ubuntu 25.04"
root@metin2:/home/mt2# cmake .
-- Configuring done (0.0s)
-- Generating done (0.1s)
-- Build files have been written to: /home/mt2
root@metin2:/home/mt2# make -j 28
[  2%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/des.cpp.o
[  2%] Building CXX object libgame/CMakeFiles/libgame.dir/src/targa.cpp.o
[  4%] Building CXX object libpoly/CMakeFiles/libpoly.dir/src/SymTable.cpp.o
[  5%] Building CXX object libsql/CMakeFiles/libsql.dir/src/MySemaphore.cpp.o
[  5%] Building CXX object libpoly/CMakeFiles/libpoly.dir/src/Base.cpp.o
[  5%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/fdwatch.cpp.o
[  5%] Building CXX object libgame/CMakeFiles/libgame.dir/src/attribute.cpp.o
[  5%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/kstbl.cpp.o
[  5%] Building CXX object libgame/CMakeFiles/libgame.dir/src/grid.cpp.o
[  5%] Building CXX object libsql/CMakeFiles/libsql.dir/src/AsyncSQL.cpp.o
[  5%] Building CXX object libpoly/CMakeFiles/libpoly.dir/src/Poly.cpp.o
[  6%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/main.cpp.o
[  8%] Building CXX object libsql/CMakeFiles/libsql.dir/src/Tellwait.cpp.o
[  8%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/signal.cpp.o
[  8%] Building CXX object libsql/CMakeFiles/libsql.dir/src/Statement.cpp.o
[  8%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/heart.cpp.o
[  8%] Building CXX object libpoly/CMakeFiles/libpoly.dir/src/Symbol.cpp.o
[  8%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/gost.cpp.o
[  8%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/buffer.cpp.o
[  9%] Building C object liblua/CMakeFiles/liblua.dir/src/lbaselib.c.o
[  9%] Building C object liblua/CMakeFiles/liblua.dir/src/lauxlib.c.o
[  9%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/hangul.cpp.o
[ 10%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/gost_old.cpp.o
[ 10%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/memcpy.cpp.o
[ 11%] Building C object liblua/CMakeFiles/liblua.dir/src/liolib.c.o
[ 11%] Building C object liblua/CMakeFiles/liblua.dir/src/ldblib.c.o
[ 11%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/log.cpp.o
[ 11%] Building C object liblua/CMakeFiles/liblua.dir/src/lmathlib.c.o
[ 12%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/tea.cpp.o
[ 12%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/socket.cpp.o
[ 12%] Building C object liblua/CMakeFiles/liblua.dir/src/loadlib.c.o
[ 13%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/utils.cpp.o
[ 13%] Building CXX object libthecore/CMakeFiles/libthecore.dir/src/xmd5.cpp.o
[ 13%] Building C object liblua/CMakeFiles/liblua.dir/src/ltablib.c.o
[ 14%] Building C object liblua/CMakeFiles/liblua.dir/src/lstrlib.c.o
[ 14%] Building C object liblua/CMakeFiles/liblua.dir/src/lua.c.o
[ 15%] Building C object liblua/CMakeFiles/liblua.dir/src/luac.c.o
[ 15%] Building C object liblua/CMakeFiles/liblua.dir/src/print.c.o
[ 16%] Building C object liblua/CMakeFiles/liblua.dir/src/lapi.c.o
[ 16%] Building C object liblua/CMakeFiles/liblua.dir/src/lcode.c.o
[ 16%] Building C object liblua/CMakeFiles/liblua.dir/src/ldebug.c.o
[ 17%] Building C object liblua/CMakeFiles/liblua.dir/src/ldo.c.o
[ 17%] Building C object liblua/CMakeFiles/liblua.dir/src/ldump.c.o
[ 17%] Building C object liblua/CMakeFiles/liblua.dir/src/lfunc.c.o
[ 18%] Building C object liblua/CMakeFiles/liblua.dir/src/lgc.c.o
[ 18%] Building C object liblua/CMakeFiles/liblua.dir/src/llex.c.o
[ 18%] Building C object liblua/CMakeFiles/liblua.dir/src/lobject.c.o
[ 19%] Building C object liblua/CMakeFiles/liblua.dir/src/lmem.c.o
[ 19%] Building C object liblua/CMakeFiles/liblua.dir/src/lopcodes.c.o
/home/mt2/liblua/src/llex.c: In function 'read_string':
/home/mt2/liblua/src/llex.c:285:7: warning: case label value is less than minimum value for type [-Wswitch-outside-range]
  285 |       case EOZ:
      |       ^~~~
[ 20%] Building C object liblua/CMakeFiles/liblua.dir/src/lparser.c.o
[ 20%] Building C object liblua/CMakeFiles/liblua.dir/src/lstate.c.o
[ 20%] Building C object liblua/CMakeFiles/liblua.dir/src/lstring.c.o
[ 21%] Building C object liblua/CMakeFiles/liblua.dir/src/ltable.c.o
In file included from /home/mt2/liblua/src/ltable.c:36:
/home/mt2/liblua/src/ltable.c: In function 'luaH_mainposition':
/home/mt2/liblua/src/llimits.h:72:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   72 | #define IntPoint(p)  ((lu_hash)(p))
      |                       ^
/home/mt2/liblua/src/ltable.h:13:37: note: in definition of macro 'gnode'
   13 | #define gnode(t,i)      (&(t)->node[i])
      |                                     ^
/home/mt2/liblua/src/ltable.c:71:33: note: in expansion of macro 'hashmod'
   71 | #define hashpointer(t,p)        hashmod(t, IntPoint(p))
      |                                 ^~~~~~~
/home/mt2/liblua/src/ltable.c:71:44: note: in expansion of macro 'IntPoint'
   71 | #define hashpointer(t,p)        hashmod(t, IntPoint(p))
      |                                            ^~~~~~~~
/home/mt2/liblua/src/ltable.c:108:14: note: in expansion of macro 'hashpointer'
  108 |       return hashpointer(t, pvalue(key));
      |              ^~~~~~~~~~~
/home/mt2/liblua/src/llimits.h:72:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   72 | #define IntPoint(p)  ((lu_hash)(p))
      |                       ^
/home/mt2/liblua/src/ltable.h:13:37: note: in definition of macro 'gnode'
   13 | #define gnode(t,i)      (&(t)->node[i])
      |                                     ^
/home/mt2/liblua/src/ltable.c:71:33: note: in expansion of macro 'hashmod'
   71 | #define hashpointer(t,p)        hashmod(t, IntPoint(p))
      |                                 ^~~~~~~
/home/mt2/liblua/src/ltable.c:71:44: note: in expansion of macro 'IntPoint'
   71 | #define hashpointer(t,p)        hashmod(t, IntPoint(p))
      |                                            ^~~~~~~~
/home/mt2/liblua/src/ltable.c:110:14: note: in expansion of macro 'hashpointer'
  110 |       return hashpointer(t, gcvalue(key));
      |              ^~~~~~~~~~~
[ 21%] Building C object liblua/CMakeFiles/liblua.dir/src/ltests.c.o
[ 22%] Building C object liblua/CMakeFiles/liblua.dir/src/ltm.c.o
[ 22%] Building C object liblua/CMakeFiles/liblua.dir/src/lundump.c.o
[ 23%] Building C object liblua/CMakeFiles/liblua.dir/src/lzio.c.o
[ 23%] Building C object liblua/CMakeFiles/liblua.dir/src/lvm.c.o
/home/mt2/libthecore/src/main.cpp: In function 'void thecore_tick()':
/home/mt2/libthecore/src/main.cpp:91:5: warning: '++' expression of 'volatile'-qualified type is deprecated [-Wvolatile]
   91 |     tics++;
      |     ^~~~
/home/mt2/libthecore/src/log.cpp: In function 'void sys_log(unsigned int, const char*, ...)':
/home/mt2/libthecore/src/log.cpp:141:35: warning: format not a string literal and no format arguments [-Wformat-security]
  141 |         fprintf(log_file_sys->fp, sys_log_header_string);
      |                                   ^~~~~~~~~~~~~~~~~~~~~
/home/mt2/libthecore/src/log.cpp:155:25: warning: format not a string literal and no format arguments [-Wformat-security]
  155 |         fprintf(stdout, sys_log_header_string);
      |                         ^~~~~~~~~~~~~~~~~~~~~
[ 23%] Linking C static library libliblua.a
[ 23%] Built target liblua
[ 24%] Building CXX object quest/CMakeFiles/quest.dir/src/crc32.cpp.o
[ 24%] Building CXX object quest/CMakeFiles/quest.dir/src/qc.cpp.o
[ 24%] Linking CXX static library liblibthecore.a
[ 24%] Built target libthecore
[ 24%] Linking CXX static library liblibgame.a
[ 24%] Linking CXX static library liblibsql.a
[ 24%] Built target libgame
[ 24%] Built target libsql
[ 24%] Linking CXX static library liblibpoly.a
[ 24%] Built target libpoly
[ 24%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerPlayer.cpp.o
[ 24%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerHorseName.cpp.o
[ 24%] Building CXX object db/CMakeFiles/db.dir/src/BlockCountry.cpp.o
[ 24%] Building CXX object db/CMakeFiles/db.dir/src/grid.cpp.o
[ 25%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerEventFlag.cpp.o
[ 25%] Building CXX object db/CMakeFiles/db.dir/src/Cache.cpp.o
[ 25%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerGuild.cpp.o
[ 25%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerParty.cpp.o
[ 27%] Building CXX object db/CMakeFiles/db.dir/src/ItemIDRangeManager.cpp.o
[ 27%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerLogin.cpp.o
[ 27%] Building CXX object db/CMakeFiles/db.dir/src/ClientManager.cpp.o
[ 27%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerBoot.cpp.o
[ 28%] Building CXX object db/CMakeFiles/db.dir/src/ItemAwardManager.cpp.o
[ 29%] Building CXX object db/CMakeFiles/db.dir/src/Main.cpp.o
[ 31%] Building CXX object db/CMakeFiles/db.dir/src/Marriage.cpp.o
[ 31%] Building CXX object db/CMakeFiles/db.dir/src/MoneyLog.cpp.o
[ 31%] Building CXX object db/CMakeFiles/db.dir/src/GuildManager.cpp.o
[ 32%] Building CXX object db/CMakeFiles/db.dir/src/Config.cpp.o
[ 32%] Building CXX object db/CMakeFiles/db.dir/src/DBManager.cpp.o
[ 32%] Building CXX object db/CMakeFiles/db.dir/src/Monarch.cpp.o
[ 32%] Building CXX object db/CMakeFiles/db.dir/src/HB.cpp.o
[ 33%] Building CXX object db/CMakeFiles/db.dir/src/Peer.cpp.o
[ 33%] Building CXX object db/CMakeFiles/db.dir/src/NetBase.cpp.o
[ 33%] Building CXX object db/CMakeFiles/db.dir/src/LoginData.cpp.o
[ 33%] Building CXX object db/CMakeFiles/db.dir/src/PeerBase.cpp.o
[ 33%] Building CXX object db/CMakeFiles/db.dir/src/PrivManager.cpp.o
[ 33%] Building CXX object game/CMakeFiles/game.dir/src/affect.cpp.o
[ 34%] Building CXX object db/CMakeFiles/db.dir/src/ClientManagerOfflineshop.cpp.o
[ 34%] Building CXX object db/CMakeFiles/db.dir/src/OfflineshopCache.cpp.o
[ 34%] Building CXX object db/CMakeFiles/db.dir/src/version.cpp.o
[ 35%] Building CXX object game/CMakeFiles/game.dir/src/ani.cpp.o
[ 35%] Building CXX object game/CMakeFiles/game.dir/src/arena.cpp.o
[ 35%] Building CXX object game/CMakeFiles/game.dir/src/banword.cpp.o
[ 36%] Building CXX object game/CMakeFiles/game.dir/src/battle.cpp.o
[ 36%] Building CXX object game/CMakeFiles/game.dir/src/battle_arena.cpp.o
[ 37%] Building CXX object game/CMakeFiles/game.dir/src/blend_item.cpp.o
[ 37%] Building CXX object game/CMakeFiles/game.dir/src/block_country.cpp.o
[ 38%] Linking CXX executable quest
[ 38%] Built target quest
[ 38%] Building CXX object game/CMakeFiles/game.dir/src/blue_dragon.cpp.o
[ 39%] Building CXX object game/CMakeFiles/game.dir/src/blue_dragon_binder.cpp.o
[ 39%] Building CXX object game/CMakeFiles/game.dir/src/buff_on_attributes.cpp.o
[ 39%] Building CXX object game/CMakeFiles/game.dir/src/buffer_manager.cpp.o
[ 40%] Building CXX object game/CMakeFiles/game.dir/src/building.cpp.o
[ 40%] Building CXX object game/CMakeFiles/game.dir/src/char.cpp.o
[ 41%] Building CXX object game/CMakeFiles/game.dir/src/char_affect.cpp.o
[ 41%] Building CXX object game/CMakeFiles/game.dir/src/char_battle.cpp.o
[ 41%] Building CXX object game/CMakeFiles/game.dir/src/char_cards.cpp.o
[ 42%] Building CXX object game/CMakeFiles/game.dir/src/char_change_empire.cpp.o
[ 42%] Building CXX object game/CMakeFiles/game.dir/src/char_dragonsoul.cpp.o
[ 42%] Building CXX object game/CMakeFiles/game.dir/src/char_horse.cpp.o
[ 43%] Building CXX object game/CMakeFiles/game.dir/src/char_item.cpp.o
[ 43%] Building CXX object game/CMakeFiles/game.dir/src/char_manager.cpp.o
[ 44%] Building CXX object game/CMakeFiles/game.dir/src/char_quickslot.cpp.o
[ 44%] Building CXX object game/CMakeFiles/game.dir/src/char_resist.cpp.o
[ 44%] Building CXX object game/CMakeFiles/game.dir/src/char_skill.cpp.o
[ 45%] Building CXX object game/CMakeFiles/game.dir/src/char_state.cpp.o
[ 45%] Building CXX object game/CMakeFiles/game.dir/src/client_package_crypt_info.cpp.o
[ 45%] Building CXX object game/CMakeFiles/game.dir/src/cmd.cpp.o
[ 46%] Building CXX object game/CMakeFiles/game.dir/src/cmd_emotion.cpp.o
[ 46%] Building CXX object game/CMakeFiles/game.dir/src/cmd_general.cpp.o
[ 47%] Building CXX object game/CMakeFiles/game.dir/src/cmd_gm.cpp.o
[ 47%] Building CXX object game/CMakeFiles/game.dir/src/cmd_oxevent.cpp.o
[ 47%] Building CXX object game/CMakeFiles/game.dir/src/config.cpp.o
[ 48%] Building CXX object game/CMakeFiles/game.dir/src/constants.cpp.o
[ 48%] Building CXX object game/CMakeFiles/game.dir/src/crc32.cpp.o
[ 49%] Building CXX object game/CMakeFiles/game.dir/src/db.cpp.o
[ 49%] Building CXX object game/CMakeFiles/game.dir/src/desc.cpp.o
[ 49%] Building CXX object game/CMakeFiles/game.dir/src/desc_client.cpp.o
[ 50%] Building CXX object game/CMakeFiles/game.dir/src/desc_manager.cpp.o
[ 50%] Building CXX object game/CMakeFiles/game.dir/src/desc_p2p.cpp.o
[ 50%] Building CXX object game/CMakeFiles/game.dir/src/dev_log.cpp.o
[ 51%] Building CXX object game/CMakeFiles/game.dir/src/dragon_soul_table.cpp.o
[ 51%] Building CXX object game/CMakeFiles/game.dir/src/dragon_lair.cpp.o
[ 52%] Building CXX object game/CMakeFiles/game.dir/src/dragon_soul.cpp.o
[ 52%] Building CXX object game/CMakeFiles/game.dir/src/dungeon.cpp.o
[ 52%] Building CXX object game/CMakeFiles/game.dir/src/empire_text_convert.cpp.o
/home/mt2/game/src/char_manager.cpp: In member function 'void CHARACTER_MANAGER::Update(int)':
/home/mt2/game/src/char_manager.cpp:608:61: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CHARACTER; _Arg = unsigned int]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  608 |                 for_each(v.begin(), v.end(), bind2nd(mem_fun(&CHARACTER::UpdateCharacter), iPulse));
      |                                                      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/string:49,
                 from /home/mt2/game/src/../../libthecore/src/log.h:4,
                 from /home/mt2/game/src/../../libthecore/src/stdafx.h:35,
                 from /home/mt2/game/src/stdafx.h:15,
                 from /home/mt2/game/src/char_manager.cpp:1:
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/char_manager.cpp:608:53: warning: 'std::binder2nd<_Operation> std::bind2nd(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CHARACTER, unsigned int>; _Tp = int]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  608 |                 for_each(v.begin(), v.end(), bind2nd(mem_fun(&CHARACTER::UpdateCharacter), iPulse));
      |                                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_function.h:1435:
/usr/include/c++/14/backward/binders.h:172:5: note: declared here
  172 |     bind2nd(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/char_manager.cpp:621:57: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CHARACTER; _Arg = unsigned int]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  621 |             for_each(v.begin(), v.end(), bind2nd(mem_fun(&CHARACTER::UpdateStateMachine), iPulse));
      |                                                  ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/char_manager.cpp:621:49: warning: 'std::binder2nd<_Operation> std::bind2nd(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CHARACTER, unsigned int>; _Tp = int]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  621 |             for_each(v.begin(), v.end(), bind2nd(mem_fun(&CHARACTER::UpdateStateMachine), iPulse));
      |                                          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:172:5: note: declared here
  172 |     bind2nd(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/char_manager.cpp:631:37: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CHARACTER; _Arg = unsigned int]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  631 |                      bind2nd(mem_fun(&CHARACTER::UpdateStateMachine), iPulse));
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/char_manager.cpp:631:29: warning: 'std::binder2nd<_Operation> std::bind2nd(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CHARACTER, unsigned int>; _Tp = int]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  631 |                      bind2nd(mem_fun(&CHARACTER::UpdateStateMachine), iPulse));
      |                      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:172:5: note: declared here
  172 |     bind2nd(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
[ 53%] Building CXX object game/CMakeFiles/game.dir/src/entity.cpp.o
[ 53%] Building CXX object game/CMakeFiles/game.dir/src/entity_view.cpp.o
[ 53%] Building CXX object game/CMakeFiles/game.dir/src/event.cpp.o
/home/mt2/game/src/char_battle.cpp: In member function 'void CHARACTER::ItemDropPenalty(LPCHARACTER)':
/home/mt2/game/src/char_battle.cpp:949:27: warning: 'void std::random_shuffle(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<unsigned char*, vector<unsigned char> >]' is deprecated: use 'std::shuffle' instead [-Wdeprecated-declarations]
  949 |             random_shuffle(vec_bSlots.begin(), vec_bSlots.end());
      |             ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/algorithm:61,
                 from /home/mt2/game/src/stdafx.h:21,
                 from /home/mt2/game/src/char_battle.cpp:1:
/usr/include/c++/14/bits/stl_algo.h:4492:5: note: declared here
 4492 |     random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last)
      |     ^~~~~~~~~~~~~~
[ 54%] Building CXX object game/CMakeFiles/game.dir/src/event_queue.cpp.o
/home/mt2/game/src/char_battle.cpp:978:27: warning: 'void std::random_shuffle(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<unsigned char*, vector<unsigned char> >]' is deprecated: use 'std::shuffle' instead [-Wdeprecated-declarations]
  978 |             random_shuffle(vec_bSlots.begin(), vec_bSlots.end());
      |             ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_algo.h:4492:5: note: declared here
 4492 |     random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last)
      |     ^~~~~~~~~~~~~~
/home/mt2/game/src/char.cpp: In member function 'void CHARACTER::SystemWhisper(const char*, const char*)':
/home/mt2/game/src/char.cpp:3898:13: warning: format not a string literal and no format arguments [-Wformat-security]
 3898 |     snprintf(msg, sizeof(msg), format);
      |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/mt2/game/src/char.cpp:3899:13: warning: format not a string literal and no format arguments [-Wformat-security]
 3899 |     snprintf(from, sizeof(from), name);
      |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
[ 55%] Linking CXX executable db
/home/mt2/game/src/char_item.cpp: In member function 'CItem* CHARACTER::GetWear(BYTE) const':
/home/mt2/game/src/char_item.cpp:502:58: warning: arithmetic between different enumeration types 'EDragonSoulDeckType' and 'EDragonSoulSubType' is deprecated [-Wdeprecated-enum-enum-conversion]
  502 |     if (bCell >= WEAR_MAX_NUM + DRAGON_SOUL_DECK_MAX_NUM * DS_SLOT_MAX) {
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/mt2/game/src/char_item.cpp: In member function 'void CHARACTER::SetWear(BYTE, LPITEM)':
/home/mt2/game/src/char_item.cpp:512:58: warning: arithmetic between different enumeration types 'EDragonSoulDeckType' and 'EDragonSoulSubType' is deprecated [-Wdeprecated-enum-enum-conversion]
  512 |     if (bCell >= WEAR_MAX_NUM + DRAGON_SOUL_DECK_MAX_NUM * DS_SLOT_MAX) {
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
[ 55%] Building CXX object game/CMakeFiles/game.dir/src/exchange.cpp.o
[ 56%] Building CXX object game/CMakeFiles/game.dir/src/file_loader.cpp.o
[ 56%] Building CXX object game/CMakeFiles/game.dir/src/fishing.cpp.o
[ 56%] Building CXX object game/CMakeFiles/game.dir/src/FSM.cpp.o
[ 57%] Building CXX object game/CMakeFiles/game.dir/src/goto_loader.cpp.o
[ 57%] Building CXX object game/CMakeFiles/game.dir/src/gm.cpp.o
[ 57%] Built target db
[ 57%] Building CXX object game/CMakeFiles/game.dir/src/group_text_parse_tree.cpp.o
[ 58%] Building CXX object game/CMakeFiles/game.dir/src/guild.cpp.o
[ 58%] Building CXX object game/CMakeFiles/game.dir/src/guild_manager.cpp.o
[ 59%] Building CXX object game/CMakeFiles/game.dir/src/guild_war.cpp.o
[ 59%] Building CXX object game/CMakeFiles/game.dir/src/horse_rider.cpp.o
[ 59%] Building CXX object game/CMakeFiles/game.dir/src/horsename_manager.cpp.o
/home/mt2/game/src/cmd_general.cpp: In lambda function:
/home/mt2/game/src/cmd_general.cpp:2983:5: warning: control reaches end of non-void function [-Wreturn-type]
 2983 |     });
      |     ^
[ 60%] Building CXX object game/CMakeFiles/game.dir/src/input.cpp.o
[ 60%] Building CXX object game/CMakeFiles/game.dir/src/input_auth.cpp.o
[ 60%] Building CXX object game/CMakeFiles/game.dir/src/input_db.cpp.o
[ 61%] Building CXX object game/CMakeFiles/game.dir/src/input_login.cpp.o
/home/mt2/game/src/char.cpp: In member function 'void CHARACTER::ClearTarget()':
/home/mt2/game/src/char.cpp:4906:12: warning: 'void* memcpy(void*, const void*, size_t)' reading 256 bytes from a region of size 1 [-Wstringop-overread]
 4906 |     memcpy (p.dwCostumeHideID, "", sizeof(p.dwCostumeHideID));
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 61%] Building CXX object game/CMakeFiles/game.dir/src/input_main.cpp.o
[ 62%] Building CXX object game/CMakeFiles/game.dir/src/input_p2p.cpp.o
[ 62%] Building CXX object game/CMakeFiles/game.dir/src/ip_ban.cpp.o
[ 62%] Building CXX object game/CMakeFiles/game.dir/src/item.cpp.o
[ 63%] Building CXX object game/CMakeFiles/game.dir/src/item_addon.cpp.o
[ 63%] Building CXX object game/CMakeFiles/game.dir/src/item_attribute.cpp.o
[ 64%] Building CXX object game/CMakeFiles/game.dir/src/item_manager.cpp.o
[ 64%] Building CXX object game/CMakeFiles/game.dir/src/item_manager_idrange.cpp.o
[ 64%] Building CXX object game/CMakeFiles/game.dir/src/item_manager_read_tables.cpp.o
[ 65%] Building CXX object game/CMakeFiles/game.dir/src/locale.cpp.o
[ 65%] Building CXX object game/CMakeFiles/game.dir/src/locale_service.cpp.o
[ 65%] Building CXX object game/CMakeFiles/game.dir/src/log.cpp.o
[ 66%] Building CXX object game/CMakeFiles/game.dir/src/login_data.cpp.o
[ 66%] Building CXX object game/CMakeFiles/game.dir/src/lzo_manager.cpp.o
[ 67%] Building CXX object game/CMakeFiles/game.dir/src/main.cpp.o
/home/mt2/game/src/dragon_soul.cpp: In member function 'void DSManager::RefreshDragonSoulState(LPCHARACTER)':
/home/mt2/game/src/dragon_soul.cpp:973:63: warning: arithmetic between different enumeration types 'EDragonSoulSubType' and 'EDragonSoulDeckType' is deprecated [-Wdeprecated-enum-enum-conversion]
  973 |     for (int i = WEAR_MAX_NUM; i < WEAR_MAX_NUM + DS_SLOT_MAX * DRAGON_SOUL_DECK_MAX_NUM; i++) {
      |                                                   ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
[ 67%] Building CXX object game/CMakeFiles/game.dir/src/map_location.cpp.o
[ 67%] Building CXX object game/CMakeFiles/game.dir/src/mark_convert.cpp.o
[ 68%] Building CXX object game/CMakeFiles/game.dir/src/mark_image.cpp.o
[ 68%] Building CXX object game/CMakeFiles/game.dir/src/mark_manager.cpp.o
[ 69%] Building CXX object game/CMakeFiles/game.dir/src/messenger_manager.cpp.o
[ 69%] Building CXX object game/CMakeFiles/game.dir/src/marriage.cpp.o
/home/mt2/game/src/guild.cpp: In member function 'void CGuild::Load(uint)':
/home/mt2/game/src/guild.cpp:548:62: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CGuild; _Arg = _SQLMsg*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  548 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::LoadGuildData), this),
      |                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/string:49,
                 from /home/mt2/game/src/../../libthecore/src/log.h:4,
                 from /home/mt2/game/src/../../libthecore/src/stdafx.h:35,
                 from /home/mt2/game/src/stdafx.h:15,
                 from /home/mt2/game/src/guild.cpp:1:
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:548:49: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CGuild, _SQLMsg*>; _Tp = CGuild*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  548 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::LoadGuildData), this),
      |                                     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_function.h:1435:
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:554:62: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CGuild; _Arg = _SQLMsg*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  554 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::LoadGuildGradeData), this),
      |                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:554:49: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CGuild, _SQLMsg*>; _Tp = CGuild*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  554 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::LoadGuildGradeData), this),
      |                                     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:558:62: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CGuild; _Arg = _SQLMsg*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  558 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::LoadGuildMemberData), this),
      |                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:558:49: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CGuild, _SQLMsg*>; _Tp = CGuild*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  558 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::LoadGuildMemberData), this),
      |                                     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
[ 69%] Building CXX object game/CMakeFiles/game.dir/src/mining.cpp.o
/home/mt2/game/src/guild.cpp: In member function 'void CGuild::P2PChangeGrade(BYTE)':
/home/mt2/game/src/guild.cpp:676:62: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CGuild; _Arg = _SQLMsg*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  676 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::__P2PUpdateGrade), this),
      |                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:676:49: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CGuild, _SQLMsg*>; _Tp = CGuild*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  676 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::__P2PUpdateGrade), this),
      |                                     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild_manager.cpp:251:36: warning: 'template<class _Arg1, class _Arg2, class _Result> struct std::binary_function' is deprecated [-Wdeprecated-declarations]
  251 | struct FGuildCompare : public std::binary_function<CGuild *, CGuild *, bool> {
      |                                    ^~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/string:49,
                 from /home/mt2/game/src/../../libthecore/src/log.h:4,
                 from /home/mt2/game/src/../../libthecore/src/stdafx.h:35,
                 from /home/mt2/game/src/stdafx.h:15,
                 from /home/mt2/game/src/guild_manager.cpp:1:
/usr/include/c++/14/bits/stl_function.h:131:12: note: declared here
  131 |     struct binary_function
      |            ^~~~~~~~~~~~~~~
/home/mt2/game/src/guild.cpp: In member function 'void CGuild::AddComment(LPCHARACTER, const std::string&)':
/home/mt2/game/src/guild.cpp:923:48: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CGuild; _Arg = unsigned int]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  923 |             void_bind(std::bind1st(std::mem_fun(&CGuild::RefreshCommentForce), this), ch->GetPlayerID()),
      |                                    ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:923:35: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CGuild, unsigned int>; _Tp = CGuild*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  923 |             void_bind(std::bind1st(std::mem_fun(&CGuild::RefreshCommentForce), this), ch->GetPlayerID()),
      |                       ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp: In member function 'void CGuild::SkillLevelUp(uint)':
/home/mt2/game/src/guild.cpp:1111:43: warning: 'std::const_mem_fun1_ref_t<_Ret, _Tp, _Arg> std::mem_fun_ref(_Ret (_Tp::*)(_Arg) const) [with _Ret = void; _Tp = CGuild; _Arg = CHARACTER*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
 1111 |              std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |                           ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1410:5: note: declared here
 1410 |     mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
      |     ^~~~~~~~~~~
/home/mt2/game/src/guild.cpp:1111:26: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = const_mem_fun1_ref_t<void, CGuild, CHARACTER*>; _Tp = CGuild]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
 1111 |              std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |              ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp: In member function 'void CGuild::GuildPointChange(BYTE, int, bool)':
/home/mt2/game/src/guild.cpp:1301:51: warning: 'std::const_mem_fun1_ref_t<_Ret, _Tp, _Arg> std::mem_fun_ref(_Ret (_Tp::*)(_Arg) const) [with _Ret = void; _Tp = CGuild; _Arg = CHARACTER*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
 1301 |                      std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |                                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1410:5: note: declared here
 1410 |     mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
      |     ^~~~~~~~~~~
/home/mt2/game/src/guild.cpp:1301:34: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = const_mem_fun1_ref_t<void, CGuild, CHARACTER*>; _Tp = CGuild]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
 1301 |                      std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |                      ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:1328:59: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CGuild; _Arg = CHARACTER*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
 1328 |                                  std::bind1st(std::mem_fun(&CGuild::SendGuildInfoPacket), this));
      |                                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp:1328:46: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CGuild, CHARACTER*>; _Tp = CGuild*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
 1328 |                                  std::bind1st(std::mem_fun(&CGuild::SendGuildInfoPacket), this));
      |                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp: In member function 'void CGuild::SetSkillLevel(uint, BYTE, BYTE)':
/home/mt2/game/src/guild.cpp:1928:43: warning: 'std::const_mem_fun1_ref_t<_Ret, _Tp, _Arg> std::mem_fun_ref(_Ret (_Tp::*)(_Arg) const) [with _Ret = void; _Tp = CGuild; _Arg = CHARACTER*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
 1928 |              std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |                           ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1410:5: note: declared here
 1410 |     mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
      |     ^~~~~~~~~~~
/home/mt2/game/src/guild.cpp:1928:26: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = const_mem_fun1_ref_t<void, CGuild, CHARACTER*>; _Tp = CGuild]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
 1928 |              std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |              ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild.cpp: In member function 'void CGuild::SetSkillPoint(BYTE)':
/home/mt2/game/src/guild.cpp:1942:43: warning: 'std::const_mem_fun1_ref_t<_Ret, _Tp, _Arg> std::mem_fun_ref(_Ret (_Tp::*)(_Arg) const) [with _Ret = void; _Tp = CGuild; _Arg = CHARACTER*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
 1942 |              std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |                           ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1410:5: note: declared here
 1410 |     mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
      |     ^~~~~~~~~~~
/home/mt2/game/src/guild.cpp:1942:26: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = const_mem_fun1_ref_t<void, CGuild, CHARACTER*>; _Tp = CGuild]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
 1942 |              std::bind1st(std::mem_fun_ref(&CGuild::SendSkillInfoPacket), *this));
      |              ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
/home/mt2/game/src/guild_manager.cpp: In member function 'void CGuildManager::ChangeMaster(uint)':
/home/mt2/game/src/guild_manager.cpp:852:62: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CGuild; _Arg = _SQLMsg*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
  852 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::SendGuildDataUpdateToAllMember), iter->second),
      |                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/guild_manager.cpp:852:49: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CGuild, _SQLMsg*>; _Tp = CGuild*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
  852 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&CGuild::SendGuildDataUpdateToAllMember), iter->second),
      |                                     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_function.h:1435:
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
[ 70%] Building CXX object game/CMakeFiles/game.dir/src/mob_manager.cpp.o
[ 70%] Building CXX object game/CMakeFiles/game.dir/src/monarch.cpp.o
[ 70%] Building CXX object game/CMakeFiles/game.dir/src/motion.cpp.o
[ 71%] Building CXX object game/CMakeFiles/game.dir/src/over9refine.cpp.o
[ 71%] Building CXX object game/CMakeFiles/game.dir/src/ox_event.cpp.o
[ 71%] Building CXX object game/CMakeFiles/game.dir/src/p2p.cpp.o
[ 72%] Building CXX object game/CMakeFiles/game.dir/src/packet_info.cpp.o
[ 72%] Building CXX object game/CMakeFiles/game.dir/src/panama.cpp.o
[ 73%] Building CXX object game/CMakeFiles/game.dir/src/party.cpp.o
[ 73%] Building CXX object game/CMakeFiles/game.dir/src/pet_system.cpp.o
/home/mt2/game/src/item.cpp: In member function 'void CItem::ModifyPoints(bool)':
/home/mt2/game/src/item.cpp:864:50: warning: arithmetic between different enumeration types 'EMisc' and 'EWearPositions' is deprecated [-Wdeprecated-enum-enum-conversion]
  864 |                 if (m_wCell == INVENTORY_MAX_NUM + WEAR_WEAPON)
      |                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/mt2/game/src/item.cpp:867:50: warning: arithmetic between different enumeration types 'EMisc' and 'EWearPositions' is deprecated [-Wdeprecated-enum-enum-conversion]
  867 |                 if (m_wCell == INVENTORY_MAX_NUM + WEAR_WEAPON)
      |                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/mt2/game/src/item.cpp:880:50: warning: arithmetic between different enumeration types 'EMisc' and 'EWearPositions' is deprecated [-Wdeprecated-enum-enum-conversion]
  880 |                 if (m_wCell == INVENTORY_MAX_NUM + WEAR_WEAPON)
      |                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/mt2/game/src/item.cpp:883:50: warning: arithmetic between different enumeration types 'EMisc' and 'EWearPositions' is deprecated [-Wdeprecated-enum-enum-conversion]
  883 |                 if (m_wCell == INVENTORY_MAX_NUM + WEAR_WEAPON)
      |                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/home/mt2/game/src/item.cpp: In member function 'bool CItem::EquipTo(LPCHARACTER, BYTE)':
/home/mt2/game/src/item.cpp:1010:94: warning: arithmetic between different enumeration types 'EDragonSoulDeckType' and 'EDragonSoulSubType' is deprecated [-Wdeprecated-enum-enum-conversion]
 1010 |         if (bWearCell < WEAR_MAX_NUM || bWearCell >= WEAR_MAX_NUM + DRAGON_SOUL_DECK_MAX_NUM * DS_SLOT_MAX) {
      |                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
[ 73%] Building CXX object game/CMakeFiles/game.dir/src/polymorph.cpp.o
/home/mt2/game/src/mark_manager.cpp: In constructor 'CGuildMarkManager::CGuildMarkManager()':
/home/mt2/game/src/mark_manager.cpp:16:42: warning: arithmetic between different enumeration types 'CGuildMarkManager::<unnamed enum>' and 'CGuildMarkImage::<unnamed enum>' is deprecated [-Wdeprecated-enum-enum-conversion]
   16 |     for (uint i = 0; i < MAX_IMAGE_COUNT * CGuildMarkImage::MARK_TOTAL_COUNT; ++i)
      |                          ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/mt2/game/src/mark_manager.cpp: In member function 'void CGuildMarkManager::LoadMarkImages()':
/home/mt2/game/src/mark_manager.cpp:92:38: warning: arithmetic between different enumeration types 'CGuildMarkManager::<unnamed enum>' and 'CGuildMarkImage::<unnamed enum>' is deprecated [-Wdeprecated-enum-enum-conversion]
   92 |         if (markID < MAX_IMAGE_COUNT * CGuildMarkImage::MARK_TOTAL_COUNT)
      |                      ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/mt2/game/src/mark_manager.cpp: In member function 'bool CGuildMarkManager::AddMarkIDByGuildID(uint, uint)':
/home/mt2/game/src/mark_manager.cpp:132:35: warning: arithmetic between different enumeration types 'CGuildMarkManager::<unnamed enum>' and 'CGuildMarkImage::<unnamed enum>' is deprecated [-Wdeprecated-enum-enum-conversion]
  132 |     if (markID >= MAX_IMAGE_COUNT * CGuildMarkImage::MARK_TOTAL_COUNT)
      |                   ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 74%] Building CXX object game/CMakeFiles/game.dir/src/priv_manager.cpp.o
[ 74%] Building CXX object game/CMakeFiles/game.dir/src/pvp.cpp.o
/home/mt2/game/src/input_db.cpp: In member function 'void CInputDB::ReloadProto(const char*)':
/home/mt2/game/src/input_db.cpp:1451:59: warning: 'std::mem_fun_t<_Ret, _Tp> std::mem_fun(_Ret (_Tp::*)()) [with _Ret = void; _Tp = CHARACTER]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
 1451 |     CHARACTER_MANAGER::instance().for_each_pc(std::mem_fun(&CHARACTER::ComputePoints));
      |                                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/string:49,
                 from /home/mt2/game/src/../../libthecore/src/log.h:4,
                 from /home/mt2/game/src/../../libthecore/src/stdafx.h:35,
                 from /home/mt2/game/src/stdafx.h:15,
                 from /home/mt2/game/src/input_db.cpp:1:
/usr/include/c++/14/bits/stl_function.h:1368:5: note: declared here
 1368 |     mem_fun(_Ret (_Tp::*__f)())
      |     ^~~~~~~
[ 75%] Building CXX object game/CMakeFiles/game.dir/src/premium_system.cpp.o
[ 75%] Building CXX object game/CMakeFiles/game.dir/src/questevent.cpp.o
[ 75%] Building CXX object game/CMakeFiles/game.dir/src/questlua.cpp.o
/home/mt2/game/src/item_manager_read_tables.cpp: In member function 'bool ITEM_MANAGER::ConvSpecialDropItemFile()':
/home/mt2/game/src/item_manager_read_tables.cpp:95:43: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=]
   95 |             snprintf(buf, sizeof(buf), "%d", k);
      |                                           ^
/home/mt2/game/src/item_manager_read_tables.cpp:95:21: note: 'snprintf' output between 2 and 5 bytes into a destination of size 4
   95 |             snprintf(buf, sizeof(buf), "%d", k);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 76%] Building CXX object game/CMakeFiles/game.dir/src/questlua_affect.cpp.o
[ 76%] Building CXX object game/CMakeFiles/game.dir/src/questlua_arena.cpp.o
[ 76%] Building CXX object game/CMakeFiles/game.dir/src/questlua_ba.cpp.o
[ 77%] Building CXX object game/CMakeFiles/game.dir/src/questlua_building.cpp.o
[ 77%] Building CXX object game/CMakeFiles/game.dir/src/questlua_danceevent.cpp.o
[ 78%] Building CXX object game/CMakeFiles/game.dir/src/questlua_dragonlair.cpp.o
[ 78%] Building CXX object game/CMakeFiles/game.dir/src/questlua_dragonsoul.cpp.o
/home/mt2/game/src/messenger_manager.cpp: In member function 'void MessengerManager::Login(keyA)':
/home/mt2/game/src/messenger_manager.cpp:50:62: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = MessengerManager; _Arg = _SQLMsg*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
   50 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&MessengerManager::LoadList), this),
      |                                                  ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/string:49,
                 from /home/mt2/game/src/../../libthecore/src/log.h:4,
                 from /home/mt2/game/src/../../libthecore/src/stdafx.h:35,
                 from /home/mt2/game/src/stdafx.h:15,
                 from /home/mt2/game/src/messenger_manager.cpp:1:
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/messenger_manager.cpp:50:49: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, MessengerManager, _SQLMsg*>; _Tp = MessengerManager*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
   50 |     DBManager::instance().FuncQuery(std::bind1st(std::mem_fun(&MessengerManager::LoadList), this),
      |                                     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_function.h:1435:
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
[ 78%] Building CXX object game/CMakeFiles/game.dir/src/questlua_dungeon.cpp.o
/home/mt2/game/src/mob_manager.cpp: In member function 'bool CMobManager::Initialize(TMobTable*, int)':
/home/mt2/game/src/mob_manager.cpp:85:72: warning: 'std::mem_fun1_t<_Ret, _Tp, _Arg> std::mem_fun(_Ret (_Tp::*)(_Arg)) [with _Ret = void; _Tp = CMobManager; _Arg = CHARACTER*]' is deprecated: use 'std::mem_fn' instead [-Wdeprecated-declarations]
   85 |     CHARACTER_MANAGER::instance().for_each_pc(std::bind1st(std::mem_fun(&CMobManager::RebindMobProto), this));
      |                                                            ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/string:49,
                 from /home/mt2/game/src/../../libthecore/src/log.h:4,
                 from /home/mt2/game/src/../../libthecore/src/stdafx.h:35,
                 from /home/mt2/game/src/stdafx.h:15,
                 from /home/mt2/game/src/mob_manager.cpp:1:
/usr/include/c++/14/bits/stl_function.h:1392:5: note: declared here
 1392 |     mem_fun(_Ret (_Tp::*__f)(_Arg))
      |     ^~~~~~~
/home/mt2/game/src/mob_manager.cpp:85:59: warning: 'std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = mem_fun1_t<void, CMobManager, CHARACTER*>; _Tp = CMobManager*]' is deprecated: use 'std::bind' instead [-Wdeprecated-declarations]
   85 |     CHARACTER_MANAGER::instance().for_each_pc(std::bind1st(std::mem_fun(&CMobManager::RebindMobProto), this));
      |                                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/bits/stl_function.h:1435:
/usr/include/c++/14/backward/binders.h:136:5: note: declared here
  136 |     bind1st(const _Operation& __fn, const _Tp& __x)
      |     ^~~~~~~
[ 79%] Building CXX object game/CMakeFiles/game.dir/src/questlua_forked.cpp.o
[ 79%] Building CXX object game/CMakeFiles/game.dir/src/questlua_game.cpp.o
[ 79%] Building CXX object game/CMakeFiles/game.dir/src/questlua_global.cpp.o
[ 80%] Building CXX object game/CMakeFiles/game.dir/src/questlua_guild.cpp.o
[ 80%] Building CXX object game/CMakeFiles/game.dir/src/questlua_horse.cpp.o
[ 81%] Building CXX object game/CMakeFiles/game.dir/src/questlua_item.cpp.o
[ 81%] Building CXX object game/CMakeFiles/game.dir/src/questlua_marriage.cpp.o
[ 81%] Building CXX object game/CMakeFiles/game.dir/src/questlua_mgmt.cpp.o
[ 82%] Building CXX object game/CMakeFiles/game.dir/src/questlua_monarch.cpp.o
[ 82%] Building CXX object game/CMakeFiles/game.dir/src/questlua_npc.cpp.o
[ 82%] Building CXX object game/CMakeFiles/game.dir/src/questlua_oxevent.cpp.o
[ 83%] Building CXX object game/CMakeFiles/game.dir/src/questlua_party.cpp.o
[ 83%] Building CXX object game/CMakeFiles/game.dir/src/questlua_pc.cpp.o
[ 84%] Building CXX object game/CMakeFiles/game.dir/src/questlua_pet.cpp.o
[ 84%] Building CXX object game/CMakeFiles/game.dir/src/questlua_quest.cpp.o
[ 84%] Building CXX object game/CMakeFiles/game.dir/src/questlua_speedserver.cpp.o
[ 85%] Building CXX object game/CMakeFiles/game.dir/src/questlua_target.cpp.o
[ 85%] Building CXX object game/CMakeFiles/game.dir/src/questmanager.cpp.o
[ 85%] Building CXX object game/CMakeFiles/game.dir/src/questnpc.cpp.o
[ 86%] Building CXX object game/CMakeFiles/game.dir/src/questpc.cpp.o
[ 86%] Building CXX object game/CMakeFiles/game.dir/src/refine.cpp.o
[ 87%] Building CXX object game/CMakeFiles/game.dir/src/regen.cpp.o
[ 87%] Building CXX object game/CMakeFiles/game.dir/src/safebox.cpp.o
[ 87%] Building CXX object game/CMakeFiles/game.dir/src/sectree.cpp.o
[ 88%] Building CXX object game/CMakeFiles/game.dir/src/sectree_manager.cpp.o
[ 88%] Building CXX object game/CMakeFiles/game.dir/src/sequence.cpp.o
[ 89%] Building CXX object game/CMakeFiles/game.dir/src/shop.cpp.o
[ 89%] Building CXX object game/CMakeFiles/game.dir/src/shop_manager.cpp.o
[ 89%] Building CXX object game/CMakeFiles/game.dir/src/shopEx.cpp.o
[ 90%] Building CXX object game/CMakeFiles/game.dir/src/shutdown_manager.cpp.o
[ 90%] Building CXX object game/CMakeFiles/game.dir/src/skill.cpp.o
[ 90%] Building CXX object game/CMakeFiles/game.dir/src/skill_power.cpp.o
[ 91%] Building CXX object game/CMakeFiles/game.dir/src/speed_server.cpp.o
[ 91%] Building CXX object game/CMakeFiles/game.dir/src/switchbot.cpp.o
[ 92%] Building CXX object game/CMakeFiles/game.dir/src/start_position.cpp.o
[ 92%] Building CXX object game/CMakeFiles/game.dir/src/text_file_loader.cpp.o
[ 92%] Building CXX object game/CMakeFiles/game.dir/src/target.cpp.o
[ 93%] Building CXX object game/CMakeFiles/game.dir/src/teleport_window.cpp.o
[ 93%] Building CXX object game/CMakeFiles/game.dir/src/threeway_war.cpp.o
[ 94%] Building CXX object game/CMakeFiles/game.dir/src/TrafficProfiler.cpp.o
[ 94%] Building CXX object game/CMakeFiles/game.dir/src/trigger.cpp.o
[ 94%] Building CXX object game/CMakeFiles/game.dir/src/utils.cpp.o
[ 95%] Building CXX object game/CMakeFiles/game.dir/src/vector.cpp.o
[ 95%] Building CXX object game/CMakeFiles/game.dir/src/version.cpp.o
[ 95%] Building CXX object game/CMakeFiles/game.dir/src/war_map.cpp.o
[ 96%] Building CXX object game/CMakeFiles/game.dir/src/wedding.cpp.o
[ 96%] Building CXX object game/CMakeFiles/game.dir/src/xmas_event.cpp.o
[ 96%] Building CXX object game/CMakeFiles/game.dir/src/Offlineshop2.cpp.o
[ 97%] Building CXX object game/CMakeFiles/game.dir/src/cuberenewal.cpp.o
[ 97%] Building CXX object game/CMakeFiles/game.dir/src/new_offlineshop.cpp.o
[ 98%] Building CXX object game/CMakeFiles/game.dir/src/new_offlineshop_manager.cpp.o
[ 98%] Building CXX object game/CMakeFiles/game.dir/src/new_offlineshop_safebox.cpp.o
[ 98%] Building CXX object game/CMakeFiles/game.dir/src/GrowthPetSystem.cpp.o
[ 99%] Building CXX object game/CMakeFiles/game.dir/src/questlua_growthpet.cpp.o
[ 99%] Building CXX object game/CMakeFiles/game.dir/src/rsa_cipher.cpp.o
/home/mt2/game/src/new_offlineshop_manager.cpp: In member function 'bool offlineshop::CShopManager::RecvShopChangeNameClientPacket(LPCHARACTER, const char*)':
/home/mt2/game/src/new_offlineshop_manager.cpp:1788:64: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=]
 1788 |                 snprintf(szFullName, sizeof(szFullName), "%s@%s" , ch->GetName(), szNameChecked );
      |                                                                ^
/home/mt2/game/src/new_offlineshop_manager.cpp:1788:25: note: 'snprintf' output 2 or more bytes (assuming 74) into a destination of size 73
 1788 |                 snprintf(szFullName, sizeof(szFullName), "%s@%s" , ch->GetName(), szNameChecked );
      |                 ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/mt2/game/src/new_offlineshop_manager.cpp: In member function 'bool offlineshop::CShopManager::RecvShopCreateNewClientPacket(LPCHARACTER, offlineshop::TShopInfo&, std::vector<offlineshop::TShopItemInfo>&)':
/home/mt2/game/src/new_offlineshop_manager.cpp:1698:76: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=]
 1698 |                 snprintf(rShopInfo.szName, sizeof(rShopInfo.szName), "%s@%s" , ch->GetName(), szNameChecked );
      |                                                                            ^
/home/mt2/game/src/new_offlineshop_manager.cpp:1698:25: note: 'snprintf' output 2 or more bytes (assuming 74) into a destination of size 73
 1698 |                 snprintf(rShopInfo.szName, sizeof(rShopInfo.szName), "%s@%s" , ch->GetName(), szNameChecked );
      |                 ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[100%] Linking CXX executable game
[100%] Built target game
root@metin2:/home/mt2# cd game/
CMakeFiles/ src/        
root@metin2:/home/mt2# cd game/
root@metin2:/home/mt2/game# ./game 
INTERNAL_IP: 192.168.104.102 interface eth0
INTERNAL_IP -> PUBLIC_IP: 192.168.104.102
Can not open [../../CONFIG]
root@metin2:/home/mt2/game# file game 
game: ELF 64-bit LSB pie executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=35f1d0b02622905e6248c1fc45acf991253e96ae, for GNU/Linux 3.2.0, not stripped


Sama implementacaj epoll była testowana na tych plikach przy 1k+ zalogowanych postaci na channel. Działa świetnie. Same pliki były wielokrotnie debugowane w poszukiwaniu błędów. Tam naprawdę dużo bugów jest ponaprawiane, ale ciężko będzie to wyciągnąć z tych plików. Dużo systemów jak ładowanie z mysql i wiele innych rzeczy. Jak duża ilość optymalizacji działania całego serwera. 
 

Edytowane przez PleSX

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...