2003년 출시 이후 20년 넘게 파이썬 2.7(Python 2.7) 기반으로 운영되어 온 인기 MMORPG EVE 온라인(EVE Online)이 대규모 파이썬 3(Python 3) 전환 프로젝트를 시작했습니다. 개발사 CCP 게임즈(CCP Games)는 240만 줄, 약 2만 개 파일에 달하는 방대한 코드베이스를 파이썬 3로 옮기는 작업에 착수했으며, 첫 변경 사항을 테스트 서버인 싱귤래리티(Singularity)에서 검증한 뒤 메인 서버 트랭퀼리티(Tranquility)에 배포했습니다. 이는 게임의 미래를 위한 중요한 인프라 개선 작업으로 평가됩니다.
EVE 온라인은 출시 당시 스택리스 파이썬(Stackless Python)을 기반으로 개발되어 단일 서버 노드에서 수천 명의 플레이어를 처리하는 데 기여했습니다. 하지만 파이썬 2.7은 2020년 공식 지원이 종료되었음에도 불구하고, 기존 시스템의 안정성 때문에 대규모 마이그레이션의 위험을 감수할 필요가 크지 않아 전환이 미뤄져 왔습니다. 최근 파이썬 3의 성능 향상과 현대적인 개발 도구 생태계가 크게 발전하면서, 더 이상 파이썬 2에 머무는 것이 개발 효율성과 게임 성능 개선에 걸림돌이 된다는 판단 아래 전환을 결정한 것입니다. 특히, 파이썬 3는 텍스트 처리의 일관성을 높이고 정수 크기 제한을 없애는 등 언어의 핵심 요소를 단순화하여 개발 편의성을 높입니다.
이번 마이그레이션은 여러 단계로 진행됩니다. 1단계에서는 기존 파이썬 2.7 코드를 파이썬 3에서도 호환되도록 만드는 작업에 집중합니다. 파이썬-퓨처(Python-Future)와 같은 커뮤니티 도구를 활용해 오래된 구문을 자동으로 수정하고, 두 버전 모두에서 컴파일될 수 있도록 변경합니다. 초기 검사 결과, 전체 파일의 95.9%가 이미 양쪽 버전에서 컴파일되었으며, 파이썬 3가 거부하는 구문은 약 3,300줄에 불과했습니다. 하지만 두 버전에서 컴파일은 되지만 동작 방식이 달라지는 약 2만 줄의 코드는 사람이 직접 검토해야 합니다. 특히 나눗셈 연산의 결과가 파이썬 2와 3에서 달라 피해량, 게임 내 화폐(ISK), 좌표 등 핵심 요소에 영향을 줄 수 있어 신중한 접근이 필요합니다.
이번 파이썬 3 전환은 단기적으로 플레이어가 체감할 수 있는 큰 변화는 없을 것입니다. 하지만 장기적으로는 게임의 안정성과 성능을 크게 향상시킬 기반을 마련하게 됩니다. 더 빠른 인터프리터(interpreter)와 현대적인 디버거(debugger), 프로파일러(profiler) 등의 개발 도구를 활용하여 버그를 더 빠르게 발견하고 수정하며, 새로운 기능을 플레이어에게 더 신속하게 제공할 수 있게 될 것입니다. 이는 EVE 온라인이 앞으로 20년 이상 성공적으로 서비스될 수 있는 중요한 기술적 토대가 될 것으로 기대됩니다.