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

Page 16 of 25 FirstFirst ... 689101112131415161718192021222324 ... LastLast
Results 226 to 240 of 370
  1. #226
    if(!caffeine) continue; leorond is offline
    MemberRank
    Jul 2012 Join Date
    Czech RepublicLocation
    479Posts

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

    Hi, I'm glad this topic is reopening. I researched the source and launched it in combination with the 4.6 JPN season server. I fixed a lot of bugs in the files and added new wings and maps. I fixed a display error with HP, MP, SD, BP and DMG. It was also necessary to fix the PickupItems move, while holding the item and then closing the character inventory -> crash. The same problem in the cash shop. I hope that together we will solve all the problems in this topic.

  2. #227
    Novice xiaoqiang0 is offline
    MemberRank
    May 2021 Join Date
    1Posts

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

    Quote Originally Posted by leorond View Post
    Hi, I'm glad this topic is reopening. I researched the source and launched it in combination with the 4.6 JPN season server. I fixed a lot of bugs in the files and added new wings and maps. I fixed a display error with HP, MP, SD, BP and DMG. It was also necessary to fix the PickupItems move, while holding the item and then closing the character inventory -> crash. The same problem in the cash shop. I hope that together we will solve all the problems in this topic.
    can u share the code modification pls? i'm also researching the source code and do some custom modify, and the first goal is 60 fps

  3. #228
    Developer nevS is offline
    MemberRank
    Aug 2005 Join Date
    GermanyLocation
    531Posts

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

    Yea, would be great if we would have a public git repo, so all can work together ;-)

  4. #229
    if(!caffeine) continue; leorond is offline
    MemberRank
    Jul 2012 Join Date
    Czech RepublicLocation
    479Posts

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

    I'll share as soon as I have a moment to write it.

  5. #230
    Novice Qubit is offline
    MemberRank
    Nov 2021 Join Date
    2Posts

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

    Quote Originally Posted by CoLinS View Post
    I converted project to vs2019 (v142 toolkit).

    All configurations compiles successfully so I assume it should work. I didn't test it well... I hope code is compatible with newer vc++ compiler.

    https://www.mediafire.com/file/ztxsq...vs2019.7z/file

    Changes:


    I think is a good starting point to develop something new.

    To work with vs2019 you should update boost library to newest.
    I can't zip the file and you don't specify the format or it is problematic, I tried with several programs 7.zip, WinRAR, PowerArchive 2021. None could unzip, please if possible resend the file in another universal and easily accessible format

  6. #231
    Novice Qubit is offline
    MemberRank
    Nov 2021 Join Date
    2Posts

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

    as I didn't have an answer, I decided to look it up on my own. The format is Zstandard or ZS you need to download https://github.com/mcmilk/7-Zip-zstd/releases



    - - - Updated - - -


    as I didn't have an answer, I decided to look it up on my own. The format is Zstandard or ZS you need to download https://github.com/mcmilk/7-Zip-zstd/releases



    - - - Updated - - -


    as I didn't have an answer, I decided to look it up on my own. The format is Zstandard or ZS you need to download https://github.com/mcmilk/7-Zip-zstd/releases


  7. #232
    Valued Member wahaha is offline
    MemberRank
    Apr 2015 Join Date
    147Posts

    big grin Re: [Development] Source Mu Main 1.03.35 [Season 5.1 - Season 5.2]

    Quote Originally Posted by Qubit View Post
    as I didn't have an answer, I decided to look it up on my own. The format is Zstandard or ZS you need to download https://github.com/mcmilk/7-Zip-zstd/releases



    - - - Updated - - -


    as I didn't have an answer, I decided to look it up on my own. The format is Zstandard or ZS you need to download https://github.com/mcmilk/7-Zip-zstd/releases



    - - - Updated - - -


    as I didn't have an answer, I decided to look it up on my own. The format is Zstandard or ZS you need to download https://github.com/mcmilk/7-Zip-zstd/releases

    you can use this one :https://github.com/baulk/baulk7z

  8. #233
    Account Upgraded | Title Enabled! Odisk is offline
    MemberRank
    Apr 2009 Join Date
    VenezuelaLocation
    208Posts

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

    someone still working on this?

  9. #234
    if(!caffeine) continue; leorond is offline
    MemberRank
    Jul 2012 Join Date
    Czech RepublicLocation
    479Posts

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

    Quote Originally Posted by Odisk View Post
    someone still working on this?
    Yes, I'm working on it.

  10. #235
    Apprentice loadmu is offline
    MemberRank
    Jul 2021 Join Date
    23Posts

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

    very god

  11. #236
    if(!caffeine) continue; leorond is offline
    MemberRank
    Jul 2012 Join Date
    Czech RepublicLocation
    479Posts

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

    If you want to speed up loading and reduce the impact on memory.

    I recommend starting with the ZzzOpenData.cpp file.

    This is very bad!
    PHP Code:
        //////////////////////////////////////////////////////////////////////////
        //  °Ë. MODEL_SWORD
        //////////////////////////////////////////////////////////////////////////
    #ifdef _VS2008PORTING
        
    for(int i=0;i<17;i++)
    #else // _VS2008PORTING
        
    for(i=0;i<17;i++)
    #endif // _VS2008PORTING
              
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword" ,i+1);    //  °Ë.

        
    AccessModel(MODEL_SWORD+17 ,"Data\\Item\\","Sword" ,18);    //  ´ŮĹ©şę·ąŔĚÄż.
        
    AccessModel(MODEL_SWORD+18 ,"Data\\Item\\","Sword" ,19);    //  Ľ±´ő şę·ąŔ̵ĺ.
        
    AccessModel(MODEL_SWORD+19 ,"Data\\Item\\","Sword" ,20);    //  ´ëõ»çŔÇ Ŕý´ë°Ë.

        
    AccessModel(MODEL_SWORD+20 ,"Data\\Item\\","Sword" ,21);    // ¸¶°Ë»ç Ăß°ˇ°Ë
        
    AccessModel(MODEL_SWORD+21 ,"Data\\Item\\","Sword" ,22);    // ±â»ç Ăß°ˇ°Ë
        
    AccessModel MODEL_SWORD+31"Data\\Item\\""Sword"32 );    //    ¸¶°Ë»ç ¸¶ąý°Ë. 
    What about?
    PHP Code:
    void OpenSwordItems()
    {
        
    int i 0;
        
    int maxSword 32;

        for(
    i=0i<maxSwordi++)    // <= Indicate the actual number of weapons.
        
    {
            
    //If you want to skip an item.
            
    if ((>= && <= 21
                || 
    == 31
            {
                      
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword" ,i+1);    //  °Ë.
            
    }
    #ifdef ADD_SOCKET_ITEM
            
    else if ((>= 26 && <= 28))
            {
                      
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword_" ,i+1);    //  °Ë.
            
    }
    #endif
            
    else if (== 22)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""HDK_Sword");
            }
            else if (
    == 23)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""HDK_Sword2");
            }
            else if (
    == 24)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""CW_Sword");    
            }
            else if (
    == 25)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""CW_Sword2");
            }
        }

    It is much better to create a function that loads all sword models in one cycle.
    Everything is in one place and there is no need to write anything outside the cycle.
    It is not the cleanest solution.
    It is better to load all swords in one way like Sword_XXX.bmd. Then there is no need to make an exception on the id.

    The ZzzOpenData.cpp file is full of errors. These mistakes are really terrible and I can't explain how someone could have made them.

  12. #237
    if(!caffeine) continue; leorond is offline
    MemberRank
    Jul 2012 Join Date
    Czech RepublicLocation
    479Posts

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

    I optimize for you the functions of loading Models and textures of sets, weapons and shields.

    Then I will share the ZzzOpenData.bmd file for you.

    Then I will continue to work.

  13. #238
    Account Upgraded | Title Enabled! Odisk is offline
    MemberRank
    Apr 2009 Join Date
    VenezuelaLocation
    208Posts

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

    Quote Originally Posted by leorond View Post
    If you want to speed up loading and reduce the impact on memory.

    I recommend starting with the ZzzOpenData.cpp file.

    This is very bad!
    PHP Code:
        //////////////////////////////////////////////////////////////////////////
        //  °Ë. MODEL_SWORD
        //////////////////////////////////////////////////////////////////////////
    #ifdef _VS2008PORTING
        
    for(int i=0;i<17;i++)
    #else // _VS2008PORTING
        
    for(i=0;i<17;i++)
    #endif // _VS2008PORTING
              
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword" ,i+1);    //  °Ë.

        
    AccessModel(MODEL_SWORD+17 ,"Data\\Item\\","Sword" ,18);    //  ´ŮĹ©şę·ąŔĚÄż.
        
    AccessModel(MODEL_SWORD+18 ,"Data\\Item\\","Sword" ,19);    //  Ľ±´ő şę·ąŔ̵ĺ.
        
    AccessModel(MODEL_SWORD+19 ,"Data\\Item\\","Sword" ,20);    //  ´ëõ»çŔÇ Ŕý´ë°Ë.

        
    AccessModel(MODEL_SWORD+20 ,"Data\\Item\\","Sword" ,21);    // ¸¶°Ë»ç Ăß°ˇ°Ë
        
    AccessModel(MODEL_SWORD+21 ,"Data\\Item\\","Sword" ,22);    // ±â»ç Ăß°ˇ°Ë
        
    AccessModel MODEL_SWORD+31"Data\\Item\\""Sword"32 );    //    ¸¶°Ë»ç ¸¶ąý°Ë. 
    What about?
    PHP Code:
    void OpenSwordItems()
    {
        
    int i 0;
        
    int maxSword 32;

        for(
    i=0i<maxSwordi++)    // <= Indicate the actual number of weapons.
        
    {
            
    //If you want to skip an item.
            
    if ((>= && <= 21
                || 
    == 31
            {
                      
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword" ,i+1);    //  °Ë.
            
    }
    #ifdef ADD_SOCKET_ITEM
            
    else if ((>= 26 && <= 28))
            {
                      
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword_" ,i+1);    //  °Ë.
            
    }
    #endif
            
    else if (== 22)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""HDK_Sword");
            }
            else if (
    == 23)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""HDK_Sword2");
            }
            else if (
    == 24)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""CW_Sword");    
            }
            else if (
    == 25)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""CW_Sword2");
            }
        }

    It is much better to create a function that loads all sword models in one cycle.
    Everything is in one place and there is no need to write anything outside the cycle.
    It is not the cleanest solution.
    It is better to load all swords in one way like Sword_XXX.bmd. Then there is no need to make an exception on the id.

    The ZzzOpenData.cpp file is full of errors. These mistakes are really terrible and I can't explain how someone could have made them.
    Only in webzen to work you need to be an initial student in the university.

    It won't be a bad place to start.

  14. #239
    Darkness Member Kiosani is offline
    MemberRank
    Oct 2007 Join Date
    ArgentinaLocation
    1,276Posts

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

    Quote Originally Posted by leorond View Post
    If you want to speed up loading and reduce the impact on memory.

    I recommend starting with the ZzzOpenData.cpp file.

    This is very bad!
    PHP Code:
        //////////////////////////////////////////////////////////////////////////
        //  °Ë. MODEL_SWORD
        //////////////////////////////////////////////////////////////////////////
    #ifdef _VS2008PORTING
        
    for(int i=0;i<17;i++)
    #else // _VS2008PORTING
        
    for(i=0;i<17;i++)
    #endif // _VS2008PORTING
              
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword" ,i+1);    //  °Ë.

        
    AccessModel(MODEL_SWORD+17 ,"Data\\Item\\","Sword" ,18);    //  ´ŮĹ©şę·ąŔĚÄż.
        
    AccessModel(MODEL_SWORD+18 ,"Data\\Item\\","Sword" ,19);    //  Ľ±´ő şę·ąŔ̵ĺ.
        
    AccessModel(MODEL_SWORD+19 ,"Data\\Item\\","Sword" ,20);    //  ´ëõ»çŔÇ Ŕý´ë°Ë.

        
    AccessModel(MODEL_SWORD+20 ,"Data\\Item\\","Sword" ,21);    // ¸¶°Ë»ç Ăß°ˇ°Ë
        
    AccessModel(MODEL_SWORD+21 ,"Data\\Item\\","Sword" ,22);    // ±â»ç Ăß°ˇ°Ë
        
    AccessModel MODEL_SWORD+31"Data\\Item\\""Sword"32 );    //    ¸¶°Ë»ç ¸¶ąý°Ë. 
    What about?
    PHP Code:
    void OpenSwordItems()
    {
        
    int i 0;
        
    int maxSword 32;

        for(
    i=0i<maxSwordi++)    // <= Indicate the actual number of weapons.
        
    {
            
    //If you want to skip an item.
            
    if ((>= && <= 21
                || 
    == 31
            {
                      
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword" ,i+1);    //  °Ë.
            
    }
    #ifdef ADD_SOCKET_ITEM
            
    else if ((>= 26 && <= 28))
            {
                      
    AccessModel(MODEL_SWORD+,"Data\\Item\\","Sword_" ,i+1);    //  °Ë.
            
    }
    #endif
            
    else if (== 22)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""HDK_Sword");
            }
            else if (
    == 23)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""HDK_Sword2");
            }
            else if (
    == 24)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""CW_Sword");    
            }
            else if (
    == 25)
            {
                
    AccessModel(MODEL_SWORD+i"Data\\Item\\""CW_Sword2");
            }
        }

    It is much better to create a function that loads all sword models in one cycle.
    Everything is in one place and there is no need to write anything outside the cycle.
    It is not the cleanest solution.
    It is better to load all swords in one way like Sword_XXX.bmd. Then there is no need to make an exception on the id.

    The ZzzOpenData.cpp file is full of errors. These mistakes are really terrible and I can't explain how someone could have made them.
    English:

    I think that it would even be much better to optimize these loops for loading objects and textures through the use of iterator vectors, of course memory management would become a little more difficult, but at least this way, you can make sure to host the amount of memory sufficient and necessary for its proper functioning, without the need to over-demand the capabilities of your processor.

    The very indiscriminate use of multiple variables of the integer type (due to the size in BYTES of this type of data), is a bit inconvenient. iterator vectors would give you the possibility of managing memory in more dynamic ways, through the use of 1 type of repetition structure + the implementation of some scripting system external to the code, in this way, a lot of memory is saved.

    Small Example:

    Code:
    #define NONE        -1
    #define MAX_MODEL_PATH    260
    
    typedef struct
    {
        int    Type;
        int    Index;
        char    ModelPath[MAX_MODEL_PATH];
    }ITEM_MODEL,*LPITEM_MODEL;
    
    void CResources::OpenItems()
    {
        for(std::vector<LPITEM_MODEL>::iterator it=this->m_ItemModel.begin();it !=this->m_ItemModel.end();it++)
        {
            if(it->Type == 0)
            {
                if(it->Index >= NULL)
                {
                    sprintf_s(it->ModelPath,"Sword%d",it->Index+1);
                    AccessModel(MODEL_SWORD+it->Index,"Data\\Item\\",it->ModelPath,NONE);
                }
            }
            else if(it->Type == 1)
            {
                if(it->Index >= NULL)
                {
                    sprintf_s(it->ModelPath,"Axe%d",it->Index+1);
                    AccessModel(MODEL_AXE+it->Index,"Data\\Item\\",it->ModelPath,NONE);
                }
            }
        }
    }
    Spanish:

    Creo que incluso sería mucho mejor optimizar estos bucles para cargar objetos y texturas mediante el uso de vectores iteradores, por supuesto, la administración de la memoria se volvería un poco más difícil, pero al menos de esta manera, puede asegurarse de alojar la cantidad de memoria suficiente y necesaria para su correcto funcionamiento, sin necesidad de sobreexigir las capacidades de su procesador.

    El uso muy indiscriminado de multiples variables del tipo enteras (por el tamaño en BYTES de este tipo de dato), es un poco incoveniente. los vectores iteratores le darían a usted la posibilidad de manejar la memoria de formas mas dinamicas, por medio del uso de 1 tipo de estructura de repetición + la implementación de algún sistema de script externo al código, de este modo, se ahorra mucha memoria.
    Last edited by Kiosani; 21-11-21 at 08:58 PM.

  15. #240
    if(!caffeine) continue; leorond is offline
    MemberRank
    Jul 2012 Join Date
    Czech RepublicLocation
    479Posts

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

    Yes, this is how the solution may look. As a result, however, the difference will be almost imperceptible to today's players. Important in this fix is ​​to eliminate unnecessary cycling and reduce script processing time to a minimum. That's right, as you write, everything, including textures and models, should be placed in one cycle, ideally using structure. However, players now have enough memory to store and therefore it is not necessary. However, as I write, this is a sufficient solution for loading textures and models.



Advertisement