Devlog 2: Player Object and Terrain Editor Progress


Hello!  I have an exciting update in the development of Pogo Bouncer.  Substantial progress has been made on two fronts for this app.

Firstly the development of the physics-based player object has been coming along nicely!  Because this is a physics-based game, I have been using Game Maker Studio 2's built-in physics engine, which is based on the box2d engine.  To make the player bounce the way required to make this game fun, a few things had to be done.  Firstly, the player had to be given a physics fixture.  A physics fixture is like a body within the physics engine that allows the object to interact with the physics world.  Several properties of this body had to be modified.

  • Firstly, the bottom of the physics body needed to be rounded.  This was so that the player object bounces in ways that feel good to the player, especially of of sloped obstacles and terrain.  To accomplish this, the points within the player fixture were dynamically placed using code.  The final product looks like this (the physics fixture is outlined in white):
  • Secondly, the restitution, or bounciness attribute of the player, had to be dramatically increased.  This is a big part of what allows the character to bounce when he hits terrain, and it especially is what allows the player object to bounce off of walls in ways that feel natural to the player.
  • The friction attribute of the player also had to be increased to keep the pogo leg of the player from slipping out from underneath.  This especially came into play when bouncing off of sloped terrain surfaces, particularly when the pogo stick angle was not perpendicular to the surface.
  • Finally, a small upwards impulse force was added whenever the character touches the terrain.  This was important to keep the player feeling under control of the character, as without it, the player character was too difficult to control.  Additionally, this bounce force increases when a "jump" button is held down, allowing the player further control over their character.
  • I also added controls that allow the player to rotate the character using a torque force.

The second aspect of the game where progress was made was in the terrain generation side of things.  Last time, I mentioned that I would like to be able to create terrain in any arbitrary shape, and that I wanted to use a list of points and a triangulation algorithm to accomplish this.  Well, since last time, I have been able to successfully develop the portion of the game where I draw the terrain shapes.  I do this by clicking where I want a point in the shape to appear on the screen.  A point is then created and added to the shape.  Points continue to be added to the shape until a certain key ([N] right now) is pressed.  Then, each additional point becomes a part of a new terrain shape.  By doing this , I should be able to create as many shapes as necessary to create a level, and then combine them into logical groups once I make triangular fixtures out of them.  This may open up the possibility to create moving/rotating terrain!  This is not a promise, but it definitely could happen!


See the video devlog to check out gameplay so far:


Thank you for reading my devlog, and for taking the time to keep up with the development of Pogo Bouncer!  If you wish to keep a closer eye on this project, feel free to join the discord for this game!

Leave a comment

Log in with itch.io to leave a comment.