Any tips for making boss fights?

I am planning to make a Boss fight for my platformer game. Is there anything I should know beforehand?

3 Likes

Handling sprites maybe?
Maybe also know how to write character.

1 Like

use the status bar extension and add some fun dialogue

2 Likes

try to scale the difficulty, don’t throw the player in from the deep end and introduce mechanics at a pace that the player can manage.
Try to give windows where the player can deal damage else the fight might feel dragging and unsatisfying if you can only deal small chip damage.

Just remember that you should prioritise fun > difficulty

3 Likes

MAKE EM SUPER BIG AND HARD TO BEAT those are the best bosses

2 Likes

Don’t use all physical attacks (Like a punch or sword slash). Mix in some particle attacks as well (Like a trail of fireballs that wave up and down while moving across the screen). Don’t put too many particles either. An example of particle attacks is my game Big Battle, but tbh that one does have too many particle attacks.

1 Like

Oooooooo and a BIIIIIIIIIIG CANON!!!

1 Like

This is going to be a big post because I have been waiting for someone to ask this question :smiley:

I believe every game should have a boss fight in some form, it is the best way to show off what is possible from you game, but bosses can make or break your game’s quality. To date, I have made 24 different boss fights in makecode, and most of them suck, a few of them, however are pretty good. In my experience there is a few different things that are key to creating fun boss fights. I’ll include bad and good examples from my published games for each suggestion.

Movement

In a boss fight, constant movement on screen is almost always necessary in a boss fight, this is a boss fight, it must be engaging. If both the player and the boss can be still for an extended period of time (>5 seconds) while not jeopardizing HP or loosing, then the boss will feel too slow. Exceptions to this rule is a cool animation that the boss is using to display their power or a boss stagger, which usually should be kept to a minimum. A good exception to this is if you game is slower paced eg. a puzzle game.

Boss with too little movement:
Surtur from Boy who Would Be Thunder, this boss looks awesome, holds story consequences, and has unique cool attacks. But they send a meteor or sword strike your way once every 10 years, this lets you chill anywhere in the arena and take his HP down leading to a boring fight.

Boss with MOVEMENT:
The Eye of Ra from Conquest of Duat is the first boss that you can find in the game, the fight starts slow with only a few projectiles to dodge. As the fight progresses, many many projectiles appear on screen, forcing the player to be constantly moving. Even though the fight is easy, it is still exiting because of the constant movement needed.

Prestablished Elements

It is very easy to introduce new mechanics in an effort to make the boss feel different from the rest of the game. Don’t do this! It is way more fun if you introduce a mechanic earlier, that the player has already mastered, and incorporate it into the boss fight. This allows the player to play the game without having to learn things in a place that they should be focused on defeating a powerful enemy. This isn’t exclusively a gameplay thing either, showing the boss earlier in the game or foreshadowing them earlier makes the story more interesting because it lets the player work towards defeating them or understanding the lore around your boss. This is the most important category if your boss is the final boss of your game.

A well pre-established boss:
The O.V.E.R-com from Count 2 Three is the first voice in the game, and the second half of the game is entirely dedicated to the fight’s lead up. In the third phase of the fight, the boss’s emecency shutdown switch is blocked by a fizzler, preventing use of the player’s portal gun to access it. Instead they must utilize the leaking speed gel. The player just spent 10 levels learning about speed gel and it feels rewarding to kill the boss with it.

Outanowhere Boss:
The Bat King from Dino’s Great Adventure is the first boss I made. He comes out of nowhere, literally, and kidnaps the baby dino. The boss fight consists of rapidly changing the tilemap and hoping the player can keep up. You learn how to defeat him with splash text and is only loosely related to the story and any existing mechanics. This “Outanowhere” method obviously is bad.

Power Scaling

Boss fights aren’t supposed to be easy. They should be a challenge, but always a challenge relative to your player’s current skill level. I agree with everything @Luke said in his post. The difficulty of a boss should be consistent with what the game has already thrown at you, albeit with a slight difficulty increase. Obvious to mention, but the boss should always have similar gameplay to the rest of the game, don’t turn your puzzle game into a bullet hell, learning a new game for the sake of difficulty in a boss is not fun. (I have made bosses like this before)

A well scaled boss:
The Keystone Priest from Conquest Of Duat is many people’s favorite boss from that game because the fight is very fun while being difficult but still manageable. He doesn’t have a tremendous health bar, but the fun physics of his attacks make him feel a powerful and unique foe. Defeating the Keystone Priest is only slightly harder than what came before it.

A super overpowered boss:
GLaDOS from Portal Space Edition is defeated with previously introduced mechanics and requires constant movement on screen. Sounds great on paper? This boss is super unfun and way more difficult to fight than anything before it. Projectiles feel spammy, and there is a time limit upon the fight. Don’t make time limits outside chase bosses!

Coding Tip

Every good boss I have made on this platform makes use of the “Sprite Utilities” extension. It has tools for creating fun projectiles, movement, and timing of attacks. Download it here:
https://github.com/jwunderl/arcade-sprite-util

Boss With Sprite Utilities:
The The Familiar Knight From Conquest of Duat uses the on sprite update blocks to calculate the times of attack and makes the boss feel alive and like a real knightly duel.

Boss Without Sprite Utilities:
The Black Hat Hacker from Gray Area only sends attacks at the beginning of each of the fight’s phases. These attacks follow boring bullet patterns and aren’t super fun to dodge. Once I found this extension, my boss fights leveled up majorly from bosses like this.

Hope this helps!

5 Likes

thanks guys ill inform you when game done

1 Like

how do i add that extension? its not working

1 Like

Click the gray extensions drawer (marked by a plus). Paste the link into the search bar and then click the box that says something along the lines of sprite-utils or sprite utility.

Ahh, thank you

1 Like