This is the source code for Serious Engine

Overview

Serious Sam Classic

This is the source code for Serious Engine v.1.10, including the following projects:

  • DedicatedServer
  • Ecc The Entity Class Compiler, a custom build tool used to compile *.es files
  • Engine Serious Engine 1.10
  • EngineGUI Common GUI things for game tools
  • EntitiesMP All the entity logic
  • GameGUIMP Common GUI things for game tools
  • GameMP All the game logic
  • Modeler Serious Modeler
  • RCon Used to connect to servers using an admin password
  • SeriousSam The main game executable
  • SeriousSkaStudio Serious Ska Studio
  • WorldEditor Serious Editor
  • DecodeReport Used to decode crash *.rpt files
  • Depend Used to build a list of dependency files based on a list of root files
  • LWSkaExporter Exporter for use in LightWave
  • MakeFONT Used for generating *.fnt files
  • Shaders Compiled shaders
  • GameAgent The serverlist masterserver written in Python
  • libogg, libvorbis Third party libraries used for playing OGG-encoded ingame music (see http://www.vorbis.com/ for more information)

Building

There are still many asserts in the engine. Most of them are irrelevant and should be removed, but while it's not done, the asserts will effectively kill the engine when triggered in the Debug build. Use Release or RelWithDebInfo build if you intend to play (automatically set as RelWithDebInfo in the build scripts).

Linux

Setting up the repository

Type this in your terminal:

git clone https://gitflic.ru/project/tx00100xt/serioussamclassic.git SeriousSamClassic

Copy official game data (optional)

If you have access to a copy of the game (either by CD or through Steam), you can copy the *.gro files from the game directory to the repository. (SeriousSamClassic/SamTFE is the directory of the game Serious Sam Classic The First Encounter, SeriousSamClassic/SamTSE is the directory of the game Serious Sam Classic The Second Encounter)

Building (only for SS:TFE)

Type this in your terminal:

cd SeriousSamClassic/SamTFE/Sources
./build-linux64.sh -DTFE=TRUE	# use build-linux32.sh for 32-bits

Building (only for SS:TSE)

Type this in your terminal:

cd SeriousSamClassic/SamTSE/Sources
./build-linux64.sh        	# use build-linux32.sh for 32-bits

FreeBSD

Setting up the repository

Type this in your terminal:

git clone https://gitflic.ru/project/tx00100xt/serioussamclassic.git SeriousSamClassic

Copy official game data (optional)

If you have access to a copy of the game (either by CD or through Steam), you can copy the *.gro files from the game directory to the repository. (SeriousSamClassic/SamTFE is the directory of the game Serious Sam Classic The First Encounter, SeriousSamClassic/SamTSE is the directory of the game Serious Sam Classic The Second Encounter)

Building (only for SS:TFE)

Type this in your terminal:

cd SeriousSamClassic/SamTFE/Sources
cp -vfr Entities/PlayerWeapons_old.es Entities/PlayerWeapons.es
mkdir cmake-build
cd cmake-build
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTFE=TRUE ..
make -j4
cp -v SeriousSam DedicatedServer MakeFONT ecc ../../Bin
cp -v Debug/*.so ../../Bin

Building (only for SS:TSE)

Type this in your terminal:

cd SeriousSamClassic/SamTSE/Sources
cp -vfr EntitiesMP/PlayerWeapons_old.es EntitiesMP/PlayerWeapons.es
mkdir cmake-build
cd cmake-build
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
make -j4
cp -v SeriousSam DedicatedServer MakeFONT ecc ../../Bin
cp -v Debug/*.so ../../Bin

Note that the CD version of SS:TSE used MP3 for music. You will need to build / get libamp11lib.so and copy it inside Bin with the other libs to have music. Steam version uses ogg and doesn't need this library.

Running

This version of the engine comes with a set of resources (\SE1_10b.GRO) that allow you to freely use the engine without any additional resources required. You can buy the original games on Steam, as a part of a bundle with Serious Sam Revolution ( http://store.steampowered.com/app/227780 )

Serious Sam Classic The First Encounter

Running the game

  1. Locate the game directory for "Serious Sam Classic The First Encounter" (steam)
  2. Build game from source code or Download latest release and copy the latest files from the game directory to SamTFE/Bin
  3. Copy all *.gro files, Help folder and Levels folder from the game directory to SamTFE directory. At the current time the files are:
    • Help (folder)
    • Levels (folder)
    • 1_00_ExtraTools.gro
    • 1_00_music.gro
    • 1_00c.gro
    • 1_00c_Logo.gro
    • 1_00c_scripts.gro
    • 1_04_patch.gro
  4. Start the game
    • ./run_game.sh or ./run_game_hud.sh (for start game with MangoHUD)

Serious Sam Classic The Second Encounter

Running the game

  1. Locate the game directory for "Serious Sam Classic The Second Encounter" (steam)
  2. Build game from source code or Download latest release and copy the latest files from the game directory to SamTFE/Bin
  3. Copy all *.gro files and Help folder from the game directory to SamTSE directory. At the current time the files are:
    • Help (folder)
    • SE1_00.gro
    • SE1_00_Extra.gro
    • SE1_00_ExtraTools.gro
    • SE1_00_Levels.gro
    • SE1_00_Logo.gro
    • SE1_00_Music.gro
    • 1_04_patch.gro
    • 1_07_tools.gro
  4. Start the game
    • ./run_game.sh or ./run_game_hud.sh (for start game with MangoHUD)

Serious Sam Classic XPLUS

What is XPLUS? XPLUS is a global modification that changes effects, models, weapons, textures to high definition. XPLUS was created by fans of the game Serious Sam and is distributed for free. Remark: -JD- and VITEK is author this mod for windows.

XPLUS Oasis

XPLUS Dunes

XPLUS Sacred Yards

Linux

Building XPLUS (only for SS:TFE)

Type this in your terminal:

cd SeriousSamClassic/SamTFE/Sources
./build-linux64xplus.sh -DTFE=TRUE	# use build-linux32xplus.sh for 32-bits

FreeBSD

Building XPLUS (only for SS:TFE)

Type this in your terminal:

cd SeriousSamClassic/SamTFE/Sources
cp -vfr Entities/PlayerWeaponsHD.es Entities/PlayerWeapons.es
mkdir cmake-build
cd cmake-build
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTFE=TRUE ..
make -j4
cp -v Debug/*.so ../../Mods/XPLUS/Bin

Download XplusTFE and unpack to SeriousSamClassic/SamTFE/Mods directory. To start the modification, use the game menu - item Modification.

Linux

Building XPLUS (only for SS:TSE)

Type this in your terminal:

cd SeriousSamClassic/SamTSE/Sources
./build-linux64xplus.sh        	    # use build-linux32xplus.sh for 32-bits

FreeBSD

Building XPLUS (only for SS:TSE)

Type this in your terminal:

cd SeriousSamClassic/SamTSE/Sources
cp -vfr EntitiesMP/PlayerWeaponsHD.es EntitiesMP/PlayerWeapons.es
mkdir cmake-build
cd cmake-build
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
make -j4
cp -v Debug/*.so ../../Mods/XPLUS/Bin

Download XplusTSE and unpack to SeriousSamClassic/SamTSE/Mods directory. To start the modification, use the game menu - item Modification.

Suported OS

  • Linux
  • FreeBSD (no longer)

Other OS

  • Not supported

License

  • Serious Engine is licensed under the GNU GPL v2 (see LICENSE file).
  • amp11lib is licensed under the GNU GPL v2 (see amp11lib/COPYING file).

Some of the code included with the engine sources is not licensed under the GNU GPL v2:

  • zlib (located in Sources/Engine/zlib) by Jean-loup Gailly and Mark Adler
  • LightWave SDK (located in Sources/LWSkaExporter/SDK) by NewTek Inc.
  • libogg/libvorbis (located in Sources/libogg and Sources/libvorbis) by Xiph.Org Foundation
Comments
  • Fails to build on Pi4

    Fails to build on Pi4

    i follow the commands that are on your readme Im running debian Buster 10

    cd SeriousSamClassic/SamTFE/Sources
    ./build-linux64.sh -DTFE=TRUE -DRPI4=TRUE	# use build-linux32.sh for 32-bits
    

    and i get this

    Will build with 'make -j4' ... please edit this script if incorrect.
    + rm -rf cmake-build
    + mkdir cmake-build
    + cd cmake-build
    + cp -vfr ../Entities/PlayerWeapons_old.es ../Entities/PlayerWeapons.es
    '../Entities/PlayerWeapons_old.es' -> '../Entities/PlayerWeapons.es'
    + cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_FLAGS=-mmmx -DCMAKE_CXX_FLAGS=-mmmx -DUSE_I386_NASM_ASM=TRUE .. -DTFE=TRUE -DRPI4=TRUE
    -- The C compiler identification is GNU 8.3.0
    -- The CXX compiler identification is GNU 8.3.0
    -- Check for working C compiler: /usr/bin/cc
    -- Check for working C compiler: /usr/bin/cc -- broken
    CMake Error at /usr/share/cmake-3.16/Modules/CMakeTestCCompiler.cmake:60 (message):
      The C compiler
    
        "/usr/bin/cc"
    
      is not able to compile a simple test program.
    
      It fails with the following output:
    
        Change Dir: /home/pi/SeriousSamClassic/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp
    
        Run Build Command(s):/usr/bin/make cmTC_90c3e/fast && /usr/bin/make -f CMakeFiles/cmTC_90c3e.dir/build.make CMakeFiles/cmTC_90c3e.dir/build
        make[1]: Entering directory '/home/pi/SeriousSamClassic/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp'
        Building C object CMakeFiles/cmTC_90c3e.dir/testCCompiler.c.o
        /usr/bin/cc   -mmmx    -o CMakeFiles/cmTC_90c3e.dir/testCCompiler.c.o   -c /home/pi/SeriousSamClassic/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp/testCCompiler.c
        cc: error: unrecognized command line option ‘-mmmx’
        make[1]: *** [CMakeFiles/cmTC_90c3e.dir/build.make:66: CMakeFiles/cmTC_90c3e.dir/testCCompiler.c.o] Error 1
        make[1]: Leaving directory '/home/pi/SeriousSamClassic/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp'
        make: *** [Makefile:121: cmTC_90c3e/fast] Error 2
    
    
    
    
    
      CMake will not be able to correctly generate this project.
    Call Stack (most recent call first):
      CMakeLists.txt:2 (project)
    
    
    -- Configuring incomplete, errors occurred!
    See also "/home/pi/SeriousSamClassic/SamTFE/Sources/cmake-build/CMakeFiles/CMakeOutput.log".
    See also "/home/pi/SeriousSamClassic/SamTFE/Sources/cmake-build/CMakeFiles/CMakeError.log".
    

    here is the CMakeError.log

    Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
    Compiler: /usr/bin/cc 
    Build flags: -mmmx
    Id flags:  
    
    The output was:
    1
    cc: error: unrecognized command line option ‘-mmmx’
    
    
    Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
    Compiler: /usr/bin/cc 
    Build flags: -mmmx
    Id flags: -c 
    
    The output was:
    1
    cc: error: unrecognized command line option ‘-mmmx’
    
    
    Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
    Compiler: /usr/bin/cc 
    Build flags: -mmmx
    Id flags: -Aa 
    
    The output was:
    1
    cc: error: unrecognized command line option ‘-mmmx’
    
    
    Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
    Compiler: /usr/bin/cc 
    Build flags: -mmmx
    Id flags: -D__CLASSIC_C__ 
    
    The output was:
    1
    cc: error: unrecognized command line option ‘-mmmx’
    
    
    Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
    Compiler: /usr/bin/cc 
    Build flags: -mmmx
    Id flags: --target=arm-arm-none-eabi;-mcpu=cortex-m3 
    
    The output was:
    1
    cc: error: unrecognized command line option ‘-mmmx’
    cc: error: unrecognized command line option ‘--target=arm-arm-none-eabi’
    
    
    Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
    Compiler: /usr/bin/c++ 
    Build flags: -mmmx
    Id flags:  
    
    The output was:
    1
    c++: error: unrecognized command line option ‘-mmmx’
    
    
    Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
    Compiler: /usr/bin/c++ 
    Build flags: -mmmx
    Id flags: -c 
    
    The output was:
    1
    c++: error: unrecognized command line option ‘-mmmx’
    
    
    Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
    Compiler: /usr/bin/c++ 
    Build flags: -mmmx
    Id flags: --c++ 
    
    The output was:
    1
    c++: error: unrecognized command line option ‘-mmmx’
    c++: error: unrecognized command line option ‘--c++’
    
    
    Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
    Compiler: /usr/bin/c++ 
    Build flags: -mmmx
    Id flags: --ec++ 
    
    The output was:
    1
    c++: error: unrecognized command line option ‘-mmmx’
    c++: error: unrecognized command line option ‘--ec++’; did you mean ‘-Weffc++’?
    
    
    Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
    Compiler: /usr/bin/c++ 
    Build flags: -mmmx
    Id flags: --target=arm-arm-none-eabi;-mcpu=cortex-m3 
    
    The output was:
    1
    c++: error: unrecognized command line option ‘-mmmx’
    c++: error: unrecognized command line option ‘--target=arm-arm-none-eabi’
    
    
    Determining if the C compiler works failed with the following output:
    Change Dir: /home/pi/RetroPie-Setup/tmp/build/samtfe/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp
    
    Run Build Command(s):/usr/bin/make cmTC_69832/fast && /usr/bin/make -f CMakeFiles/cmTC_69832.dir/build.make CMakeFiles/cmTC_69832.dir/build
    make[1]: Entering directory '/home/pi/RetroPie-Setup/tmp/build/samtfe/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp'
    Building C object CMakeFiles/cmTC_69832.dir/testCCompiler.c.o
    /usr/bin/cc   -mmmx    -o CMakeFiles/cmTC_69832.dir/testCCompiler.c.o   -c /home/pi/RetroPie-Setup/tmp/build/samtfe/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp/testCCompiler.c
    cc: error: unrecognized command line option ‘-mmmx’
    make[1]: *** [CMakeFiles/cmTC_69832.dir/build.make:66: CMakeFiles/cmTC_69832.dir/testCCompiler.c.o] Error 1
    make[1]: Leaving directory '/home/pi/RetroPie-Setup/tmp/build/samtfe/SamTFE/Sources/cmake-build/CMakeFiles/CMakeTmp'
    make: *** [Makefile:121: cmTC_69832/fast] Error 2
    
    opened by Exarkuniv 23
  • hud icons do not scale with their boxes properly.

    hud icons do not scale with their boxes properly.

    As the title suggests. As a side note. is it possible to allow for leaderboard hud removal? Im talking about weapon icons specificly, which are cut off.

    opened by LethalManBoob 14
  • RPM for Alt Sisyphus build fails

    RPM for Alt Sisyphus build fails

    Hello! One small trouble...

    I'm trying to build an RPM package for ALT Sisyphus (cheers from @mshigorin!). And in the end I got this:

    verify-elf: ERROR: ./usr/lib64/libEntities.so: undefined symbol: _ZTI19CMovableModelEntity verify-elf: ERROR: ./usr/lib64/libEntities.so: undefined symbol: _ZN7CEntity21SetPlacement_internalERK12CPlacement3DRK6MatrixIfLi3ELi3EEi verify-elf: ERROR: ./usr/lib64/libEntities.so: undefined symbol: _ZN14CMovableEntity4CopyER7CEntityj verify-elf: ERROR: ./usr/lib64/libEntities.so: undefined symbol: _ZN19CMovableModelEntity6Read_tEP8CTStream And this error for all libraries of game.

    And one more type of error igot in the end of packaging: verify-elf: WARNING: ./usr/bin/DedicatedServer: RPATH entry found: $ORIGIN verify-elf: WARNING: ./usr/bin/SeriousSamTFE: RPATH entry found: $ORIGIN

    Repo with project: https://git.altlinux.org/people/arbars/packages/eriousSamClassic.git

    Until now I trying to build TFE P.S. Если можно, объясни на пальцах, что не так.

    opened by Arbars 10
  • Problems with RPi4

    Problems with RPi4

    The Raspberry Pi 4 build seems to have some problems... I'm on official RPiOS x64, the newest version.

    First one if with the compiling itself - a line 'cat /proc/cpuinfo |grep vendor_id |wc -l' returns 0 which throws the project out of the window after compiling ECC. This can be however easily fixed by changing the number there manually to '4', still, maybe worth of changing for RPI itself?

    Second problem is when launching the compiled project, after execution of the compiled binary, terminal shows two lines and program ends: STUBBED: load window icon in /home/dragon99919/git/SeriousSamClassic/SamTSE/Sources/SeriousSam/MainWindow.cpp, line 167. STUBBED: Need SDL invisible window or something in /home/dragon99919/git/SeriousSamClassic/SamTSE/Sources/SeriousSam/MainWindow.cpp, line 328.

    Any idea how to fix it by any chance?

    opened by dragon99919 4
  • cross-multiplayer not work

    cross-multiplayer not work

    I can`t cross-connecting with a Linux system and FreeBSD it a not possible !

    response from my server

    Server: Sent initialization info to '192.168.0.3' (2k) Sending statedelta response Server: Sent connection data to '192.168.0.3' (2406k->758k->95k) Server: Sent initialization info to '192.168.0.3' (2k) Sending statedelta response Server: Sent connection data to '192.168.0.3' (2406k->758k->95k)

    response from my client

    joining session at '192.168.0.8' sending statestate delta request Cannot join game: CRC error in DIFF!

    opened by Heic0 4
  • unable to adjust gamma brightness and contrast

    unable to adjust gamma brightness and contrast

    First of all let me say thanks for this project, it's running great and everything seems to work fine so far. The only issue I've run across is that I'm unable to adjust gamma brightness and contrast in the settings. It happens both on the OpenGL as Vulkan binaries. So I'm not sure if it's unimplemented as of yet or bugged.

    Running on Arch with GOG SS TFE. If you need additional information let me know.

    opened by spinktvis 2
  • Windows builds, please!

    Windows builds, please!

    Could it be possible to provide and Windows builds of SeriousSamClassic either, 32 and 64 bits, please! It could get much more popularity to the game!

    opened by DI555 1
Releases(v1.10.4)
  • v1.10.4(Dec 20, 2022)

    Fixes and additions:

    2022-12-14 - 2022-12-18

    • Added support Windows.

    Binaries Update for Windows (2022-12-24):

    • The WorldEditor (32-bit) and SeriousSkaStudio (32-bit / 64-bit) now works.

    Binaries Update for x64 Platform and for Windows (2022-12-30):

    • Fixed incorrect x64 cpp-implementation of ASM code in lightmap (https://github.com/tx00100xt/SeriousSamClassic/commit/868de9c62eba3a147797e3db530bf7539670dc13) (https://github.com/tx00100xt/SeriousSamClassic/commit/00880d00c1a3e5ec6547ec2eb36d54ad7174cd68)
    • The WorldEditor (64-bit) now works. (https://github.com/tx00100xt/SeriousSamClassic/commit/ace7de5c7f631dd70d21ebc8dc21e72e1b2e7706)
    • Fixed levels load from subdirectory (for Windows). (https://github.com/tx00100xt/SeriousSamClassic/commit/276cccde01989e3f41666be872b7c105a38e95c5)

    Known Issues:

    • There is no multiplayer compatibility between Windows and *nix systems.

    The archives contains compiled binary files for the games Serious Sam Classic TFE/TSE, including modification Xplus and Serious Sam Alpha Renake.

    • Dependencies: glibc >= 2.24, sdl2, libvorbis, zlib, zenity, (mangohud - optional)

    Download: Xplus TFE from Google Drive or Xplus TFE from pCloud, and unpack to SeriousSamClassic/SamTFE/Mods directory. Xplus TSE from Google Drive or Xplus TSE from pCloud,, and unpack to SeriousSamClassic/SamTSE/Mods directory. SeriousSamAlphaRemake_v1.5.7z archive and unpack to SeriousSamClassic/SamTFE/ directory. To start the modification, use the game menu - item Modification.

    Source code(tar.gz)
    Source code(zip)
    SeriousSamClassic-1.10.4-bsd-amd64-bin.tar.xz(6.23 MB)
    SeriousSamClassic-1.10.4-lnx-amd64-bin.tar.xz(6.28 MB)
    SeriousSamClassic-1.10.4-lnx-x86-bin.tar.xz(5.88 MB)
    SeriousSamClassic-1.10.4-win32-bin.zip(8.29 MB)
    SeriousSamClassic-1.10.4-win64-bin.zip(9.41 MB)
  • v1.10.3(Dec 10, 2022)

    Fixes and additions:.

    2022-07-17 - 2022-11-18

    • Structuring paths for installation in /usr/bin /usr/lib /usr/share
    • Fixed building for RPI4 on 32-bit system.
    • Fixed FreeBSD compilatiun with USE_SINGLE_THREAD=FALSE
    • Added game data search.
    • Fixed timer for gcc 11.3
    • Added hud_bShowScore console variable.
    • Fixed old scripts for AMD cards.

    The archives of Serious Sam Classic_v1.10.3-xxx.tar.xz contains compiled binary files for the games Serious Sam Classic TFE/TSE, including modification Xplus.

    • Dependencies: glibc >= 2.24, sdl2, libvorbis, zlib, zenity, (mangohud - optional)
    Source code(tar.gz)
    Source code(zip)
    SeriousSamClassic_v1.10.3-FreeBSD-x64-bin.tar.xz.tar.xz(5.56 MB)
    SeriousSamClassic_v1.10.3-x32-bin.tar.xz(5.10 MB)
    SeriousSamClassic_v1.10.3-x64-bin.tar.xz(5.47 MB)
  • v1.10.2(Jun 21, 2022)

    Fixes and additions:

    2022-05-12 - 2022-05-12

    • Added Window1251 to Utf8 conversion for SDL_CreateWindow title.
    • Added CTString strWindow1251ToUtf8 function.
    • Added suport Windows-1251 filenames for game resources.

    2022-05-23

    • Fixed build for FreeBSD. Added definition for FreeBSD.

    2022-05-24 - 2022-05-25

    • Fixed all network issues on FreeBSD.
    • Using RDTSC for FreeBSD.

    2022-06-02 - 2022-06-21

    • Fixed build for raspberry pi.
    • Fixed broken menu and display of models in NETRICSA for platforms not using RDTSC.
    • Reverts Critical Section from win32 original code, set multithreading by default.
    • Removed check timestrapped for recorded demo.
    • Added definition for raspberry pi and e2k.
    • Rewrote the game code. Now all user data is stored in the home directory.

    The archive of Serious Sam Classic_v1.10.2-bin.tar.xz contains compiled binary files for the games Serious Sam Classic TFE/TSE, including modification Xplus.

    Dependencies: glibc >= 2.24, sdl2, libvorbis, zlib, zenity, (mangohud - optional)

    Source code(tar.gz)
    Source code(zip)
    Serious.Sam.Classic_v1.10.2-bin.tar.xz(9.60 MB)
  • v1.10.1(May 10, 2022)

    Fixes and additions:

    2021-10-09 - 2021-11-10

    • Fixed crash the game when playing the demo with parameter cli_bPrediction=1;
    • Fixed attempt to create a udp socket when it is already created (the created server stopped responding after the first heartbeat)
    • added timeout when reading the response to the master server (setsockopt)
    • Increased the CTString PrintF buffer (256 bytes was not enough to form a server response on request \status, look.. CTString.cpp)
    • Added \basic\ \info\ \rules\ request
    • In GameAgent added support for both TFE and TSE
    • In DedicatedServer added support for both TFE and TSE
    • Restore green color for TFE (it will be right)
    • Enabled building DedicatedServer
    • Added few diagnostic messages
    • Fixed bug with loading levels from subdirectories (see IsDirectory() function)
    • Added support for 16:9, 16:10, 21:9 screen sides. Fixed menu, NETRICSA, font and HUD for all screen ratios. Fixed the position of the weapon and the player's FOV of view from the first and third person for resolutions 16:9 16:10 21:9 (look 42amsterdam.net fix42 open source mod for a classic sam).
    • Added MakeFONT compilation to CMakeLists.txt . MakeFONT allows you to create your own fonts for the game.
    • Added support for launching mods from the game menu. (look CheckModReload function).
    • Deleting using time to get a precision timer for GNU_INLINE_X86_64. Removing the ugly hack /proc/cpuinfo. Adding assembler code to get RDTSC for GNU_INLINE_X86_64. Adding several libcpuid functions to get the correct TSC. (Note: Using a single RDTSC call in 32-bit mode did not take into account the p-state of the processor, the dynamic frequency of the CPU, and led to different game speeds depending on the current p-state. Fixed with a function from libcpuid - look at Engine\Timer.cpp. Using time instead of RDTSC In 64 mode broke the menu, dynamic displays of enemy models and weapons in NETRICSA. Fixed by returning RDTSC.)
    • Removed SE1_10.gro because it contains broken textures and breaks the localization of the game. (look the waterfall at the level of the oasis and sierra chiapas). A small SE1_10b.gro is left instead containing only the textures of the map for changing the levels of the single player game. The rest of the resources are in the original game files.
    • Added variables showing the number of monsters killed, as well as ping for a network game. (hud_bShowKills hud_bShowPing).
    • Added GetMSLegacyPlayerInf(); function to Entities/Player.es for TFE.
    • Added "activemod" to the server response to the request \status\ and \info.
    • Added "difficulty" to the server response to the request \status\ and \rules.
    • Added "location" to the server response to the request \basic. (Note: Now we have full gamespy Implementation of the Query and Reporting without "vipplayers" and "password").
    • Removed the day of the week in the strftime() function, as it is incorrectly displayed in the Cyrillic locale.
    • Added HUD-Options.cfg and NET-PredictionOptions.cfg in Scripts/CustomOptions.
    • Fixed mono sound in MixStereo() funcrioin. Now we have strereo sound in 64-bit mode. (look my comments in SoundMixer.cpp and SoundMixer386.asm).
    • Fixed broken angle calculation with negative epsilon numbers. (see https://github.com/Croteam-official/Serious-Engine/pull/49).
    • Fixed loading sequence of tech files in mods. (look Engine/Base/Unzip.cpp).
    • Fixed Freezing the game when restarting the server at the Hatshepsut level. (the bug was in Entities/Lightning.es).

    2022-02-02 - 2022-02-04

    • Added crashfixes for libraries Entities and EntitiesMP from the android port. (see https://github.com/Skyrimus/Serious-Sam-Android).
    • Replaced catch char with catch const char.
    • Removed crosshair rendering if the player is dead.

    2022-05-01 - 2022-05-09

    • Fixing sometimes occurring crashes of the game when the player connects to the server. (whtn this == null, see Engine/World/World.cpp)
    • Added -fno-delete-null-pointer-checks in CMakeLists.txt.
    • Added timeout for the connect function when connecting to the master server.
    • Added setsockopt for write and read calls when accessing the master server, the socket is switched to non-blocking mode.
    • Fixed crash of the game with incorrect cht_iGotoMarker.
    • Еngine code excluded from SeriousSam build. Now we have a dynamic libEngine.so library and small SeriousSam,DedicatedServer,MakeFONT files. (That's the right thing to do)

    2022-05-10

    • Added amp11lib to project.

    The archive of Serious Sam Classic_v1.10.1-bin.tar.xz contains compiled binary files for the games Serious Sam Classic TFE/TSE, including modification Xplus.

    Dependencies: glibc >= 2.24, sdl2, libvorbis, zlib, zenity, (mangohud - optional)

    Source code(tar.gz)
    Source code(zip)
    SeriousSamClassic_v1.10.1-bin.tar.xz(74.75 MB)
MAZE (My AmaZing Engine) - 🎮 Personal open-source cross-platform game engine

MAZE (My AmaZing Engine) is the self-written open-source cross-platform game engine in the active development stage. At the moment it is my main pet project, developed for the purpose of learning and preserving different game dev technologies.

Dmitriy Nosov 13 Dec 14, 2022
My 3D game engine source code.

Rogy-Engine Development My 3D game engine source code. (NOT THE FINAL VERSION) Features: PBR shading and reflection probes with parallax correction. S

AlaX 97 Dec 28, 2022
Full source code for WarriOrb, a Dark-Souls like action platformer - using Unreal Engine 4

WarriOrb source code WarriOrb is a hardcore action platformer where you play as a demon who is trapped in an unlikely body. The game mixes the difficu

Not Yet 247 Dec 30, 2022
Godot Engine – Multi-platform 2D and 3D game engine

Godot Engine 2D and 3D cross-platform game engine Godot Engine is a feature-packed, cross-platform game engine to create 2D and 3D games from a unifie

Godot Engine 56.7k Jan 9, 2023
Improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World.

OpenXRay OpenXRay is an improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World. S

null 2.2k Jan 1, 2023
Flax Engine – multi-platform 3D game engine

Flax Engine – multi-platform 3D game engine

Flax Engine 3.7k Jan 7, 2023
CLUSEK-RT is a complex game engine written in C++ and the successor of the CLUSEK game engine

CLUSEK-RT is a complex game engine written in C++ and the successor of the CLUSEK game engine. This engine has been designed with a cross-platform design in mind. Thanks to Vulkan API it delivers a next-gen experience with ray tracing to both Linux and Windows platforms

Jakub Biliński 48 Dec 29, 2022
Ground Engine is an easy to use Game Engine for 3D Game Development written in C++

Ground Engine is an easy to use Game Engine Framework for 3D Game Development written in C++. It's currently under development and its creation will b

 PardCode 61 Dec 14, 2022
The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript

The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript

null 2.8k Dec 29, 2022
Hyperion Engine is a 3D game engine written in C++

Hyperion Engine About Hyperion Engine is a 3D game engine written in C++. We aim to make Hyperion be easy to understand and use, while still enabling

null 293 Jan 1, 2023
Open-source, cross-platform, C++ game engine for creating 2D/3D games.

GamePlay v3.0.0 GamePlay is an open-source, cross-platform, C++ game framework/engine for creating 2D/3D mobile and desktop games. Website Wiki API De

gameplay3d 3.9k Jan 8, 2023
KlayGE is a cross-platform open source game engine with plugin-based architecture.

KlayGE KlayGE is a cross-platform open source game engine with plugin-based architecture. It's started since 2003. The explicit goal of KlayGE is: to

Minmin Gong 1.8k Dec 23, 2022
Powerful, mature open-source cross-platform game engine for Python and C++, developed by Disney and CMU

Panda3D Panda3D is a game engine, a framework for 3D rendering and game development for Python and C++ programs. Panda3D is open-source and free for a

Panda3D 3.6k Dec 31, 2022
MIT Licensed Open Source version of Torque 2D game engine from GarageGames

We've moved! All torque engines have moved to a new organization, Torque Game Engines. Torque2D can be found at https://github.com/TorqueGameEngines/T

GarageGames 1.7k Dec 14, 2022
Free, open-source, game engine and a 3D sandbox.

Work-in-Progress The official "early alpha" release should be available around April 2021 SGEEngine SGEEngine is an open source (MIT License), C++ cen

ongamex 72 Dec 7, 2022
Project DELTA - An open-source trainer built on the Void Engine for Toby Fox's games and their spin-offs.

Project DELTA v3 Project DELTA - An open-source, modular mod menu for Toby Fox's games and their spin-offs. Important note to Grossley: Yes, it is out

Archie 8 Oct 15, 2022
Speedrun plugin for Source engine games.

Features Automatic demo recording Accurate session timing Speedrun timer with complex custom rule system Tools for segmented and tool-assisted speedru

Portal 2 Speedrunning 65 Jan 6, 2023
Vinifera is an open-source community collaboration project extending the Tiberian Sun engine.

Vinifera is an open-source community collaboration project extending the Tiberian Sun engine. Latest Nightly Build: Download Table of Contents Intro C

Vinifera Developers 25 Nov 1, 2022
Classic Tomb Raider open-source engine

Classic Tomb Raider open-source engine

Timur Gagiev 4.1k Jan 8, 2023