This is a second iteration of a project a made a year before this. That one was made in 2 days to spice up my portfolio in order to find an internship. I decided to revisit it and to improve it both mechanicly and visually. While also combining it with a school assignment.
Since the controls of this game were so simple I focussed on making it a mobile game. But with that in mind it was also a challenge to make it look good in 3d while also having acceptable performance(I didn’t have the best phone so I could test it easily).
I decided to keep the enviroment simple and readable. I wanted to add a randomly generated levels mechanic to the game, so baking the enviroment wasn’t a option. Because of this and trying to keep the performance intact I chose to not add shadows, but also adding black planes to the background to sort of fake them. This did make it harder to make look good but I think how it turned out it sort of worked.
The project isn’t finished but it does work on mobile and I still need to finish it sometime.
For the slime I made my own simple physics. It has it’s own gravity and velocity. When it sticks to a wall you can drag around the slime and change the angle and speed it will launch. This is indicated with the arrows that aim in the correct direction and grow to indicate the force behind the launch.
When flying through the air the slime will shoot a spherecast to check for walls that are in it’s way. When he finds one, that he will pass next frame or already is on, it will set it’s velocity to 0 and snap to the hit point of the spherecast. Besides that it wall also parent itself to the wall it hits. This is because it can also sit on a rotating wall, and it will then follow the wall.
Since this was aimed to be a mobile game, I had to add customization options. But I mainly did this because I wanted to add this cause I thought it was fun. You have 3 customization options, shape, color and hat. The shape changes the mesh of the slime. And color changes the material of the slime. Changing the hat just creates a prefab that is parented to the slime. It is all really simple yet a fun addition.
This game wouldn’t be really fun if there aren’t any obstacles. Because of this I added a few that are already functional, and I also have a few that aren’t implemented yet. The ones that are already implemented are A saw that kills the slime when colliding with it. A Vacuum pipe that will suck in the slime and shoot it out at another location. And a simple rotating wall.
The ones that are there but aren’t implemented yet are, a bouncepad where the slime can be launched of when jumping on it. A fan that applies a force when in a certain area. And ice that can be applied to surfaces, when the slime is on this it will slide off in the gravity direction or using the velocity it already has. And Grates on which each time the slime lands in it, the slime will sit on the other side of it. And lastly a simple conveyor belt to move the player that sits on top of it.
To add more depth to the game I added multiple objects the player can complete.
2 of them are to finish within a certain time frame. One of them is simple and the other is harder to finish and most of the time requires the player to go through the level again but now at a faster pace.
The other objective is to make it to the finish in a minimal amount of jumps.
This is set up to change each challenge easily and for me to add more challenges along development. There currently isn’t a reward for completing these objectives, but I’m probalby going to add a curency for the customizations that are purchable with these medals.