Iridar’s Weapon Analysis Toolbox

This Excel Spreadsheet is a culmination of years of work on theorycrafting PlanetSide 2 weapon mechanics. It uses Visual Basic macros to pull weapon stats from DBG API, to calculate damage and recoil statistics and draw graphs to visualize them.

This toolbox arms you with all necessary tools for comprehensive weapon analysis.

Current version: v3b

Attention! When you first open the toolbox, you will see a yellow bar with a security warning about macros. You have to allow the use of macros, or the Toolbox will not function. 

Structure

The Excel file has 5 pages:

Toolbox pages

They contain cells of different color:

soft-orange  Soft orange cells. When you double click or right click a weapon on the Stats page of the spreadsheet, weapon’s stats will be copied into soft orange cells on other pages. These cells also accept manual input. You can edit them without fear of breaking anything.

light-greyLight grey cells contain calculations and references to other cells, do not edit grey cells, or you will break the tool’s functionality.

pale-yellow Pale yellow cells store values for configuration, and you may need to edit them in specific situations.

Toolbox chosen cell Light green filling indicates that this cell’s value has been selected, likely by double clicking.

Toolbox tooltipSmall red triangles in the corner of a cell indicate a tooltip. Put your mouse over the cell to display the tooltip.


Note: Toolbox’s calculations always assume worst case scenario: weapon damage is rounded down and target health is rounded up.

Stats

Toolbox stats page

This huge table has stats of all known infantry weapons. 

Normally you don’t work with this table itself, and only use it to export stats into other pages:

Double click or right click on any weapon to copy its stats into soft orange cells on other pages.

Other functions:

Double click on Item ID of the weapon to open a JSON query for that weapon for your default browser. Example.

The Toolbox is not perfect, and may sometimes pull wrong stats, or fail to pull stats at all. There is no substitute to looking at a query with your own eyes. 

Select a weapon and click “Export 1” button. A window with exported weapon’s stats will show.

This window contains several checkboxes about what kind of information you want exported, but you will have to close it and click Export again in order for changes to checkbox to apply.

If “Analysis” checkbox is enabled, the Toolbox will also export a picture of weapon’s horizontal recoil probability distribution graph into its folder.

Select a weapon and click “Projectile Information” button. A window with information about weapon’s projectiles will show. It may take a minute for the Toolbox to display these stats.

Pulling stats and adding new weapons

The “Pull Stats” button will initiate a download of weapon stats from DBG API, using JSON queries for each Item ID in the first column. When new weapons get released, simply insert their Item IDs to the end of the list, and their stats will be downloaded as well. 

How to get weapon’s Item ID?

add-new-weapons

Keep in mind that “Name”, “Faction” and “Category” columns are not downloaded, and you will have to fill them manually for any new weapon releases.

The “Date” field near the “pull stats” button stores the date when stats were last downloaded. Normally, you should re-download stats only after a patch that changed something.


Part of the page is protected from editing, so you don’t break something by accident. You can enter the password “123456” to remove this protection.

Damage

Toolbox damage page

This page serves to analyze weapon damage at different ranges. You can compare two weapons at the same time.

On “Stats” page, double click on a weapon to export its stats for the first weapon, and right click for the second weapon.

You can add SPA or HVA to weapons using buttons on the right, but if you wish to add Suppressor, you will have to do it manually, since its penalty to minimum damage is unknown and varies depending on a weapon.

The calculations for Minimum and Maximum damage ranges are self-explanatory.

To calculate weapon’s damage stats at certain range, enter it into soft orange Range cell.

Target Settings

target-health 

Both weapons are simulated against the same target. You can specify target’s parameters on the middle left.

Below the Health block, there are reference tables for Health, Nanoweave Armor and Kinetic Armor. 

Double click on Health or Damage Multiplier value to automatically apply it.

Both weapons have Headshot Damage Multiplier listed. You can double click on its value to apply it to the Damage Multiplier. 

Since both weapons fire at the same target, and damage multiplier is tied to the target, it may be inconvenient to compare headshot properties of two weapons with different headshot multipliers. 


