2025-09-28 13:44:15 -05:00
# BlitzKit
2024-12-23 12:37:12 -06:00
2026-06-13 09:35:15 -05:00
Encyclopedia for World of Tanks Blitz.
2025-09-28 14:10:34 -05:00
2026-06-12 23:06:35 -05:00
## Development
2025-09-30 20:22:06 -05:00
2026-06-12 23:13:47 -05:00
Setting up a local developer environment for BlitzKit is more complex than most projects, but this section will guide you through all the steps. If you're ever lost or confused, feel free to ask for help in [the official Discord server ](https://discord.gg/nDt7AjGJQH ).
2025-09-28 14:10:34 -05:00
2026-06-12 23:06:35 -05:00
### Prerequisites
2025-09-28 14:11:33 -05:00
2026-06-12 23:06:35 -05:00
Before you touch any code, you'll need the following.
2025-09-28 14:11:33 -05:00
2026-06-13 09:43:56 -05:00
#### Linux
2026-06-12 23:13:47 -05:00
Because Node API for .NET doesn't resolve runtime-specific object files for libraries, the entirety of the BlitzKit project is "vendor-locked" to a single OS. GitHub Actions, responsible for BlitzKit CD/CI works best with Ubuntu, thus we must also use a Linux OS.
2026-06-12 23:16:17 -05:00
2026-06-13 09:43:56 -05:00
#### Windows (Optional)
...
#### Bun
2026-06-12 23:16:17 -05:00
https://bun.com/
BlitzKit is written mostly in TypeScript, with packages fetched from NPM, managed by Bun.
2026-06-12 23:19:12 -05:00
2026-06-13 09:43:56 -05:00
#### .NET
2026-06-12 23:19:12 -05:00
2026-06-12 23:29:36 -05:00
https://dotnet.microsoft.com/download/dotnet/9.0/
2026-06-12 23:19:12 -05:00
You'll need the .NET 9.0 SDK to build and run the interface layer between BlitzKit and your local installation of World of Tanks Blitz.
2026-06-12 23:29:36 -05:00
2026-06-13 09:43:56 -05:00
#### Protocol Buffers
2026-06-12 23:29:36 -05:00
https://protobuf.dev/installation/
Both BlitzKit and World of Tanks Blitz encode their APIs with Protocol Buffers.
2026-06-12 23:34:38 -05:00
2026-06-13 09:43:56 -05:00
#### World of Tanks Blitz
2026-06-12 23:34:38 -05:00
https://store.steampowered.com/app/444200/
You'll need an up-to-date installation of World of Tanks Blitz on your computer. You may use the same installation that you play, even on a Windows partition if you dual boot.
2026-06-13 09:43:56 -05:00
#### UE4SS
2026-06-12 23:50:24 -05:00
...
2026-06-13 09:43:56 -05:00
#### protodump
...
#### FModel (Optional)
2026-06-12 23:50:24 -05:00
...
2026-06-12 23:38:56 -05:00
### Set Up
2026-06-13 09:43:56 -05:00
Now we can start installing and initiating the code of BlitzKit.
#### Cloning
2026-06-12 23:38:56 -05:00
2026-06-12 23:41:28 -05:00
BlitzKit is a massive monorepo with a lot of submodules. You'll likely not need all the branches and commit history. So, clone with depth 1.
2026-06-12 23:38:56 -05:00
```bash
git clone --depth 1 https://github.com/blitzkit/blitzkit.git
cd blitzkit
2026-06-12 23:41:28 -05:00
git submodule update --init --recursive --depth 1
2026-06-12 23:38:56 -05:00
```
2026-06-12 23:50:24 -05:00
2026-06-13 09:43:56 -05:00
#### Proto Files
2026-06-12 23:50:24 -05:00
...
2026-06-13 09:43:56 -05:00
#### Mappings
2026-06-12 23:50:24 -05:00
...
2026-06-13 09:43:56 -05:00
#### Environment Variables
2026-06-12 23:50:24 -05:00
...
2026-06-13 09:43:56 -05:00
#### The Big One
2026-06-12 23:50:24 -05:00
...
2026-06-13 09:43:56 -05:00
### Modifying The Code
This is where you can start changing things and proposing them through pull requests.
#### Server
2026-06-12 23:50:24 -05:00
...
2026-06-13 09:43:56 -05:00
#### Building
2026-06-12 23:50:24 -05:00
...
2026-06-13 09:43:56 -05:00
#### Branches & Pull Requests
...
#### Updating
2026-06-12 23:50:24 -05:00
...