ColosSoul First Version Reflection



Emotional Space Shooter - ColosSoul

Description: 

This game tells a story about a Colossus finding and collecting all the lost souls in a claustrophobic abandoned palace. The Player's goal is to find their way out of this place and defeat the final boss. Players will level up and unlock different skills by collecting lost souls. An increasing difficulty curve fits the strengthening player and affects the emotion of the game. The three emotions of this game are: hopeful, hope-shattered and stressful.

Link to the Game :

https://alextianyouwang.itch.io/colossoul

Image and Gameplay:

https://drive.google.com/drive/folders/1d17kpDtAJj7V6gk7zoI0UTU7EzWHdquW?usp=sharing

Playtesting feedback: 

*Mechanics:

“If the soul starts to revolve around the player, the collection of that specific soul should be guaranteed.”

*Gameplay:

“Level two is a little bit simple, you can just dash through the cloud of soul and escape to the next arena. Some falling stones from the sky that block the way will be fun.”

“The boss fight is underwhelming, the boss should have more abilities to interact with the player.”

“The shooting mechanic is very enjoyable to play with, I hope I can do more things using the projectiles.”

*Feeling:

“Sounds and visual effects are highly anticipated in this game, I expect more of them.”

Development:

One design thesis I always follow when programming a game is to reuse different game elements. Take this game as an example, the “Soul” is both the resources of the game, but it is also potentially harmful if the player doesn’t grab it on time. Charge and shoot will not only deal more damage, but also act like a dash skill for the player to break through the enemy cloud. 

Here is some technical stuff. I separated the design process into three major categories, and tried to make my design as modular as possible.

*Player: 

Player is able to move and combat. Since the player's shoot ability will intensify as the level goes up, i programm the bullet projectile easily to be modified.

This shows how different parameters are passed into the “ShootCannon” function.

*Resources:

The only resources of this game is soul. I almost  make it as a state-machine, since it has so many attributes and behaviors.

All of those “States” could be accessed on a public scope, so that the resources will become what they need to be in different scenarios. For example, if the distance between player and a soul piece is closer than a threshold, the soul piece will be activated and attracted by the player.

Above is the player attraction function.

Above is the coroutine attached to each soul.

*Enemy:

Enemies basically follow a State-machine design pattern. It will behave accordingly based on the situation. It has four states in total. “normal” equals to follow player; “moveback” means it is pushed back by the player’s shockwave; “attack” will be executed when the player is in its melee range, and finally if it is close enough to the “final boss summon platform”, it will be in the state of “summon”. 

Success:

I made a working character with responsible controls and crisp animation.

I am able to reuse game-elements to maximize the game resources I currently have.

I made a level system and it created some attractiveness to the gameplay.

Learn to use state-machine design patterns.

Learn to control “Coroutines” in an ordered manner.

The mood in the first level is expressed very clearly.

Failure:

Lack of audio.

Enemy lack of diversity.

Boss fights are underwhelming, making the third level’s emotion not as clear as intended.

I add too many singletons so that makes the game’s replayable loop hard to manage.

Most of the things mentioned above could be solved by managing the time better.

Lesson Learned:

Next time to start a new project, I will not start with mechanics, but the overall structure of the game. Ather I manage to make a working playable loop, I will start to fill in the empty box with actions and aesthetics. I will also focus on the core of the game rather than my personal pursuit of “Enjoyable animation” or “Clean coding”. I have spent too much time on making my game “feels good”, but it kind of dilutes the emotional aspect of the game a little bit.

Future developments:

Filling the game with more audio and graphic feedback.

Organizing the code, make it ready to be easily used on multiple scenes.

Make the level design more interesting, and certainly add more levels.

Boost the enemy diversity, and make the final boss fight really exciting.

Also work on the player inventory system, add more skills for the player to equip it facing different situations.

Add a complete storyline to this game.

Get ColosSoul

Leave a comment

Log in with itch.io to leave a comment.