Python extension of wows_shell
Project description
wows_shell
- C++ header only library for calculating shell performance in World of Warships
- Experimentally verified to be nearly identical to the World of Warships ballistics model
Legal
- All copyrighted material provided by Wargaming.net are owned by Wargaming.net.
- All other material is available under the MIT License.
Original Model Information & Source Code:
Original Model:
Revised Model:
Features:
Shell Flight
Computes shell flight path.
At Impact:
Outputs:
- Angle of Impact
- Impact Velocity
- Raw, Belt/Deck, Normalization Adjusted Penetration
- Shell flight time (Real / In-game)
Ability to change trajectory computation method
- Forward Euler (default - also in-game method)
- Runge-Kutta 2 and 4
- Adams-Bashforth 5
Lateral Angles:
Computes lateral angles where penetration, AP fuzing, and ricochets occur while adjusting for impact angle and vertical armor inclination.
Definition: Angles where that represent the horizontal angling of a ship:
- Bow-in: 90 degrees
- Full-broadside: 0 degrees
Outputs:
- Maximum Lateral Angle for Penetration
- Minimum Lateral Angle for Fusing
- Ricochet Lateral Angles
Dispersion
Computes dispersion approximations based on experimental data.
Outputs:
- Dispersion Types:
- Horizontal Dispersion
- Vertical Dispersion
- Area Dispersion
- Statistical Types
- Max Dispersion
- Standard Deviation of Dispersion
- 50% Error Radius
Post-Penetration:
Shell detonation distance after penetration while adjusting for ship angling, and vertical armor inclinations.
Ability to modify the way the calculations are done
- Enable or Disable Normalization changing direction
- Linear estimation or full air drag modeling
Fitting:
Capability to fit shells to real world data using gradient descent.
- Air Drag Coefficient
- Krupp
Compatibility:
- Requires C++17 supporting compiler
- Supports multithreading and vectorization for improved performance
Extensions:
Python
- Requires Pybind11
- Tested with Python 3.7.4 (Anaconda), 3.8.5
- Available from PyPI
pip install wows-shell
WebAssembly
- Requires Emscripten
- Used in https://github.com/jcw780/wows_ballistics
Future Goals:
- Wiki / Tutorial
- Extend more features to Python and WebAssembly
- Will continue to update the model when new information is acquired
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
Built Distribution
File details
Details for the file wows_shell-1.2.0.tar.gz
.
File metadata
- Download URL: wows_shell-1.2.0.tar.gz
- Upload date:
- Size: 278.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd62fb23c5616f38a33157cdb547c34772537ccf383bd7f026733a552e31b123 |
|
MD5 | 5a2cf5b985eef4f7dc334cf6aa1d36e9 |
|
BLAKE2b-256 | a531808a978d7d7b25206494d1c8a0cf48e598a7e9565e45b786588a9bfb6b19 |
File details
Details for the file wows_shell-1.2.0-cp39-cp39-win_amd64.whl
.
File metadata
- Download URL: wows_shell-1.2.0-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 150.2 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 54f4faa285728dc6c17c3eb2af615d07f84cf5a06965966f8b9ed72aa32d17dd |
|
MD5 | e8c222dd3cd72b33e54401048ccdc8d5 |
|
BLAKE2b-256 | 96d6c46450b35a27a041bef45a78fe95559171f1f0b6647c0e3e85765f76801b |