The most common way to analyze a weapon is to look at its performance against the default target with 1000 HP and against a Full Nanoweave target with 1250 Effective HP, so these are the default parameters, and statistics for standard Full Nano target are calculated automatically.

BTK Thresholds

Toolbox BTK Thresholds

The “Calculate Thresholds” button will calculate BTK Thresholds for both weapons.

For example, the results on the picture above read as:

Gauss Rifle kills in 6 shots at 0m to 10m, and in 7 shots at 11m+.

“Draw Graph” button will also recalculate Thresholds and then draw a comparative graph.

Recoil

Toolbox recoil page

This page serves to analyze weapon’s recoil properties.

Both double click and right click on a weapon on the Stats page will import its stats into soft orange boxes of the Recoil page.

You can click buttons below to apply attachments to the weapon. The “Compensator” button automatically handles known weapons-exceptions that receive larger benefit from the Compensator

I couldn’t be arsed to make the same for the Forward Grip, which also reduces Vertical Recoil on Semi Auto Sniper Rifles, so if you’re simulating one of those, use the separate button.

Click “Calculate Stability” to calculate Average and Maximum horizontal Deviations and to update Probability Distribution Graph.

The Visual Basic macro fires a virtual gun in bursts with listed “Burst Length” for the amount of times, listed in “Simulations” cell, and then averages out the results. 

“Average Deviation” is the average distance of the crosshair from the burst’s starting crosshair position. The lower it is, the better is the weapon’s horizontal recoil.

“Graph Scale H” refers to the maximum Horizontal Recoil value, visible on the graph. The default value of 1 is fine for most cases, but for weapons with lower Horizontal Recoil, you may want to reduce Graph Scale H to 0.5 to increase chart’s accuracy / detail.

Vertical Recoil module is self explanatory, you’re mostly interested in Vertical Recoil per Second. 

For the purposes of vertical recoil, it’s better to have high RoF and low vertical recoil per shot, to ensure nice and soft, consistent pull.

FSRM value is listed mostly for your reference, it doesn’t participate in any calculations.

The Average Deviations listed in Recoil Angle block show how much a weapon is affected by Recoil Angle Variance. They basically show you the size of the yellow area:

Serpent Recoil Pattern
Serpent’s recoil pattern – not included with the Toolbox

Cone of Fire

Toolbox Cone of Fire page

This page serves to analyze weapon’s Cone of Fire properties using my Angular Size research.

Both double click and right click on a weapon on the Stats page will import its stats into soft orange boxes of the Recoil page.

Target is set up identically to the Damage page, the only exception is that you also have to choose your Aiming Point, since they have different Angular Sizes. Enter “1” for Center Mass and “0” for Head.

The purpose of this page is to calculate the ideal burst length for a weapon at a certain range based on calculated target size on your screen. Calculations ignore recoil completely.

Double click on weapon’s CoF value to import it into analysis window.

Here you can find an example analysis.

Temp

This is a temporary page for storing calculations results. You don’t need to interact with this page at all.

Changelog and To-Do

v1 – initial release.

v2 – added CoF import functionality and reworked Cone of Fire page. Special thanks to FISU. Weapon names also update when you add attachments.

v2a – added the ability to double click on weapon’s Item ID to open JSON queries. 

v2b – Pull Stats will also pull Falling CoF (for flying / jumping with Carbines). Falling CoF will also be imported into Cone of Fire page. Also fixed a bug that any value of 1 character long was not pulled from the API. 

v3 – The toolbox will now also pull ADS movespeed multiplier and other missing stats. Fixed several issues, minor improvements. 

v3a – Fixed a Reload Time export.

v3b – Added the button to pull  information about weapon’s projectiles.

To Do

Determine if BASR time between shots = chamber time.

Overall weapon rating based on multigon square calculations.

CoF / RoF probability distribution to determine weapon consistency (done in alpha)

Share with:

FacebookTwitterGoogleTumblrLinkedInRedditPinterest


Leave a Reply

Your email address will not be published. Required fields are marked *