- One of the Elona variants.
- It is made of C++.
- It is derived from Elona v1.22.
- It is still in an early stage of development.
- It features high extensibility through a mod system. [####+]
- It can be localized in multiple languages. [####+]
- It works on Windows, Linux and macOS. [####+]
An Elona variant that has a mod system. With its high extensibility, you can build your own Elona.
~Ylva Fantasy Encyclopedia~
make
- CMake 3.2 or later
- C++ compiler which supports C++17
- Boost 1.69
- Lua 5.3
- SDL2, SDL2_image, SDL2_ttf and SDL2_mixer
- OpenSSL 1.1.x
clang-format
,find
andxargs
(Optional)
- Visual Studio 2017 x64
- SMPEG
- Timidity++
- Extract
elona122.zip
(from here) to thedeps
directory, sodeps\elona
exists. This will allow for automatically copying the required assets. - Follow the platform-specific instructions below.
- Install the required dependencies.
brew install cmake boost sdl2 sdl2_ttf sdl2_mixer sdl2_image lua
cd path/to/Elona_foobar; make build
- Install the required dependencies. For Arch Linux:
sudo pacman -S cmake sdl2 sdl2_ttf sdl2_image sdl2_mixer gtk3 smpeg lua boost timidity++
For systems with apt
:
sudo apt-get install cmake liblua5.3-dev libboost-all-dev libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev gtk+-3.0 smpeg timidity
cd path/to/Elona_foobar; make build
- Download and install the binaries for Boost
1.69
from here. - Edit
Makefile.win
to point to your Boost install directory. - Run
install.bat
inside thedeps
folder to move the other dependencies todeps\include
anddeps\lib
. - Open the
Developer Command Prompt for VS 2017
. cd path/to/Elona_foobar & nmake build -f Makefile.win
To debug with Visual Studio, open bin\Elona_foobar.sln
.
There are mainly 2 ways to build Elona foobar in parallel.
- Ninja-build supports parallel build by default. CMake can generate build rule for ninja like this:
make CMAKE_ARGS="-GNinja" <BUILD TARGET>
CMAKE_BUILD_PARALLEL_LEVEL
also works like this:CMAKE_BUILD_PARALLEL_LEVEL=8 make <BUILD TARGET>
- Copy the
graphic
andsound
folders from vanilla v1.22 to the directory containing the executable. Make sure not to overwrite any files that already exist, as they have been updated in this version. - Execute
bin/Elona_foobar
,bin/Elona_foobar.app
orbin/Debug/Elona_foobar.exe
.
See CONTRIBUTING.md for details.
MIT License. See LICENSE.txt for details. This license is applied for the contents in this repository. Note that images, sounds and fonts are not included. For files under runtime/graphic folder of the repository, see runtime/graphic/LICENSE.txt.
- Catch2: see license file.
- hayai: see license file.
- sol2: see license file.
- ordered_map: see license file.
- boostrandom: see license file.
- cmake/FindXXX.cmake: see license file.
- nativefiledialog: see license file.
- cpp-netlib/uri: see license file.
- xxHash: see license file.
- zstr: see license file.
- minizip: see license file.
- json5: see license file.
- inspect.lua: see license file.