How I’m Making a Browser Fighting Game – Blade Arena
Been building a small low-poly fighting game called Blade Arena. 3 levels are done so far. Here's how the combat, levels and sound came together, and what I'm still working on.
How it started
Blade Arena started as a simple idea. A man picks up a long blade and fights off thugs, seen from a slight angle above. The first version was very basic. You could walk, pick up the weapon, swing it, and try to survive.
After that, I played it again and again and asked one question every time: does this feel good yet? The weapon became a long aruval. The swing got a proper wind-up and follow-through. The plain arena became a roadside, and the hero now arrives on a moped. The whole game grew from small changes like these.
Making every hit feel good
A hit feels good when the game reacts to it in many small ways at once. In Blade Arena, every hit freezes the game for a split second, pushes the enemy back, shakes the screen a little, throws out sparks, and plays a sharp sound. If you finish a 3-hit combo, the game also slows down for a moment, like a movie.
The hero also helps you aim. When you swing, he turns to face the nearest enemy and steps in if they are a little too far. This makes your attacks land the way you meant them to.
The moves
You only need a few buttons. Click to do a 3-hit combo: a right-hand slash, a left-hand slash, then a two-handed slam. Right-click to throw an enemy into the air, then hit them while they are up for extra damage. Press Space to jump and click in the air to kick. The kick changes with your speed, from a small snap kick to a full flying kick. Hold Shift to run, and press Q for a spinning tornado attack once it is charged.
Enemies fight back too. They throw big wound-up punches, and later they can grab you from behind. Click fast to break free, or you get thrown.
Levels that flow into each other
There are no loading screens in Blade Arena. When you finish one area, the next one simply slides in around you while you are still fighting. The old scenery moves away, the new scenery moves in, and the light and sound slowly change to match. Your health, score and weapon stay with you, and any enemies still standing follow you into the next area.
The levels so far
Three levels are done right now. On the roadside, you rescue a woman from a van and then fight off 20 thugs. In the film studio, you protect a lighting assistant on a ladder while thugs try to shake him off. In the cargo yard, you stop a boss who keeps sending messages to his wife. You can only hurt him while he is typing, so timing matters.
Each level adds one new idea, and each one is a little harder than the last. A fourth level on a rooftop is planned next.
Sound and music
All the sound in the game is made by code, with no audio files. The first sounds were too beepy, so I rebuilt the whole system. Hits now have a sharp, layered sound, and you can pick from three styles. The music changes with the fight. It stays calm when things are quiet, adds drums when enemies show up, and adds a melody during big fights. It also dips for a moment on every hit, so each impact stands out.
Building it fast
Playing from the start every time was slow, so I added a small developer menu. It lets me jump to any level, pause the game, and turn on extra damage to test things quickly.
The title screen is also a little show. Behind the menu, the hero fights on his own in short, movie-style moves, so new players can see the combat before they press Play.
What's next
Blade Arena is still a work in progress. Only three levels are finished so far, and I am still improving the action, the fighting moves, and the sound. Expect the combat to feel even better with every update.
More from the archive
Archive