Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Development] Source Mu Main 1.03.35 [Season 5.1 - Season 5.2]

Newbie Spellweaver
Joined
Jul 28, 2021
Messages
30
Reaction score
4
i add libgfx.lib to "(MU_SDK)/DXSDK/lib" and change "libgfx.lib" to "libc.lib". And copy all include GFX file to "(MU_SDK)/DXSDK/include", copy "GRendererOGL.h" , "GRendererCommonImpl.h", "GRendererCommonImpl.cpp" in "Src" to source main. But build error :
Code:
1>LINK : warning LNK4098: defaultlib 'LIBC' conflicts with use of other libs; use /NODEFAULTLIB:library
1>Winmain.obj : error LNK2019: unresolved external symbol "public: static void __cdecl GSystem::Init(struct GMemoryHeap::HeapDesc const &,class GSysAllocBase *)" (?Init@GSystem@@SAXABUHeapDesc@GMemoryHeap@@PAVGSysAllocBase@@@Z) referenced in function "public: static void __cdecl GSystem::Init(class GSysAllocBase *)" (?Init@GSystem@@SAXPAVGSysAllocBase@@@Z)
1>Winmain.obj : error LNK2001: unresolved external symbol "protected: virtual bool __thiscall GSysAlloc::initHeapEngine(void const *)" (?initHeapEngine@GSysAlloc@@MAE_NPBX@Z)
1>Winmain.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall GSysAlloc::shutdownHeapEngine(void)" (?shutdownHeapEngine@GSysAlloc@@MAEXXZ)
1>CGFxInfoPopup.obj : error LNK2019: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ) referenced in function "private: bool __thiscall CGFxInfoPopup::InitGFx(char const *,unsigned int,unsigned int,unsigned int,enum GFxMovieView::ScaleModeType,class FontConfig *,char const *)" (?InitGFx@CGFxInfoPopup@@AAE_NPBDIIIW4ScaleModeType@GFxMovieView@@PAVFontConfig@@0@Z)
1>CGFxMainUi.obj : error LNK2001: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ)
1>LIBC.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflateEnd referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>LIBC.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflateEnd
1>LIBC.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflate referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>LIBC.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflate
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateDecompress(struct jpeg_decompress_struct *,int,unsigned int)" (?jpeg_CreateDecompress@@YAXPAUjpeg_decompress_struct@@HI@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_decompress(struct jpeg_decompress_struct *)" (?jpeg_destroy_decompress@@YAXPAUjpeg_decompress_struct@@@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "int __cdecl jpeg_read_header(struct jpeg_decompress_struct *,unsigned char)" (?jpeg_read_header@@YAHPAUjpeg_decompress_struct@@E@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegReadHeader(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *,bool)" (?JpegReadHeader@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@_N@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_resync_to_restart(struct jpeg_decompress_struct *,int)" (?jpeg_resync_to_restart@@YAEPAUjpeg_decompress_struct@@H@Z) referenced in function "public: __thiscall GJPEGRwSource::GJPEGRwSource(class GFile *)" (??0GJPEGRwSource@@QAE@PAVGFile@@@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jpeg_error_mgr * __cdecl jpeg_std_error(struct jpeg_error_mgr *)" (?jpeg_std_error@@YAPAUjpeg_error_mgr@@PAU1@@Z) referenced in function "struct jpeg_error_mgr * __cdecl SetupJpegErr(struct GFxJpegErrorHandler *)" (?SetupJpegErr@@YAPAUjpeg_error_mgr@@PAUGFxJpegErrorHandler@@@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_start_decompress(struct jpeg_decompress_struct *)" (?jpeg_start_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::StartImage(void)" (?StartImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_finish_decompress(struct jpeg_decompress_struct *)" (?jpeg_finish_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::FinishImage(void)" (?FinishImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_read_scanlines(struct jpeg_decompress_struct *,unsigned char * *,unsigned int)" (?jpeg_read_scanlines@@YAIPAUjpeg_decompress_struct@@PAPAEI@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadScanline(unsigned char *)" (?ReadScanline@GJPEGInputImpl_jpeglib@@UAEHPAE@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jvirt_barray_control * * __cdecl jpeg_read_coefficients(struct jpeg_decompress_struct *)" (?jpeg_read_coefficients@@YAPAPAUjvirt_barray_control@@PAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadRawData(void * *)" (?ReadRawData@GJPEGInputImpl_jpeglib@@UAEHPAPAX@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_start_compress(struct jpeg_compress_struct *,unsigned char)" (?jpeg_start_compress@@YAXPAUjpeg_compress_struct@@E@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_quality(struct jpeg_compress_struct *,int,unsigned char)" (?jpeg_set_quality@@YAXPAUjpeg_compress_struct@@HE@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_defaults(struct jpeg_compress_struct *)" (?jpeg_set_defaults@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateCompress(struct jpeg_compress_struct *,int,unsigned int)" (?jpeg_CreateCompress@@YAXPAUjpeg_compress_struct@@HI@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_compress(struct jpeg_compress_struct *)" (?jpeg_destroy_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_finish_compress(struct jpeg_compress_struct *)" (?jpeg_finish_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_write_scanlines(struct jpeg_compress_struct *,unsigned char * *,unsigned int)" (?jpeg_write_scanlines@@YAIPAUjpeg_compress_struct@@PAPAEI@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteScanline(unsigned char *)" (?WriteScanline@GJPEGOutputImpl_jpeglib@@UAEXPAE@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_write_coefficients(struct jpeg_compress_struct *,struct jvirt_barray_control * *)" (?jpeg_write_coefficients@@YAXPAUjpeg_compress_struct@@PAPAUjvirt_barray_control@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteRawData(void const *)" (?WriteRawData@GJPEGOutputImpl_jpeglib@@UAEXPBX@Z)
1>LIBC.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_copy_critical_parameters(struct jpeg_decompress_struct *,struct jpeg_compress_struct *)" (?jpeg_copy_critical_parameters@@YAXPAUjpeg_decompress_struct@@PAUjpeg_compress_struct@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::CopyCriticalParams(void *)" (?CopyCriticalParams@GJPEGOutputImpl_jpeglib@@UAEXPAX@Z)
1>LIBC.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateInit_ referenced in function "private: static int __cdecl GZLibFile::ZLib_InitStream(struct z_stream_s *,void *,void *,unsigned int)" (?ZLib_InitStream@GZLibFile@@CAHPAUz_stream_s@@PAX1I@Z)
1>LIBC.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateReset referenced in function "public: void __thiscall GZLibFileImpl::Reset(void)" (?Reset@GZLibFileImpl@@QAEXXZ)
sorry my english
you should be add to your project jpeg library. see next:
unresolved external symbol "void __cdecl jpeg_
 
Newbie Spellweaver
Joined
Jul 18, 2015
Messages
51
Reaction score
5
Sorry, maybe I'm not explaining it well. You don't have to rename anything, just include libgfx.lib in your project (if it wasn't already included) and ignore the set of default libraries as seen in the image I show you below:
i add libgfx.lib to project and add like photo, but build error !
Code:
1>CGFxInfoPopup.obj : error LNK2019: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ) referenced in function "private: bool __thiscall CGFxInfoPopup::InitGFx(char const *,unsigned int,unsigned int,unsigned int,enum GFxMovieView::ScaleModeType,class FontConfig *,char const *)" (?InitGFx@CGFxInfoPopup@@AAE_NPBDIIIW4ScaleModeType@GFxMovieView@@PAVFontConfig@@0@Z)
1>CGFxMainUi.obj : error LNK2001: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ)
1>libgfx.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflateEnd referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflateEnd
1>libgfx.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflate referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflate
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateDecompress(struct jpeg_decompress_struct *,int,unsigned int)" (?jpeg_CreateDecompress@@YAXPAUjpeg_decompress_struct@@HI@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_decompress(struct jpeg_decompress_struct *)" (?jpeg_destroy_decompress@@YAXPAUjpeg_decompress_struct@@@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "int __cdecl jpeg_read_header(struct jpeg_decompress_struct *,unsigned char)" (?jpeg_read_header@@YAHPAUjpeg_decompress_struct@@E@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegReadHeader(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *,bool)" (?JpegReadHeader@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@_N@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_resync_to_restart(struct jpeg_decompress_struct *,int)" (?jpeg_resync_to_restart@@YAEPAUjpeg_decompress_struct@@H@Z) referenced in function "public: __thiscall GJPEGRwSource::GJPEGRwSource(class GFile *)" (??0GJPEGRwSource@@QAE@PAVGFile@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jpeg_error_mgr * __cdecl jpeg_std_error(struct jpeg_error_mgr *)" (?jpeg_std_error@@YAPAUjpeg_error_mgr@@PAU1@@Z) referenced in function "struct jpeg_error_mgr * __cdecl SetupJpegErr(struct GFxJpegErrorHandler *)" (?SetupJpegErr@@YAPAUjpeg_error_mgr@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_start_decompress(struct jpeg_decompress_struct *)" (?jpeg_start_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::StartImage(void)" (?StartImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_finish_decompress(struct jpeg_decompress_struct *)" (?jpeg_finish_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::FinishImage(void)" (?FinishImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_read_scanlines(struct jpeg_decompress_struct *,unsigned char * *,unsigned int)" (?jpeg_read_scanlines@@YAIPAUjpeg_decompress_struct@@PAPAEI@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadScanline(unsigned char *)" (?ReadScanline@GJPEGInputImpl_jpeglib@@UAEHPAE@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jvirt_barray_control * * __cdecl jpeg_read_coefficients(struct jpeg_decompress_struct *)" (?jpeg_read_coefficients@@YAPAPAUjvirt_barray_control@@PAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadRawData(void * *)" (?ReadRawData@GJPEGInputImpl_jpeglib@@UAEHPAPAX@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_start_compress(struct jpeg_compress_struct *,unsigned char)" (?jpeg_start_compress@@YAXPAUjpeg_compress_struct@@E@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_quality(struct jpeg_compress_struct *,int,unsigned char)" (?jpeg_set_quality@@YAXPAUjpeg_compress_struct@@HE@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_defaults(struct jpeg_compress_struct *)" (?jpeg_set_defaults@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateCompress(struct jpeg_compress_struct *,int,unsigned int)" (?jpeg_CreateCompress@@YAXPAUjpeg_compress_struct@@HI@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_compress(struct jpeg_compress_struct *)" (?jpeg_destroy_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_finish_compress(struct jpeg_compress_struct *)" (?jpeg_finish_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_write_scanlines(struct jpeg_compress_struct *,unsigned char * *,unsigned int)" (?jpeg_write_scanlines@@YAIPAUjpeg_compress_struct@@PAPAEI@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteScanline(unsigned char *)" (?WriteScanline@GJPEGOutputImpl_jpeglib@@UAEXPAE@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_write_coefficients(struct jpeg_compress_struct *,struct jvirt_barray_control * *)" (?jpeg_write_coefficients@@YAXPAUjpeg_compress_struct@@PAPAUjvirt_barray_control@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteRawData(void const *)" (?WriteRawData@GJPEGOutputImpl_jpeglib@@UAEXPBX@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_copy_critical_parameters(struct jpeg_decompress_struct *,struct jpeg_compress_struct *)" (?jpeg_copy_critical_parameters@@YAXPAUjpeg_decompress_struct@@PAUjpeg_compress_struct@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::CopyCriticalParams(void *)" (?CopyCriticalParams@GJPEGOutputImpl_jpeglib@@UAEXPAX@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateInit_ referenced in function "private: static int __cdecl GZLibFile::ZLib_InitStream(struct z_stream_s *,void *,void *,unsigned int)" (?ZLib_InitStream@GZLibFile@@CAHPAUz_stream_s@@PAX1I@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateReset referenced in function "public: void __thiscall GZLibFileImpl::Reset(void)" (?Reset@GZLibFileImpl@@QAEXXZ)
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
Feb 15, 2024
Messages
7
Reaction score
5
i add libgfx.lib to project and add like photo, but build error !
Code:
1>CGFxInfoPopup.obj : error LNK2019: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ) referenced in function "private: bool __thiscall CGFxInfoPopup::InitGFx(char const *,unsigned int,unsigned int,unsigned int,enum GFxMovieView::ScaleModeType,class FontConfig *,char const *)" (?InitGFx@CGFxInfoPopup@@AAE_NPBDIIIW4ScaleModeType@GFxMovieView@@PAVFontConfig@@0@Z)
1>CGFxMainUi.obj : error LNK2001: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ)
1>libgfx.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflateEnd referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflateEnd
1>libgfx.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflate referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflate
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateDecompress(struct jpeg_decompress_struct *,int,unsigned int)" (?jpeg_CreateDecompress@@YAXPAUjpeg_decompress_struct@@HI@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_decompress(struct jpeg_decompress_struct *)" (?jpeg_destroy_decompress@@YAXPAUjpeg_decompress_struct@@@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "int __cdecl jpeg_read_header(struct jpeg_decompress_struct *,unsigned char)" (?jpeg_read_header@@YAHPAUjpeg_decompress_struct@@E@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegReadHeader(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *,bool)" (?JpegReadHeader@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@_N@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_resync_to_restart(struct jpeg_decompress_struct *,int)" (?jpeg_resync_to_restart@@YAEPAUjpeg_decompress_struct@@H@Z) referenced in function "public: __thiscall GJPEGRwSource::GJPEGRwSource(class GFile *)" (??0GJPEGRwSource@@QAE@PAVGFile@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jpeg_error_mgr * __cdecl jpeg_std_error(struct jpeg_error_mgr *)" (?jpeg_std_error@@YAPAUjpeg_error_mgr@@PAU1@@Z) referenced in function "struct jpeg_error_mgr * __cdecl SetupJpegErr(struct GFxJpegErrorHandler *)" (?SetupJpegErr@@YAPAUjpeg_error_mgr@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_start_decompress(struct jpeg_decompress_struct *)" (?jpeg_start_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::StartImage(void)" (?StartImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_finish_decompress(struct jpeg_decompress_struct *)" (?jpeg_finish_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::FinishImage(void)" (?FinishImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_read_scanlines(struct jpeg_decompress_struct *,unsigned char * *,unsigned int)" (?jpeg_read_scanlines@@YAIPAUjpeg_decompress_struct@@PAPAEI@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadScanline(unsigned char *)" (?ReadScanline@GJPEGInputImpl_jpeglib@@UAEHPAE@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jvirt_barray_control * * __cdecl jpeg_read_coefficients(struct jpeg_decompress_struct *)" (?jpeg_read_coefficients@@YAPAPAUjvirt_barray_control@@PAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadRawData(void * *)" (?ReadRawData@GJPEGInputImpl_jpeglib@@UAEHPAPAX@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_start_compress(struct jpeg_compress_struct *,unsigned char)" (?jpeg_start_compress@@YAXPAUjpeg_compress_struct@@E@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_quality(struct jpeg_compress_struct *,int,unsigned char)" (?jpeg_set_quality@@YAXPAUjpeg_compress_struct@@HE@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_defaults(struct jpeg_compress_struct *)" (?jpeg_set_defaults@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateCompress(struct jpeg_compress_struct *,int,unsigned int)" (?jpeg_CreateCompress@@YAXPAUjpeg_compress_struct@@HI@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_compress(struct jpeg_compress_struct *)" (?jpeg_destroy_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_finish_compress(struct jpeg_compress_struct *)" (?jpeg_finish_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_write_scanlines(struct jpeg_compress_struct *,unsigned char * *,unsigned int)" (?jpeg_write_scanlines@@YAIPAUjpeg_compress_struct@@PAPAEI@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteScanline(unsigned char *)" (?WriteScanline@GJPEGOutputImpl_jpeglib@@UAEXPAE@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_write_coefficients(struct jpeg_compress_struct *,struct jvirt_barray_control * *)" (?jpeg_write_coefficients@@YAXPAUjpeg_compress_struct@@PAPAUjvirt_barray_control@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteRawData(void const *)" (?WriteRawData@GJPEGOutputImpl_jpeglib@@UAEXPBX@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_copy_critical_parameters(struct jpeg_decompress_struct *,struct jpeg_compress_struct *)" (?jpeg_copy_critical_parameters@@YAXPAUjpeg_decompress_struct@@PAUjpeg_compress_struct@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::CopyCriticalParams(void *)" (?CopyCriticalParams@GJPEGOutputImpl_jpeglib@@UAEXPAX@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateInit_ referenced in function "private: static int __cdecl GZLibFile::ZLib_InitStream(struct z_stream_s *,void *,void *,unsigned int)" (?ZLib_InitStream@GZLibFile@@CAHPAUz_stream_s@@PAX1I@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateReset referenced in function "public: void __thiscall GZLibFileImpl::Reset(void)" (?Reset@GZLibFileImpl@@QAEXXZ)
I think that you must try to compile in KOR protocol mode (in your Screenshot I can see that you are trying to compile in Vietnamese Protocol Mode), and maybe u must try to install complete GFx SDK 3.3 in your hard drive first and later select all .h and .lib files that you need to make a correctly compilation (maybe you must try to include anothers .lib files togheter to gfxlib.lib file into the MU_SDK folder). I just saying... Anyways good luck!
 
Last edited:
Newbie Spellweaver
Joined
Jul 18, 2015
Messages
51
Reaction score
5
I think that you must try to compile in KOR protocol mode (in your Screenshot I can see that you are trying to compile in Vietnamese Protocol Mode), and maybe u must try to install complete GFx SDK 3.3 in your hard drive first and later select all .h and .lib files that you need to make a correctly compilation (maybe you must try to include anothers .lib files togheter to gfxlib.lib file into the MU_SDK folder). I just saying... Anyways good luck!
I did everything as you said, but still getting the same error. you can share source build ok ?
 
Newbie Spellweaver
Joined
Jul 13, 2019
Messages
87
Reaction score
37
I did everything as you said, but still getting the same error. you can share source build ok ?

Why must GFx SDK be activated? With the current source you can do everything ?
 
Newbie Spellweaver
Joined
Jun 28, 2009
Messages
23
Reaction score
16
his->m_fTourCameraAngl

i add libgfx.lib to project and add like photo, but build error !
Code:
1>CGFxInfoPopup.obj : error LNK2019: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ) referenced in function "private: bool __thiscall CGFxInfoPopup::InitGFx(char const *,unsigned int,unsigned int,unsigned int,enum GFxMovieView::ScaleModeType,class FontConfig *,char const *)" (?InitGFx@CGFxInfoPopup@@AAE_NPBDIIIW4ScaleModeType@GFxMovieView@@PAVFontConfig@@0@Z)
1>CGFxMainUi.obj : error LNK2001: unresolved external symbol "public: static class GRendererOGL * __stdcall GRendererOGL::CreateRenderer(void)" (?CreateRenderer@GRendererOGL@@SGPAV1@XZ)
1>libgfx.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflateEnd referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflateEnd
1>libgfx.lib(GFxZlibSupport.obj) : error LNK2019: unresolved external symbol _inflate referenced in function "public: virtual void __thiscall GFxZlibSupport::InflateWrapper(class GFxStream *,void *,int)" (?InflateWrapper@GFxZlibSupport@@UAEXPAVGFxStream@@PAXH@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2001: unresolved external symbol _inflate
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateDecompress(struct jpeg_decompress_struct *,int,unsigned int)" (?jpeg_CreateDecompress@@YAXPAUjpeg_decompress_struct@@HI@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_decompress(struct jpeg_decompress_struct *)" (?jpeg_destroy_decompress@@YAXPAUjpeg_decompress_struct@@@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegCreateDecompress(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *)" (?JpegCreateDecompress@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "int __cdecl jpeg_read_header(struct jpeg_decompress_struct *,unsigned char)" (?jpeg_read_header@@YAHPAUjpeg_decompress_struct@@E@Z) referenced in function "private: static int __cdecl GJPEGInputImpl_jpeglib::JpegReadHeader(struct jpeg_decompress_struct *,struct GFxJpegErrorHandler *,bool)" (?JpegReadHeader@GJPEGInputImpl_jpeglib@@CAHPAUjpeg_decompress_struct@@PAUGFxJpegErrorHandler@@_N@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_resync_to_restart(struct jpeg_decompress_struct *,int)" (?jpeg_resync_to_restart@@YAEPAUjpeg_decompress_struct@@H@Z) referenced in function "public: __thiscall GJPEGRwSource::GJPEGRwSource(class GFile *)" (??0GJPEGRwSource@@QAE@PAVGFile@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jpeg_error_mgr * __cdecl jpeg_std_error(struct jpeg_error_mgr *)" (?jpeg_std_error@@YAPAUjpeg_error_mgr@@PAU1@@Z) referenced in function "struct jpeg_error_mgr * __cdecl SetupJpegErr(struct GFxJpegErrorHandler *)" (?SetupJpegErr@@YAPAUjpeg_error_mgr@@PAUGFxJpegErrorHandler@@@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_start_decompress(struct jpeg_decompress_struct *)" (?jpeg_start_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::StartImage(void)" (?StartImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned char __cdecl jpeg_finish_decompress(struct jpeg_decompress_struct *)" (?jpeg_finish_decompress@@YAEPAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::FinishImage(void)" (?FinishImage@GJPEGInputImpl_jpeglib@@UAEHXZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_read_scanlines(struct jpeg_decompress_struct *,unsigned char * *,unsigned int)" (?jpeg_read_scanlines@@YAIPAUjpeg_decompress_struct@@PAPAEI@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadScanline(unsigned char *)" (?ReadScanline@GJPEGInputImpl_jpeglib@@UAEHPAE@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "struct jvirt_barray_control * * __cdecl jpeg_read_coefficients(struct jpeg_decompress_struct *)" (?jpeg_read_coefficients@@YAPAPAUjvirt_barray_control@@PAUjpeg_decompress_struct@@@Z) referenced in function "public: virtual int __thiscall GJPEGInputImpl_jpeglib::ReadRawData(void * *)" (?ReadRawData@GJPEGInputImpl_jpeglib@@UAEHPAPAX@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_start_compress(struct jpeg_compress_struct *,unsigned char)" (?jpeg_start_compress@@YAXPAUjpeg_compress_struct@@E@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_quality(struct jpeg_compress_struct *,int,unsigned char)" (?jpeg_set_quality@@YAXPAUjpeg_compress_struct@@HE@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_set_defaults(struct jpeg_compress_struct *)" (?jpeg_set_defaults@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_CreateCompress(struct jpeg_compress_struct *,int,unsigned int)" (?jpeg_CreateCompress@@YAXPAUjpeg_compress_struct@@HI@Z) referenced in function "public: __thiscall GJPEGOutputImpl_jpeglib::GJPEGOutputImpl_jpeglib(class GFile *,int,int,int)" (??0GJPEGOutputImpl_jpeglib@@QAE@PAVGFile@@HHH@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_destroy_compress(struct jpeg_compress_struct *)" (?jpeg_destroy_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_finish_compress(struct jpeg_compress_struct *)" (?jpeg_finish_compress@@YAXPAUjpeg_compress_struct@@@Z) referenced in function "public: virtual __thiscall GJPEGOutputImpl_jpeglib::~GJPEGOutputImpl_jpeglib(void)" (??1GJPEGOutputImpl_jpeglib@@UAE@XZ)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "unsigned int __cdecl jpeg_write_scanlines(struct jpeg_compress_struct *,unsigned char * *,unsigned int)" (?jpeg_write_scanlines@@YAIPAUjpeg_compress_struct@@PAPAEI@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteScanline(unsigned char *)" (?WriteScanline@GJPEGOutputImpl_jpeglib@@UAEXPAE@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_write_coefficients(struct jpeg_compress_struct *,struct jvirt_barray_control * *)" (?jpeg_write_coefficients@@YAXPAUjpeg_compress_struct@@PAPAUjvirt_barray_control@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::WriteRawData(void const *)" (?WriteRawData@GJPEGOutputImpl_jpeglib@@UAEXPBX@Z)
1>libgfx.lib(GJPEGUtil_jpeglib.obj) : error LNK2019: unresolved external symbol "void __cdecl jpeg_copy_critical_parameters(struct jpeg_decompress_struct *,struct jpeg_compress_struct *)" (?jpeg_copy_critical_parameters@@YAXPAUjpeg_decompress_struct@@PAUjpeg_compress_struct@@@Z) referenced in function "public: virtual void __thiscall GJPEGOutputImpl_jpeglib::CopyCriticalParams(void *)" (?CopyCriticalParams@GJPEGOutputImpl_jpeglib@@UAEXPAX@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateInit_ referenced in function "private: static int __cdecl GZLibFile::ZLib_InitStream(struct z_stream_s *,void *,void *,unsigned int)" (?ZLib_InitStream@GZLibFile@@CAHPAUz_stream_s@@PAX1I@Z)
1>libgfx.lib(GZLibFile.obj) : error LNK2019: unresolved external symbol _inflateReset referenced in function "public: void __thiscall GZLibFileImpl::Reset(void)" (?Reset@GZLibFileImpl@@QAEXXZ)
everything works if connected correctly - I checked
 
Junior Spellweaver
Joined
Aug 1, 2011
Messages
126
Reaction score
90
It has been a considerable amount of time since the source code for the client was released. It's sad to see the lack of new shares.
 
Newbie Spellweaver
Joined
Jul 13, 2019
Messages
87
Reaction score
37
There are many personal projects and it takes a lot of effort to fix, so most people don't share such big work, using the source code is not too difficult like having to decompile the main and learn the asm language. They don't even try it and ask how to fix it, just wait and copy paste :(
 
Last edited:
Junior Spellweaver
Joined
Aug 1, 2011
Messages
126
Reaction score
90
Loading screen update. UIMng.cpp

dsw_pool - [Development] Source Mu Main 1.03.35 [Season 5.1 - Season 5.2] - RaGEZONE Forums

Code:
float CRenderNumber(float x, float y, int iNum, float fScale)
{
    EnableAlphaTest(1);

    float width, height;

    if (fScale < 0.3f)
    {
        return x;
    }

    width = 12.f * (fScale - 0.3f);
    height = 16.f * (fScale - 0.3f);

    char strText[32];
    itoa(iNum, strText, 10);
    int iLength = (int)strlen(strText);

    x -= width * iLength / 2;

    for (int i = 0; i < iLength; ++i)
    {
        float fU = (float)(strText[i] - 48) * 12.f / 128.f;
        RenderBitmap(31337, x, y, width, height, fU, 0.f, 12.f / 128.f, 14.f / 16.f, 1, 1, 0.0);
        x += width * 0.8f;
    }

    RenderBitmap(531126, x, y, width + 3, height, 0.f, 0.f, 9.f / 16.f, 14.f / 16.f, 1, 1, 0.0);

    return x;
}

void CUIMng::CreateTitleSceneUI()
{
    ReleaseTitleSceneUI();

    CInput& rInput = CInput::Instance();
    float fScaleX = (float)rInput.GetScreenWidth() / 800.0f;
    float fScaleY = (float)rInput.GetScreenHeight() / 600.0f;

    LoadBitmapA("Interface\\KMUA2_Bar.jpg", 31122, 0x2601, 0x2901, 1, 0);
    LoadBitmapA("Interface\\KMUA2_Loading.tga", 531123, 0x2601, 0x2901, 1, 0);
    LoadBitmapA("Interface\\KMUA2_BarFrame.tga", 531124, 0x2601, 0x2901, 1, 0);
    LoadBitmapA("Interface\\KMUA2_Back01.jpg", 531122, 0x2600, 0x2900, 1, 0);
    LoadBitmapA("Interface\\KMUA2_Back02.jpg", 531125, 0x2600, 0x2900, 1, 0);
    LoadBitmapA("Interface\\KMUA2_Porcento.tga", 531126, 0x2601, 0x2901, 1, 0);
    LoadBitmapA("Interface\\newui_number1.tga", 31337, 9729, 10496, 1, 0);

    m_pgbLoding = new CGaugeBar;
 
    RECT rc = { -36, 4, 656 + 36, 8 };
    m_pgbLoding->Create(4, 15, 31122, &rc, 0, 0, -1, true, fScaleX, fScaleY);
    m_pgbLoding->SetPosition(72, 540);
    m_pgbLoding->Show();

    m_nScene = UIM_SCENE_TITLE;
}

void CUIMng::ReleaseTitleSceneUI()
{
    SAFE_DELETE_ARRAY(m_asprTitle);
    SAFE_DELETE(m_pgbLoding);

    m_nScene = UIM_SCENE_NONE;
}

void CUIMng::RenderTitleSceneUI(HDC hDC, DWORD dwNow, DWORD dwTotal)
{
    ::BeginOpengl();
    ::glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    ::BeginBitmap();

    float Center;

    if (m_Resolution == 4 || m_Resolution == 8 || m_Resolution == 7 || m_Resolution == 6 || m_Resolution == 5)
    {
        Center = 0.0;
    }
    else
    {
        Center = -107;
    }

    RenderBitmap(531122, Center, -1.0, 427, 480, 0, 0, 1.0, 1.0, 1, 1, 0.0);//Back
    RenderBitmap(531125, Center + 427, -1.0, 427, 480, 0, 0, 1.0, 1.0, 1, 1, 0.0);//Back

    RenderBitmap(531123, 0.0, 406.0, 640.0, 74.0, 0, 0, 1.0, 0.94, 1, 1, 0.0);

    m_pgbLoding->SetValue(dwNow, dwTotal);
    m_pgbLoding->Render();

    float WH, rate, SizeNew, Porcento;
    double AnimX, AnimY;

    WH = 0.25;
    int Anim = (int)(timeGetTime() * 0.5f) % 600 / 40;
    AnimX = (double)(Anim % 4) * WH;
    AnimY = (double)(Anim / 4) * WH;
    rate = 580.f / (float)dwTotal;
    SizeNew = rate * dwNow;
    RenderBitmap(531124, SizeNew - 27, 391.0, 81.0, 81.0, AnimX, AnimY, WH, WH, 1, 1, 0.0);


    glColor3f(0.84, 0.85, 0.86);
    rate = 100.f / (float)dwTotal;
    Porcento = rate * dwNow;
    CRenderNumber(590, 454, Porcento, 1.0);
    glColor3f(1.0, 1.0, 1.0);

    ::EndBitmap();
    ::EndOpengl();
    ::glFlush();
    ::SwapBuffers(hDC);
}

You can also clean in ZzzScene.cpp

Code:
void WebzenScene(HDC hDC)
{
    CUIMng& rUIMng = CUIMng::Instance();

    OpenFont();
    ClearInput();

    rUIMng.CreateTitleSceneUI();
 
    FogEnable = false;
 
    ::EnableAlphaTest();
    OpenBasicData(hDC);

    g_pNewUISystem->LoadMainSceneInterface();

    CUIMng::Instance().RenderTitleSceneUI(hDC, 11, 11);

    rUIMng.ReleaseTitleSceneUI();

    DeleteBitmap(31122);
    DeleteBitmap(531123);
    DeleteBitmap(531124);
    DeleteBitmap(531122);
    DeleteBitmap(531125);
    DeleteBitmap(531126);
    DeleteBitmap(31337);

    g_ErrorReport.Write( "> Loading ok.\r\n");

    SceneFlag = LOG_IN_SCENE;    //
}


In WinMain.cpp -> BOOL OpenInitFile() -> change switch(m_Resolution)
add last item:
Code:
default: m_Resolution = 2; break;

I attached some images from Data/Interface/

You can edit images using muimggui and your photoshop or other program.

...
 

Attachments

You must be registered for see attachments list
Last edited:
Junior Spellweaver
Joined
Aug 1, 2011
Messages
126
Reaction score
90
I'm planning to organize these client/server files. I started from scratch, and here's the result I've achieved. It seems there are no major bugs. If I succeed, I'll publish the outcome of my work for our community.

All maps and basic events are functioning properly. [Tested - 100%]

Fenrir [100% tested]
Dark Horse [100% tested]
Dark Raven [100% tested]
Socket Items [100% tested]


I'm starting to test the skills on all characters. [In progress]





I made this fix to test ex maps from higher seasons.
You can edit MapManager.cpp.

C++:
const char* CMapManager::GetMapName(int iMap) {
    switch (iMap) {
    case 0: return "Lorencia";
    case 1: return "Dungeon";
    case 2: return "Devias";
    case 3: return "Noria";
    case 4: return "Lost Tower";
    case 5: return "(5) Null";
    case 6: return "Arena";
    case 7: return "Atlans";
    case 8: return "Tarkan";
    case 9: return "Devil Square 1 - 4";
    case 10: return "Icarus";
    case 11: return "Blood Castle 1";
    case 12: return "Blood Castle 2";
    case 13: return "Blood Castle 3";
    case 14: return "Blood Castle 4";
    case 15: return "Blood Castle 5";
    case 16: return "Blood Castle 6";
    case 17: return "Blood Castle 7";
    case 18: return "Chaos Castle 1";
    case 19: return "Chaos Castle 2";
    case 20: return "Chaos Castle 3";
    case 21: return "Chaos Castle 4";
    case 22: return "Chaos Castle 5";
    case 23: return "Chaos Castle 6";
    case 24: return "Kalima 1";
    case 25: return "Kalima 2";
    case 26: return "Kalima 3";
    case 27: return "Kalima 4";
    case 28: return "Kalima 5";
    case 29: return "Kalima 6";
    case 30: return "Valley Of Loren";
    case 31: return "Land Of Trials";
    case 32: return "Devil Square 5 - 8";
    case 33: return "Aida";
    case 34: return "Crywolf";
    case 35: return "(35) Null";
    case 36: return "Kalima 7";
    case 37: return "Kanturu";
    case 38: return "Kanturu Ruins";
    case 39: return "Kanturu Refinery Tower";
    case 40: return "Silent Map";
    case 41: return "Balgass Barracks";
    case 42: return "Balgass Refuge";
    case 43: return "(43) Null";
    case 44: return "(44) Null";
    case 45: return "Illusion Temple 1";
    case 46: return "Illusion Temple 2";
    case 47: return "Illusion Temple 3";
    case 48: return "Illusion Temple 4";
    case 49: return "Illusion Temple 5";
    case 50: return "Illusion Temple 6";
    case 51: return "Elbeland";
    case 52: return "Blood Castle 8";
    case 53: return "Chaos Castle 7";
    case 54: return "(54) Null";
    case 55: return "(54) Null";
    case 56: return "Swamp Of Calmness";
    case 57: return "Raklion";
    case 58: return "Raklion Hatchery";
    case 59: return "(59) Null";
    case 60: return "(60) Null";
    case 61: return "(61) Null";
    case 62: return "Santa Village";
    case 63: return "Vulcanus";
    case 64: return "Duel Arena";
    case 65: return "Doppelganger Snow";
    case 66: return "Doppelganger Vulcan";
    case 67: return "Doppelganger Sea";
    case 68: return "Doppelganger Crystals";
    case 69: return "Imperial Guardian 1";
    case 70: return "Imperial Guardian 2";
    case 71: return "Imperial Guardian 3";
    case 72: return "Imperial Guardian 4";
    case 73: return "(73) Null";
    case 74: return "(74) Null";
    case 75: return "(75) Null";
    case 76: return "(76) Null";
    case 77: return "(77) Null";
    case 78: return "(78) Null";
    case 79: return "Loren Market";
    case 80: return "Karutan 1";
    case 81: return "Karutan 2";
    case 82: return "Doppelganger Renewal";
    case 83: return "(83) Null";
    case 84: return "(84) Null";
    case 85: return "(85) Null";
    case 86: return "(86) Null";
    case 87: return "(87) Null";
    case 88: return "(88) Null";
    case 89: return "(89) Null";
    case 90: return "(90) Null";
    case 91: return "Acheron";
    case 92: return "Arka War";
    case 93: return "(93) Null";
    case 94: return "(94) Null";
    case 95: return "Debenter";
    case 96: return "Arca Battle";
    case 97: return "Chaos Castle Survival";
    case 98: return "Illussion Temple League 1";
    case 99: return "Illussion Temple League 2";
    case 100: return "Urk Montain 1";
    case 101: return "Urk Montain 2";
    case 102: return "Tormented Square of the Fittest";
    case 103: return "Tormented Square 1";
    case 104: return "Tormented Square 2";
    case 105: return "Tormented Square 3";
    case 106: return "Tormented Square 4";
    case 107: return "(107) Null";
    case 108: return "(108) Null";
    case 109: return "(109) Null";
    case 110: return "Nars";
    case 111: return "(111) Null";
    case 112: return "Ferea";
    case 113: return "Nixie Lake";
    case 114: return "Labyrinth Entrance";
    case 115: return "Labyrinth";
    case 116: return "Deep Dungeon 1";
    case 117: return "Deep Dungeon 2";
    case 118: return "Deep Dungeon 3";
    case 119: return "Deep Dungeon 4";
    case 120: return "Deep Dungeon 5";
    case 121: return "4th Quest";
    case 122: return "Swamp Of Darkness";
    case 123: return "Kubera Mine Area 1";
    case 124: return "Kubera Mine Area 2";
    case 125: return "Kubera Mine Area 3";
    case 126: return "Kubera Mine Area 4";
    case 127: return "Kubera Mine Area 5";
    case 128: return "Abyss Of Atlas 1";
    case 129: return "Abyss Of Atlas 2";
    case 130: return "Abyss Of Atlas 3";
    case 131: return "Scorched Canyon";
    default: return "Unknown";
    }
}


Disabling display of map image if not initialized in CUIMapName::InitImgPathMap()
You can edit UIMapName.cpp.
C++:
void CUIMapName::ShowMapName()
{
    if (m_mapImgPath.find(gMapManager.WorldActive) == m_mapImgPath.end()) {
        m_eState = HIDE;
        return;
    }

... rest of your code ...
 

Attachments

You must be registered for see attachments list
Last edited:
Junior Spellweaver
Joined
Feb 4, 2017
Messages
119
Reaction score
14
I'm planning to organize these client/server files. I started from scratch, and here's the result I've achieved. It seems there are no major bugs. If I succeed, I'll publish the outcome of my work for our community.

All maps and basic events are functioning properly. [Tested - 100%]

Fenrir [100% tested]
Dark Horse [100% tested]
Dark Raven [100% tested]
Socket Items [100% tested]


I'm starting to test the skills on all characters. [In progress]





For now, I'm sticking with Season 5. In Season 6, there are many changes related to the game protocol and data structures.






I made this fix to test ex maps from higher seasons.
You can edit MapManager.cpp.

C++:
const char* CMapManager::GetMapName(int iMap) {
    switch (iMap) {
    case 0: return "Lorencia";
    case 1: return "Dungeon";
    case 2: return "Devias";
    case 3: return "Noria";
    case 4: return "Lost Tower";
    case 5: return "(5) Null";
    case 6: return "Arena";
    case 7: return "Atlans";
    case 8: return "Tarkan";
    case 9: return "Devil Square 1 - 4";
    case 10: return "Icarus";
    case 11: return "Blood Castle 1";
    case 12: return "Blood Castle 2";
    case 13: return "Blood Castle 3";
    case 14: return "Blood Castle 4";
    case 15: return "Blood Castle 5";
    case 16: return "Blood Castle 6";
    case 17: return "Blood Castle 7";
    case 18: return "Chaos Castle 1";
    case 19: return "Chaos Castle 2";
    case 20: return "Chaos Castle 3";
    case 21: return "Chaos Castle 4";
    case 22: return "Chaos Castle 5";
    case 23: return "Chaos Castle 6";
    case 24: return "Kalima 1";
    case 25: return "Kalima 2";
    case 26: return "Kalima 3";
    case 27: return "Kalima 4";
    case 28: return "Kalima 5";
    case 29: return "Kalima 6";
    case 30: return "Valley Of Loren";
    case 31: return "Land Of Trials";
    case 32: return "Devil Square 5 - 8";
    case 33: return "Aida";
    case 34: return "Crywolf";
    case 35: return "(35) Null";
    case 36: return "Kalima 7";
    case 37: return "Kanturu";
    case 38: return "Kanturu Ruins";
    case 39: return "Kanturu Refinery Tower";
    case 40: return "Silent Map";
    case 41: return "Balgass Barracks";
    case 42: return "Balgass Refuge";
    case 43: return "(43) Null";
    case 44: return "(44) Null";
    case 45: return "Illusion Temple 1";
    case 46: return "Illusion Temple 2";
    case 47: return "Illusion Temple 3";
    case 48: return "Illusion Temple 4";
    case 49: return "Illusion Temple 5";
    case 50: return "Illusion Temple 6";
    case 51: return "Elbeland";
    case 52: return "Blood Castle 8";
    case 53: return "Chaos Castle 7";
    case 54: return "(54) Null";
    case 55: return "(54) Null";
    case 56: return "Swamp Of Calmness";
    case 57: return "Raklion";
    case 58: return "Raklion Hatchery";
    case 59: return "(59) Null";
    case 60: return "(60) Null";
    case 61: return "(61) Null";
    case 62: return "Santa Village";
    case 63: return "Vulcanus";
    case 64: return "Duel Arena";
    case 65: return "Doppelganger Snow";
    case 66: return "Doppelganger Vulcan";
    case 67: return "Doppelganger Sea";
    case 68: return "Doppelganger Crystals";
    case 69: return "ImperialGuardian 1";
    case 70: return "ImperialGuardian 2";
    case 71: return "ImperialGuardian 3";
    case 72: return "ImperialGuardian 4";
    case 73: return "(73) Null";
    case 74: return "(74) Null";
    case 75: return "(75) Null";
    case 76: return "(76) Null";
    case 77: return "(77) Null";
    case 78: return "(78) Null";
    case 79: return "Loren Market";
    case 80: return "Karutan 1";
    case 81: return "Karutan 2";
    case 82: return "Doppelganger Renewal";
    case 83: return "(83) Null";
    case 84: return "(84) Null";
    case 85: return "(85) Null";
    case 86: return "(86) Null";
    case 87: return "(87) Null";
    case 88: return "(88) Null";
    case 89: return "(89) Null";
    case 90: return "(90) Null";
    case 91: return "Acheron";
    case 92: return "Arka War";
    case 93: return "(93) Null";
    case 94: return "(94) Null";
    case 95: return "Debenter";
    case 96: return "Arca Battle";
    case 97: return "Chaos Castle Survival";
    case 98: return "Illussion Temple League 1";
    case 99: return "Illussion Temple League 2";
    case 100: return "Urk Montain 1";
    case 101: return "Urk Montain 2";
    case 102: return "Tormented Square of the Fittest";
    case 103: return "Tormented Square 1";
    case 104: return "Tormented Square 2";
    case 105: return "Tormented Square 3";
    case 106: return "Tormented Square 4";
    case 107: return "(107) Null";
    case 108: return "(108) Null";
    case 109: return "(109) Null";
    case 110: return "Nars";
    case 111: return "(111) Null";
    case 112: return "Ferea";
    case 113: return "Nixie Lake";
    case 114: return "Labyrinth Entrance";
    case 115: return "Labyrinth";
    case 116: return "DeepDungeon 1";
    case 117: return "DeepDungeon 2";
    case 118: return "DeepDungeon 3";
    case 119: return "DeepDungeon 4";
    case 120: return "DeepDungeon 5";
    case 121: return "4th Quest";
    case 122: return "Swamp Of Darkness";
    case 123: return "Kubera Mine Area 1";
    case 124: return "Kubera Mine Area 2";
    case 125: return "Kubera Mine Area 3";
    case 126: return "Kubera Mine Area 4";
    case 127: return "Kubera Mine Area 5";
    case 128: return "Abyss Of Atlas 1";
    case 129: return "Abyss Of Atlas 2";
    case 130: return "Abyss Of Atlas 3";
    case 131: return "Scorched Canyon";
    default: return "Unknown";
    }
}


Disabling display of map image if not initialized in CUIMapName::InitImgPathMap()
You can edit UIMapName.cpp.
C++:
void CUIMapName::ShowMapName()
{
    if (m_mapImgPath.find(gMapManager.WorldActive) == m_mapImgPath.end()) {
        m_eState = HIDE;
        return;
    }

... rest of your code ...
Can you share the entire client and server source code to me? Thank you
 
Newbie Spellweaver
Joined
Jul 13, 2019
Messages
87
Reaction score
37
most of the skills work fine, the Impale skill has an error, the skill's effect is not visible on other characters due to the use of joint loop and effect is not good, you can increase the quantity or use another more effective way
 
Junior Spellweaver
Joined
Aug 1, 2011
Messages
126
Reaction score
90
I successfuly enabled Rage Fighter without major bugs. Tried also add maps like Acheron, Debenter, but some models are not loaded properly. Send me please decrypted ex maps for higher seasons, that will work in Season 6 client. I found that Imperial Guardian Event at the end crashing client.
 

Attachments

You must be registered for see attachments list
Last edited:
Joined
Oct 8, 2006
Messages
740
Reaction score
289
I successfuly enabled Rage Fighter without major bugs. Tried also add maps like Acheron, Debenter, but some models are not loaded properly. Send me please decrypted ex maps for higher seasons, that will work in Season 6 client. I found that Imperial Guardian Event at the end crashing client.
On Rage Fighter, did you add the Phoenix Shot animation?
 
Junior Spellweaver
Joined
Aug 1, 2011
Messages
126
Reaction score
90
Customs:

At the end of SEASON3B::CNewUIMyInventory::EquipmentWindowProcess()

C++:
    }
    else if (m_iPointedSlot != -1 && IsRelease(VK_RBUTTON) && GetRepairMode() == REPAIR_MODE_OFF)
    {
        ITEM* pEquippedItem = &CharacterMachine->Equipment[m_iPointedSlot];

        if (pEquippedItem == NULL)
        {
            return false;
        }

        bool bCanUnequip = true;

        if (gMapManager.WorldActive == WD_10HEAVEN)
        {
            ITEM* pEquippedPetItem = &CharacterMachine->Equipment[EQUIPMENT_HELPER];

            if (m_iPointedSlot == EQUIPMENT_HELPER || m_iPointedSlot == EQUIPMENT_WING)
            {
                if (((m_iPointedSlot == EQUIPMENT_HELPER) && !gCharacterManager.IsEquipedWing()))
                {
                    bCanUnequip = false;
                }
                else if (((m_iPointedSlot == EQUIPMENT_WING) && !((pEquippedPetItem->Type == ITEM_HELPER + 3) || (pEquippedPetItem->Type == ITEM_HELPER + 4) || (pEquippedPetItem->Type == ITEM_HELPER + 37)))
                    )
                {
                    bCanUnequip = false;
                }
            }

        }

        if (bCanUnequip == true)
        {
            int nDstIndex = FindEmptySlot(pEquippedItem);

            if (nDstIndex != -1)
            {
                SendRequestEquipmentItem(REQUEST_EQUIPMENT_INVENTORY, pEquippedItem->lineal_pos,
                    pEquippedItem, REQUEST_EQUIPMENT_INVENTORY, MAX_EQUIPMENT_INDEX + nDstIndex);

                ::PlayBuffer(SOUND_GET_ITEM01);

                UnequipItem(pEquippedItem->lineal_pos);
            }
        }
    }

    return false;
}

Warning: I haven't tested it, use at your own risk. It works for me, and is secured for Icarus things with wings or flying pets.
Somewhere in bool SEASON3B::CNewUIMyInventory::InventoryProcess()

C++:
#endif //LJH_ADD_SYSTEM_OF_EQUIPPING_ITEM_FROM_INVENTORY
            else
            {
                for (int i = EQUIPMENT_WEAPON_RIGHT; i <= MAX_EQUIPMENT; i++)
                {
                    if ((i == EQUIPMENT_WEAPON_LEFT || i == EQUIPMENT_WEAPON_RIGHT) &&
                        (pItem->TwoHand ? (CharacterMachine->Equipment[EQUIPMENT_WEAPON_LEFT].Type != -1 || CharacterMachine->Equipment[EQUIPMENT_WEAPON_RIGHT].Type != -1) :
                        (CharacterMachine->Equipment[EQUIPMENT_WEAPON_LEFT].Type != -1 && CharacterMachine->Equipment[EQUIPMENT_WEAPON_LEFT].TwoHand) ||
                            (CharacterMachine->Equipment[EQUIPMENT_WEAPON_RIGHT].Type != -1 && CharacterMachine->Equipment[EQUIPMENT_WEAPON_RIGHT].TwoHand))) continue;

                    if (IsEquipable(i, pItem) && CharacterMachine->Equipment[i].Type == -1)
                    {
                        SendRequestEquipmentItem(REQUEST_EQUIPMENT_INVENTORY, MAX_EQUIPMENT_INDEX + iIndex, pItem, REQUEST_EQUIPMENT_INVENTORY, i);
                        DeleteItem(iIndex);
                        return true;
                    }
                }
            }
        }
 
    }
    else if(m_pNewInventoryCtrl && GetRepairMode() == REPAIR_MODE_ON && SEASON3B::IsPress(VK_LBUTTON))

Warning: I haven't tested it, use at your own risk. It works for me, and is secured for twohanded weapon bug.

Fixes:

In ZzzCharacter.cpp find:
C++:
void SetAttackSpeed()
{

    float AttackSpeed1 = CharacterAttribute->AttackSpeed * 0.004f;
    float MagicSpeed1  = CharacterAttribute->MagicSpeed * 0.004f;
    float MagicSpeed2  = CharacterAttribute->MagicSpeed * 0.002f;

Change with:

C++:
void SetAttackSpeed()
{
#ifndef RGZ_FIX_ATTACK_SPEED
    float AttackSpeed1 = CharacterAttribute->AttackSpeed * 0.004f;
    float MagicSpeed1 = CharacterAttribute->MagicSpeed * 0.004f;
    float MagicSpeed2 = CharacterAttribute->MagicSpeed * 0.002f;
#else
    float AttackSpeed1 = CharacterAttribute->AttackSpeed;
    float MagicSpeed1  = CharacterAttribute->MagicSpeed;
    float MagicSpeed2  = CharacterAttribute->MagicSpeed;

    if (CharacterAttribute->AttackSpeed >= 509 && CharacterAttribute->AttackSpeed <= 549)
    {
        AttackSpeed1 = AttackSpeed1 * 0.0026000f;
    }
    else if (CharacterAttribute->AttackSpeed >= 550 && CharacterAttribute->AttackSpeed <= 750)
    {
        AttackSpeed1 = AttackSpeed1 * 0.0017000f;
    }
    else
    {
        AttackSpeed1 = AttackSpeed1 * 0.0040000f;
    }

    if (CharacterAttribute->MagicSpeed >= 509 && CharacterAttribute->MagicSpeed <= 549)
    {
        MagicSpeed1 = MagicSpeed1 * 0.0026000f;
    }
    else if (CharacterAttribute->MagicSpeed >= 550 && CharacterAttribute->MagicSpeed <= 750)
    {
        MagicSpeed1 = MagicSpeed1 * 0.0017000f;
    }
    else
    {
        MagicSpeed1 = MagicSpeed1 * 0.0040000f;
    }

    if (CharacterAttribute->MagicSpeed >= 455 && CharacterAttribute->MagicSpeed <= 479)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0024700f;
    }
    else if (CharacterAttribute->MagicSpeed >= 605 && CharacterAttribute->MagicSpeed <= 636)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0019000f;
    }
    else if (CharacterAttribute->MagicSpeed >= 637 && CharacterAttribute->MagicSpeed <= 668)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0018000f;
    }
    else if (CharacterAttribute->MagicSpeed >= 669 && CharacterAttribute->MagicSpeed <= 688)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0017000f;
    }
    else if (CharacterAttribute->MagicSpeed >= 855 && CharacterAttribute->MagicSpeed <= 1040)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0016300f;
    }
    else if (CharacterAttribute->MagicSpeed >= 1041 && CharacterAttribute->MagicSpeed <= 1104)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0015500f;
    }
    else if (CharacterAttribute->MagicSpeed >= 1301 && CharacterAttribute->MagicSpeed <= 1500)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0017500f;
    }
    else if (CharacterAttribute->MagicSpeed >= 1501 && CharacterAttribute->MagicSpeed <= 1524)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0015000f;
    }
    else if (CharacterAttribute->MagicSpeed >= 1525 && CharacterAttribute->MagicSpeed <= 1800)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0014500f;
    }
    else if (CharacterAttribute->MagicSpeed >= 1801 && CharacterAttribute->MagicSpeed <= 1999)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0013000f;
    }
    else if (CharacterAttribute->MagicSpeed >= 2000 && CharacterAttribute->MagicSpeed <= 2167)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0012500f;
    }
    else if (CharacterAttribute->MagicSpeed >= 2168 && CharacterAttribute->MagicSpeed <= 2354)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0011500f;
    }
    else if (CharacterAttribute->MagicSpeed >= 2855 && CharacterAttribute->MagicSpeed <= 3011)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0009000f;
    }
    else if (CharacterAttribute->MagicSpeed >= 3011)
    {
        MagicSpeed2 = MagicSpeed2 * 0.0008100f;
    }
    else
    {
        MagicSpeed2 = MagicSpeed2 * 0.0020000f;
    }
#endif

in defined_global.h add
C++:
#define RGZ_FIX_ATTACK_SPEED

Yes, my skills working good. Animation is displayed nice even if im 65k agility.

The issue occurs on the server side. Everything on the client side is fine. The problem arises when the structure in the skill manager changes from season 4 to season 6.

I added the following to SkillManager.cpp:

C++:
#include "log.h"

I debugged the CGDurationSkillAttackRecv function using the code:

C++:
gLog.Output(LOG_HACK, "SkillData: Skill: %d, X: %d, Y: %d, Dir: %d, Dis: %d, Angle: %d, Index: %d, MagicKey: %d",
MAKE_NUMBERW(lpMsg->skill[0], lpMsg->skill[1]), lpMsg->x, lpMsg->y, lpMsg->dir, lpMsg->dis, lpMsg->angle, MAKE_NUMBERW(lpMsg->index[0], lpMsg->index[1]), lpMsg->MagicKey);

And UseDurationSkillAttack with the code:

C++:
gLog.Output(LOG_HACK, "UseDurationSkillAttack: aIndex: %d, bIndex: %d, Skill: %d, X: %d, Y: %d, Dir: %d, Angle: %d",
aIndex, bIndex, lpSkill->m_skill, x, y, dir, angle);


Take look log:

C++:
Twisting slash: [Not working]

23:21:45 SkillData: Skill: 41, X: 141, Y: 128, Dir: 211, Dis: 0, Angle: 0, Index: 65535, MagicKey: 0
23:21:45 UseDurationSkillAttack 1: aIndex: 9000, bIndex: 65535, Skill: 13, X: 141, Y: 128, Dir: 211, Angle: 0

Rageful blow: [Working]

23:21:47 SkillData: Skill: 42, X: 141, Y: 128, Dir: 211, Dis: 0, Angle: 135, Index: 65535, MagicKey: 0
23:21:47 UseDurationSkillAttack: aIndex: 9000, bIndex: 65535, Skill: 42, X: 141, Y: 128, Dir: 211, Angle: 135

The client sends a request to use skill 41 (Twisting Slash), and the server confirms receiving the intent to use Twisting Slash (41). Subsequently, the server retrieves information about the skill and determines that it possesses skill number 13. As a result, the server triggers the procedure associated with skill 13. This is surprising because skill 42 (Rageful Blow) works correctly with the same packet. When the server retrieves information about skill 42, it correctly acknowledges receiving skill 42.


I identified that the error starts from this point:

C++:
lpSkill = this->GetSkill(lpObj, skill);

Problem solution:

USE PROPER GAME SERVER FILES.

No server-side problem with skills handling.


Crash Fixes:

C++:
int CMultiLanguage::ConvertCharToWideStr(std::wstring& wstrDest, LPCSTR lpString)
{
    wstrDest.clear();

    if (lpString == nullptr) {
        return 0;
    }

    UINT iConversionType = (IsCharUTF8(lpString)) ? CP_UTF8 : iCodePage;
    int unicodeLength = MultiByteToWideChar(iConversionType, 0, lpString, -1, nullptr, 0);

    if (unicodeLength <= 2)
    {
        return 0;
    }

    wstrDest.resize(unicodeLength - 1);


    if (MultiByteToWideChar(iConversionType, 0, lpString, -1, &wstrDest[0], unicodeLength - 1) == 0) {
        return 0;
    }

    return unicodeLength - 1;
}

also edit:

C++:
BOOL CMultiLanguage::_GetTextExtentPoint32(HDC hdc, LPCSTR lpString, int cbString, LPSIZE lpSize)
{
    if (strlen(lpString) <= 1)
    {
        return GetTextExtentPoint32A(hdc, lpString, 1, lpSize);
    }

    std::wstring wstrText = L"";
    ConvertCharToWideStr(wstrText, lpString);
 
    return GetTextExtentPoint32W(hdc, wstrText.c_str(), wstrText.length(), lpSize);
}

C++:
HRESULT PlayBuffer(int Buffer,OBJECT *Object,BOOL bLooped)
{
    if(!g_EnableSound) return false;
    if(Buffer < 0) return false;

    HRESULT hr;

    if( NULL == g_lpDSBuffer[Buffer][BufferChannel[Buffer]] )
    {
        return E_FAIL;
    }

    // Play buffer
    DWORD dwLooped = bLooped ? DSBPLAY_LOOPING : 0L;

    if (g_lpDSBuffer[Buffer][BufferChannel[Buffer]] == nullptr)
    {
        g_ConsoleDebug->Write(MCD_ERROR, "Invalid sound buffer: %d", Buffer);
        return E_FAIL;
    }

    hr = g_lpDSBuffer[Buffer][BufferChannel[Buffer]]->Play(0, 0, dwLooped);

    if (FAILED(hr))
    {
        g_ConsoleDebug->Write(MCD_ERROR, "Failed to play sound: %d, %d, HRESULT = 0x%X", Buffer, dwLooped, hr);
        return hr;
    }
 
    if(Enable3DSound[Buffer])
    {
        Object3DSound[Buffer][BufferChannel[Buffer]] = Object;
          SetHall(Buffer);
    }

    if(BufferChannel[Buffer] >= MaxBufferChannel[Buffer])
    {
        BufferChannel[Buffer] = 0;
    }
    return S_OK;
}


Tutorials:

in ZzzInventory.cpp find:
C++:
void RenderItem3D(float sx,float sy,float Width,float Height,int Type,int Level,int Option1,int ExtOption,bool PickUp)

change to:

C++:
void RenderItem3D(float sx,float sy,float Width,float Height,int Type,int Level,int Option1,int ExtOption,bool PickUp, bool forGameshop)

in ZzzInventory.h find:
C++:
void RenderItem3D(float sx,float sy,float Width,float Height,int Type,int Level,int Option1,int ExtOption,bool PickUp=false);

change to:

C++:
void RenderItem3D(float sx,float sy,float Width,float Height,int Type,int Level,int Option1,int ExtOption,bool PickUp=false, bool forGameshop = false);


In NewUIInGameShop.cpp find:
C++:
RenderItem3D(iPosX, iPosY, IGS_ITEMRENDER_POS_WIDTH, IGS_ITEMRENDER_POS_HEIGHT, g_InGameShopSystem->GetPackageItemCode(i), 0, 0, 0, true);

Change to:
C++:
RenderItem3D(iPosX, iPosY, IGS_ITEMRENDER_POS_WIDTH, IGS_ITEMRENDER_POS_HEIGHT, g_InGameShopSystem->GetPackageItemCode(i), 0, 0, 0, true, true);


And now You have in ZzzInventory function named RenderItem3D, you can find something like this:
C++:
    else if(Type>=ITEM_POTION && Type<ITEM_POTION+MAX_ITEM_INDEX)
    {
        sx += Width*0.5f;
        sy += Height*0.95f;
    }

You can adjust item position only for InGameShop:

C++:
    else if(Type>=ITEM_POTION && Type<ITEM_POTION+MAX_ITEM_INDEX)
    {
if(forGameshop)
{
        sx += Width*0.5f;
        sy += Height*0.95f;
}
else
{
        sx += Width*0.5f;
        sy += Height*0.95f;

}
    }

Responses:

most of the skills work fine, the Impale skill has an error, the skill's effect is not visible on other characters due to the use of joint loop and effect is not good, you can increase the quantity or use another more effective way
That's not true. Go MuServer\Data\Skill\Skill.txt Find Impale and increase Range to 6.

Code:
    if(lpObj->Type == OBJECT_USER && this->CheckSkillRange(lpSkill->m_index,lpObj->X,lpObj->Y,gObj[bIndex].X,gObj[bIndex].Y) == 0)
    {
        return 0;
    }

That was code that made impale not working for You.


zipper20032 - I not added Phoenix Shot skill.


Cool stuff:

I bringed monsters and npcs from higher season back to Main 5.2.
Take look acheron screenshots.

.

.
 

Attachments

You must be registered for see attachments list
Last edited:
Back
Top