Gamesalad Recipe 004: Advanced Platform Character Movement (featuring double jumping)



This recipe will show you how to build a more advanced set of platformer character movement, allowing for more movement options, controlled jumps and double jumps.

Since we have a few recipes behind us at this point I’m not going to point out all of the buttons and interface elements in Gamesalad like I have in the previous recipes. If you have trouble finding something I mention you may want to go re-do recipes 001 – 003 for practice. Of course when we come across something new I’ll discuss that in more detail.

The source Gamesalad files and a screencast of this tutorial are linked at the bottom of this page.

Step one:

For this recipe I’m going to step back away from the graphics used in recipes 002 and 003 and return to using basic shapes. This will let me concentrate on the Gamesalad behaviors and how to use them and not get wrapped up in how a graphic looks or an animation runs at this stage. Of course if you’d prefer to replace my basic shapes with nice graphics when you’re going through the tutorial, feel free!

For this tutorial you will start with a basic scene, with a few floors and a couple walls, see the screenshot below:

Gamesalad Recipe 004: Advanced Platform Character Movement Screen-001

The main, source work area for this tutorial.

The main goal of this recipe is to give the player more control over the main character, the purple block in the screenshot above. This added control comes mainly in the form of a ‘controlled’ jump, where you can move left and right while jumping and also with the added option of adding a double (or more) jump.

As you can see in the screenshot, the structure of the testing grounds is already built for you in the source files. The Floor and Wall actors are nothing more than basic shapes that have their Density, Friction and Bounciness set to 0 and Movable is turned Off.

The Hero actor also has its Density and Friction set to 0 and it’s Bounciness set to 0.05 to give the hero just a little bounce off the floors and walls.

I’ll only be adding behaviors to the Hero actor for this tutorial, nothing else will be needed. First lets add some gravity to the hero by dragging in an Accelerate Behavior and seeting it’s values like these:

Gamesalad Recipe 004: Advanced Platform Character Movement

Next lets set up our basic collisions so the hero won’t pass through the floors and walls. Add two Collide Behaviors and set them up like these:

Gamesalad Recipe 004: Advanced Platform Character Movement

I put mine in a Group so they stay together and are easy to find when I need them. We’ll be adding a third collision rule here later, but for now you’ll just need these two.

If you were Preview the scene now, the hero actor should fall to the floor and stop. Give it a try and make sure you’re collision behaviors work properly.

Step two:

Assuming all was well with your collisions, the next thing to do is add our new way of controlling the players movement.

First lets think about how we want the player to be able to control the hero actor. I want the player to use the keyboard and have the hero move left when the left arrow is pressed, move right when the right arrow is pressed and jump when the space bar is pressed.

Let’s set up the left and right movement keys first. Add a new empty Rule to the behaviors list and add two Conditions to that rule that read like these:

Gamesalad Recipe 004: Advanced Platform Character Movement

Take special note that the conditions show UP in the final drop down menu. Before I explain why, lets finish the rule, then it will make more sense.

Next drag a Change Attribute behavior to the the rule and set it up to read this way:

Gamesalad Recipe 004: Advanced Platform Character Movement

The attribute self.Motion.Line… is reached through the Attribute Browser as show in the screenshot.

An objects Linear Velocity is essentially how fast it is moving. X is right and left and Y is up and down. These X and Y axis relate to the standard Cartesian Coordinates system.

Cartesian Coordinate System:

Gamesalad like most game engines keeps track of all the actors positions using the cartesian coordinate system (also known as the rectangular coordinate system). As you probably remember from school, it’s a set of two lines, the X (horizontal) and Y (vertical) axis on which different points can be plotted using a value for each axis. These values can be either postive or negative along the axis. Gamesalad uses these points to place and move every element on screen.

Cartesian Coordinate System

The actual numbered coordinates you will use in your games depends on the device you are designing for, for example the coordinates you’d use for an iPad in the portrait orientation are 0 thru 768 on the X axis and 0 thru 1024 on the Y axis. Like this:

ipad coordinates

