Nodsoft.WowsReplaysUnpack
0.5.1
See the version list below for details.
dotnet add package Nodsoft.WowsReplaysUnpack --version 0.5.1
NuGet\Install-Package Nodsoft.WowsReplaysUnpack -Version 0.5.1
<PackageReference Include="Nodsoft.WowsReplaysUnpack" Version="0.5.1" />
paket add Nodsoft.WowsReplaysUnpack --version 0.5.1
#r "nuget: Nodsoft.WowsReplaysUnpack, 0.5.1"
// Install Nodsoft.WowsReplaysUnpack as a Cake Addin #addin nuget:?package=Nodsoft.WowsReplaysUnpack&version=0.5.1 // Install Nodsoft.WowsReplaysUnpack as a Cake Tool #tool nuget:?package=Nodsoft.WowsReplaysUnpack&version=0.5.1
<img align="right" src="Nodsoft.WowsReplaysUnpack/logo.png" alt="logo" width="200"/>
WoWS-ReplaysUnpack
A C# file unpacking library for World of Warships Replays, inspired by Monstrofil's replays_unpack.
Information before using the library
The library supports only World of Warships replays starting with version 0.10.10. Trying to use an older replay can result in unexpected errors when processing the replay.
How to use
To analyze a replay, simply use the ReplayUnpacker:
ReplayUnpacker unpacker = new();
using Stream replayFileStream = File.OpenRead("<Path to replay file>");
ReplayRaw unpackedReplay = unpacker.UnpackReplay(replayFileStream);
An instance of ReplayRaw
contains a list of all players involved in the current match and a list of all player chat messages.
Information about the current configuration of a player's ship is available using the ShipData
property of a ReplayPlayer
from the extracted replay data.
Note that this property is a lazy property, meaning that it is constructed when it is accessed for the first time.
Construction of this property can take a bit longer than usual due to it having to decode serialized data.
To avoid impacting the replay unpack performance due to a feature that is not always necessary, this property is not created when initializing the player object itself.
Advanced use
To use a custom replay reader implementation, provide the replay unpacker with an implementation of the IReplayParserProvider
interface.
ReplayUnpacker unpacker = new();
IReplayParserProvider provider = new MyCustomReplayParserProvider();
using Stream replayFileStream = File.OpenRead("<Path to replay file>");
ReplayRaw unpackedReplay = unpacker.UnpackReplay(replayFileStream, provider);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net5.0
- KaitaiStruct.Runtime.CSharp (>= 0.9.0)
- Mapster (>= 7.2.0)
- Razorvine.Pickle (>= 1.2.0)
-
net6.0
- KaitaiStruct.Runtime.CSharp (>= 0.9.0)
- Mapster (>= 7.2.0)
- Razorvine.Pickle (>= 1.2.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Nodsoft.WowsReplaysUnpack:
Package | Downloads |
---|---|
Nodsoft.WowsReplaysUnpack.ExtendedData
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.0.19-beta-g9da5bf005d | 40 | 12/26/2024 |
3.0.19-beta | 45 | 12/26/2024 |
3.0.17-beta-g0a0d613870 | 83 | 11/28/2024 |
3.0.17-beta | 73 | 11/28/2024 |
3.0.16-beta-g3c4d61f874 | 108 | 11/5/2024 |
3.0.13-beta-gbe279605d9 | 114 | 10/3/2024 |
3.0.12-beta-g568c749ef4 | 104 | 9/5/2024 |
3.0.11-beta-g744c7b79c3 | 157 | 8/8/2024 |
3.0.10-beta-g43912a5a51 | 121 | 7/18/2024 |
3.0.9-beta-gf11948c8ef | 119 | 6/27/2024 |
3.0.8-beta-gd38788540b | 120 | 6/14/2024 |
3.0.7-beta-g06221c5d51 | 128 | 5/17/2024 |
3.0.6-beta-g27322c409e | 119 | 5/17/2024 |
3.0.3-beta-g359d6d93c4 | 112 | 5/16/2024 |
3.0.2-beta-gaca613e98a | 116 | 5/16/2024 |
3.0.1-beta-gf63fa17372 | 74 | 5/11/2024 |
2.0.29-alpha-g987beebb2b | 181 | 8/18/2023 |
2.0.26-alpha-g4e3dff99ff | 144 | 8/17/2023 |
2.0.22-alpha-g89b1099182 | 198 | 7/23/2023 |
2.0.16-alpha-gfaded6094c | 186 | 7/22/2023 |
2.0.15-alpha-g38541b6d25 | 210 | 6/22/2023 |
2.0.14 | 100 | 11/28/2024 |
2.0.14-alpha-g0002f59a1d | 181 | 5/25/2023 |
2.0.13 | 101 | 10/31/2024 |
2.0.13-alpha-g90583dc2c5 | 357 | 4/20/2023 |
2.0.12 | 97 | 10/3/2024 |
2.0.12-alpha-g4b27da27ea | 181 | 4/20/2023 |
2.0.11 | 133 | 9/5/2024 |
2.0.11-alpha-g92d3716eff | 288 | 3/23/2023 |
2.0.10 | 125 | 8/8/2024 |
2.0.10-alpha-g3e240c8566 | 241 | 2/16/2023 |
2.0.9 | 117 | 7/18/2024 |
2.0.9-alpha-g02ef2eaf60 | 198 | 1/19/2023 |
2.0.8 | 111 | 7/11/2024 |
2.0.8-alpha-g2a9a24924f | 176 | 12/12/2022 |
2.0.7 | 119 | 6/26/2024 |
2.0.6 | 151 | 6/13/2024 |
2.0.6-alpha-gcbcb7f6a80 | 183 | 12/8/2022 |
2.0.5 | 165 | 5/16/2024 |
2.0.5-alpha-g7ea078df7a | 227 | 11/19/2022 |
2.0.4 | 199 | 4/11/2024 |
2.0.3 | 200 | 3/14/2024 |
2.0.3-alpha-g12f645426c | 250 | 10/6/2022 |
2.0.2 | 312 | 2/8/2024 |
2.0.2-alpha-g6916206934 | 264 | 9/24/2022 |
2.0.1 | 247 | 1/23/2024 |
2.0.1-g7a94259f07 | 143 | 2/7/2024 |
2.0.1-alpha-g920402ee9e | 207 | 9/9/2022 |
1.1.26 | 140 | 1/23/2024 |
1.1.25-g2832215038 | 113 | 1/23/2024 |
1.1.24-g30ae630d7d | 141 | 1/11/2024 |
1.1.23-g00d5114060 | 135 | 12/7/2023 |
1.1.22-gabca2f1262 | 126 | 12/7/2023 |
1.1.21-g89971f3a87 | 120 | 11/26/2023 |
1.1.20-g5b1471f83c | 125 | 11/26/2023 |
1.1.19-g21acddabf5 | 127 | 11/23/2023 |
1.1.17-gfc59a0dbe8 | 142 | 11/9/2023 |
1.1.16-g03f94d799b | 126 | 10/19/2023 |
1.1.11 | 299 | 10/12/2023 |
1.1.10-gbaec701b3f | 126 | 10/12/2023 |
1.1.9-g60c84b7c31 | 139 | 9/14/2023 |
1.1.8-g3fc29955fd | 163 | 9/14/2023 |
1.1.7 | 191 | 8/21/2023 |
1.1.4 | 215 | 7/21/2023 |
1.1.3 | 187 | 7/21/2023 |
1.1.2 | 247 | 7/6/2023 |
1.0.11 | 642 | 9/8/2022 |
1.0.11-gaf2ec4da01 | 195 | 9/9/2022 |
1.0.10 | 637 | 9/8/2022 |
1.0.10-gf865b963c8 | 210 | 9/8/2022 |
1.0.9-pre-g35415cdef7 | 201 | 9/8/2022 |
1.0.8-pre-g8097eaf5af | 222 | 9/8/2022 |
1.0.7-pre-gba54b08e7a | 200 | 9/8/2022 |
1.0.5-pre-gb7fb7564ee | 223 | 8/5/2022 |
1.0.4-pre-g1025b3c13d | 200 | 8/5/2022 |
1.0.3-pre-g0b9499d17c | 211 | 7/26/2022 |
1.0.0 | 658 | 7/25/2022 |
1.0.0-pre1 | 218 | 7/23/2022 |
0.5.3 | 490 | 7/16/2022 |
0.5.2 | 638 | 5/27/2022 |
0.5.1 | 504 | 3/18/2022 |
0.5.0 | 586 | 1/19/2022 |
0.5.0-pre1 | 286 | 12/9/2021 |
0.4.0 | 358 | 12/5/2021 |
0.3.0 | 1,006 | 12/1/2021 |
0.2.0-dev1 | 1,194 | 11/28/2021 |