Thanks for the great feedback! I appreciate it a lot! :)
And I agree with you that the first stage is way too hard, that stage was initially used by me to test the collision, movement, tile etc. I was gonna move that stage to further back but I didn't do it due to the time constraint.
Interestingly, the first version of the spike was actually embedded in the ground, but it looks kinda ugly since all I did was to render the spike on top of the tile. I might actually go back and revert the change due to your feedback.
Thanks once again!