top of page
Restless Battle
About
Restless battle is a 2d action-slasher game. In the game the player fights waves of enemies and the goal is to survive all the waves. In the game the player is meant to die and upon death the player has a limited time to pick up health to continue the fight.
Project Info
-
Role: AI and Gameplay Programmer,
-
Time: 8 days
-
Team Size: 3
-
Engine: Unity
-
Engine Experience: 6 months
-
Programming Experience: 6 months
Background
I started learning unity with an online course from Gamedev.tv. I took multiple courses from them later on which impacted me a lot. Therefore, when they announced that they are going to be hosting a gamejam I was immidiately hooked.
That would be my first game jam and I had only about half a year of game development experience. That was intimidating. In addition to that, the game jam was happening during the last course in my university.
I participated in this game jam with two of my classmates from the same unitversity. We had planned to structure our time so that we can be free as much as possible to dedicate the time for the game jam. Stakes were high, risks were big.
AI
Design
In the game, the enemies have a chance to drop a health that can be picked up after death. It wouldn't be fun if the enemies were constantly chasing you resulting in all of the pick-ups located at the same place.
Therefore, I came up with an idea to make enemies function like cowards.
Logic:
-
If a coward is hit, he could try to run away.
-
If a coward hits the player, he should try to run away.
-
Cowards would like to keep their distance.
Result
Implementation
In the game there are two types of enemies: melee and ranged. Both of them utilize different behaviours such as "Retreat", "Chase", "Wander", etc.
In order to control the behaviours I made a common abstact class that functions as a controller. It is responsible for switching the behaviours.
Meanwhile the behaviours themselves are responsible for controlling the enemies. The behaviours are the individual components which are activated by the controller.
Gameplay
About
I have implemented the majority of the game logic. I'll showcase some of the things, but I'm not going to include everything as I deem it unnecessary.
Player controls + animations
-
Player movement.
-
Player Attacks.
-
Animations.
-
Player Magic Shoot
Tools
Enemy Spawner
My designer needed a tool to make waves of enemies and work on the game difficulty. I made a small tool where he could place different types of enemies and they would spawn when requested by the game.
Cord Circle
When the player dies, a circle around the player appears. It serves as a bound to how far the player's ghost can move to pick up things around the player's body.
I made a small tool for my designer to play with values.
What is CordCircle
CordCircle tunning
Takeaway
In progress
My team
bottom of page

