Skip to content
mercury233 edited this page Jun 8, 2026 · 9 revisions

YGOPro Windows 编译指南

1. 准备工作

1.1 所需软件

  • YGOPro发行版

    • 用以获取卡片数据库和卡图等资源,其中数据库是必备的
    • 也可根据数据库说明自行建立卡片数据库
  • Visual Studio

    • 支持 Visual Studio 2015 及更高版本
    • 安装时请勾选使用 C++ 的桌面开发组件
  • DirectX SDK

  • Git for Windows

  • NASM

    • 需要将nasm.exe所在路径添加到PATH环境变量中
  • Premake

    • 用于从描述文件生成工程文件

1.2 依赖库

Windows平台下依赖库的安装目前缺乏完善的自动化方案,建议手动下载各库源代码并进行静态编译。

  • libevent

    • 仅2.1.12版本经过充分测试
  • FreeType

  • Irrlicht

    • 这是Irrlicht的修改版,增加了中文支持等功能
    • 如使用原版Irrlicht,不支持1.8版本,需使用未发布的1.9版(trunk),且输入法和剪切板将无法使用
  • libjpeg-turbo

    • 不支持IJG版libjpeg
  • libpng

  • zlib

  • XZ Utils

  • Lua

    • 仅支持5.3.x和5.4.x版本
  • miniaudio

    • 仅支持0.11.25版本,且需使用其中的 miniaudio_split 版本
  • SQLite

    • 仅支持amalgamation版本

2. 获取源代码

2.1 克隆代码仓库

使用Git克隆代码仓库,确保包含所有子模块:

# 完整克隆代码及子模块(推荐方式)
git clone --recursive https://github.com/Fluorohydride/ygopro.git
cd ygopro

# 或分步操作
git clone https://github.com/Fluorohydride/ygopro.git
cd ygopro
git submodule update --init

# 切换子模块到正确分支
cd ocgcore
git checkout master 
cd ..
cd script
git checkout master 
cd ..

2.2 安装依赖库

将下载的所有依赖库解压至项目根目录,并按照以下规则命名:

  • libevent → 重命名为 event
    • premake/event/msvc-event-config.h 复制到 event/include/event2/,重命名为 event-config.h
    • event/WIN32-Code/nmake/evconfig-private.h 复制到 event/include/
  • Freetype → 重命名为 freetype
  • Irrlicht → 重命名为 irrlicht
  • libjpeg-turbo → 重命名为 jpeg
    • jpeg/src/ 中的 jversion.h.in 复制或重命名为 jversion.h
  • libpng → 重命名为 png
    • png/scripts/pnglibconf.h.prebuilt 复制到 png/,重命名为 pnglibconf.h
  • zlib → 重命名为 zlib
  • XZ Utils → 重命名为 lzma
  • Lua → 重命名为 lua
  • miniaudio → 重命名为 miniaudio
    • miniaudio/extras/miniaudio_split 中的c和h文件复制到 miniaudio 文件夹替换原文件
  • SQLite → 重命名为 sqlite3(注意名称末尾有3)

2.3 复制描述文件

  • 将premake文件夹内所有子文件夹复制到项目根目录
    • 这些文件夹包含了编译各个依赖库所需的premake描述文件
  • 将resource文件夹内所有子文件夹复制到项目根目录

3. 生成项目并编译

3.1 生成项目文件

安装premake5.exe并添加到PATH环境变量,或直接放到项目根目录,然后运行:

premake5 vs2022 --no-miniaudio-support-opus-vorbis
# 或 vs2026 等其他版本

这将在build文件夹中生成Visual Studio解决方案文件(YGOPro.sln)。

3.2 目录结构

配置成功后,项目目录结构大致如下(部分文件省略):

├─build
├─event
│  └─include
├─freetype
│  ├─include
│  └─src
├─gframe
├─irrlicht
│  ├─include
│  └─source
│      └─Irrlicht
├─jpeg
│  └─src
├─lua
│  └─src
├─lzma
├─miniaudio
├─ocgcore
├─png
├─script
├─sound
├─sqlite3
├─textures
└─zlib

3.3 编译项目

在Visual Studio中打开 YGOPro.sln,选择 ReleaseDebug 模式,然后生成解决方案。

编译完成后,生成的可执行文件位于 bin/releasebin/debug 目录下。

4. 运行与调试

4.1 基本运行

  1. 从YGOPro发行版中复制以下文件到项目根目录:

    • cards.cdb
    • pics 文件夹
    • deck 文件夹
  2. 将编译生成的 YGOPro.exe 复制到项目根目录

  3. 运行 YGOPro.exe

4.2 使用Visual Studio调试

在Visual Studio中可以设置工作目录为你的YGOPro目录,以便直接调试。

5. 高级功能

5.1 支持OGG格式音频

额外安装以下4个库:

将这些库分别放在 miniaudio/external 文件夹下,并重命名为 ogg, opus, opusfile, vorbis

然后在运行 premake5 时去掉 --no-miniaudio-support-opus-vorbis 参数即可。

5.2 支持Windows XP

现已不再支持。

6. 常见问题

编译常见问题

Clone this wiki locally