The mixing perks mechanics thingy is the barrier here though,since you cant mix playertype (to my knowledge)
You don't need to mix playertype I've said this several times in the topic.
If you make a player take reduced damage, it adds pseudo HP (Example, if a player takes Half damage (1/2), then that means they can take twice the damage before dying (2/1), aka the player has "200 HP" (100 * 2/1). If you make a player take 1/3rd the HP, it makes the player have a pseudo HP of 300 (100 * 3/1). Then there's setplayerspeed events and functions so we can dynamically modify the speed of a player. There's actually no need for any new datablocks regarding the player changes.