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!

[Release] Fix Custom RF Gloves (Season 9)

Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
Credits:
Me
WZ

@solarismu hello friend share source rf gloves :)
Note : Custom Gloves Effects are not included in this released. I use a different Custom Effect System in S9, not time to release it now:p
So, missing visual effect is expected. You may need to code custom effects by yourself. Cheer!

DllMain Hook
Code:
    HookThis((DWORD)&VicRFGloves_4, HOOK_RF_GLOVES_4);
    HookThis((DWORD)&VicRFGloves_3, HOOK_RF_GLOVES_3);
    HookThis((DWORD)&VicRFGloves_2, HOOK_RF_GLOVES_2);
    HookThis((DWORD)&VicRFGloves_1, HOOK_RF_GLOVES_1);
CustomRFWeaponsFix
Code:
//-------------------------------------------
//Fix Added Custom RF Weapons
//By Vic
//-------------------------------------------

#define HOOK_RF_GLOVES_1 0x005999CA
#define JMPBACK_RF_GLOVES_1 0x005999D2
#define HOOK_RF_GLOVES_2 0x00521C96
#define JMPBACK_RF_GLOVES_2 0x00521C9C
#define HOOK_RF_GLOVES_3 0x00586BDA
#define JMPBACK_RF_GLOVES_3 0x00586BE0
#define HOOK_RF_GLOVES_4 0x00612D02
#define JMPBACK_RF_GLOVES_4 0x00612D08

#define CUSTOM_RF_WEAPONS_MAX 4
#define CUSTOM_RF_WEAPONS_LR_GAP 100
DWORD VIC_CUSTOM_RF_WEAPONS[CUSTOM_RF_WEAPONS_MAX] = { 46,52,53,56 };
DWORD VIC_CUSTOM_RF_WEAPONS_R[CUSTOM_RF_WEAPONS_MAX] = { 146,152,153,156 };
DWORD VIC_CUSTOM_RF_WEAPONS_L[CUSTOM_RF_WEAPONS_MAX] = { 246,252,253,256 };

BOOL VicIsCustomRFWeapons(DWORD idx)
{
    if (idx > 1272)
        idx -= 1272;
    for (int i = 0; i < CUSTOM_RF_WEAPONS_MAX; i++)
        if (VIC_CUSTOM_RF_WEAPONS[i] == idx)
            return TRUE;
    return FALSE;
}

BOOL VicIsCustomRFWeapons2(DWORD idx)
{
    if (idx > 1272)
        idx -= 1272;
    for (int i = 0; i < CUSTOM_RF_WEAPONS_MAX; i++)
        if (VIC_CUSTOM_RF_WEAPONS_L[i] == idx || VIC_CUSTOM_RF_WEAPONS_R[i] == idx)
            return TRUE;
    return FALSE;
}

DWORD vRFTemp1;
void __declspec(naked) VicRFGloves_1()
{
    _asm
    {
        mov eax, [ebp - 0x1C];
        mov vRFTemp1, eax;
    }
    
    if (VicIsCustomRFWeapons(vRFTemp1))
    {
        _asm
        {
            mov edx, 0x005999DE;
            jmp edx;
        }
    }

    _asm
    {
        push[ebp - 0x1C];
        mov ecx, 0x012767A0;
        mov edx, JMPBACK_RF_GLOVES_1;
        jmp edx;
    }
}

void __declspec(naked) VicRFGloves_2(DWORD a1, DWORD mIdx, DWORD slot)
{
    if (slot == 0 || slot == 1)
    {
        if (VicIsCustomRFWeapons(mIdx))
        {
            mIdx += CUSTOM_RF_WEAPONS_GAP*(slot+1);
        }
    }
        
    _asm
    {
        push slot;
        push mIdx;
        mov edx, JMPBACK_RF_GLOVES_2;
        jmp edx;
    }
}

DWORD vRFTemp3;
void __declspec(naked) VicRFGloves_3()
{
    _asm
    {
        mov vRFTemp3, eax;
    }
    
    if (VicIsCustomRFWeapons(vRFTemp3))
    {
        _asm
        {
            mov edx, 0x00586BEC;
            jmp edx;
        }
    }
    
    _asm
    {
        mov eax, [ebp - 0x00000348];
        movsx eax, word ptr[eax];
        push eax;
        mov ecx, 0x012767A0;
        mov edx, JMPBACK_RF_GLOVES_3;
        jmp edx;
    }
}

