• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

[Need Help] How to edit Psychic skill effect???

Junior Spellweaver
Joined
Nov 20, 2011
Messages
193
Reaction score
23
I know all skill effect control by GS but how to edit effect of this skill become SELF CAST ONLY
letanduy - [Need Help] How to edit 	Psychic skill effect??? - RaGEZONE Forums

Someone plz help me. Show me how to edit gs with this skill or can share me gs fixed. Very thanks you!
 
Joined
Feb 8, 2010
Messages
711
Reaction score
361
Hi,

not sure if i'm completly off here, but I am pretty sure it's doable.

I wanted to do it the other way around (make certain skills AOE). In the example I used Manifest Virtue.

As we know, gs has some nice and easily editable base skill classes for every skill. I noticed the ::StateAttack() though and wondered if it could be responsible for targeting... and I think it is. I quit this a few months ago though, and never got to any solution. Below is what I have commented and (thought) to have figured out correctly. Specially, I can't figure out what the hell ::SetRatio() does (a method of GNET::playerwrapper).

Code:
.text:084B2ED2 ; int __cdecl GNET_SKILL_MANIFEST_VIRTUE_STATE(int, int)
.text:084B2ED2                 public GNET_SKILL_MANIFEST_VIRTUE_STATE ; weak
.text:084B2ED2 GNET_SKILL_MANIFEST_VIRTUE_STATE proc near
.text:084B2ED2
.text:084B2ED2 var_14          = dword ptr -14h
.text:084B2ED2 var_4           = dword ptr -4
.text:084B2ED2 arg_0           = dword ptr  8
.text:084B2ED2 arg_4           = dword ptr  0Ch
.text:084B2ED2
.text:084B2ED2                 push    ebp
.text:084B2ED3                 mov     ebp, esp
.text:084B2ED5                 sub     esp, 8
.text:084B2ED8                 sub     esp, 8
.text:084B2EDB                 mov     eax, 42C80000h
.text:084B2EE0                 push    eax             ; float
.text:084B2EE1                 push    [ebp+arg_4]
.text:084B2EE4                 call    GNET_GetSkillVictim9
.text:084B2EE9                 add     esp, 4
.text:084B2EEC                 push    eax             ; param : skill id
.text:084B2EED                 call    Calc_probability__INT_sid_
.text:084B2EF2                 add     esp, 10h
.text:084B2EF5                 sub     esp, 8
.text:084B2EF8                 mov     eax, 46EA6000h  ; what the hell
.text:084B2EFD                 push    eax             ; pointer to static GNET action getVictim
.text:084B2EFE                 push    [ebp+arg_4]
.text:084B2F01                 call    GNET_GetSkillVictim9
.text:084B2F06                 add     esp, 4
.text:084B2F09                 push    eax             ; microtimestamp
.text:084B2F0A                 call    Set_Cast_Start_Microtimestamp
.text:084B2F0F                 add     esp, 10h        ; Y U NO USE compiler optimization
.text:084B2F12                 sub     esp, 8
.text:084B2F15                 sub     esp, 4
.text:084B2F18                 push    [ebp+arg_4]
.text:084B2F1B                 call    GNET_GETPlayerInfo9
.text:084B2F20                 add     esp, 4
.text:084B2F23                 push    eax             ; UK... seems to be ptr to struct
.text:084B2F24                 call    GNET_MAXMP_PLAYERW
.text:084B2F29                 add     esp, 8          ; +8 byte stack pointer
.text:084B2F2C                 push    eax             ; push result maxmp
.text:084B2F2D                 fild    [esp+14h+var_14]
.text:084B2F30                 lea     esp, [esp+4]    ; set esp to ptr of struct (return from playerinfo)
.text:084B2F34                 fld     ds:dbl_8880B30
.text:084B2F3A                 fmulp   st(1), st
.text:084B2F3C                 fstp    [ebp+var_4]
.text:084B2F3F                 mov     eax, [ebp+var_4]
.text:084B2F42                 push    eax
.text:084B2F43                 push    [ebp+arg_4]
.text:084B2F46                 call    GNET_GetSkillVictim9
.text:084B2F4B                 add     esp, 4
.text:084B2F4E                 push    eax
.text:084B2F4F                 call    _ZN4GNET13PlayerWrapper8SetRatioEf ; What the hell
.text:084B2F54                 add     esp, 10h
.text:084B2F57                 sub     esp, 8
.text:084B2F5A                 push    1
.text:084B2F5C                 push    [ebp+arg_4]
.text:084B2F5F                 call    GNET_GetSkillVictim9
.text:084B2F64                 add     esp, 4
.text:084B2F67                 push    eax
.text:084B2F68                 call    _ZN4GNET13PlayerWrapper11SetIncmagicEb ; This confuses me to...
.text:084B2F6D                 add     esp, 10h
.text:084B2F70                 mov     eax, 1
.text:084B2F75                 leave
.text:084B2F76                 retn
.text:084B2F76 GNET_SKILL_MANIFEST_VIRTUE_STATE endp

Did anybody ever look into this?
 
Joined
Oct 14, 2009
Messages
5,493
Reaction score
2,299
I'll move this to developments for you all to possibly develop something from it. If you don't like it there please let me know and I can always re-relocate it :wink:
 
Robb
Loyal Member
Joined
Jan 22, 2009
Messages
1,224
Reaction score
466
GS skill stuff has always been very interesting but sadly nobody has ever managed to get anywhere with it. (though i did once manage to make players soulforce for psy skills be read from some other unknown part of their data, however sadly this crashed the map after a few goes as this data could have been anything)

I believe all skill and stat properties are stored inside "ext" files that get compiled into the GS but sadly we cant edit these bits with the current technology (IDA is pretty top atm). Each skill does however have code to do with it, as swoosh pointed out, but as far as i can tell this only allows us to change things such as mana cost and cooldown(?) etc.

call GNET_GetSkillVictim9 looks very very hopeful, if there is a pattern/differences between skills that are AoE or self cast or friendly cast then perhaps we are in business.
 
Last edited:
Newbie Spellweaver
Joined
Dec 26, 2012
Messages
6
Reaction score
11
It is possible of course. I can do that or edit any other skills as you want but it's not free.
 
Initiate Mage
Joined
Jan 10, 2016
Messages
1
Reaction score
0
i need help to edit the 5, when i try to modify, it show me "warning: operand do not match"
then i upload to server and test the skill, nothing change. the skill still able to cast on others
help pls...
 
Back
Top