Kamikaze fairground ride

I have been working on a fairground ride, based on this one here: http://www.kmg.nl/kmg/factory/afterburner_en.html
Red text indicates the swing angle of the arm, green text indicates the rotation speed of the cross.

In order to keep it a little bit original, I decided to allow the gondolas to swing.


  • Add brake system to the gondola hinges, like I haven’t already tried to add it a gazillion times :no_good:
  • Rework the arm movement so it won’t jump when the angle variable is altered and look really odd
  • Rework the rotation of the cross so it won’t make the gondolas spazz out when a frame gets dropped
  • Add restraint system to the gondolas
  • Add lowering floor
  • Optimize the models
  • Dress it up with textures and hundreds of super fancy lights
  • Implement the gamemodes described below in a cycling manner: regular ride, gamemode 1, gamemode 2, gamemode …, regular ride, gamemode 1 and so on.

Gamemodes (subject to change):

  • Balloon battle: shoot balloons and get units depending on balloon size.
  • Russian roulette: bet units and ride the machine as it terminates the gondolas one by one. Surviving will result in a refund among the lines of three times the bet amount, which is a gain of two times the bet amount.

Suggestions are welcome!


Holy shit that’s amazing.


That is incredible! Great job!

It also reminded me of the Revolution and TNT Vortex rides that were in Rollercoaster Tycoon 3. :smiley:

Looks sick a’f! The fps camera of the rides movement looks realistic! Can’t wait to see it finished!

I wanna ride it!

Phenomenal! Can’t wait to see it in-game :smiley:

This looks amazing! Great work!

I’m taking my rift off for this ride.


Easy enough, all you need is some waterguns and some really competitive spirit and you’re good to go.

1 Like

Look what I found on my way home from school.

Time to… uhh… do some extra research on this thing. :sunglasses:

As an update, I’m currently working on smoothing the swing motion and the restraint system. As for the latter, I cannot get it to work. Does anyone here have an idea on how to apply physics to a child actor in a blueprint? The child actor here is the gondola. It either hangs completely still or simply falls off the hinge.


I’ve ridden on one of those multiple times.
I’ve since stopped because my most recent ride on one, it juddered heavily at random points during the ride, before being subsequently shut down for repairs after I’d gotten off. Creepy stuff.

I like how you just casually mention that like passing by random carnival rides is a regular occurrence for you :stuck_out_tongue:

Same!!! It started raining on a suspended swing spinner thing I was on and all the carts started hitting each other and it was like super scary and stuff and I’m not gonna forget being 3 stories from the ground in that thing.

It’s a fun ride when it’s not raining and everything is working fine though.

That was always my biggest fear on those types of rides.

Not entirely sure what you are attempting but you could try spawning a new actor at the world position of the ride actor. Child actors don’t have all the cool features. You should also look into physics hinges and constraints.

He has a valid point here. We don’t have the wonky and unreliable constraints of source engine here, what we’re dealing with… is Unreal.


Baps with newspaper

Bad puns!

1 Like

I am using physics constraints. They worked flawlessly in the video, but in the video the gondolas are nothing more than static meshes. The thing is that static mesh components have the “enable physics” option in the blueprint details tab, whereas child actors do not have this option. I have already tried enabling physics on the static mesh within the gondola actor, but that simply led to the mesh falling infinitely. I’ll try moving the hinge into the gondola actor now.


I’m getting somewhere.


I’ll just drop this here, even though I didn’t get as far as I wanted:

Fully functional restraints. Each restraint has its own randomized speed when it closes or opens. It’s also possible to switch between seats now.

And now I am stuck with getting the swing movement right. Here’s the deal:
The maximum swing angle (0…120 degrees) is increased and decreased by pressing the t and g keys respectively. The swinging motion is then created by multiplying this maximum angle by a sine wave.
However, by just linearly increasing and decreasing this angle, you could see the arm make sudden movements, as shown at the end of the video in the OP. To make matters worse, the gondolas physically respond by this sudden jump in the direction and/or speed.
In order to combat this, I want the value to accelerate and decelerate, as shown in this graph:

I then had to turn this design into mathematical functions, and well… I had to do math:

But implementing this in the Blueprint led to absolute spaghetti, and it only did the acceleration-to-constant-speed part. I then decided to turn every mathematical function into a Blueprint function in a function library, to make the main code easy to read. But now it’s not working properly, and debugging functions in a Blueprint function library is sure as hell not possible due to a bug in the Unreal editor.

So here I am now, blindly reconnecting nodes in Blueprint, trying to get this damn thing to work.


You should look into https://docs.unrealengine.com/latest/INT/Engine/Blueprints/UserGuide/MathNode/index.html

1 Like


I have no idea what any of that says

But this is super cool! Keep up the good work :3

1 Like