Weapons in LiveFire League: chapter 1

In a shooter, weapons are everything. They define how you move, where you position yourself, how you attack and defend. Bad weapons ruin the game. Good weapons make it memorable.
In this Devlog series, I want to break down how weapons work in LiveFire League. I'll cover what weapons are in the game, what role they play, and how they were created.
Let's go!
Weapon Classification
Weapons can be divided into three types:
- Energy — blue
- Standard — green
- Heavy — red
The Gauntlet is a separate category — a melee weapon - colored grey.
Every weapon has both a primary and an alternate fire mode.
Weapon Stats
| Stat | Description |
|---|---|
| Damage | Speaks for itself |
| Fire Rate | After firing, you must wait a moment to shoot again |
| Consumption rate | For weapons with continuous fire, determines how fast ammo is used |
| Projectile Speed | How fast the projectile reaches its target |
| Projectile Impulse | When a bullet hits a character, they are knocked back based on this value |
| Max Ammo | Limits how many shots you have. There is no reloading — this keeps the gameplay fast-paced |
| Recoil | Prolonged firing reduces accuracy |
Crosshair Interface

The crosshair shows quick info about your weapon — because you don't always have time to look at UI indicators.
- Red circle around the crosshair — shows bullet spread
- Crosshair color indicates weapon state:
- 🟡 Yellow — ready to fire
- ⚪ Gray — reloading
- 🔴 Red — low ammo
- ⚫ Black — out of ammo
Blaster

When you spawn, you start with the Blaster and the Gauntlet. Let's talk about them.
Blaster — a precise energy weapon.
- Primary fire — fires a beam of light energy
- Alternate fire — charges energy inside the blaster to release a powerful shot
Projectiles fly relatively fast, but you need to lead your shots at long range. The weapon has minimal recoil, which resets between shots. It has a weak knockback effect.
Special feature: You can pick up a second blaster and dual-wield. This doubles your fire rate — and doubles ammo consumption.
Inspiration for the Blaster: a mix of the Light Blaster from Quake II and the Enforcer from Unreal Tournament.
Role in battle: blaster is the baseline combat weapon — one that becomes your primary when you pick up a second one.
In development history, this was the first weapon I created (so most of the core weapon systems were built around the blaster). But the dual-wielding mechanic wasn't added until much later in development because it became clear during playtesting that the weapon was seriously underpowered.

Technical Details (for the curious)
The weapon system can be split into:
- Fire mode handling — controls projectile generation and ammo consumption
- Projectile flight and interaction with the game world
Primary fire of blaster simply generates a bullet aimed in the weapon's direction.
For optimization (to avoid constantly creating and destroying projectiles that spawn and die at high frequency), I created a projectile pool:
- When firing, a projectile is taken from the pool, initialized, and activated
- When it hits something, it returns to the pool and its state is reset
Special blaster projectile behavior: it leaves a trail behind (similar to what you might have seen in Crimsonland). Here's how it works:
- A collision point moves ahead of the projectile
- The sprite stretches between the initial firing point and that collision point
The tricky part — dual-wielding: I had to add a flag to mark dual-wield mode, then change firing logic, character sprite visuals, and UI based on that flag. Then reset everything on death.
Glove

Glove — a melee weapon.
- Primary fire — releases a pushing impulse. Use it to knock enemies into hazards. You can also corner an enemy and punch them to death.
- Alternate fire — generates a shield that blocks projectiles, but still takes damage from explosions and environmental hazards (like lava or gas leaks).
Ammo:
- Impulse costs no ammo
- Shield generation costs ammo — but it regenerates over time
Inspiration: in concept, this is similar to the Shield Gun from Unreal Tournament 2004.
Role in the combat: The glove is your last resort if you run out of ammo. It's also great for ambushes and corner attacks.
This weapon was added last — not because it was technically difficult, but because it took time to find the right role for it in combat.

Technical Details
The challenge: the impulse is a volumetric projectile. Firing along a wall while standing close to it caused collisions. So I added a check: if a collision happens too soon after firing, the impulse gets pushed away from the wall.
The shield is simply a static object with collision set like a wall — it intercepts bullets and moves with the character.
To regenerate ammo for the Glove, I added a function in the weapon script. But it only works while you're holding the Glove, so I had to add this mechanic to the character script.
Visual effects I added later:
- The pulse is gray by default
- When it hits walls — it turns yellow
- When it hits characters — it turns red
The shield also flashes when it deflects projectiles.
The sky-high goal: can you reflect a grenade back to the sender? But I'm getting ahead of myself.
Next Part
In the next part, I'll talk about standard weapons: Shotgun, Assault Rifle, and Machine Gun.
Here's my question for you: what weapon is absolutely essential for you in an arena shooter? What are you hoping to see in the next parts?
Thanks for reading
Get LiveFire League
LiveFire League
A fast-paced top-down arena shooter
| Status | Prototype |
| Author | AlexAnniken |
| Genre | Shooter, Action |
| Tags | 2D, Arena Shooter, deathmatch, Fast-Paced, Godot, Indie, Multiplayer, Top down shooter |
| Languages | English, Russian |
| Accessibility | Configurable controls |
More posts
- Sound in LiveFire League3 days ago
- What's new in LiveFire League (and what's coming)8 days ago
- Weapons in LiveFire League: chapter 414 days ago
- Weapons in LiveFire League: chapter 317 days ago
- Weapons in LiveFire League: chapter 221 days ago
- LiveFire League: Prototype is Now Playable30 days ago

Leave a comment
Log in with itch.io to leave a comment.