How do I find the actorId (the actor using a specific skill) during battle

winkr7

Veteran
Veteran
Joined
Oct 27, 2015
Messages
99
Reaction score
31
First Language
english
Primarily Uses
N/A
Hello;

I have a move skill that is a battle skill and I want to call a common event whenever that skill is used during battle that tells me which actorId is using the skill. I can see the skill getting used but BattleManager.actor() inside the common event seems to be null when the skill is used. And BattleManager.actor() is a battler not an ID anyway. So how do I get the actorId?

I just want a line in my common event to work--console.log( " Move Skill actorId:"+your answer here) to print out the actor Id of the skill user.

thanks for your time
yours
winkr7
 

Alistair

Treasure Hunter
Veteran
Joined
Jun 15, 2014
Messages
283
Reaction score
196
First Language
English
Primarily Uses
RMMV
BattleManager.actor().actorId() returns the id.
 

winkr7

Veteran
Veteran
Joined
Oct 27, 2015
Messages
99
Reaction score
31
First Language
english
Primarily Uses
N/A
Thanks Alistair. When I try this in the Attack skill I get a null. This is probably because it is targeting an enemy and so there is no actor. I appreciate your help.
 

Alistair

Treasure Hunter
Veteran
Joined
Jun 15, 2014
Messages
283
Reaction score
196
First Language
English
Primarily Uses
RMMV
Hello,

you could alternatively use "$gameVariables.setValue(x, a.actorId());0" in your skill's damage formula and use console.log($gameVariables.value(x) + "text") in your common event. Replace both x with any variable number.

If your skill is supposed to deal damage, then just replace the 0 after the semicolon with your usual damage formula.
 

Coelocanth

Veteran
Veteran
Joined
Oct 10, 2018
Messages
41
Reaction score
67
First Language
English
Primarily Uses
RMMV
If you're trying to do this from a common event run by the skill:
Use "control variables" / "game data" / "last" - it can assign skill id, actor id / target id etc to variables.
(New feature of MZ so you don't need to script call as you did in MV)
 

winkr7

Veteran
Veteran
Joined
Oct 27, 2015
Messages
99
Reaction score
31
First Language
english
Primarily Uses
N/A
Many thanks Coelocanth--that is just the thing I needed. I had not seen this new feature.
 

Tsukihime

Veteran
Veteran
Joined
Jun 30, 2012
Messages
8,564
Reaction score
3,879
First Language
English
BattleManager.actor() is actually the "inputting actor", which doesn't exist when your skill is performed. That's why you're getting null.
 

41728280

Veteran
Veteran
Joined
May 31, 2020
Messages
240
Reaction score
73
First Language
Chinese
Primarily Uses
RMMV
I also have this need. Can anyone tell me how the MV can get the actorId of the current action in battle?
 

Latest Threads

Latest Profile Posts

My Overworld might be a mix of inspiration from 2D Final Fantasy games, Breath of Fire, Battlechasers: Nightwar, Super Mario World, and Pillars of Eternity. If I can make it more in-depth than just walking from point A to point B, that might do a lot for the gameplay experience. Hmm...
Terribly depressed. Worst birthday I've had in years, no motivation to work on anything. Still no income. At least I've got my computer running again.
Doing RPG Maker News for 19th September 2021

Stream will be live with some Dark Souls 3, followed by a session of the Interactive Text Adventure! Feel free to drop by!

Forum statistics

Threads
115,205
Messages
1,088,026
Members
149,781
Latest member
delwin
Top