RopeWater Physics Platformer


Add to Account (Free)

Contact Publisher


This Rope + Water Physics Platformer Engine is everything that you need in order to start creating a fast and fun, 2D side-scrolling game that features both rope and water physics that the player can dynamically interact with! This demo includes a fully functional player object, with a focus on "game feel". The input/physics were coded in a particular way in order to mimic fast-paced popular, platformers like Super Meat Boy and Dustforce. Quickly jump from rope to wall jump to rope!


  • Physics Ropes (ability to jump on/off)
  • Rope Climb (up/down)
  • Attach ropes to moving platforms
  • Rope Bridges
  • Moving platforms (horizontal/vertical)
  • Simulated surface tension (water)
  • Splash effect on water enter/exit
  • Underwater player controls
  • Pixel-Perfect Collision
  • Slope Functionality
  • Horizontal Player Input (w/ Acceleration + friction)
  • Vertical Player Input (jumping + wall jumping)
  • Camera
  • Easily editable code for quick changes in "game feel"/pacing

The Rope + Water Physics Platformer Engine is meant to be used as a quick kick-start when creating 2D side-scrolling games. It was the code-base that I used when starting to develop both FROG SORD and SUPER III. It can be used as starter code or as a learning tool. *This example uses the build-in Game Maker physics, combined with non-physics objects to create something that looks unique, but remains precise in terms of collision and controls!

End User Licence Agreement (EULA).

Changes in 1.2.1

Fixed an error that was reported

Version 1.2.1. Published October 15, 2014

Created with GameMaker: Studio v1.4.1451

Age Rating: 9+

Average Rating

Your review

You can only review assets you've bought.


Victor L 20 January 2018


Anonymous 30 December 2017

Awesome but...

How do you jump or even use the rope please add something like a guide to help new players to game.


Devon H 27 December 2017


Karsten F 20 December 2017


Dustin H 27 October 2017

Error Liquid_Update please change

// The following code snippet is unrelated to the water manipulation //////////////////

