Thordon123

Veteran
Veteran
Joined
Feb 4, 2018
Messages
52
Reaction score
6
First Language
English
Primarily Uses
RMMV
Hi all, I'm working on a combat system at the moment where players can choose to either dodge or attack with extra accuracy each turn. What I want, ultimately, is for the player to choose a skill ( called "Aimed Attack") that works like a normal attack, but gives a 1-turn duration 30% boost to Hit Chance beforehand. My problem is that such a skill actually has two targets- the player first for the buff, and then the monster after for the damage, and I don't know how to accomplish that. Is there any way to do this?

Thanks in advance!

PS: I know the skill sounds kinda dumb without context but I've lowered the hit chances for actors and enemies to 70% average so that the decision of whether or not to aim becomes important.

PSS: Also I know that I could give a restriction to the Aimed state to force the player to attack, but in that case they don't choose their target which defeats the purpose
 

Kes

Veteran
Veteran
Joined
Aug 3, 2012
Messages
22,512
Reaction score
12,002
First Language
English
Primarily Uses
RMVXA
You can do this using the damage formula. I am assuming that the HIT buff is being done by creating a state. For the sake of this example, let us assume it is state 59.

a.add_state[59]; a.atk * 4 - b.def * 2

Of course you can change the a.atk * 4 - b.def * 2 to whatever damage formula you are using.
 

Thordon123

Veteran
Veteran
Joined
Feb 4, 2018
Messages
52
Reaction score
6
First Language
English
Primarily Uses
RMMV
Hey thanks! I just tried that, but unfortunately it only deals null damage now :p More and more bugs...
 

Thordon123

Veteran
Veteran
Joined
Feb 4, 2018
Messages
52
Reaction score
6
First Language
English
Primarily Uses
RMMV
I think putting the add state command in the damage formula prevents the ability from dealing damage. Unfortunately, adding the state to the effects box only applies it to the enemy
 

Kes

Veteran
Veteran
Joined
Aug 3, 2012
Messages
22,512
Reaction score
12,002
First Language
English
Primarily Uses
RMVXA
I use that sort of formula a lot, and adding a state should not produce zero damage.
BUT I noticed an error in what I gave you. I used [] brackets, and it should have been () brackets, so try
a.add_state(59); a.atk * 4 - b.def *2
obviously changing the 59 to the number slot of the state you actually want to add.
 

Thordon123

Veteran
Veteran
Joined
Feb 4, 2018
Messages
52
Reaction score
6
First Language
English
Primarily Uses
RMMV
Ah I see. I put it in but now the game crashes and I get the message:
-------------------------------------------
Script 'Game_Battler' Line 352: SyntaxError occured

Unexpected tSTAR, expecting $end
a.add_state(26); a.atk * 4 - b.def *2
-------------------------------------------------------
I tried changing the damage formula to

a.add_state(26); a.atk * 4 - b.def *2; end;

but that didn't work either, same error message though displaying the updated formula

Also, 26 is the state number I'm using

EDIT: I'm still screwing with it but it insists that there should be an end command somewhere. Wherever I put it it doesn't work, though.
 
Last edited:

Kes

Veteran
Veteran
Joined
Aug 3, 2012
Messages
22,512
Reaction score
12,002
First Language
English
Primarily Uses
RMVXA
Try
a.add_state(26); end; a.atk * 4 - b.def * 2

"ends" are always my weak spot. Notice that there is a semi-colon after the 'end' as well as after adding the state.

My problem is that I am not on my laptop, so can't check what's in my own database for reference.
 

Thordon123

Veteran
Veteran
Joined
Feb 4, 2018
Messages
52
Reaction score
6
First Language
English
Primarily Uses
RMMV
Okay, I'll keep screwing with it.

If it isn't asking too much, could you inbox me your formula once you've got your laptop again?

Thanks again for all the help!

Edit: Unfortunately it still doesn't work... same error message...
 

Latest Threads

Latest Posts

Latest Profile Posts

About the Deer, I had to cut some piece of video due the *swearing* Youtube copyrights issues...
A caveman pokes his head in...
I was listening to songs by Chuck E Cheese's voice actor (Jaret Reddick from Bowling for Soup) when the meds I was taking for my stomach virus apparently stopped working. I can't take my next dose until morning, but it's no use anyway. I'm officially sick again. Of course, I'll definitely take the next dose either way, but it's useless now.
New profile picture! This time, it's representative of my current project.
I suddenly feel like making a game for little kids: a pointless sandbox of cute animals, silly collectibles, and random mini games.

Forum statistics

Threads
115,996
Messages
1,094,746
Members
151,298
Latest member
Tapael
Top