Skip to content
Tech News
← Back to articles

EVE Online moves to Python 3

read original more articles
Why This Matters

The transition of EVE Online's codebase from Python 2 to Python 3 marks a significant upgrade that will enhance game performance, enable faster bug fixes, and support new features, ensuring the game remains competitive and reliable for players. This move reflects the industry's broader shift towards modern, supported programming languages to improve software longevity and user experience.

Key Takeaways

Capsuleers,

EVE continues to evolve, as a part of the EVE Evolved initiative, and it is time to cast the spotlight on the code itself!

Underneath every gate jump, market order, and fleet fight in EVE Online, there is a very large amount of Python. It has run New Eden for more than two decades and now begins its transition to Python 3. For you, that means better tools to fix bugs sooner, room for new features, and a faster EVE over time.

The definition of success for this migration is simple: it should be completely unnoticeable, aside from the occasional moment when something runs more smoothly.

Many of you have already tested our first steps on Singularity, and those changes were deployed today. This is only the beginning of a long road ahead.

A Codebase Older Than Some of You

EVE launched in 2003, built on Stackless Python, a version of Python whose lightweight "tasklets" let a single server node juggle thousands of pilots at once. Fenris Creations did not just adopt Stackless; it became one of its most significant contributors.

Some of you may remember upgrading to Stackless Python 2.5 in 2007 , then to Stackless Python 2.7 in 2010 . That was the last time EVE changed its Python version. Python 2.7 reached official end of life back in 2020, the rest of the software world moved on, and a whole generation of capsuleers has been born, gone to school, and started flying frigates while EVE stayed on the same language version. It was reliable enough that a large, potentially risky migration never justified itself, until now.

Sixteen years on the same version says a lot about how well it worked. The Carbon engine helped massively, but it, too, has moved forward now !

Why Python 3? Why Now?

... continue reading