// Update floater
with (oFloater) {
node = ((x + sprite_width * 0.5) - argument0.x) / 16;
(hier ist die Zeile 76)
if (pool.liquid.id == argument0 && abs(node - i) < 1) {
pyp = phy_position_y;
phy_position_y = ystart + (argument0.ystart - argument0.liquidarray[i, 0]); //argument0.liquidarray[i, 0]) - (sprite_height * 0.5)


that is that what you must change.
other.argument0 -> argument0


Anonymous 09 October 2017


Anonymous 29 September 2017


mason t 20 September 2017

Great Engine! Should Combine, though.

This is a great platformer engine, super easy to understand and use. The one suggestion I have is that Zack should combine this one with his moving platforms engine.


Brandon C 24 September 2017


Joshua H 02 June 2017


Anzhel D 30 May 2017


Too lazy to write here. Worth your time


Saleh N 03 May 2017


Anonymous 16 March 2017


this is my favorite asset i have seen in a long time, i just cant get any enemies to work. can you(ZBG) maybe work on an enemy asset that works with this one?


Anonymous 22 February 2017


Wow very cool! And free!


Jordan D 22 January 2017


Christopher R 29 November 2016

how do you open this file

i download this and have gamemaker studio but cant open it whyyy!!!!!!


Anonymous 30 October 2016

I don't get it

Can't alter the player speed or jump height. Still great code though.


Kacper C 02 November 2016

Some Problems

Hey, i have some problems. Im, not sure why, but collisions doesn't work. Thats why i cant make a "doors" to change rooms. + i can't remove this white strokes on a water. Someone can help me please?


Shaun C 20 February 2016

Works well!!, only minor niggles.

Worked perfectly, easy to understand code and well commented.

Only minor niggle I have is the code to adjust the player speed doesn't appear to have any effect on the player speed, but as it's an example of the rope and water/floaters and not platform controls I can't down score for that.

EDIT: For the player movement speed, change the movement variables in the Test Liquid part of the players step event, not where it tells you to in the create event as the create event settings are overwritten in the step event.


Ruslan S 03 February 2016

Not bad, but bugs

Bug with rope, if player move up on rope, rope move left.


Chris D 17 September 2015

Please Update

Please Update this code. Player falls through floaters without code listed below (Thanks Kyle T!) also the player is unable to jump multiple times (swim) while in water. His other projects have been great and I will happily update my review if the asset is fixed.


Kyle T 07 April 2015

Great BUT

Hey, this is great, but something weird started happening with the new game maker update. Now the floating blocks dont work the same, the player will twitch and sink into the block. It worked perfectly before. Any chance of fixing it? Amazing asset otherwise, thanks!!
Fixed it! For any one who buys this, replace the small section under the //hack part of the floater code to:
with (oPlayer) {
if (place_meeting(x, y + other.v, other.id) || platformTarget == other.id) {
// Stay on top of floater
y = other.phy_position_y - 7;
and it will work again. Not sure why the update messed it up?


Nemanja S 17 March 2015

Needs much improvement!

I feel like other reviewers have tested completely different engine, as some very displeasing bugs can be found easily just by trying out the demo:

-Standing still on blocks floating on the water will cause your character to twitch until he "sinks" into the block (I'm really not sure how developer managed to miss this one; though I'm afraid he was aware of it as you will notice that, in video, he never stands still on blocks floating on the water but keeps running constantly instead. Why did he release engine with bug so apparent is beyond me. I do feel slightly cheated.);

-Grabbing onto the very end of the rope and pressing down will also cause character to twitch and get stuck for a moment;

-As the reviewer under me mentioned platforms pushing you into the wall is another bug still present in the engine.

I wish I could sing the praises like the rest of the users, but until the bugs mentioned above are fixed I'm withholding my stars.


Andreas M 22 February 2015


Very good feeling.

Using the left and right button to swing when holding a rope.

Moving Platforms can push you into the wall and get stuck, should restart the game instead.


Glint G 21 November 2014

Awesome Physics Platformer

The Platformer Engine runs very well and the rope and water physics are amazing.


Sky S 14 November 2014

Must have programming skills

Really well put together code but very complicated for beginners. Also found a glitch at the end of the stage where the character gets stuck to the wall.


Alex M 08 November 2014

Incredibly good

Amazing Controls, the feel, everything is right here. Fixed my issues!

Thank you!


Simon F 16 October 2014

Excellent starting point for any physics platforme

This is an excellent starting point for you physics based platform, it contains some really cool code and features. The movement is smooth as butter and can easily be extended.

This is a fantastic piece of kit.

Package contents

Total size 37.9 KB

Rope + Water Physics Platformer.extension.gmx 5.81 KB Rope + Water Physics Platformer
Backgrounds Objects Rooms Scripts Sprites
sBanner.sprite.gmx 679 Bytes sBlock.sprite.gmx 672 Bytes sBridgeSegment.sprite.gmx 679 Bytes sCamTrap.sprite.gmx 676 Bytes sFloaterBlock.sprite.gmx 679 Bytes sFont.sprite.gmx 3.67 KB sIcon.sprite.gmx 675 Bytes sPlayerIdle.sprite.gmx 736 Bytes sPlayerJumpD.sprite.gmx 682 Bytes sPlayerJumpM.sprite.gmx 682 Bytes sPlayerJumpU.sprite.gmx 682 Bytes sPlayerMask.sprite.gmx 677 Bytes sPlayerRun.sprite.gmx 842 Bytes sPlayerSlide.sprite.gmx 683 Bytes sprite34.sprite.gmx 680 Bytes sRopeSegment.sprite.gmx 677 Bytes sSlopeL.sprite.gmx 674 Bytes sSlopeL2.sprite.gmx 675 Bytes sSlopeR.sprite.gmx 674 Bytes sSlopeR2.sprite.gmx 675 Bytes sSword.sprite.gmx 775 Bytes sWaterMask.sprite.gmx 676 Bytes images
sBanner_0.png 9.04 KB sBlock_0.png 81 Bytes sBridgeSegment_0.png 80 Bytes sCamTrap_0.png 206 Bytes sFloaterBlock_0.png 81 Bytes sFont_0.png 70 Bytes sFont_1.png 90 Bytes sFont_10.png 74 Bytes sFont_11.png 74 Bytes sFont_12.png 92 Bytes sFont_13.png 87 Bytes sFont_14.png 86 Bytes sFont_15.png 95 Bytes sFont_16.png 119 Bytes sFont_17.png 104 Bytes sFont_18.png 103 Bytes sFont_19.png 112 Bytes sFont_2.png 104 Bytes sFont_20.png 113 Bytes sFont_21.png 105 Bytes sFont_22.png 112 Bytes sFont_23.png 105 Bytes sFont_24.png 112 Bytes sFont_25.png 108 Bytes sFont_26.png 89 Bytes sFont_27.png 95 Bytes sFont_28.png 74 Bytes sFont_29.png 90 Bytes sFont_3.png 74 Bytes sFont_30.png 74 Bytes sFont_31.png 105 Bytes sFont_32.png 74 Bytes sFont_33.png 121 Bytes sFont_34.png 108 Bytes sFont_35.png 119 Bytes sFont_36.png 112 Bytes sFont_37.png 100 Bytes sFont_38.png 102 Bytes sFont_39.png 116 Bytes sFont_4.png 114 Bytes sFont_40.png 98 Bytes sFont_41.png 89 Bytes sFont_42.png 102 Bytes sFont_43.png 120 Bytes sFont_44.png 95 Bytes sFont_45.png 112 Bytes sFont_46.png 121 Bytes sFont_47.png 107 Bytes sFont_48.png 109 Bytes sFont_49.png 117 Bytes sFont_5.png 123 Bytes sFont_50.png 116 Bytes sFont_51.png 110 Bytes sFont_52.png 97 Bytes sFont_53.png 97 Bytes sFont_54.png 109 Bytes sFont_55.png 108 Bytes sFont_56.png 122 Bytes sFont_57.png 115 Bytes sFont_58.png 95 Bytes sFont_59.png 85 Bytes sFont_6.png 74 Bytes sFont_60.png 91 Bytes sFont_61.png 88 Bytes sFont_7.png 94 Bytes sFont_8.png 107 Bytes sFont_9.png 107 Bytes sIcon_0.png 1.74 KB sPlayerIdle_0.png 156 Bytes sPlayerIdle_1.png 138 Bytes sPlayerJumpD_0.png 177 Bytes sPlayerJumpM_0.png 162 Bytes sPlayerJumpU_0.png 165 Bytes sPlayerMask_0.png 120 Bytes sPlayerRun_0.png 179 Bytes sPlayerRun_1.png 167 Bytes sPlayerRun_2.png 189 Bytes sPlayerRun_3.png 163 Bytes sPlayerSlide_0.png 160 Bytes sprite34_0.png 6.61 KB sRopeSegment_0.png 89 Bytes sSlopeL2_0.png 141 Bytes sSlopeL_0.png 125 Bytes sSlopeR2_0.png 142 Bytes sSlopeR_0.png 123 Bytes sSword_0.png 216 Bytes sSword_1.png 341 Bytes sSword_2.png 227 Bytes sWaterMask_0.png 82 Bytes

What is the issue?

Back to Top