AutoScroller Level

Hi, I have a question. I’m trying to replicate an autoscrolling level like that of TMNT Shredder’s Revenge’s Mutants over Broadway LevelTMNT Mutants Over Broadway section
or
The First Level of BenTen to the RescueBenTen to the rescue
these are just examples The TMNT one is recent and The Ben Ten one was something I remembered from back in the back in the day. But anyways I understand that I can use
The Event Tick method for constant forward movement but that only allows my character to strafe up and down not forward and back. I know some games have characters in a “Box” per se and this “Box” does the moving and player just moves the character out of harms way but I have no idea on how to do this in unreal(Coming from unity and only have using unreal for school projects). The third method I know is Splines but the brings up the same problem with the second method. I know if I use splines the player will move forward but will be constrained to the spline. And the last method is have the player be static and the level scrolls or “moves” around them but I can’t find any hints on how to do it the closes I’ve gotten was Ulevelstreaming but no avail. Sorry for the long windedness but this has bugging me for hours. I might be over thinking it but I’ve done it before in unity. Here is the blueprints the of the first method

Any help will be appreciated

Hey @MetalMouth1994

you have to look for Parallax Background or Parallax Scrolling:

I was thinking about parallax scrolling but I wondered how does that help with spawning in hazards because the environment would 2.5D ( hazards for example cars and road be 3d models but the perspective is 2D )but I’ll take a look at it. Thanks :smile:

Hi, what you need to do here imo is what I do for beat em ups and ship scrollers. Here is how I would do it. I would make a blueprint - actor. Add a camera to it, save and close. Go into the character bp, delete its camera and spring arm, compile save close. Now I would drag my camera actor bp I just made into my level and position it close to where my character spawns. Now go into your level blueprint, and with that camera still selected, right click and make a reference to it.

Now add these nodes to an event begin play to set the camera to our new dragged in camera. Compile / Save.

At this point press play and just see how the camera looks in relation to the character and adjust accordingly.

Now that you know it works, you need some propulsion for your camera actor. For Beat Em Ups and Shipscrollers this seems to be Y+ based movement.

Go back inside your camera actor bp, to get it to move is as simple as coming off an event tick to a SetActorLocation node. Get a GetActorLocation node, right click on its output pin and choose SplitStructPin.

Go ahead and connect the X and Z to the SetActorLocation node.
Drag out from the Y of the GetActorLocation and hit “+” for float add.

Drag out from its output and get an FInterp to node. It should have connected to the target input of the FInterp node. Also drag out the Y from the Get Actor Location and feed it to the current input of FInterp. Also drag out from the delta seconds of the event tick to the delta time input of the FInterp to node. Drag its output to the Y of the Set Actor Location node, Compile Save, what is going to determine your “speed” is the number in that addition node and the “Interp Speed” number at the bottom of the FInterp To node I have marked both…

Now when you hit play…you should have the type of movement you desire! Enjoy.

So I what was posted but first thank you usa423 and L1z4rD89 you too I have the camera effect but my character won’t constantly move forward. But that begs the question and maybe you may know. in beat em up autoscroller sections or even sidescrolling space shooter, is there a invisible wall that push the player to give the illusion of constant movement and stop them from getting off cameraed. I know that animations of the character helps but I may need to do some more research :sweat_smile:

1 Like

Keep in mind, your player character is going to have to be moving just as fast and the exact same speed as the camera actor to achieve the look of a ship scroller. Now you come to the most infamous question of this forum, the ole invisible pushing horizontal wall. And then when you start messing with that you discover that it doesn’t push “smoothly”. And the short answer is because of the capsule component shape. The other day I was having a terrible time getting such blocking collisions to work and it was suggested to me to try to limit the player movements to achieve the effect. It took me awhile to finally get it but I finally got it, and think I may post a discussion thread here today or tommorrow about it and show some codes and methodology of this.

Based on the game you suggested (and that is a good one), and the stage, I will guess that is essentially a ship scroller for that stage, with added side scrolling and beat em up mechanics.

So, I guess the first thing to do would be to set your character movement to can fly for that stage and go from there. The same mechanisms for getting the camera actor to move can be applied to shipscroller movement, but its a bit more complex and tedious.

Again I thank you for your help. I wanna try a trick I used in unity if its possible. In unity I used the “Box” method I wrote in my first post. I wanna try it here but I know there is a few more steps in unreal then unity. or maybe not. but this how i did it in unity

step 1. Create an empty object with collision for spawning hazards but not hurting the player
step 2. Make the empty move forward
step 3. Make the actual player character a child with it’s own movement system
that allows the player to move freely but is constantly pulled by the parent empty

it wasn’t the best method but it helped in keeping my highschool project from stalling in development but until college they used unreal. So i’m trying apply my unity logic to my limited college unreal knowledge. I hope it works but i will also try switching the character movement to fly

1 Like

Well again, I suppose it doesn’t matter what is under the hood so to speak code / design wise as long as it can achieve the look / gameplay you are after. That thread is up now btw.

1 Like