{"id":13529894,"url":"https://github.com/team-eternity/eternity","last_synced_at":"2025-12-17T23:04:08.570Z","repository":{"id":13803864,"uuid":"16499716","full_name":"team-eternity/eternity","owner":"team-eternity","description":"The Eternity Engine","archived":false,"fork":false,"pushed_at":"2025-11-03T04:31:10.000Z","size":48368,"stargazers_count":253,"open_issues_count":207,"forks_count":43,"subscribers_count":26,"default_branch":"master","last_synced_at":"2025-11-03T06:16:18.417Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://eternity.youfailit.net/wiki/Main_Page","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/team-eternity.png","metadata":{"files":{"readme":"README.md","changelog":"changelogs/acs-branch-changes.txt","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-02-04T02:04:24.000Z","updated_at":"2025-11-03T04:31:14.000Z","dependencies_parsed_at":"2023-12-20T12:51:35.974Z","dependency_job_id":"ec6fe73d-affa-434b-be11-ea9a748ef68f","html_url":"https://github.com/team-eternity/eternity","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"purl":"pkg:github/team-eternity/eternity","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team-eternity%2Feternity","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team-eternity%2Feternity/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team-eternity%2Feternity/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team-eternity%2Feternity/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/team-eternity","download_url":"https://codeload.github.com/team-eternity/eternity/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team-eternity%2Feternity/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27787652,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-17T02:00:08.291Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T07:00:40.392Z","updated_at":"2025-12-17T23:04:08.542Z","avatar_url":"https://github.com/team-eternity.png","language":"C++","funding_links":[],"categories":["Engines","FPS"],"sub_categories":[],"readme":"The Eternity Engine\n===================\n\nEternity is an advanced [DOOM](http://doomwiki.org/wiki/Doom) source\nport maintained by James \"Quasar\" Haley, descended from Simon\n\"fraggle\" Howard's SMMU. It has a whole host of advanced features\nfor editors and players alike, including:\n\n* [ACS](http://doomwiki.org/wiki/ACS), including many of ZDoom's\n  enhancements\n\n* [EDF](http://eternity.youfailit.net/index.php?title=EDF), Eternity\n  Definition File, a language to define and modify monsters,\n  decorations, sounds, text strings, menus, terrain types, and other\n  kinds of data.\n\n* [ENDOOM](http://doomwiki.org/wiki/ENDOOM) and animated startup screen\n  support.\n\n* High-resolution support (practically unlimited).\n\n* Support for _Master Levels_ and _No Rest for the Living_, allowing\n  to play them without command line options.\n\n* Portals which can be used to create skyboxes and fake 3D\n  architecture. Linked portal allow objects to pass through them, as\n  well.\n\n* [PNG](http://www.libpng.org/pub/png/) support\n\n* Aided with [SDL 2](http://libsdl.org/), Eternity is very portable and\n  runs on a large range of operating systems: Windows (confirmed as\n  low as XP, and all the way through Windows 10), Linux, Mac\n  OS X, FreeBSD, OpenBSD, and more.\n\n* Heretic, Hexen, and Strife support in-progress.\n\nFor more on its features, check out the\n[Eternity Engine Wiki](http://eternity.youfailit.net/index.php?title=Main_Page).\n\nEternity Engine is maintained using the Git version control system,\nand the canonical source of the repository is available at\n[GitHub](https://github.com/team-eternity/eternity).\n\nCompiling\n---------\nThere are four ways available for building Eternity: CMake, Visual\nStudio, Xcode files, and Homebrew, for Unix, Windows, and both\nMac OS X respectively.\n\nGit submodule\n-------------\nThe project contains the ADLMIDI submodule. You need to load it after you've just cloned Eternity, by using this command:\n\n```\ngit submodule update --init\n```\n\nBuilding with CMake (Unix OSes and Visual Studio 2017+)\n-------------------------------------------------------\nCMake should be capable of generating build files for all platforms,\nbut it is most commonly used only for Unix OSes and Windows, and not\nthoroughly tested outside of it.\n\n1. If you haven't already, extract the source *.zip file or clone the\nGit repository, in the top-level directory you should see a\n+CMakeLists.txt+ file. You should be in this directory.\n\n2. Create a new empty directory and change to it, eg: +mkdir build+\nfollowed by +cd build+. You cannot do an in-tree build.\n\n3. If using Visual Studio make sure that you have installed the MFC\nand ATL components for whatever version you are using.\n\n4. Run CMake. Usually you will want to run +cmake ..+, but you might\nwant to change the generator with a special command, for example:\n\n```\ncmake .. -G \"Unix Makefiles\"\ncmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH=C:\\sdk\\x64 -G \"NMake Makefiles\"\ncmake .. -DCMAKE_BUILD_TYPE=MinSizRel -G \"Visual Studio 15 2017 Win64\"\ncmake .. -G \"Visual Studio 16 2019\" -A \"x64\"\n```\n\n5. Run your build tool. On Unix, you probably want to just run +make+.\n\nAs an optional final step, you can create a binary installation\npackage with CPack. For Windows, it will collect all the needed\nruntime libraries and bundle it with the Eternity engine. Some\nexamples:\n\n```\ncpack -G ZIP\ncpack -G DEB\ncpack -G RPM\ncpack -G STGZ\n```\n\nBuilding with CMake (macOS Xcode)\n---------------------------------\nYou need Mac OS X 10.15 or more to run Eternity.\n\nFor macOS, currently only the Xcode generator is supported.\n\n```\ncmake .. -G Xcode\n```\n\nOr preferably use the CMake GUI app.\n\nAfter that, open \"Eternity Engine.xcodeproj\". Inside it you'll have two targets of\ninterest:\n\n1. eternity: the direct game executable. Suitable for debugging the main game.\n2. EternityLauncher: the full app bundle. Suitable for release builds.\n\nNOTE 1: CPack isn't currently supported on macOS for Eternity. Use the Xcode IDE to\nproduce a distributable app bundle.\n\nNOTE 2: As of now, all SDL dependencies are downloaded during the CMake configuration\nprocess. Eternity will _not_ link to whatever you may have installed to a central\nlocation from Homebrew, other package managers or source-built.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteam-eternity%2Feternity","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteam-eternity%2Feternity","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteam-eternity%2Feternity/lists"}