Game prototype/Blueprint study, January 2019
Time: 1 week
Team Size: Solo
Tools: Unreal Engine 4
My contribution: Scripting, Animation Implementation, Whitebox Demo Level
With this little project I wanted to explore blueprinting more and challenge myself.
At the time I was super into the Portal games, and I wanted to figure out how the portal gun mechanic worked.
I also wanted to make a punch attack that could be charged up to deal more damage, that could break walls. I wanted to pick things up, drop them, and switch camera from 1st to 3d person.
I was also inspired by the shrink and grow mechanic of Ant Man.
Pick up/ Drop mechanic
I was curious to how picking up/dropping stuff worked, so I decided to script it.
This could be used for many different things, like in portal when cubes activate pressure plates, but I just wanted to know how it worked.
It works together with my Ant Man mechanic, so if you're big you can carry more, and if you're small you can carry less heavy objects.
The Punch Attack/Breakable Wall
I created an attack that could be charged and deal more damage when held down.
I "faked" the punch by spawning a projectile dealing damage, timed with the punch animation. The projectile scripts are duplicated, just change the damage value for the charged one.
To demonstrate the difference in damage, I also made a destructible cube that could be broken by charge-punching it or punching it regularly 10 times.
The Portal Gun
I wanted to know how the portal gun mechanic of Portal was made, so I decided to recreate it in blueprints.
Just like in Portal, you left and right click to shoot portals on specific walls, that then link to each other. Putting out more than one of the same kind will remove the first portal.
Portal A and B's scripts are duplicates, just switch out the reference to the other one. To get the "looking through" effect of the portals, I'm using "SceneCaptureComponent2D".
Ant Man Mechanic
Using timelines, I made a mechanic that let the player change size, inspired by the Ant Man superhero. The player can press one button to shrink, and one button to grow.
I made it because I thought it would be fun and interesting to implement as a puzzle mechanic, where you have to change size to progress the level.
I created a stationary portal separate from the portal gun, to teleport the player to a different part of the level.
This way the player can keep their own portals, while still being able to teleport, and they don't need to be able to see/reach the location they're going to.
3rd/1st Person Camera Switch
Some areas I wanted to be able to have 3rd person, to for example watch the character animations.
Other areas, like when shooting the portal gun, a first person perspective was needed.
I also toggle the visibility of the third person character, so that it doesn't clip through the camera in animations.