yet_another_game_maker

Campaigns, Length of Levels in an 'Infinite' Runner Game

Recommended Posts

Hi,

I'm currently working on an infinite runner game, which like every infinite runner game will have an infinite runner mode :) .

However, I also wanted to add a story in there, and hopefully, make it more interesting to the player. I wanted to do this via a campaign mode. It would be short, about 5-7 levels. It would introduce the character to the world, controls, items, and tell them a story that they would enjoy. After completing the campaign, free play mode would be unlocked and you could shoot for those high scores.

My question is this. Is there a recommended 'length of a level' in such a game. I haven't seen many infinite runners that are level based, since that is an oxymoron. Is there a general rule of thumb that says make it X number of screen lengths? I would really appreciate any input here, but I don't want to make them too short, and I don't want to make them too long either. Right now, I'm just going to design the campaign levels, try and accomplish the goal of the level, introducing the player to whatever I want them to see, and move on. 

I realize this a vague question, but I would really appreciate any and all feedback.

Thank you!

 

 

 

 

 

Share this post


Link to post
Share on other sites
Scouting Ninja    3952
57 minutes ago, yet_another_game_maker said:

Is there a general rule of thumb that says make it X number of screen lengths?

Distance would work or time.

Say around 1-2 minute per level, so (5-7)-(10-14)  minutes for the long tutorial.

 

Why levels though? Since it's a infinite runner there will be some kind of explanation at the end telling why this runner is always running, correct?

If so then why not keep it one piece, with the background telling what level it is, that way you have the seamless world with the mechanics of levels.

Share this post


Link to post
Share on other sites
5 minutes ago, Scouting Ninja said:

Distance would work or time.

Say around 1-2 minute per level, so (5-7)-(10-14)  minutes for the long tutorial.

 

Why levels though? Since it's a infinite runner there will be some kind of explanation at the end telling why this runner is always running, correct?

If so then why not keep it one piece, with the background telling what level it is, that way you have the seamless world with the mechanics of levels.

Thank you for the response!

The thought was to have two modes.

Campaign - to tell a story, that has an ending, introduces players to the controls.

Free Play - after the player has played the campaign, the free play/infinite mode would be a way to compete with the others via the leaderboard. 

 

 

Share this post


Link to post
Share on other sites
Scouting Ninja    3952
57 minutes ago, yet_another_game_maker said:

The thought was to have two modes.

Why have more than one mode?

One mode will be easier to make, you could have a bool check to see if the player completed the tutorial. Then if they have the game start taking score and next time the player enters the game just starts after the tutorial part.

The extra menu navigation could be seen as a pain by players unless well made, yet there is no reason for you to even add the extra menu.

 

Infinite runners achieve there illusion of infinity by creating the world as the player moves. With a simple bool like: bool PlayerFinishedTutorial = false; you could instruct your creation code to create the tutorial levels.

That way you keep the seamless design of infinite runners and have a tutorial.

Share this post


Link to post
Share on other sites
TerraSkilll    216

