I will see if i can put something toogether. In the meantime, to give you something to try on your own: The platform behavior has 2 actions, "set additional x speed" and "set additional y speed".
Whatever value you use for them, they will add or substract (if they are negative) to the current speed. It is valid per tick, so use an always event for continous additional speed.
the additional speed components can be calculated from an angle using sin and cos:
x_speed = cos(angle) * factor
y_speed = sin(angle) * factor
You just need to differentiate when the character is walking and when sliding. And you need a way to get a dynamic factor (higher factor = faster slide)