1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-23 13:17:45 +00:00
A Final Fantasy XIV 4.0+ Server Emulator written in C++
Find a file
2018-03-07 17:41:16 +01:00
bin Update libraries 2018-02-11 13:59:38 +01:00
cmake Merge pull request #258 from ShelbyZ/actor_rewrite_minor_cmake_changes 2018-03-01 08:13:33 +01:00
sql updaing field sizes, make sure to run update.sql 2018-02-03 02:04:00 +01:00
src desperate try to figure out the appveyor issue 2018-03-07 17:41:16 +01:00
.appveyor.yml update boost ver on appveyor & set cxx flags for experimental/filesystem 2017-12-14 16:46:51 +11:00
.editorconfig add editorconfig file 2017-08-09 13:44:57 +01:00
.gitignore ignore cotire generated files 2018-02-28 22:25:34 +11:00
.gitmodules Force git to ignore submodule 2017-08-18 23:50:22 +09:00
.travis.yml automagically reload rebuilt scripts 2017-12-14 22:30:06 +11:00
CMakeLists.txt Build fix... well ish... 2018-03-06 23:20:07 +01:00
CMakeSettings.json Add VS2017 generator definitions 2017-12-01 01:02:01 +11:00
CONTRIBUTING.md Renaming classes in preperation of actor rework 2018-02-20 22:46:44 +01:00
LICENSE.md Initial commit of the sapphire server 2017-08-08 13:53:47 +02:00
README.md updated readme discord link 2017-11-21 09:23:11 +00:00
sql_import.sh lets see if it imports this time.. 2017-08-11 06:00:42 +01:00

Sapphire - FINAL FANTASY XIV Server Emulator

Discord Server Linux Build Status Windows Build Status FFXIV Sapphire

Sapphire is a FINAL FANTASY XIV 4.0+ Server Emulator currently in development.

Sapphire is a research project to learn how retail servers work and currently not production code; at this time it is insecure (use throwaway passwords for accounts) and you should expect a lot of things unimplemented or broken (of course contributions are always welcome).

Dependencies + Compiling

Sapphire requires the following software:

Name Windows Linux
CMake 2.6+ and C++14 capable compiler Visual Studio 2017 gcc 4.9 and g++ 4.9 or newer
Boost 1.63.0 Win32 precompiled binaries Boost libraries from your distribution's package manager
MySQL Server 5.7 Official Site MySQL server from your distribution's package manager

Windows Set the environment variables BOOST_ROOT_DIR and BOOST_LIB_DIR to [boost main folder] and [boost main folder]/lib32-msvc-14.0 respectively or copy your boost installation into the project's src/lib folder.

Visual Studio 2017 users: open Visual Studio Installer and ensure Individual Components > SDKs, libraries, and frameworks > Windows Universal C Runtime is installed. You may also need to install Individual Components > Compilers, build tools, and runtimes > VC++ 2015.3 v140 toolset for desktop (x86, 64).

To enable Edit and Continue ensure you define -DCMAKE_BUILD_TYPE="Debug" when generating with CMake.

If you installed CMake outside of Visual Studio and have it in your PATH environment variable, navigate to Sapphire folder and cmake -DCMAKE_BUILD_TYPE="Debug" && cmake --build ..

Otherwise:

  • In Visual Studio 2017: Open the project via File > Open > Folder and wait, till CMake automatically finishes cache generation. Right click any CMakeLists.txt and select build to build a application. To configure debug startup parameters, select Debug and Launch settings, the application you want to set up parameters for, and add a args json array containing your launch parameters in configurations. If Visual Studio fails to generate a CMake Cache or does not show options to build, make sure that the newest version of it is installed and all environment variables are set correctly. Keep in mind that generating a cache can take a while on some machines.

The solution Sapphire.sln is also generated in the main Sapphire folder.

Linux cmake . -DSAPPHIRE_BOOST_VER="your.boost.ver" && make -j JOBS where JOBS is number of cores on your system.
-j JOBS can be omitted if your system lacks resources (spoiler: your system probably lacks resources if running on 1GB RAM or lower, or if the build fails due to being out of memory)

Final Fantasy XIV © 2010-2017 SQUARE ENIX CO., LTD. All Rights Reserved. We are not affiliated with SQUARE ENIX CO., LTD. in any way.