aboutsummaryrefslogtreecommitdiff

Compile Instructions

Visual Studio

  1. Clone or download the repository
  2. Open the repo folder in Visual Studio 2022+.
  3. Wait for cmake to configure the project and load all assets (this may take a few minutes on the first run).
  4. Right click a folder in the solution explorer and switch to the 'CMake Targets View'
  5. Select platform and configuration from the dropdown. EG: Windows64 - Debug or Windows64 - Release
  6. Pick the startup project Minecraft.Client.exe or Minecraft.Server.exe using the debug targets dropdown
  7. Build and run the project: - Build > Build Solution (or Ctrl+Shift+B) - Start debugging with F5.

Dedicated server debug arguments

  • Default debugger arguments for Minecraft.Server:
  • -port 25565 -bind 0.0.0.0 -name DedicatedServer
  • You can override arguments in:
  • Project Properties > Debugging > Command Arguments
  • Minecraft.Server post-build copies only the dedicated-server asset set:
  • Common/Media/MediaWindows64.arc
  • Common/res
  • Windows64/GameHDD

CMake (Windows x64)

Configure (use your VS Community instance explicitly):

Open Developer PowerShell for VS and run:

cmake --preset windows64

Build Debug:

cmake --build --preset windows64-debug --target Minecraft.Client

Build Release:

cmake --build --preset windows64-release --target Minecraft.Client

Build Dedicated Server (Debug):

cmake --build --preset windows64-debug --target Minecraft.Server

Build Dedicated Server (Release):

cmake --build --preset windows64-release --target Minecraft.Server

Run executable:

cd .\build\windows64\Minecraft.Client\Debug
.\Minecraft.Client.exe

Run dedicated server:

cd .\build\windows64\Minecraft.Server\Debug
.\Minecraft.Server.exe -port 25565 -bind 0.0.0.0 -name DedicatedServer

Notes: - The CMake build is Windows-only and x64-only. - Contributors on macOS or Linux need a Windows machine or VM to build the project. Running the game via Wine is separate from having a supported build environment. - Post-build asset copy is automatic for Minecraft.Client in CMake (Debug and Release variants). - The game relies on relative paths (for example Common\Media\...), so launching from the output directory is required.