This is the source code of an Entity Class Compiler (ECC), which is a custom build tool used to compile entity source files (.es
) for Serious Engine 1.
This fork of ECC includes new features and also supports other engine versions, such as Serious Engine 1.50 and Serious Sam Revolution.
Original source code is taken from Serious Engine 1.10.
Release executables are built under the ClassicsEnhanced
configuration and are compatible with entity sources from most versions of Serious Engine 1.
Visual Studio configuration | CMake option | Description | Compatibility |
---|---|---|---|
Classics |
ECC_FOR_CLASSICS=1 |
ECC for entities from vanilla games. Serves as a base for the rest of the compilers. | 1.05; 1.07; 1.10 |
ClassicsEnhanced |
ECC_FOR_ENHANCED=1 |
ECC designed specifically for this Serious Engine 1 Mod SDK. | 1.05; 1.07; 1.10; SSR |
SE150 |
ECC_FOR_SE150=1 |
ECC for entities from Serious Engine 1.50 that support its features. | b1.50; 1.50 |
SSR |
ECC_FOR_SSR=1 |
ECC for entities from Serious Sam Classics: Revolution that support its features. | SSR |
- Install Visual Studio 2010 or later.
- Open
EntityClassCompiler.sln
solution. - Select an appropriate build configuration for the desired ECC version.
- Press F7 or Build -> Build solution to build the entire project.
Before building, you need to install certain modules if they aren't already there.
- Install Git and CMake tools with
sudo apt install git cmake
- Install GCC and other build tools with
sudo apt install build-essential
(if you don't already have GCC) - Install Bison and Flex tools with
sudo apt install bison flex
(if you've installed GCC separately without them) - Clone the repository in any directory with
git clone https://github.com/DreamyCecil/SE1-ECC.git
- Create a build directory with
mkdir cmake-build
and then enter it withcd cmake-build
- Configure CMake project with
cmake ..
or with some options likecmake -DCMAKE_BUILD_TYPE=Release -DECC_FOR_ENHANCED=1 ..
- Build the project with
make
Add subdirectory with this project to your CMake project to build it with everything else, something like this:
# Relative to the initial CMakeLists.txt
add_subdirectory(${CMAKE_SOURCE_DIR}/ThirdParty/SE1-ECC)
# Or relative to the file
add_subdirectory(SE1-ECC)
This project is licensed under GNU GPL v2 (see LICENSE file).