If you are making a game for the iPad and move an actor into the negative numbers or above 1024 on the Y axis or above 768 on the X axis, that actor will move off screen and not be seen by the player.

Now, in this same behavior click the arrow next to Otherwise to open the bottom portion of the rule. Add two new Rules into this Otherwise area and set them up like so:

Gamesalad Recipe 004: Advanced Platform Character Movement

Before I explain in detail how this rule is working, give the scene a preview and make sure you are able to move the hero left and right once it lands on the floor. If the left and right arrow keys don’t function as expected, re-check your settings against the screenshots above.

Instead of using the Move Behavior to control players movement like we did in Recipe 001 we are now using the actors own linear velocity, this will give us more flexibility in how to control the character. The first part of this behavior actually makes sure the player stops moving when none of the control keys are pressed. That is why we have choosen the UP option from the keyboard control conditions. So now when no keys are pressed, the actors Linear Velocity X (side to side movement) is set to 0, stopping the actor.

The two rules in the Otherwise area control the movement by first checking if the correct key is pressed and also making sure the actor is touching the floor. If both of these conditions are met, a positive value (200) is used to move the actor the right and a negative value (-200) is used to move the player to left. Of course you can adjust the actors speed by increasing or decreasing these values.

This probably doesn’t seem all that different from the movement created in Recipe 001 but in the next step when we add the jumping controls you’ll see a big difference!

Step three:

Before we add the jump controls lets add two Actor Attributes to the Hero actor. Add one Boolean Attribute, name it jumping and make sure it’s set to false. Add an Integer Attribute, name it jumpCount and set it to 0. Like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

Now we’ll make a couple additions to the previous rule, add a new condition that will check for the Spacebar in addition to the Right and Left keys, like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

In the Otherwise section add a new Rule to control the jump that looks like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

This should look very familiary, it’s almost the same exact rule as they other two movement rules. For this jump rule, make sure you choose Hero » Motion » Linear » Y.

Remember moving on the Y axis moves the actor up and down, a positive number will move the actor up.

Now Preview the scene and give the jump a try while you are moving left and right, the hero actor should jump in an arc as long as you hold either left or right arrow key down and jump. If you release the arrow key, the actor will fall.

That is really all there is to it for the basic controllable jump, but why stop there right? In the next steps we’ll add a double (or more!) jump and also show you how you can make the jump ‘fully’ controllable.

Step Four:

Lets add the ability to double jump first. It will only take a couple minor edits to the current behaviors to add the ability to double jump.

In the collisions group we created earlier lets add another rule and set it up to look like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

Make sure and name this rule “Flag that I’ve touched the ground”, I’ll be refering to it again soon. This rule will set the jumpCount Attribute we added in the previous step to 2. This is the number of jumps the hero will be allowed to make. Once the player has used their 2 jumps, they will not be allowed to jump again until the hero actor lands on or touches a floor actor.

To complete the double jump we’ll need to make some edits to the jump behavior itself. Open your jump behavior and update it to look like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

In this updated behavior you’ll note we are using the new jumpCount Attribute extensively. We have removed the requirement to be standing on the floor to jump and changed that to allow you to jump as long as the jumpCount is greater than (>) 0. And we also subtract 1 from the jumpCount Attribute each time the jump key is pressed. Press Preview and give it a try. If everything was updated correctly you should be able to double jump your way up the platforms to the top of the screen!

If you wanted to have a triple jump, you would update the “Flag that I’ve touched the ground” rule we added in the Collisions Group to set self.jumpCount to 3.

Step Five:

Lastly lets add the ‘fully controllable’ jump. By adding the following code the player will be able to move the hero actor right and left at will during the jump AND during the fall after a jump, but NOT while falling from a platform.

For this we’ll use the Boolean Attribute, jumping, we added a couple steps ago, and an additional group of jumping/movement behaviors. First in the jump rule, add a new Change Attribute Behavior that looks like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

This will set the Attribute jumping to true when the hero actor is jumping. Now in the “Flag that I’ve touched the ground” behavior, in the collisions group. Add a new Change Attribute Behavior that changes self.jumping to false, like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

