Well, I got the temporary invincibility timer value...
...from the invincibility special weapon, which means you need that weapon, it starts upon activation, and doesn't last past changing a room/screen/level. I could probably get the invincibility timer for shield loss too, but the issue there is still that you need a shield in the first place, so it's about as useful as this one.
So I used a long-ass search (all types and relative over a few games) to narrow down the addresses that changed when you gained or lost a shield... and there's a lot, so I decided to check which line of code modified them. The majority were modified by this.
Which... turns out to be the script update function for Game Maker games (older versions before it stopped being an interpreter and started actually compiling the scripts). That explains a lot about why I wasn't able to do this.
Outside of the few built-in values that are normal ints (health, score, and lives IIRC), everything else is custom and handled with floating-point stuff and changed with the script update function. And that's way too complicated for me, I've never been able to modify something like this. From what I've read, most people just take the scripts out of GM games and modify them since it's way easier, but Idunno' how that would be done... found
this.
No clue if it'll rebuild properly and all that jazz, way too lazy to actually install Game Maker.