Game
Outland 17: Void of Liberty
10 years ago

Weapons Development


Greetings fellow game enthusiasts! I am Robert, lead programmer on Outland 17 : Void of Liberty. I’m writing here to share with you a look at the more technical side of the game’s development. Particularly all things weapons, attacks, and things that generally go pew pew in the game.

The way weapons are set up in the game is that they are divided into two sides. A graphical side and a logic side. The graphical side is what you see on the screen. It looks like a musket, shoots a projectile, the muzzle flash it shows, the sound it plays, and how the weapon is handled by the character. The second side is the logic that tells it how many projectiles to fire, how much damage they do, what effects they have, and how much AP or uses they have.

Weapon logic has plenty of variables we are able to play with and change at will. This way, we are able to create many different weapons combinations. For example, if we wanted a gun that shot 7 missiles in a row and had a random chance to instant kill a person, we can do it.

The first question set of questions we ask is: what do we want to attack with this weapon? Is it something that can only attack enemies? Does it target allies like a heal? Does it hit an entire tier like a splash effect?

Next we determine some of the finer details: How many shots does it fire per hit? How much damage does it do? Does it have a cooldown on it? How much does it weigh?

Finally the finishing touches of does it have a secondary attack? What is the effective range and accuracy? Does it do a status effect like stun enemies or give AP back on successful hit?

5d0c126a239a4.gif

With all of these controls at our disposal, we can create anything from a healing grenade that lowers enemy accuracy in the area to a long rifle with an under slung grenade launcher for splash damage!
By far the best aspect of the system is not that it already has so many options, but that it is also easy to add new elements to them too. Without adjusting any old code, we can add a new status effect or a new on hit bonus that stacks on top of the already customizable system.

We’re all eager to balance and try new ideas for weapons all the time. The newest of additions to the build is the laser musket, which can currently be found as loot in the game. It has a chance to stun enemies on hit. Also, there is an AP restoration item that gives you an extra actions per turn. Always be on the look out for new guns and items and give feedback on any crazy futuristic-colonial ideas you may have!

5d0c126caf8dd.png

If you haven’t had a chance to yet, check out our Kickstarter and back the project or even just help us by sharing the link on your favorite social media. Thanks everyone, see you next time!



0 comments

Loading...

Next up

Steam Greenlight Launch!

Finished a project I've been working on over the last few days!

Modeled and textured in Blender.

#3dart #lowpoly #npbr #fantasy #hut

So here's the first of the zodiac signs i will make for the next weeks.

Rockin the Guitar, an Axe like Guitar I made for my Uni project

Call it 'wrong turn'!🚫 The feeling of running into a house with only one exit🚪, and being doomed to die. #pixelart #pixelartist #pixelartwork #art #pixel #indiegame #IndieGameDev #indieartist

We're glad to announce that Baby Dino Adventures 🦖 is now available in Early Access here on GameJolt! Link: https://gamejolt.com/games/babydinoadventures/508121 Walk, run, and jump as a baby t-rex in this cute platformer Free demo available #IndieGame | #GameDev | #PixelArt

Let me introduce you to the new Mech line: Gendai Spec. Those are Mech that specializes in surprise attacks, covered operations, and stealth. They are equipped with melee weapons but one of Gendai's frames supports sniper rifles.

I mostly build 3D First Person Shooter game mechanics in Unity, and in this I'm just showing C4 mechanics I made for a little side project I am working on! :)

A few screenshots of the places you'll cross in the Demo of Blu. You can play it today on #gamejolt !