This will set the jumping ‘flag’ back to false once the jump is over. This ‘flag’ will only let you move side to side during a jump and not while you are falling off a platform. To finish off the controllable jump, Add a new Rule and add two other Rules to it so it looks like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

Be sure this is a new set of rules you add, don’t edit or change the previous set of move rules. Note I have named these Jumping Move Rules.

By now this rule should be pretty self explanitory to you but I’ll run through it quickly. The Condition checks to see if you are jumping by checking the Boolean Value of self.jumping. If self.jumping is true that means you are jumping and therefore you can move right and left while in the air. The walk right and walk left rules are almost identical to the other ones we set up in step two except we are no longer checking to see if the hero actor is on the ground since we know it is in the air jumping. And if self.jumping is false, you are either on the ground or falling from a platform so you can’t move left or right.

Now with this new additions of a fully controllable jump the player can move the on screen hero left and right during the jump action and control exactly where they will land.

Click Preview and try it out.

Experiment!

With the addition of this new more advanced movement control it becomes very easy to add additional kinds of platforms. For example if you wanted to add a ‘sticky’ floor that slows the players movement, you can do that pretty easily. Lets take a look:

First make a copy of the Floor actor and re-name it Sticky. I changed the color of mine to brown so you can see it easily, add this to your scene like so:

Gamesalad Recipe 004: Advanced Platform Character Movement

The work area with the new “sticky” platform added.

In the Collisions Group, add a new Collision Behavior and set it up to read: Bounce when colliding with » actor of type » Sticky.

In the ‘Regular Move Rules’ Rule, make a copy of the Move Left and Move Right Behaviors, and update them to look like this:

Gamesalad Recipe 004: Advanced Platform Character Movement

You can see in these movement rules we are checking to see if the actor is touching the ‘Sticky’ platform and if so we move the actor at a much slower speed than if they were toucing a regular floor.

Give it a Preview and test out the new sticky floor!

As you can see directly working with the actors linear velocity opens up a lot of possibilities in your games for added level variety. This has really only scratched the surface, experiment more and have fun!

The source Gamesalad files can be downloaded here:

That’s it for this recipe stayed tuned for more.

