Skip to main content

A package for comparing weapons in Call of Duty Cold War Zombies

Project description

Cold War Zombies

Documentation Status PyPI Downloads GitHub commit activity Streamlit App

This is a package for analyzing and comparing weapons in Cold War Zombies.

Weapon stats are current through Season 6 (October 13th).

A demo of the package can be found here: Demo

Installation

Pypi Documentation

The package can be accessed via pip install.

pip install cold-war-zombies

Usage

Read the Docs

Click for example

import zombie
from zombie.health_armour import Health
from zombie.processor import DamageProfile
from zombie.analysis import Analyze


# Input your weapon class and perk tiers.
weapon_class_levels = {'Launcher': '5', 'Special': '5', 'Smg': '5', 'Shotgun': '5', 'Pistol': '5',
                       'Marksman': '5', 'Sniper': '5', 'Lmg': '5', 'Assault': '5', 'Melee': '5'}
perk_class_levels = {'speed': '5', 'stamin up': '5', 'deadshot': '5', 'death_perception': '5'}

# Build Core Classes
damage_profile = DamageProfile(weapon_class_levels=weapon_class_levels, perk_class_levels=perk_class_levels,
                               max_range=100)

# Set Zombie Health
zom = Health(level=60, health_cap=55, outbreak=False, multiplier=2)

# Set Attachments for weapons
MP5 = {
    'Muzzle': 'Agency Suppressor',
    'Barrel': 'Task Force',
    'Body': 'Ember Sighting Point',
    'Underbarrel': 'Bruiser Grip',
    'Magazine': 'Salvo Fast Mag',
    'Handle': 'Serpent Wrap',
    'Stock': 'Raider Stock'}

PPSH = {
    'Muzzle': 'GRU Suppressor',
    'Barrel': 'Task Force',
    'Body': 'Ember Sighting Point',
    'Underbarrel': 'Bruiser Grip',
    'Magazine': 'VDV Fast Mag',
    'Handle': 'Serpent Wrap',
    'Stock': 'KGB Skeletal Stock'}

# Returns a Dict with the specific weapon stats, adjusted for attachments.
# Accuracy and Critical values (float) can be found in game at 
# Barracks\\Combat Record\\Zombies\\Weapon Name.
gun_lst = [
    {'weapon': 'MP5', 'nickname': 'Temp MP5', 'equipped_attachments': MP5, 'rarity': 'common',
     'pap': '0', 'accuracy': None, 'critical': None},
    {'weapon': 'PPSH', 'nickname': 'Temp PPSH', 'equipped_attachments': PPSH, 'rarity': 'common',
     'pap': '0', 'accuracy': None, 'critical': None}]

# Calculate 
analysis = Analyze(damage_profile=damage_profile, zombie_info=zom, weapon_dic_lst=gun_lst)

Visualizations

The Analyze class will return the following plots:

  • Damage Per Second
  • Damage Per Max Ammo
  • Damage Per Clip
  • Time To Kill
  • Shots To Kill

Damage Per Second Damage Per Max Ammo Damage Per Clip Time To Kill Shots To Kill

Changelog

  • 1.0.0 - Base package.
  • 1.0.1 - Add Classes and Viz
  • 1.0.2 - Adds Grav, Ironhide, and updates inline with season 6.
  • 1.0.3 - Adds Vargo.
  • 1.0.4 - Update dependencies

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cold_war_zombies-1.0.4.tar.gz (28.6 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page