Strata Source

A community-made branch of the Source engine emphasing modern features and development practices


What is Strata Source?

Strata Source began as the Source Engine branch behind Portal 2: Community Edition (P2:CE) in 2020. In late 2020, Momentum Mod joined forces with the P2:CE team with the goal of collaborating on this new branch. Today, a team of almost two dozen developers contribute to Strata Source, with three licensed projects using the engine.

Source is a closed-source engine, and historically speaking Source 1 game developers have been isolated from one another. This has led to a lot of overlapping work, which is especially unfortunate given that we're typically not-for-profit projects, working in our free time. The aim of Strata is to foster more open communication between licensed projects and share engine changes where possible. To be clear, we only work with existing licensees.

We have nothing to do with Source licensing.

This isn't a question, we just want to make it 100% clear. Valve provide a very clear explanation of the Source 1 licensing situation on the Steamworks documentation, we don't have anything to add. We have no say whatsoever in who gets licensed, nor can we offer any kind of advice (legal or otherwise) related to licensing.

Why not Source 2?

Elephant in the room: we don't have access to Source 2! So far Source 2 has had a limited release without a public code SDK, and we have no idea what Valve's plans are in the future. If we did have access we'd certainly evaluate it, but it's not immediately certain whether P2:CE or Momentum could practically be able to, or even want to switch.

Source 2 introduces a new engine infrastructure and new physics library that could negatively impact the game feel that players are used to with Source 1. While having access to both Source 1 and 2 would help us fix this, this would be a monumental effort from developers to get right.

Momentum Mod and P2:CE build on a large amount of existing Source 1 content. There are thousands of maps, models, textures, and other assets that we want to maintain compatibility with. In addition, Source 1 has tried-and-tested tooling workflow, in particular Hammer. Source 2 doesn't currently support Source 1 assets or the aforementioned workflow, so moving to Source 2 would be a monumental effort for creators as well.

We already make use of some modern Valve technologies, some of which are from Source 2. For example, we have access to Valve's Panorama UI framework, originally for Source 2 but backported to Source 1 for CS:GO, and have gotten an enormous amount of use out of it.

Source 2 is clearly modernized and the engine has a lot of impressive features, but we have a sincere interest in the long-term maintenance of Source 1. There are numerous places where more modern technologies can be implemented, the engine and its many bugs can be refined, and piles of tech-debt to extract and demolish; we think this is a worthwhile endeavor!

Where does your name come from?

The name Strata comes from geology, referring to the rocky layers of a planet's crust. The Source Engine is a huge codebase containing decades worth of code, from contemporary titles such as CS:GO and Portal 2, going all the way back to the days of Quake. The engine therefore consists of many layers of systems and features, and with it, many layers of tech debt. Our work is frequently a process of delving deep into the many layers of the engine and modernizing, refactoring, refining and demolishing various sections. So, we felt the analogy to geology and mining was apt!

Wasn't your previous name “Chaos”?

Yep! When the project started in 2020 it was under the name “Chaos Source” with contributors organized under the umbrella of “Chaos Initiative” and the P2:CE team known as “Chaos Studios”. This naming was chosen in very early days of the project, and while it was okay for a time, in 2023 we decided to optimize our branding with input from a wider range of project members and decided on Strata Source.