I am having serious issues with these files; I should mention that I worked in a native Windows environment rather than using a virtual machine. I cloned the four resources (m2dev-server, m2dev-server-src, m2dev-client-src, m2dev-client). On my first attempt, I did everything on my own, only glancing at the guides kindly provided by distraught; however, once the environment was ready and I tried to start the server, only the db and auth ports remained active, while the ports for the channels I launched did not (consequently, when I started the client, it showed the channels as offline). On my second attempt, I followed every step of distraught's guides to the letter, yet I still encountered the same problem: the channels (1, 2, 3, 4) crashed, leaving only the db and auth ports active. A major issue I encountered concerns the server compilation (which generates the game.exe, db.exe, and qc.exe files); while there seem to be no problems with the first two, there is an issue with qc.exe. When moving qc.exe to the ...\share\locale\english\quest folder and running `python make.py`, the compilation stops with this error:
Compiling snow_dungeon.quest...
QUEST : snow_dungeon
STATE : start
FUNCTION setting()
FUNCTION make_dungeon()
FUNCTION start_at_level(stage)
FUNCTION clear_timer(inx)
FUNCTION is_snowd(idx)
FUNCTION level_clear()
WHEN : login
Traceback (most recent call last):
File "C:\project\m2dev-server\share\locale\english\quest\make.py", line 90, in <module>
main()
~~~~^^
File "C:\project\m2dev-server\share\locale\english\quest\make.py", line 86, in main
subprocess.run([str(qc_exe), str(filename)], check=True)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python314\Lib\subprocess.py", line 577, in run
raise CalledProcessError(retcode, process.args,
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['C:\\project\\m2dev-server\\share\\locale\\english\\quest\\qc.exe', 'C:\\project\\m2dev-server\\share\\locale\\english\\quest\\pre_qc\\snow_dungeon.quest']' returned non-zero exit status 3221225477.
However, if I run the `python make.py` command using the old qc.exe (the original one provided with Distraught's files), the compilation succeeds. This might be because qc needs to be compiled for x86 rather than x64—I'm not sure. There is also a difference in file size between the two qc.exe files (the original is 1,518 KB, while the x64-compiled version is 416 KB; this might be due to optimizations applied in the x86 environment). However, I don't understand why the client and server are unable to communicate with each other. I updated the IPs (server and server_test) in serverinfo.py to my static IP and repacked the root and all other archives, getting my pack folder.
I don't understand what's wrong with my procedure or why the channels keep crashing right after the server starts up. P.S. There is nothing in the channel syserr logs because the crash occurs before the server startup is complete. The only syserr produced is that of the db, which tells me this:
[2026-08-16 21:30:36.380] [error] [int __cdecl Start(void)()] TABLE_POSTFIX not configured use default
[2026-08-16 21:30:41.321] [error] [int __cdecl socket_read(unsigned __int64,char *,unsigned __int64)()] about to lose connection
[2026-08-16 21:30:41.321] [error] [int __cdecl CPeerBase::Recv(void)()] socket_read failed No such file or directory
[2026-08-16 21:30:41.321] [error] [int __cdecl CClientManager::Process(void)()] Recv failed
[2026-08-16 21:30:42.506] [error] [int __cdecl socket_read(unsigned __int64,char *,unsigned __int64)()] about to lose connection
[2026-08-16 21:30:42.506] [error] [int __cdecl CPeerBase::Recv(void)()] socket_read failed No such file or directory
[2026-08-16 21:30:42.506] [error] [int __cdecl CClientManager::Process(void)()] Recv failed
[2026-08-16 21:30:43.632] [error] [int __cdecl socket_read(unsigned __int64,char *,unsigned __int64)()] about to lose connection
[2026-08-16 21:30:43.632] [error] [int __cdecl CPeerBase::Recv(void)()] socket_read failed No such file or directory
[2026-08-16 21:30:43.632] [error] [int __cdecl CClientManager::Process(void)()] Recv failed
[2026-08-16 21:30:44.565] [error] [int __cdecl socket_read(unsigned __int64,char *,unsigned __int64)()] about to lose connection
[2026-08-16 21:30:44.565] [error] [int __cdecl CPeerBase::Recv(void)()] socket_read failed No such file or directory
[2026-08-16 21:30:44.565] [error] [int __cdecl CClientManager::Process(void)()] Recv failed
When starting the Visual Studio debugger, it tells me that the problem lies in the code block below (from qc.cpp):
if (hasError)
{
cout << "Calls undeclared function! : " << endl;
for (auto it = error_func.begin(); it != error_func.end(); ++it)
{
cout << *it << endl;
}
abort();
}
Thank you for your help