HeroesOfJinYong icon indicating copy to clipboard operation
HeroesOfJinYong copied to clipboard

A reimplementation of the DOS game `The legend of Jin Yong Heroes(金庸群侠传)`

Heroes Of JinYong

A reimplementation of the DOS game The legend of Jin Yong Heroes(金庸群侠传)

How to build

  1. Install cmake and C++ compiler (either GCC 8+, Clang 7+ or MSVC 2019+)
  2. Clone the project: git clone --recurse-submodules https://github.com/soarqin/HeroesOfJinYong
  3. (optional after pull new commits from repository) Update submodules: git submodule update --init
  4. Use cmake to compile the project (recommended steps):
    1. mkdir build && cd build
    2. cmake ..
    3. (UNIX OSes/MinGW/CygWIN) make
    4. (WIN32) Open project to build

CMake build options

Name Default Value Description
BUILD_SHARED_LIBS ON Build shared libraries
USE_STATIC_CRT OFF Use static C runtime
USE_FREETYPE OFF Use freetype instead of stb_truetype
USE_SOXR OFF Use soxr instead of zita-resampler(better quality with more cpu use)
BUILD_TOOLS OFF Build tools(mergepic)

How to use compiled binaries

  1. Get original game files (you can download from here)
  2. Copy compiled bin/hojy.exe and maybe other dll/so's to your own game root folder
  3. Copy src/config.toml to root folder
  4. Create a subfolder data in game root folder
  5. Copy src/strings.toml to data folder
  6. Create a subfolder font in data folder
  7. Copy a chinese ttf/otf to font folder (config.tml: fonts = "data/font/chinese.otf" )
  8. Extract downloaded game into data (do not create any 2nd-level subfolder)
  9. Run hojy.exe and enjoy!

How to merge Submap and Warfield pictures/textures

  1. Add -DBUILD_TOOL=ON to cmake command and build the whole project, you will get mergepic in bin folder
  2. Run mergepic in original game data folder using following commands to generate 4 files: SDX, SMP, WDX, WMP:
    1. mergepic SDX SMP
    2. mergepic WDX WMP
  3. Once done, you can remove all SDX???, SMP???, SDX???, WMP??? files from resource folder

License

  • This software is licensed under GPLv3, Check LICENSE for details.
  • External/3rd-party libraries are following their own license, see CREDITS below.

CREDITS