With each project assignment there were new challenges, multiples times I went to fellow students to push the project forward and opportunities to expand my knowledge of game development . Below I'll highlight those key takeways for each as well the person who generously mentored me along the way.
Pok'our is a fast runner based on the sport Parkour and
the old mesoamerican ball sport “Pok-Ta-Pok” where you throw a ball through a sideways hoops. Running, jumping and hurdling a breakneck speeds . Trailer here
Robin Ortryd with finding right hit point for triggering hurdling animation
Tutorial run shows the player how to hurdle obstacles
This game features Parkour as one of it main components. I needed to make a hurdling mechanic that reacted smoothly at a high velocity. Finding the right hit point to trigger hurdles was also a challenge. These actions had to take place as the player character moved rapidly through the world sticking the rotation on his landing. The player character needed the strength to vault over both high and low obstacles.
To get the right strength for the direction and pitch of the player character, we modified the rotator by converting it to a vector and multiplying by an adjustable float. I found the edge of the obstacles with a line trace that queried the collision with an action triggered by a key binding. I used Unreal's function launch character to execeute the hop over the obstacles.
The final result was a satisfying hurdle that looks good even when hitting the edges of the wall. With more time, we could have made this even better by removing visual gaps. Still, the final speed running game combined the hurdle mechanic and air control to great effect.
A push and pull mechanic in Hrafninn Munin
Inspired by Little Nightmares Hrafninn is a puzzle platformer where you play as Munin, one of Odins two ravens.
Your mission is to collect souls, lost in limbo, that contains memories and then bring them back to Odin. Trailer here
The puzzles in Hrafninn requires the the player character to mimic taking hold of crates and boxes in order to reach spots around the level. I created a Grabbing component to do just that. This required ensuring hitting the grabbed object at the correct edge before attaching it to the player character to be pushed or pulled. Once attached I wanted to simulate real friction while the player character slid the crates in different directions across the floor.
Using a physics handler to attach objects to the player character solved the problem of grabbing the boxes. A bool available to the designers in the inspector made it easy to reference which items in the scene were grabble. A tricky part of grabbing, was simulating pushing and dragging rather than carrying. I solved this by adjusting the character's linetrace height origin. Once attached faking drag friction was done by lowering the player's acceleration, after a item-held bool check.
We achieved through close collaboration and feedback the Little Nightmare-light feeling when moving objects around. Fine tuning over a longer period of time may have avoided a few clipping issues while pushing and the gap between the hands and object while pulling. Gliding over the floor after a couple iterations felt much smoother while building up momentum.
Reusable pooled projectiles
Kung Funked is a whimsical take on the arcade classic Kung Master. The mission is simple karate chop and kick your way through the White House challenging President Trump and his minions.
KungFunked, is an on-going attempt to release from start to finish. I gave the player character the task of punching, kicking, jumping, crouching and taking damage (I made the animations as welll). The player character also needed to display thru UI the effects of dfferent items, such as inivincibilty and health boost. I wanted to make walking through the scene feel urgent while not suffering from too much force physics gliding.
To solve the rigidbody glliding after applying addforce I did a check on the player character's vector on the x-axis, if exceeding a fractional number I can adjust the angular drag to a desired amount in the inspector. I made the player's response to the boss belly attack by checking if the boss attack animation triggered after that I applied a new vector2 location subtracting the boss' position from the player's. I then normalized it and added force to the rigid body, by passing the subtracted difference.
There is still plenty of work to be done on KungFunked. The fighting feels a lot like the arcade classic I based it upon. It still lacks the umph of it's original, but with some tweaking it is getting closer. The walking reminds me of the mega man gliding, but it's not over powered. The point of this personal exercise, was to push myself to discover what it takes to see a project through from scratch to publishing on itch.io or GameJolt.
I am learning a lot along the way.
A tool to place objects into a Unity scene with the mouse cursor instead of dragging prefabs one by one into the viewport. The object dropper can drop several objects at once into a scene as well as set distances between dropped objects.
The object dropper tool was thought of while I was placing prefabs into a scene and I wanted to just click them in the scene instead of dragging each one into the scene. The tool required visual queues to make it easier to see where to place them. I put a constraint of how many can be placed at once and made the distance between object adjust with tool.
In order to place prefabs or any object ouut into Unity's sceneview I first had to have a origin point to destination point Raycasting from the Sceneview's camera fit the job. That ray then loop through an array of vectors in which to draw points in the scene adding a check for a mouse click inside the loop created an instance or instances of objects set in the custom editor's window. To limit how many objects could be dropped I used serialized properties to clamp the value's min and max.
The object dropper worked exactly as expected I could easily add an object, set the total count objects to drop into the scene as adjust the distance between eacch object dropped. It saved me time that would normally clicking through folder in the Unity and nitpicking with where to place them. Going further I would like to expand the tool to include different types of objects as well toggle how the placed ie on line or within a circle.
Bubbleboy's fuel and health HUD
Bubble Boy is an arcade action game with an 8-bit aesthetic that harkens back to the NES era. It borrows design elements from classics such as Bubble Bobble and Lunar Lander to create an exciting experience reminiscent of yesterdays! Trailer here
Copyright © All Rights Reserved