Eternity – advanced DOOM source port

Last Updated on July 10, 2021

Eternity is an advanced DOOM source port.

Eternity’s goal that makes it different from feature ports such as GZDoom is demo compatibility similar to that of PrBoom+, kept specifically to ensure that every new feature added fits seamlessly with what exists so far.

Support for Heretic is growing.

Features include:

  • ACS, including many of ZDoom’s enhancements to the language.
  • Additional control options including crosshairs, free look, jumping, and flying configurable via Quake-style key bindings.
  • BOOM, MBF and partial SMMU support (excluding FraggleScript).
  • Cardboard – a floating-point rendering engine created by SoM that fixes several problems inherent with the classic fixed-point Doom rendering engine.
  • A console.
  • EDF – Eternity Definition Files – content definition language for new projectiles and monsters, with weapons planned for future releases.
  • EMAPINFO for defining properties of levels such as names, secret exits, music, etc.
  • ENDOOM and animated start up screen support
  • ExtraData, a text-based map format extension allowing use of Hexen and custom editing features in the Doom map format. Special data for the objects is then given inside the script.
  • GFS – Game File Script – a way to add large numbers of files in a clean, safe manner.
  • High screen resolutions, widescreen support, uncapped framerate, and render to texture capability.
  • MapInfo – expands SMMU’s level info system significantly, allowing dozens of new properties to be specified, and allowing cascading global EMAPINFO lumps as an alternative to inserting MapInfo data into level headers. Among other things, MapInfo is used to tie ExtraData and ACS scripts to the maps that use them.
  • “Managed mission pack” support for Master Levels and No Rest for the Living, allowing their maps to be loaded and played at runtime from the main menu.
  • MUSINFO support.
  • PNG-format graphics support.
  • UDMF support, with the “Eternity” namespace.
  • Render-only slopes.
  • Rendering portals which can be used to create skyboxes and fake 3D architecture. Linked portals allow objects to pass through them, as well.
  • 3D middle textures, which cause 2S linedefs to clip objects using the height of their middle texture. Within the range of the texture’s height, the lines are effectively solid and block players, monsters, and projectiles. Below or above, objects can pass freely.
  • Translucency, regular and additive.
  • Walking over/under monsters and other things.
  • Work-in-progress support for Heretic, Hexen, and Strife.
  • ZIP support compatible with ZDoom, with a recommended extension of .pke.
  • Cross-platform support – runs under Linux, BSD, macOS, and Windows.

Website: eternity.youfailit.net/wiki/Eternity_Engine
Support: GitHub Code Repository
Developer: James Haley, Ioan Chera, Max Waine, and contributors
License: GNU General Public License v3+

Eternity is written in C++. Learn C++ with our recommended free books and free tutorials.


Popular series
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions.
ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information.
Alternatives to Proprietary SoftwareReplace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS.
GamesAwesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series.
Artificial intelligence iconMachine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source.
Guide to LinuxNew to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux.
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities.
System ToolsEssential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users.
ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
AudioSurveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal.
Saving Money with LinuxSaving Money with Linux looks at how you can reduce your energy bills running Linux.
Home ComputersHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years. It can be a bumpy ride.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery.
DockerGetting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers.
Android AppsBest Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series.
Programming BooksThese best free books accelerate your learning of every programming language. Learn a new language today!
Programming TutorialsThese free tutorials offer the perfect tonic to our free programming books series.
Linux Around The WorldLinux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts.
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments