Info about my 1.4 branch:
I prefer to test my TFS code changes on 10.98, so I made my own TFS 1.4 branch called 'compilation'. I add there tested optimizations/bug fixes, but most important goal is to keep it 'compile' on newest Linuxes and Windows:
A free and open-source MMORPG server emulator written in C++ - gesior/forgottenserver-gesior
github.com
Right now it's 99.99% compatible with TFS 1.4 datapack. Only change is that I moved 'global storages' from Lua to C++. Now they accept only integer values and values are saved in database. Official TFS 1.4 accepts any Lua data type (tables, objects etc.) as values and resets them every server restart (they are not stored in database).
If you use official TFS 1.4
data folder, it will overwrite my C++ changes, as I had to remove these Lua lines to make my C++ code work:
A free and open-source MMORPG server emulator written in C++ - otland/forgottenserver
github.com
So with official TFS 1.4
data my C++ code is 100% compatible. All extra features are on/off in
config.lua (off by default).
It compiles like TFS 1.6+. For VS2022 it uses 'vcpkg.json' manifest by default. For Linux it uses system libraries.
To keep compilation instruction up to date, it's part of repository. Ex. for Ubuntu 24.04:
A free and open-source MMORPG server emulator written in C++ - gesior/forgottenserver-gesior
github.com
On Windows you just have to install
vcpkg from GitHub, integrate it into Windows (like for 'canary') and open
vc17/theforgottenserver.sln in VS 2022.