Last Knight: Rogue Rider Edition (  http://store.steampowered.com/app/262210/Last_Knight_Rogue_Rider_Edition/  ) has a similar idea: there's a history mode (pretty short and simple) and a endless runner mode (which unlock things such as skins).

The levels on the story mode have a finish line, and each one seems to be divided in sections which can be randomized to a extent, giving a different feel at each try. Each level has a X number of these sections, and there's some checkpoints in larger levels (they seem to be fixed, after Y sections or 1/3 and 2/3 of the level).

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Similar Content

    • By povilaslt2
      Hello. I'm Programmer who is in search of 2D game project who preferably uses OpenGL and C++. You can see my projects in GitHub. Project genre doesn't matter (except MMO's :D).
    • By fullweeb
      So, I currently have a Rectangle that updates with player position, and is the size of the sprite. I'm using Tiled as my tile editor, and have an Object layer called "collision" which I loop over when loading the map, and store each object as a Rectangle in a list. Then in my Update I check if the player is colliding with any of those rectangles (via looping over the list) with Rectangle.Intersects(Rectangle). And if a collision is detected, I handle it with this function:
         
      private static void HandleCollision() { if (_currentLevel.IsColliding()) { float deltaLeft = Math.Abs((Player.Instance.Position.X + Player.Instance.PlayerCollider.Width) - (_currentLevel.collidingRectangle.X)); float deltaRight = Math.Abs((Player.Instance.Position.X) + (_currentLevel.collidingRectangle.X + _currentLevel.collidingRectangle.Width)); float deltaUp = Math.Abs((Player.Instance.Position.Y + Player.Instance.PlayerCollider.Height) - (_currentLevel.collidingRectangle.Y)); float deltaDown = Math.Abs((Player.Instance.Position.Y) - (_currentLevel.collidingRectangle.Y + _currentLevel.collidingRectangle.Height)); if (deltaLeft < deltaRight && deltaLeft < deltaUp && deltaLeft < deltaDown) { Player.Instance.Position.X -= deltaLeft; } else if (deltaRight < deltaLeft && deltaRight < deltaUp && deltaRight < deltaDown) { Player.Instance.Position.X += deltaRight; } else if (deltaUp < deltaLeft && deltaUp < deltaRight && deltaUp < deltaDown) { Player.Instance.Position.Y -= deltaUp; } else if (deltaDown < deltaLeft && deltaDown < deltaRight && deltaDown < deltaUp) { Player.Instance.Position.Y += deltaDown; } } } I know this is ugly, but that's not the problem, the problem is that when it detects a collision, the player "spazzes out" and just bounces in and out of the rectangle it's colliding with. I've tried a couple other ways too, like just setting the player position without using absolute values, with similar calculations. The same problem happens though. Also it allows the player to just phase through platforms from one side, and the player will get teleported to other sides sometimes, so this is very bad.  
      The "spaz" out seems to happen when detecting collision from 2 seperate rectangles, it works "fine" when just going straight down onto a single platform if there are no other platforms around it, but up and sides don't work correctly and if it's close to other platforms then the player might get teleported to another side.
      I'm not sure how else to handle it, I've done research and googled a lot, as well as searched here, but everything I find is about the actual collision detection, which I'm doing via the Rectangle.Intersects() method. I've been at this for 3-4 days, before deciding to post here.
      I also tried to do it by "requesting" input, like checking where the player would be the next frame, then if it was going to intersect with the rectangle, don't move, and if it wouldn't intersect, it was free to move, but that was really buggy as well with pretty much the same results as this.
      Here's a GIF of what it looks like in action. ( not sure why the actual rectangles are off position, I assume something to do with casting the positions from double to int when reading them in )
       
    • By Yotingo
      I'm trying to design a Rhythm First Person Shooter but it's proving to be more challenging than I expected.
      The goal is freedom from FPS movement and agency mixed with the intense thrill of not messing up when things get hectic in a Rhythm game.
      My inspirations for the rhythm aspect have come from games like One Finger Death Punch, Kick Beat, Beat Buddy, and Dance Dance Revolution.
      I don't intend for it to be musically driven (like Beat Buddy). I'm more interested in rhythmic action (like One Finger Death Punch).
       
      Any suggestions or ideas on how to make this happen would be incredible!
    • By Chimcham
      Hey surfers, we are creating a space flight simulator more or less, with goofy twists. We would like to have a chatbot in place for the ship communications, a resource that can help define or tell you about the galaxy as you fly through it.
      I'm just looking for advice on whether you think the chatbot is engaging, as well as if there any tips you may have in developing it further (which we absolutely intend to to do). Also, feel free to just chat with it and let me know what you think. 
      You can find the chatbot here. 
       
      Thanks!
    • By Christian Courtney
      I am creating a great 2d survival adventure RPG game. I have the core mechanics of the game but what I really need is graphics for this game. Anyone who helps will be fully credited and if the game is put out for money will get a share (will be discussed when you notify me). I am new to the Game making community and looking to get connections. The idea I have for this game is very ground breaking and creative. So if you would like to be apart of it please reply.
  • Popular Now