Jump to content

[Concept] Ammunition


Recommended Posts

Ammunition is vital for most weapons. It dictates both whether the weapon will fire (after all, you can't fire a gun without it!), and how it will fire. Some weapons have altered stats with certain types of ammo (such as improved/reduced firing rate, recoil, damage, etc), or even entirely different behavior, such as inheriting explosive rounds or ones that bounce off of surfaces. Generally the ones that are more powerful are more expensive than their base ammo types. In Versus, almost all vendors have ammo prepackaged with the weapon...although some shady urchins in the streets of Mos Eisley could care less whether your gun works, let alone whether you have ammo for it.

 

By holding the RELOAD button, an interface is brought up where you can swap your gun's ammo for another type in your inventory. You can press a keybind to cycle between ammo types that your current firing mode can accept. Some weapons have multiple chambers and therefore can be retrofitted with multiple ammo types at once. For example, the LS-180 has an underbarrel grenade launcher. Likewise, some weapons can only fire their base type of ammo.

 

Here is a non-exhaustive list of ammo types that are in the game, as well as their special ammo variants:

 

  • Quarrels are used by bowcasters.
    • Explosive Quarrels explode when hitting a hard or organic surface.
    • Splitting Quarrels break off into fragments, converting the bowcaster into a shotgun.
    • Bouncing Quarrels allow any bowcaster firing mode to bounce, or makes a bouncy bowcaster round even more bouncy.
  • Arakyd ACP Cartridges are used by the ACP Array Gun.
    • ACP Slugs replace your scattershot for a single, powerful slug.
  • Slugthrower Rounds are used by the LT-60 and FC1 Flechette weapons.
    • Incendiary Slugthrower Rounds deal fire damage and light the target on fire. (note, doesn't currently work)
  • Small ACP Power Cells are used by Trandoshan weaponry.
    • Small Overcharged ACP Power Cells do twice as much damage.
  • Anti-Personnel ACP Power Cartridges are used by the Anti-materiel rifle.
    • ACP Power Cartridges are cheaper, but less effective rounds.
  • Blaster Power Packs are used by various BlasTech weaponry.
    • Ionizing Power Packs do a huge amount of damage against shields, but very little damage against organic targets.
  • Canister Rounds are used by the alternate fire of the LS-180 and the AA-35 Pulse cannon.
    • Smoke Canisters are used in the default configuration of the AA-35 Pulse cannon. While they don't do much damage, they are effective in blocking vision.
    • Incendiary Canisters soak an area in flames. (note, currently not working)
    • High-Explosive Canisters do heavy explosive damage in a larger area. Very expensive, obviously.
nyarl, Futuza, Smoo and 1 other like this
Link to comment
  • 9 months later...

Question will we consider having any types of ammo/weapons that have unlimited ammo (such as an energy based weapon that recharges itself), and its rate of fire is instead limited by heat build up or something similar?

Yes, this was an idea that was proposed. Generally weapons will fall under three categories:

  • Weapons that use ammo items (most weapons)
  • Weapons that have infinite ammo
  • Weapons that drain quantity from their item stack instead of using ammo items (grenades, mines, charges)

Overheating and infinite ammo won't be mutually inclusive - some weapons (such as lightsabers) have infinite ammo all the time, and some weapons will have ammo items and they can overheat. (Example: The LS-180 will have an overheating mechanic, but still have ammo items)

Link to comment

Will there be any ability to buy ammo from the npc-trader? The absence of this feature creates some problems at this moment.

Yes, although I'm kind of thinking a vending machine that dispenses ammo might work better, we may just put it into the vendor though.

Link to comment
  • 1 month later...

Now that I've been working on this some more, I want to clarify the technical specifics of how this system works.

 

The game loads .ammo files (note: not from ammoTable.json anymore) which contain one or more different ammo types.

 

Ammo Types can be shared across weapons. For instance, the Trandoshan Suppressor Pistol and Advanced Trandoshan Suppressor both use Trandoshan Cells.

 

Weapons can have different ammo types per firing mode. For example, the Adostic Arms Pulse Shotgun uses 40mm canisters for its Grenade Launcher mode, and Adostic Pulse Cells for its shotgun firing mode.

 

Ammo types can be "based" on another type of ammo. For instance, Adostic Pulse Cells are the basal type, but there are also Overcharged Adostic Pulse Cells and Bouncing Adostic Pulse Cells, as an example. They can alter looks, damage, damage type, and debuffs applied by the weapon.

 

Grenades, sequencer charges, etc that have quantity don't use ammo types.

 

All ammo is treated as a resource pool, not as items in the inventory. This is done to reduce lag and clutter in the inventory. All of the ammo you have will be shown when you click the Ammo tab at the top of the inventory. It's essentially a long list of ammo types, and clicking on the type will give more details about the ammo, including what it modifies and what weapons use that type of ammo.

 

Ammo can override or modify the amount of damage that a weapon does. This can be an important factor in deciding what kind of ammo you want to use. For example, Surplus Blaster Ammo could do a fixed 30 damage, which is either more than (in the case of the E-11 Carbine) or less than (in the case of the DLT-19) the normal amount of damage.

 

Ammo can be cycled through using a button. (The ammo wheel will probably not make it to 1.3.0, sadly) Changing ammo types triggers a reload.

 

Ammo can be purchased from most (but not all!) vendors by selecting the weapon on the inventory pane and hitting "Buy Ammo" or "Buy All Ammo". Buy Ammo buys 100 (or less) credits worth of ammunition, and Buy All Ammo purchases the maximum amount.

"Buy Ammo" and "Buy All Ammo" both purchase the basal type of ammunition for that weapon. So using the Pulse Shotgun again, Buy Ammo and Buy All Ammo both purchase only Adostic Pulse Cells and/or 40mm Smoke Canisters, and not any special type of ammo. Special/derivative ammunition is purchased by special "items" in the shop, such as "Adostic Bouncing Pulse Cells x100" that convert into the ammo pool. They give a console message, "Unpacked 100 Adostic Pulse Cells" for extra feedback.

"Buy Ammo" purchases the primary fire ammo first, and then any extra fire mode ammo. So you need to fill your Adostic Pulse Cells first before you can buy 40mm Smoke Canisters. (But if you can't buy 100 credits worth of Pulse Cells, it will purchase 40mm Smoke Canisters to pad out that space - so if you only purchase 10 credits worth of Adostic Pulse Cells, and 40mm canisters are 30 credits each, it will purchase 3 smoke canisters and 10 credits worth of Pulse Cells). A console message is given every time you purchase ammo to clarify what is being purchased.

Futuza likes this
Link to comment
  • 4 weeks later...

The ammo stuff is finally, finally working and ingame, minus the overrides, the ammo menu, buyable special ammo, display of which ammo type you have equipped, and the physical "buy ammo" button. Whew! That's a lot of work left to do still.

 

Either way, you can have a look at the current ammo file here:

https://github.com/JKGDevs/JediKnightGalaxies/blob/develop/JKGalaxies/ext_data/ammo/JKG.ammo

 

Here's a current list of planned fields:

  • shortname: The name as it appears on the HUD.
  • longname: The name as it appears on the ammo menu.
  • max: How much (total) can be held
  • basedOn: If this ammo is derived from another type, this is the base type. e.g, Incendiary Slugthrower Rounds are based on Slugthrower Rounds.
  • pricePerUnit: How much (per ammo unit) it costs to replenish ammo. Can be fractional, 1.2 for instance will cost 120 credits to replenish 100 rounds.
  • overrides: What this ammo type overrides. It can be things such as visuals, collision size, damage, and other things.

There were two new fields added to .wpn file firing modes as well:

  • ammoBase: The lowest base that this firing mode accepts
  • ammoDefault: The ammo that is given upon purchasing this weapon and also with the Buy Ammo button.
Futuza and Smoo like this
Link to comment
  • 11 months later...

So now let's get into the meat of it; what an ammo type can override. I coded all of this over a night or so.

 

In 1.3.0 ammo will not be able to override debuffs granted to a player or clip size because of technical reasons. So no incendiary ammo or extended magazines then. But this other stuff can be overridden:

 

  • Behavior
    • Damage Type
    • Projectile count
    • Damage radius
    • Projectile hitbox
    • Recoil
    • Ammo usage
    • Firing speed
    • Bouncing
    • Accuracy rating
    • Knockback inflicted on shooter
    • Whether the weapon is hitscan or not
    • Projectile speed
    • Whether projectiles are affected by gravity or not
  • Visuals
    • Shoot muzzle flash effect
    • Muzzle flash dynamic light
    • Charging effect
    • Firing sound
    • Crosshair shader (change crosshair while using this ammo)
    • Traceline effects (if any hitscan weapons use this ammo)
    • Projectile effect
    • Projectile model
    • Projectile sound effect
    • Projectile dynamic light
    • Projectile hit effect
    • Projectile miss effect
    • Lightsaber deflection effect

I'm going to update the OP with some ammo types and their effects. I want to have an open discussion about the types of ammo that are in the game because I think that's something we still need to work on for the scrimmage.

Edited by eezstreet
Futuza likes this
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...