@flieskiller taught me about this flag in
his version of a code request we both fulfilled in different ways~
From the looks of it, it's located in
bit 0x80 of byte 0x222A of the internal player data. I believe you can toggle it in a code like this:
# r31 = internal player data BA
lbz r3, 0x222A(r31)
ori r3, r3, 0x80
stb r3, 0x222A(r31) # toggle on
lbz r3, 0x222A(r31)
andi. r3, r3, 0x7F
stb r3, 0x222A(r31) # toggle off
---
Applying it to specific action states would likely run into an interrupt problem if not done in a way that applies to each action state change, since I don't think the flag gets reset between state changes.
So the way I'd go about it is to write an injection in the action state change function that toggles the flag on when it finds that the passed ASID matches something you want to make immune to grabs--and off in else cases.
I could write an example if you like. What would your full list of action states include? Also, are you looking to do this to all characters, or just a particular one?