It came to my attention that there wasn't any player that went at a reasonable speed underwater. I tried to make a quick little playertype, with the following script.
datablock PlayerData(PlayerAquaTrooperArmor : PlayerStandardArmor)
{
maxUnderwaterBackwardSpeed = 10;
maxUnderwaterForwardSpeed = 10;
canJet = 0;
uiName = "Aqua Trooper Player";
showEnergyBar = false;
};
Well, when I tried this, it didn't work. I believe that the reason for this is that the player has to crouch underwater, and the crouch speed would have to be increased. Unfortunately, it would also work on land, so I need to try a new tack.
The new playertype would use the trigger onEnterLiquid to change the datablock of the player to one with jets. Then, with onLeaveLiquid, it would change the datablock back again. This would make it so that the player could go faster underwater if they wanted.
The only problem is that I have no idea how to do this.
I think it would need to use onEnterLiquid and onLeaveLiquid and use their parent function stuff, but add a little more as well. I don't know where to get the parent stuff, and so I can't continue.