66 comments


  • doug

    Very good tutorial. \o/

    let me ask

    there are way to create a button to accelerate the player? I mean, when I press the key arrow right or left, the player walk on velocity 200, and then when I press + the key A (or another one) the player walk on velocity +200 (or 400), as if he were running.

    March 26, 2013
    • Hi Doug, you sure can. Check out the screen grab linked here and pay special attention to the “otherwise” sections of the rule. When placed on an actor this rule will move it to the right at a speed of 200 when just the Right Arrow is pressed and increase that speed to 400 when the Right Arrow and A key are pressed together. If you release A the speed drops back to 200 and it will stop moving if then release the Right Arrow key too.

      Hope this helps.

      March 27, 2013
  • doug

    oooh.. that be cool, I have another question… using your tutorial, you created 3 platform, but when the player jump below this platform, he can’t jump over this platform, he hits his “head”, there is a way to do, when the player jump from below the platform, he can pass through the platform and stayed on it?

    April 5, 2013
    • Hi Doug, if you update the “collisions” group on the player to look like this screen shot, that should do the trick for you. What is happening is the new rule checks to see if the player is moving up (Linear Velocity Y is greater than 0) and if so, it ignores collisions with the floor.

      April 11, 2013
  • Arjun

    I really appreciate your hard work. It helps lot for new bee like me.
    Could you please let me know any of your games on live i.e on iphone,web etc..

    April 13, 2013
  • Servontius Turner

    I am so grateful for tuts, and they are really helping me on this journey. I’m wondering about the jumping however. I’ve followed, and incorporated it into my game. However when i test it with an animation, and my actor lands back on the “ground”, he is stuck in the middle of my movement animation. he’ll continue with the animation as normal until i release the respective arrow key and becomes stuck again in the middle of it. any thoughts?

    May 29, 2013
    • Hi Servontius, it’s hard to say without seeing your rules but it sounds to me like you might need to manually change your players image using a “Change Image” behavior once your player lands back on the ground.

      May 30, 2013
  • James

    How does one set max jumping height so that when holding the jump button down the player doesn’t continue to float away?

    June 6, 2013
    • Hi James, the player is jumping due to a combination of two factors that work together to move the player up for the jump and back down once gravity takes over. The up movement is triggered when the Self.Motion.LinearVelocity.Y is set to 500. Then when jumping the Accelerate Behavior that is set at 800 takes over at the peek of the jump and brings the player back down to the ground. So if you want to change the hight of the jumping you need to adjust those two number until you get your desired effect. For example you could adjust the Self.Motion.LinearVelocity.Y to 1000 and the player will jump much higher, but you could also leave that at 500 and change the Accelerate Behavior to 400 and the player will jump higher as well. The adjustments depend on how you want your particular game to function. I hope that helps!

      June 7, 2013
  • Justin

    Hi Jamie, first off thanks so much! this is an incredible resource.

    I have a question though, if my hero jumps, and bumps his head or touches against a wall, he gets another round of double jumps, is there a way to fix this?

    thanks!!

    June 27, 2013
    • Hi Justin, probably the fastest and most painless way to handle that is to have separate actors for walls and floors. And only resetting the players jump when it comes in contact with a floor and NOT a wall.

      June 28, 2013
  • Brandon

    Hey Jamie, I just wanted to say THANK YOU for posting such clear and in depth tutorials! Please continue to make more!

    August 4, 2013
    • Your welcome, and I’ll keep them coming! :)

      August 5, 2013
  • Eric

    I had to make one or two major changes (besides numbers) to fit my needs, but this was so helpful. Thank you very much. I think jumping is one of, if not the, most important part of platformer controls to get right. You’ve given me a great starting point. Now I just need to start tweaking.

    August 22, 2013
  • Eric

    So I thought I had my problem figured out, but I don’t.

    After setting it up just like you, I have my playable actor make a right jump. If he collides with the side of a platform, whether made of floor or wall actors, and his momentum carries him higher than the platform, I have to repress the right key to get him to move again. I cant just continually hold the key down. Is there a way to get him to continue moving right once he’s cleared the platform without repressing the right key?

    Here’s what I tried that half worked:
    When velocity.y or= and right is down
    Accelerate 300

    This only causes him to keep moving right once he starts descending from the jump. (It also makes him controllable during a fall which I’m fine with).

    I’ve tried a few other ways and no matter what I try he won’t keep moving after clearing the side unless I lift off the button and repress it.

    Thanks for any help.

    August 23, 2013
  • Eric

    My last comment didn’t get posted right.
    The rules I had were:
    When velocity.y greater than 0 and right down
    Accelerate 300
    When velocity.y less than or equal to 0 and right down
    Accelerate 300

    August 23, 2013
  • ramo

    Hi Jamie,
    Your tutorials are great and thank you for your help.
    I have an issue with jumping. My hero can jump and keep moving in the direction(or can change direction) while in the air. But when it runs and hits a block before jump key pressed, it doesn’t move any direction while in the air. Player has to press direction button again to give it a direction in the air.
    But I want it to keep moving in the direction while in the air whether the player pushed the jump key before or after it hits the block.

    September 13, 2013
    • Hi Ramo, I’m not sure how to solve your problem quickly. The reason that happens is that there is a collide behavior on the player so it collides with the platforms. When that happens the Gamesalad physics engine takes over and reacts to the collision. After the collision you can make your player move again as you say by pressing the appropriate key but only after the physics action happens. Now you could turn off collisions during jumps so your player would pass through the blocks and not collide with them, but I’m not sure that is what your looking to do. Let me know your thoughts.

      September 24, 2013
  • Steven

    How do you make your character run then jump in a certain direction? For me you can only move sideways in the air after you jump.

    October 2, 2013
    • Hi Steven, did you watch this tutorial and download the source files? That is exactly what this tutorial is about.

      October 14, 2013
  • Kamran

    Hi Jamie
    Thanks for the wonderful tutorial, big fan.
    I followed your tutorial and got all the results without any difficulty. But I came across an issue. The issue is that after the second jump, if you hit left or right key along with the space key, the hero can have unlimited jumps. To simplify it, I removed the 3 x floors and tried again, still same. I, then downloaded the source from your website, and it has the same issue. Would you please be able to check what is going on??

    Thanks, and keep up the GREAT work.

    Note: I am using Gamesalad on windows 7, I am not sure if this has anything to do with it.

    October 28, 2013
    • Hi Kamran, thanks for the kind words about the tutorials. I’m glad you have found them helpful. I’m afraid I’m not able to duplicate the issue you mention. When I jump and press the arrow keys I’m not able to get more than the double jump. I am on a Macintosh, though I’m not sure how the system would make a difference for this. If it’s a big problem for you, I’d be happy to take a look at your file and see if there is anything else weird going on. You can email me directly from the link at the bottom of any page on my site.

      October 28, 2013
  • Mark Was

    Great tutorial! I have my character working great other than when he jumps I would like a different image for a right facing jump and left facing jump I haven’t been able to figure out where to apply this after completing this tutorial. Any ideas?

    November 6, 2013
    • Hi Mark, this might be something I need to do a demo on instead of try to explain here in comments. Let me see what I can do…

      November 11, 2013
  • Hey Jamie! Thank you so much for a very helpful tutorial. I encountered a problem when i implemented the sticky floor; The player won’t jump when it is on the sticky floor, is there any way to fix this?

    November 12, 2013
    • Hi Jonathan, I’d need to see your rules to be able to offer any advice. Are you able to post a screenshot?

      November 13, 2013
  • Hey again Jamie! I figured the problem out last time, so there was no need for any help there. BUT I am working on an different project, and I would love to ask u some questions around this. Do you have an e-mail where i can send you the mockup and pictures and ask you some questions?

    November 24, 2013
    • Hi Jonathan, there is a direct email link at the bottom left corner of this page. Feel free to email me there and I’ll help if I can.

      November 25, 2013
  • Coto

    Het, Jamie. Thank you for all the Tutorial and all that help! It DOES help me A LOT! But I have a question. How can I Jump and Move at the Same time WITH “Simple Touch Controls”? Like your Video here: http://www.youtube.com/watch?v=VepRpk1QJF8

    That would be helpful! Thanks for the tutorials, again! 😀

    January 3, 2014
    • Hi Coto, if you combine the two concepts it should work fine. Imagine using this tutorial to set up your movement controls and instead of having the actors move with the keyboard, have them move via the buttons from the video you link to and it should work fine.

      January 3, 2014
  • Hey Jamie,

    Thanks for the great tutorial! I have a question I was hoping you could help me with… Rather than move the hero left and right at a constant velocity, I want it to accelerate and decelerate up to it’s max speed of self.Motion.LinearVelocity.X of 200/-200.

    I was playing Super Mario Land recently on my DS and noticed how Mario take a second to get up to his normal walking/running pace and want to emulate this. I think it makes the movement feel a little more natural.

    Thanks for your help!

    January 7, 2014
    • Hi Richard, I put together a small demo file showing one way to do this, download it and check it out. Use the arrow keys to move left and right, the box will increase to a max speed and slow down from the max speed when you start and stop. Hope it helps out.

      January 9, 2014
  • Neiman

    HI!

    I followed the tutorial completely but, for some reason, my Hero slows to a halt after moving left/right for a few seconds.

    Please help.

    January 13, 2014
    • Hi Neiman, if you want continuous movement for an extended period of time you’ll want to use Constrain Behaviors in the movement rules where I use the Change Attribute Behaviors for the Linear Velocity X values in step two.

      January 13, 2014
  • Alberto

    Hi Jamie! Thanks for the amazing tutorials! 😀
    How can you move when falling from a platform?

    April 5, 2014
    • Hi Alberto, one of the conditions in the move rules check to see if the player is touching a platform actor. This condition limits the movement to being on platforms only so if you remove that condition the player would them be able to move left and right while falling.

      April 7, 2014
  • Luke

    Hi Jamie. Thanks for this. This is a really helpful tutorial for actor movement. I was wondering if you could point me in the right direction with a “jumping” problem. I’ve made it so the jump behavior is not controllable for my character. If he jumps while standing still all is fine but I want the actor to only jump forward when moving forward and backward when moving back. Once the actor is in motion in either direction I would like the actor to complete the jumping arch until it hits another actor or the floor. Right now if I release the back button or forward button on the keyboard the actor stops jumping forward or back and drops to the floor. Any help would be greatly appreciated. Thanks!

    July 2, 2014
    • Hi Luke, I’m glad you’ve found the tutorials helpful. To solve your problem you just have to edit one of the existing rules.

      In the Rule titled “Regular Move Rules”

      Right now NOT in the Otherwise section there is a Change Attribute Behavior that is changing self.Motion.LinearVelocity.X to 0

      You need to enclose this Change Attribute Behavior in a new rule (within the current rule) that says:

      When Attribute self.jumping is false… Do the current change attribute.

      Then when you press the jump button while moving right or left the actor will complete the jump arch even if you release all the control keys. If you have any problems making that work let me know and I can send you an amended file.

      July 2, 2014
  • Justin

    Hey Jamie, thanks for helping us make our dreams come true! Anyway, after following your steps for this tutorial, when previewing the scene, my actor seems to have an infinite amount of jumps. I can keep him going, even before he hits the ground. I believe i have it set up right, i followed your steps directly. I may be missing something, but i can’t seem to figure it out.

    August 12, 2014
    • Hi Justin, you need to add a condition to your jump behavior that checks to see if the player is touching a ‘ground’ actor or not. If it is touching the ground, allow a jump. If it’s not touching the ground don’t allow the jump.

      August 24, 2014
  • ChumCreature

    Hey Jamie. I’m using Gamesalad for the first time, and I’ve been using your motion tutorials (which are so amazing). But I’ve encountered a problem with the jumping. Jumping works perfectly, but when I hit the ground I start to bounce (and only after I’ve jumped at least once). I set all the bounciness attributes to 0 but I’m still bouncing. Any ideas?

    September 12, 2014
    • ChumCreature

      Never mind. I found a bug in my jump code. :)

      September 16, 2014
      • Glad you found the bug! It’s a never ending battle against them I’m afraid… 😉

        September 17, 2014
  • Excellent, Thanks for your Videos. Nice Work

    November 30, 2014
    • You’re welcome.

      December 5, 2014
  • Ed M.

    Hi Jamie!

    This tutorial shows how to bind movement to keys on a keyboard, What is the method (Or a source you could direct me to) so that I can make this happen. Your instructions are amazingly easy to follow and I thank you for your great work!

    – Ed

    February 27, 2015
    • Hi Ed, I’m not sure what you are asking. This tutorial does show how to create keyboard controls. Is there something else you are looking for?

      March 3, 2015
  • Foot

    Your tutorials are great. Thank you. Glad you addressed the continue jump arc movement in questions. That was my next search! Thanks!!

    March 15, 2015
    • Thanks for the kind words, I’m glad you found what you needed. :)

      March 17, 2015
  • Ronald

    Hi Jamie,Why i cannot see the keyboard button in the key

    April 15, 2015
    • Hi Ronald, I don’t understand your question. Are you saying you literally can’t see a Keyboard option in your Gamesalad Creator? If that is the case I assume you are using the Windows version of Gamesalad. The interfaces of the Windows and Macintosh versions are very different. I’m afraid I don’t use the Windows version so I can’t offer specific instruction on how to gain access to the Keyboard settings, but I know they are there somewhere.

      April 20, 2015
  • Heather

    Hi- firstly thank you so much for your tutorials! I’ve managed to implement a few with success. I’ve tried to follow this one and it works mostly as predicted- when my player jumps using the spacebar the jump arcs in correct relation to the use of the left and right keys. However my player is able to make an infinite number of jumps once in the air when either the left of right keys are also depressed.

    I’m pretty certain I implemented all the appropriate rules? Any pointers would be fantastic- thank you.

    April 22, 2015
    • Hi Heather, Thanks for you kind words. I’m glad you’ve got it mostly working. There should be a check in there to limit the jumping to only two. There must be a bug or omission in your behaviors somewhere. If you haven’t already downloaded the source files I have posted, I’d do that. Then compare my code to yours to find the error(s).

      April 25, 2015
  • Justin

    Hi Jamie, I just started using Gamesalad a couple days ago and your tutorials have really helped me out so far. However, I have encountered a significant issue early on in this method of movement. When simply using the “Move” behavior in your first tutorial, I had no problems. But since I am using Gamesalad on windows, there is a big problem when I go to the “Otherwise” tab right after entering the linear velocity attribute and setting it to zero. My problem is this; when I go to enter “key” in the behaviors box in “Otherwise”, my only option is “keyboard input”. When I enter that, all it will do is bring up the Attribute box. And if I try again in the next box, same deal. I’ve tried putting it in a group, but that does not work either. I can only enter the “key” condition when I set a whole new rule. And obviously, that is of no use to me as a separate rule. Admittedly I have not read through the tutorial as of right now but it sounds like to me that this linear velocity setup is mandatory or at least makes jumping much better. So if you could tell me what I must do to be able to set the “key” condition, I’d be very happy

    May 17, 2015
    • Hi Justin, I’m afraid it sounds like you are using the Windows version of Gamesalad and I’m not familiar enough with that to offer advice on its inner workings. I know it can do the same things as the Macintosh version, I’m just not able to give you specific instructions I’m afraid.

      May 20, 2015
  • firman

    hi jamie!!I want to ask about the atribute actor tags (ground). how to make ground in the actor tags.I was looking at a video tutorial from 004 receipe no notification concerning the manufacture of said ground at actor tags.sorry if my English bad. Thank you in advance

    September 29, 2015
  • Demi Urgen

    Nice tutorial. Learned a lot. Thanks.
    Is there an easy way to make the jump continue when the space and left/right buttons are released? So the arch continues instead of the player just dropping straight down. I think that would be a better movement and its just like Super Mario Bros 😉

    February 15, 2016
    • Hi Demi, I thought that is how this tutorial worked, it’s been awhile since I posted. Have you downloaded the source files and tried those out?

      March 8, 2016
  • Ondrej

    Hello Jamie,

    I looking for some command to change to movable to off/on. Like if i have some power i can move with some object and if is this power of I can move it.
    thank you for hlp

    April 9, 2016
    • Hi, I’m afraid you can’t adjust the movable option during run time. What you’ll have to do is have two separate actors for the actor, one that is moveable and one that is not. You can then spawn and destroy each one as needed to get the same effect as turing moveable on and off.

      September 8, 2016
  • Andrew

    Hi Jamie,
    Thank you for the double jump tutorial.
    I am trying to make my actor able to fly as well as double jump. I’ve made it fly with a simple W key up motion, but I don’t know how to allow it to move left and right when in the air. Instead it stays fixed, only going up and down.
    Is there a way to use this double jump technique and a flight technique as well?
    Thank you.
    Andrew

    April 9, 2016
    • Hi Andrew, you can certainly allow a jump and flying in the same character. I can’t give you exact code since I don’t know how your project is set up exactly but in general what I’d do is have two sets of movement controls. One for flying and one for running/jumping. You’ll probably need to add left and right movement controls to each set. So it would be something like:

      Rule: When flying is true and ‘your right button is pressed’ : move right
      Rule: When flying is true and ‘your left button is pressed’ : move left

      And you have a separate set for when running is true.

      September 8, 2016
  • Olivia

    Hi, I tried using your tutorial for help to have my sprite jump but it didn’t jump when I pressed space. Did I do something wrong?

    May 26, 2016
    • Hi Olivia, I’m afraid you must have but I can’t say where the error is since I can’t see your behaviors. I suggest downloading the source files and comparing my behaviors to yours to find the error.

      September 8, 2016

Leave a comment


Name*

Email(will not be published)*

Website

Your comment*

Submit Comment

© Copyright Mostly Creative - Theme by Pexeto