Silence The Sun
Project 3, Year 1
Silence The Sun was our third group projects developed in the first year at The Game Assembly. It's a Shoot 'em Up where we put a lot of focus on storytelling through cinematics, and all bosses were designed to be a unique experience for each level. This was our first game in the in-house 2D engine called Tga2D, and our first time making a game in C++ at school.
Custom Level Editor
During the first two weeks of development I worked closely with the Level Designers to create a custom level editor for the project. The editor was to be "wave based" instead of time-line based, meaning that you're stuck on a wave until it has either passed you or you are defeated.
The Level Designers would spawn enemies into the editor, then click on them to manipulate their path by spawning waypoints, dragging them around, creating either hard paths or curves to move on.
This is a very basic tool that the Level Designers would use to make all the levels in the game with.
This is my first experience using the ImGui library to create an editor tool.
Simulating Enemy Waves
A core feature of the level editor is to be able to preview how the enemies paths as they appear on the screen.
Creating Enemy Paths / Curves
The level designers could create paths by creating key points and dragging them to the desired location, essentially creating a movement path.
Bullet Emitter Tool
Alongside the Level Editor I've also developed a tool to create bullet patterns for enemies and bosses.
With help from the Level Designers, this tool was used to create all bullet patterns that are currently in the game.
Bullet Pattern Editor
A tool where we created bullet patterns for all our enemies and bosses. You'd select an index to preview how it would behave.
Big Enemy Bullet Pattern
An example of the bullet patterns in action.
In addition to the tools mentioned above, I was also in charge of some gameplay elements. Such as:
The "Wall of Civilization" - Boss 1
"The Weaver" - Boss 3
The player, its attacks, abilities and upgrades
- The enemies
"Wall of Civilization" - Boss 1
The Wall of Civilization is a 3-phase boss that starts with a turret fight. Once the turrets are defeated, the boss reveals itself to shoot a beam, and when the boss reaches low health it goes into berserk mode with more difficult bullet patterns and two new turrets that shoot seeking missiles.
The complex bossdesign (for this short development period) was decided early in the development and we felt that bosses were what we really wanted to put effort into polishing.
The entire boss is datadriven through .json which allowed the Level Designers to tweak all values to perfection.
Phase 1 (Turret Phase)
The boss hides behind a shield while turrets shoot towards you.
Intro Phase 2
Once the turrets are defeated, the boss enters its second phase. It begins by shooting a laser beam.
The boss attacks with different bullet patterns and a laser beam.
The boss spawns two new turrets, a missile seeking bomb turret and a regular turret from phase 1.
"The Weaver" - Boss 3
The Weaver is also a multiphase boss. It rotates its 2 phases between a boss fight and a minion fight.
The design philosophy for this boss fight was to spam as many bullets as possible, all while feeding the player lots of screen wipe ability upgrades to survive the bullet hell.
Just like the first boss, this boss is entirely data driven through .json.
Spider (Boss) Phase
The boss personally comes down to attack you, this also allows the player to deal damage to it.
The boss retreats and spawns a web with spiderlings that attack you until you kill them.