I am pretty new with rmxp, so i dont know much at all about scripting and stuff, but I am trying to be able to have skills that are like the venom status but I can customize the damage they do each tick. (say a multiple of the actor's INT or STR.)
So far I have a way with a bunch of common events but it either freezes the game or gives an error message 'common event call limit exceeded'
my way that doesnt work.
Can anyone show me how to fix it or tell me another way to have skills like this?
So far I have a way with a bunch of common events but it either freezes the game or gives an error message 'common event call limit exceeded'
my way that doesnt work.
skill 'Incinerate' adds state 'target' and calls common event 'Incinerate'
Common event 'Incinerate' : (supposed to go off when the actor does the move incinerate)
call common event: target (common event 'target' just sets variable 'target' to the enemy number with state 'target' on it. That part works fine.)
conditional branch: Variable [target] ==1 (I have a conditional branch for targets 1 through 8)
change enemy state [1. ] - [Incinerate] (in case it was on before, to renew the duration of 10 turns)
change enemy state [1. ] + [Incinerate]
change enemy state [1. ] + [incinerate effect] (a state with a 1 turn duration that I use to detect when 1 turn goes by)
control variables [incinerate 1] = 10 (incinerate 1 is meant to be a counter for how many turns left worth of incinerate are on enemy #1)
else: nothing
call common event: Incinerate 2
Common event Incinerate 2: (supposed to go off while the 10 turns are going by, monitoring whether the state
incinerate effect is on the target, and doing damage and replacing it if the 10 turns have not gone by yet.)
Conditional branch: Variable [incinerate 1] >= 1
Conditional Branch: enemy [1. ] is [incinerated] inflicted
Else,
Control variables [actor's int] = [actor]'s INT
control variables [actor's int]*3
change enemy [1. ]'s hp -variable:[actor's int]
branch end
else
branch end.
conditional branch: variable [incinerate 1]==0
Else
call common event: incinerate 2(to redo the damage so long as there is 1 or more turn left)
Common event 'Incinerate' : (supposed to go off when the actor does the move incinerate)
call common event: target (common event 'target' just sets variable 'target' to the enemy number with state 'target' on it. That part works fine.)
conditional branch: Variable [target] ==1 (I have a conditional branch for targets 1 through 8)
change enemy state [1. ] - [Incinerate] (in case it was on before, to renew the duration of 10 turns)
change enemy state [1. ] + [Incinerate]
change enemy state [1. ] + [incinerate effect] (a state with a 1 turn duration that I use to detect when 1 turn goes by)
control variables [incinerate 1] = 10 (incinerate 1 is meant to be a counter for how many turns left worth of incinerate are on enemy #1)
else: nothing
call common event: Incinerate 2
Common event Incinerate 2: (supposed to go off while the 10 turns are going by, monitoring whether the state
incinerate effect is on the target, and doing damage and replacing it if the 10 turns have not gone by yet.)
Conditional branch: Variable [incinerate 1] >= 1
Conditional Branch: enemy [1. ] is [incinerated] inflicted
Else,
Control variables [actor's int] = [actor]'s INT
control variables [actor's int]*3
change enemy [1. ]'s hp -variable:[actor's int]
branch end
else
branch end.
conditional branch: variable [incinerate 1]==0
Else
call common event: incinerate 2(to redo the damage so long as there is 1 or more turn left)
Can anyone show me how to fix it or tell me another way to have skills like this?