How should I implement a 2D platformer physics (movement) in to a roblox game?

Hello! I am thinking about trying to remake the Mobile game Growtopia in Roblox, but a problem I’m facing is, that I don’t know how I should replicate it’s physics. I recorded some gameplay demonstrating the movement of the game here:
I’m not used to scripting physics at all, so how should I go about this? Are there any guides/tutorials on custom 2D physics on Roblox? If other tutorials on how to make 2D platformer physics also applies on Roblox please tell me. How would trying to make 2D physics in a 3D physics engine even work? Should I try making it using GUI elements if that’s even possible.
There is already a game that seems to be a small demo project of some sort I found that also tries to replicate Growtopia, but it uses regular Roblox physics which I don’t like how the physics work in it: GrowTopia - Roblox. That’s why I’m thinking of trying to remake the physics.