Skip to main content

Installation Guide

This guide will walk you through setting up your development environment and building the HotWheels SDK DLL.

Prerequisites

Visual Studio

Visual Studio 2019 or 2022 with C++ development tools

DirectX SDK

DirectX SDK (June 2010) for D3D9 development

Windows 10/11

Windows 10 or 11 (x64) operating system

CS:GO

Counter-Strike: Global Offensive installed

Step 1: Install Visual Studio

1

Download Visual Studio

Download Visual Studio 2022 Community (free) or Visual Studio 2019.
2

Select Workloads

During installation, select the Desktop development with C++ workload.Required components:
  • MSVC v142 (VS 2019) or v143 (VS 2022) build tools
  • Windows 10 SDK (10.0.19041.0 or later)
  • C++ profiling tools
  • C++ CMake tools (optional)
3

Install Platform Toolset

The project uses v143 (Visual Studio 2022) toolset by default. If using VS 2019, update the .vcxproj file:
<PlatformToolset>v142</PlatformToolset>

Step 2: Install DirectX SDK

The DirectX SDK (June 2010) is required for Direct3D 9 development. Newer Windows SDKs don’t include D3DX9.
1

Download DirectX SDK

Download the DirectX SDK (June 2010) from Microsoft.
2

Install SDK

Run the installer and note the installation path (usually C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)).
3

Fix S1023 Error (if occurs)

If you get error S1023 during installation:
  1. Uninstall “Microsoft Visual C++ 2010 Redistributable” (both x86 and x64)
  2. Install DirectX SDK
  3. Reinstall the redistributables
4

Verify Environment Variable

The SDK should set the DXSDK_DIR environment variable automatically. Verify:
echo $env:DXSDK_DIR
# Should output: C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\

Step 3: Clone the Repository

git clone <repository-url>
cd hw-sdk

Step 4: Project Configuration

The project is pre-configured with the following settings:
Platform: Win32 (x86)
Configuration: Debug
Output: ./debug/zipudhe2.dll
Runtime Library: Multi-threaded Debug (/MTd)
C++ Standard: C++20
Character Set: MultiByte
Preprocessor: WIN32, _WINDOWS, NOMINMAX, CONSOLE_ENABLED
Debug builds include console output for logging via console::print(). The DLL is named zipudhe2.dll.

Include Paths

The project automatically includes:
$(DXSDK_DIR)Include
$(SolutionDir)hw-sdk\dependencies\freetype\include

Library Paths

$(DXSDK_DIR)Lib\x86
$(SolutionDir)hw-sdk\dependencies\freetype\lib

Linked Libraries

  • freetype.lib - Font rendering for ImGui
  • Standard Windows libraries (automatically linked)

Step 5: Build the Project

1

Open Solution

Open hw-sdk.vcxproj or the .sln file in Visual Studio.
2

Select Configuration

Choose your build configuration:
  • Debug | Win32 - For development with console logging
  • Release | Win32 - For production use
Always use Win32 (x86) platform, not x64. CS:GO is a 32-bit application.
3

Build Solution

Build the project:
  • Press Ctrl+Shift+B, or
  • Menu: Build → Build Solution, or
  • Right-click project → Build
4

Verify Output

Check for the compiled DLL:
./debug/zipudhe2.dll
./debug/intermediate/  # Object files

Troubleshooting

Problem: Build fails with “Cannot find DirectX SDK include path”Solution:
  1. Verify DirectX SDK is installed
  2. Check environment variable: echo $env:DXSDK_DIR in PowerShell
  3. Restart Visual Studio to load new environment variables
  4. Manually set include/library paths in project properties
Problem: Linker error about missing freetype.libSolution:
  1. Verify FreeType library exists at dependencies/freetype/lib/freetype.lib
  2. Check that library is for x86 architecture (not x64)
  3. Rebuild FreeType from source if necessary
Problem: Compiler errors about C++20 featuresSolution:
  1. Update Visual Studio to latest version
  2. Verify C++ Language Standard is set to C++20 or /std:c++20
  3. Check Platform Toolset is v142 or v143
Problem: Linker errors about missing functionsSolution:
  1. Ensure all .cpp files are included in the project
  2. Check that Runtime Library setting is /MT (Release) or /MTd (Debug)
  3. Clean and rebuild: Build → Clean Solution, then Build → Rebuild Solution
Problem: Debug DLL is very large (>50 MB)Solution: This is normal for Debug builds with symbols. Use Release configuration for smaller output.Typical sizes:
  • Debug: 30-80 MB (includes debug symbols)
  • Release: 2-10 MB (optimized)

Build Output Structure

After successful build:
hw-sdk/
├── debug/
│   ├── zipudhe2.dll          # Debug DLL
│   └── intermediate/         # Debug object files
├── release/
│   ├── chungy.dll            # Release DLL
│   └── intermediate/         # Release object files
├── dependencies/             # Third-party libraries
├── game/                     # CS:GO SDK headers
├── globals/                  # Global state and interfaces
├── hacks/                    # Feature implementations
├── hooks/                    # Hook implementations
├── utils/                    # Utilities
└── hw-sdk.vcxproj           # Visual Studio project

Next Steps

Quick Start Guide

Now that you’ve built the DLL, learn how to inject it into CS:GO and start using the SDK.
Build Time: First build may take 2-5 minutes depending on your system. Incremental builds are much faster (10-30 seconds).

Build docs developers (and LLMs) love