/ms-client

An ms game client.

Primary LanguageC++GNU Affero General Public License v3.0AGPL-3.0

Branch Status
master Windows Ubuntu MacOS
dev Windows Ubuntu MacOS

ms-client

An ms game client.

Getting started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Download and install the following:

  • Git

  • CMake v3.14+ (3.18+ for Windows) - found at https://cmake.org/

  • Ninja v1.9.0+

  • C++ Compiler - needs to support at least the C++20 standard, i.e. MSVC, GCC, Clang

  • Homebrew (MacOS ONLY) - found at https://brew.sh/

  • Visual Studio 2019 (Windows ONLY)

Setup the project

git clone https://github.com/filoper/ms-client.git

Dependencies

Download the required NX files from here https://github.com/HeavenClient/HeavenClient/tree/master#required-files

See install instructions for your platform below.

Windows

Download BASS from https://www.un4seen.com/download.php?bass24 and place inside `ms-client/thirdparty`.

Mac

Download BASS from https://www.un4seen.com and place inside `ms-client/thirdparty`.
brew install lz4
brew install glfw
brew install freetype

Linux

Download BASS from https://www.un4seen.com and place inside `ms-client/thirdparty`.
sudo apt-get install liblz4-dev
sudo apt-get install libglfw3-dev
sudo apt-get install libfreetype-dev

Build

Windows

Start Visual Studio 2019 x64 developer terminal.

cmake -Bbuild -GNinja -DCMAKE_C_COMPILER=cl -DCMAKE_CXX_COMPILER=cl -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=c:\msclient-install
cmake --build build --config Debug
cmake --build build --target install --config Debug

Mac or Linux

cmake -Bbuild -GNinja -DCMAKE_INSTALL_PREFIX=./msclient-install
cmake --build build --config Debug
cmake --build build --target install --config Debug

Run

Place all the Nx files in the install location of msclient.

Start your server, probably HeavenMS, then run

./msclient

Acknowledgements

Contributors to

https://github.com/SYJourney/JourneyClient

https://github.com/HeavenClient/HeavenClient