void __declspec(naked) VicRFGloves_4(DWORD a1, DWORD mIdx)
{
    if (VicIsCustomRFWeapons2(mIdx))
    {
        _asm
        {
            mov edx, 0x00612D19;
            jmp edx; 
        }
    }
    _asm
    {
        push mIdx;
        push a1;
        mov edx, JMPBACK_RF_GLOVES_4;
        jmp edx;
    }
}
Remember to add L/R RF Gloves bmd in item.bmd
Ui4ujoP - [Release] Fix Custom RF Gloves (Season 9) - RaGEZONE Forums

84vv30P - [Release] Fix Custom RF Gloves (Season 9) - RaGEZONE Forums
 

Attachments

You must be registered for see attachments list
Junior Spellweaver
Joined
Oct 8, 2014
Messages
126
Reaction score
6
LoadItemTexture(GET_ITEM_MODEL ( 0, 41 ),"Custom\\Item\\RFGloves","Sword41",-1);
LoadItemTexture(0x610,"Custom\\Item\\RFGloves","Sword41L",-1);
LoadItemTexture(0x611,"Custom\\Item\\RFGloves","Sword41R",-1);

Why not write L/R to the code? like this


Written into the item file is very troublesome


Update....

No one replies?
 
Last edited by a moderator:
Skilled Illusionist
Joined
Feb 20, 2012
Messages
310
Reaction score
23
Can you explain how to fix custom gloves in 1.04D, i mean zteam files?
 
Newbie Spellweaver
Joined
Apr 17, 2020
Messages
21
Reaction score
0
Can you share how to fix the effects, there are no effects for custom Gloves weapons
 
Newbie Spellweaver
Joined
Apr 17, 2020
Messages
21
Reaction score
0
You need the source codes and some C++ knowledge and some ASM knowledge when needed.

Yes, his code works well, I know how to use it, is there any code to fix the gloves texture effects?
 
Joined
Oct 8, 2006
Messages
740
Reaction score
289
I'm not sure what are you looking for but you are looking at the source code to fix Custom RF Gloves effect.
I don't know what client files are you using, but if your client is supporting CustomEffect configs, then you should try to use it.

Effects are .OZJ files usually in Mu. Don't get confused by the Item Model with texture (.bmd) and Effect (.ozj). An effect is applied on the model usually because it needs the BMD's bones to apply correctly the effect. If you have a complex item with 40 bones, each bone should have an effect defined with effect values, effect sizes, RGB colors or otherwise it will show the effect only on those bones you defined or not at all. (Usually, if you client supports CustomEffect config files, then you should start working on there).

Anyway, KarLi posted this in 2016. Hope it helps.


http://forum.ragezone.com/f197/library-add-effect-items-1112341/
http://forum.ragezone.com/f508/item-smoke-effect-868154/
http://forum.ragezone.com/f508/adding-effects-items-easy-1010221/
http://forum.ragezone.com/f508/effects-items-939169/
https://forum.ragezone.com/f196/guide-mu-skins-development-kit-1018057/

If the source code from above you are saying it's working, then you are looking for something else.
 
Newbie Spellweaver
Joined
Apr 17, 2020
Messages
21
Reaction score
0
I'm not sure what are you looking for but you are looking at the source code to fix Custom RF Gloves effect.
I don't know what client files are you using, but if your client is supporting CustomEffect configs, then you should try to use it.

Effects are .OZJ files usually in Mu. Don't get confused by the Item Model with texture (.bmd) and Effect (.ozj). An effect is applied on the model usually because it needs the BMD's bones to apply correctly the effect. If you have a complex item with 40 bones, each bone should have an effect defined with effect values, effect sizes, RGB colors or otherwise it will show the effect only on those bones you defined or not at all. (Usually, if you client supports CustomEffect config files, then you should start working on there).

Anyway, KarLi posted this in 2016. Hope it helps.


http://forum.ragezone.com/f197/library-add-effect-items-1112341/
http://forum.ragezone.com/f508/item-smoke-effect-868154/
http://forum.ragezone.com/f508/adding-effects-items-easy-1010221/
http://forum.ragezone.com/f508/effects-items-939169/
https://forum.ragezone.com/f196/guide-mu-skins-development-kit-1018057/

If the source code from above you are saying it's working, then you are looking for something else.

Thank you for these tutorials, I want to fix the effect of custom RF gloves, and I am learning how to make effects. These tutorials may help me :):
 
Back
Top