Skip to content

wows-tools/wows-extractor-gui

Repository files navigation

wows-extractor-gui

Linux Build Windows Build (MSI) Release .deb repository

Qt GUI for extracting/exporting World of Warships resource files and 3D models.

This application uses wows-depack and wows-geometry (wows-model-exporter submodule) to enable browsing World of Warships game files.

It also allows you to preview 3D models of ships and export them in the more standard .glTF/.glb format.

Known Issues

These are some issues I might solve someday, but don't hold your breath:

  • Ships are mirrored (especially nameplates).
  • Propellers are missing/misplaced
  • Torpedoes are missing
  • Some wiring antenna wiring is wonky
  • older models are not handled

Screenshots

Resource Explorer

3D Model Viewer / Exporter

Requirements

  • CMake 3.16 or newer
  • C++17 compiler
  • Qt 6 (Core, Widgets, Quick, QuickWidgets, Quick3D)
  • Zlib, PCRE2 (libpcre2-8), meshoptimizer, Python 3 development headers, TinyGLTF

Clone

This repository uses Git submodules:

git clone --recurse-submodules https://github.com/wows-tools/wows-extractor-gui
cd wows-extractor-gui

If you already cloned without submodules:

git submodule update --init --recursive

Build (Linux, Debian/Ubuntu-style packages)

Install dependencies (names may differ slightly on other distributions):

sudo apt install \
  build-essential cmake ninja-build \
  qt6-base-dev qt6-declarative-dev qt6-quick3d-dev \
  zlib1g-dev libpcre2-dev libpython3-dev \
  libtinygltf-dev libmeshoptimizer-dev

Configure and build:

cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build

The executable is written to build/bin/wows-extractor.

Install system-wide (optional):

cmake --install build

Run

./build/bin/wows-extractor

Build (Windows, MSVC)

Prerequisites

Qt is not provided by vcpkg. The CI workflow uses Qt 6.7.3 / win64_msvc2019_64. You can install it with aqtinstall:

pip install aqtinstall
python -m aqt install-qt windows desktop 6.7.3 win64_msvc2019_64 `
  -m qtquick3d qtshadertools qtquicktimeline -O C:\Qt

Native dependencies (zlib, PCRE2, meshoptimizer, tinygltf, mman, dirent) are fetched automatically via the vcpkg submodule on first configure.

Clone and submodules

Use the same clone/submodule steps as above. On Windows, do not initialize wows-model-exporter/deps/wows-depack (that nested submodule contains paths illegal on Windows); the top-level wows-depack submodule is used instead:

git submodule update --init wows-depack vcpkg wows-model-exporter
git -C wows-model-exporter submodule update --init deps/stb

Configure and build

From a Developer Command Prompt for VS 2022 (or any shell after running vcvars64.bat), in the repository root:

$env:QT_ROOT = "C:\Qt\6.7.3\msvc2019_64"   # adjust if needed

cmake -B build -DCMAKE_BUILD_TYPE=Release `
  -DCMAKE_TOOLCHAIN_FILE="$PWD\vcpkg\scripts\buildsystems\vcpkg.cmake" `
  -DVCPKG_TARGET_TRIPLET=x64-windows-static-md `
  -DCMAKE_PREFIX_PATH="$env:QT_ROOT" `
  -DPython3_ROOT_DIR="$env:LOCALAPPDATA\Programs\Python\Python311"

cmake --build build --config Release --parallel

Or use the helper script (finds Qt/Python when installed in default locations):

.\windows\scripts\build-windows.ps1 -QtRoot C:\Qt\6.7.3\msvc2019_64

The executable is build\bin\wows-extractor.exe.

To run from the build tree you still need Qt DLLs and QML modules on PATH (or next to the .exe). After cmake --install, use Qt’s windeployqt as in .github/workflows/windows.yml.

MSI installer

Requires a successful build and WiX Toolset 3.x (heat.exe, candle.exe, light.exe). If the MSI installer is not installed system-wide, extract wix314-binaries.zip and set WIX314 to that folder.

.\windows\scripts\create-msi.ps1 -WixDir C:\path\to\wix314

Output: wows-extractor-<version>-win64.msi in the repository root (installs to Program Files\WoWS Extractor with a Start Menu shortcut).

License

GNU General Public License v3.0

Notes

  • Game data: you need a local World of Warships installation or a copied game/res directory; the UI asks for the game installation directory (the Game Directory field at the top of the window).
  • Qt Quick 3D uses OpenGL; ensure your graphics drivers support OpenGL 3.3 Core (or the profile your Qt build targets).

About

QT GUI for extracting/exporting World of Warships resource files and 3d models

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors