Remere's Map Editor fork with a standalone MapServer for live collaborative map editing.
Requirements
- Visual Studio 2022 (MSVC v143)
- vcpkg
Steps
The two programs have independent solutions and can be built separately:
| Program | Solution | Output |
|---|---|---|
| Map editor (GUI) | vcproj/Editor/Editor.sln |
Editor_x64.exe |
| Live server (console) | vcproj/MapServer/MapServer.sln |
MapServer_x64.exe |
- Clone this repo.
- Open
vcproj/Editor/Editor.sln(orvcproj/MapServer/MapServer.sln) in Visual Studio. - Select Release | x64.
- Build the solution. The
.exelands in the repo root.
Build both by opening each solution in turn (they share source/ but nothing else).
Built via CMake (CMakeLists.txt at repo root) against system packages instead of vcpkg.
Requirements — Ubuntu/Debian
sudo apt-get install -y build-essential cmake libwxgtk3.2-dev libwxgtk-media3.2-dev \
freeglut3-dev libgl-dev libboost-dev libboost-thread-dev nlohmann-json3-dev \
libasio-dev libtomlplusplus-dev libarchive-dev libfmt-devRequirements — Arch Linux
sudo pacman -S --needed base-devel cmake pkgconf wxwidgets-gtk3 freeglut glu mesa \
boost nlohmann-json asio tomlplusplus libarchive fmtwxwidgets-gtk3 covers both the core and media libraries (Debian splits these into
two -dev packages). base-devel provides the compiler and pkgconf, which CMake
needs to locate glut, libarchive, tomlplusplus, and fmt.
Steps (all distributions)
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j"$(nproc)"Outputs Editor and MapServer in the repo root, alongside data/.
The Linux build is community/experimental — the canonical build is the pair of Visual Studio solutions above. Arch tracks upstream closely, so its wxWidgets, Boost, and fmt are usually newer than what the Windows build pins through vcpkg; expect to hit new-compiler warnings there first.
copy mapserver.cfg.example to mapserver.cfg next to MapServer_x64.exe, edit it, then run:
MapServer_x64.exe
- Run
Editor_x64.exe. - Go to Network → Connect to Server...
- Enter host, port, display name, and password (if the server uses one).
- Click Connect.
You edit the hosted map in real time with other connected editors.
On first connect, the editor downloads the server's client assets (this can take a minute for large .spr files). See Client assets for paths and security notes.
The editor and MapServer need Tibia client files to display items and sprites. MapServer also sends these files to connecting editors during live join so everyone uses the same client version as the hosted map.
Point MapServer at separate folders (see mapserver.cfg):
- ASSETS —
Tibia.dat,Tibia.spr,Tibia.otfi - ITEMS —
items.otb,items.xml - MONSTERS / NPCS — creature XML (used for spawn looktypes)
Anyone who can connect to your live server receives a copy of the client assets you host (including Tibia.spr), saved locally in the cache folder above. Treat live access like sharing your sprite archive:
- Use a strong session password and only give access to people you trust.
- Assume connected mappers can keep and reuse those files outside the editor.
- The cache is plain, unencrypted Tibia format — do not rely on hidden paths for protection.
- If your
.spris valuable, consider a stripped asset pack (only sprites/items your map needs), legal agreements with mappers, or accepting that full client art cannot be fully protected once sent to a client machine.
MIT LICENSE