성능 및 안정성

최근 커뮤니티에서 게임 성능과 안정성이 많은 화제가 되어, 몇가지 주요 이슈의 현재 상태에 대한 업데이트와 작업 진행 사항에 대해 안내 드립니다. 주요 이슈 중 많은 문제들은 아직 원인을 파악하지 못했으며 추후 더 많은 정보로 업데이트 하겠습니다. 게임의 안정성 관련 중요한 문제라고 생각되어 해당 게시글을 주말 전에 공지하여 여러분께 안내 드리는 것이 중요하다고 생각했습니다.

역병 걸린 지도 인스턴스 서버 성능

인스턴스 서버 성능에 대해 얘기할 때 보통 서버 머신 중 하나에서 실행되는 게임 서버 소프트웨어의 성능이라고 말합니다. 일반적으로 CPU 코어 당 여러 개의 인스턴스를 처리할 수 있으며 프레임에 대한 작업을 실행하는데 1 ms(천분의 일초)가 걸립니다. 하지만 무리한 게임 진행 환경에서 전체 CPU 코어를 33ms(서버측 프레임 시간) 이상으로 계산할 경우 인스턴스 서버 속도가 느려질 수 있습니다.

메마름의 시대 리그에는 많은 몬스터 들이 있으며 많은 생명을 가지고 있습니다. 일반적으로 게임 진행 중 몬스터 무리를 공격 할 때 약한 몬스터 들은 빠르게 제거 후 강한 보스 몬스터 일부만 남기는 것입니다. 그러나 메마름의 시대에서는 약한 몬스터 들이 더 질긴 생명력을 지니고 있습니다. 패스 오브 엑자일은 아시다시피 매우 복잡한 스탯 시스템과 캐릭터가 가질 수 있는 수만개의 다른 값들이 있습니다. 이 중 대부분은 전투 계산에 사용되며 수십 개의 버프, 디버프 그리고 몬스터를 공격할 때 적용됩니다. 몬스터가 많을수록 공격에서 더 오래 살아남을 수 있고 전투 계산 시간이 더 길어지게 됩니다. 역병 콘텐츠는 일반 콘텐츠보다 게임진행 시 서버에서 훨씬 더 어려움이 있습니다.

역병 걸린 지도에서 서버 측 성능 관련 문제가 있음을 인지하여 서버를 추가 할 경우 해당 문제가 개선될 수 있는지 여부를 확인 했었습니다. 확인 결과 게임 인스턴스 수가 실제 게임 서버와 다르며 인스턴스 당 프레임 저하 수치가 과부하 된 서버에서 더 높지 않은 것으로 나타났습니다. 이는 서버 자체에 많은 인스턴스가 있는 것이 아닌 전체 CPU 코어를 33ms 이상 사용하는 특정 인스턴스와 관련이 있음을 알 수 있습니다. 해당 문제는 많은 자본/서버를 투자해도 해결되지 않습니다.

문제를 해결하기 위해 게임 진행에 영향을 주지 않으면서 계산의 복잡성을 줄일 수 있는 방안을 찾는 작업중에 있습니다.

소환수 성능

저희는 3.8.0의 소환수 빌드 인기가 유저 분들이 게임 진행중 겪는 성능 문제의 발생 원인이라고 생각합니다.

소환수 들은 몬스터이며 앞서 언급한 모든 문제가 이에 해당됩니다. 소환수 들은 오래 살아남으려는 경향이 있으며 화면에도 많은 수가 존재하고, 일반적으로 유저에게 적용되는 다양한 버프와 그래픽 효과를 갖고 있습니다.

군단 리그 이후 패스 오브 엑자일에선 근접 전투 계산 방식 관련 많은 변경사항들이 있었습니다. 공격 사거리를 좁혀 올바른 게임진행을 하는 느낌을 갖도록 의도 된 변경사항은 경로 찾기 속도를 늦추고 일부 성능 저하를 발생시키는 부작용이 있었습니다. 그 당시엔 소환수 관련으로 소모될 추가 비용이 얼마나 될 지 알지 못했습니다.

3.8.0 출시로 소환수 빌드의 인기가 높아짐에 따라 소환수 유저와 게임 진행을 하거나 파티를 하는 유저들에게는 성능 관련 큰 문제가 되었습니다.

해당 문제는 현재 가장 최우선으로 두고 확인중인 문제입니다.

그래픽 드라이버 충돌

특정 콘텐츠(ex:배신 조사 임무) 진행 중 일부 유저분들의 게임 화면이 일시적으로 검은 색으로 표시되었다가 “지도” 오류가 발생하는 그래픽 드라이버 충돌 문제가 있습니다. 436.30을 포함한 최신 버전의 Nvidia 드라이버에 문제가 있음을 확인했습니다. 419.17 Nvidia 드라이버에서는 해당 문제를 재현 할 수 없었습니다. 패스 오브 엑자일 진행 중 충돌을 유발하는 원인에 대해 아직 확인되지 않았지만, 어떤 게임을 진행하더라도 그래픽 드라이버는 절대 충돌되지 말아야 합니다. 현재 Nvidia드라이버 관련으로 확인 중에 있습니다.

(일부 AMD 사용 유저들도 비슷한 문제를 제보했지만 재현 할 수 없었으며, 같은 문제로 생각되지 않습니다.)

인스턴스 충돌

인스턴스 충돌은 게임 인스턴스 서버가 게임 진행 중 충돌 및 접속 종료가 되어 로그인 화면으로 돌아가는 경우입니다. 메마름의 시대 출시 이후 다양한 경우의 인스턴스 충돌을 해결하는 많은 핫픽스들을 배포했으며 충돌 횟수는 많이 감소되고 있습니다. 금일 잔여 인스턴스 충돌을 해결하는[핫픽스]를 배포했습니다. 남은 문제들을 해결하기위해 우선적으로 작업중에 있습니다.

클라이언트 메모리 사용량

게임 과부하로 인해 메모리 사용량이 비정상적으로 높았습니다. 이로 인해 성능 문제가 발생할 수 있어 확인 중에 있습니다.

엔진 vs 게임플레이 성능

최근 패스 오브 엑자일의 엔진이 느려지거나 최적화가 충분히 되어있지 않다는 비판적인 커뮤니티 게시물 들이 있었습니다. 저희는 엔진 개선하기위해 몇 년을 보냈으며 업데이트에 대한 준비가 된 후 배포 했습니다. 현재 패스 오브 엑자일의 엔진은 모던하고 간결하며 빠릅니다. 그러나 아직 다양한 상황에서는 게임의 성능이 떨어질 때도 있습니다.

패스 오브 엑자일이 겪고있는 거의 모든 성능 관련 문제는 우리가 한 결정 및 게임플레이 시스템과 관련이 있습니다. 앞서 말씀드린 이유들로, 메마름의 시대 리그는 성능 관련 문제가 있는 리그입니다. 이런 유형의 리그를 시도하기 위해 신중히 결정을 내렸었으며 해당 콘텐츠를 진행할 때 발생할 수 있는 성능 저하에 대해 비판을 하시는 것 이 적절하다고 생각합니다. 이번 콘텐츠가 성능 저하가 될 수 있다는 것을 전혀 생각하지 못했으며, 해당 문제를 해결하기 위해 노력하고 있습니다.

어떤 엔진을 사용해도 패스 오브 엑자일은 현재 상태에서 너무 많은 것들을 서버에서 계산하고 클라이언트에서 랜더링 하는 작업 들로 인해 느려질 것입니다.

우리가 엔진과 게임 플레이 시스템의 차이점을 이야기 하는 것은 방어적인것처럼 보일 수 있지만 엔진은 영원히 패스 오브 엑자일의 일부이며 게임 플레이 코드가 추가되거나 제거될 것이기 때문입니다. 저희는 리그가 성능 문제를 갖고 있길 원하지않으며, 향후 콘텐츠 개발에 대한 방향을 알려줍니다.

콘솔 성능

말씀드린 문제들은 콘솔 플랫폼에서 하드웨어 제한으로 인해 훨씬 더 안좋은 점들이 있습니다. 예를 들어 게임 인스턴스 서버가 역병 걸린 지도에 의해 과부하 되는 상황에서는 콘솔의(비교적 느린) CPU도 클라이언트 계산을 수행하여 과부하 됩니다. 이 문제는 해결 되는대로 업데이트하여 안내 드리도록 하겠습니다.

해당 공지에 해결 방법에 대한 명확한 단계가 포함되어 있지않아 죄송한 말씀을 드립니다. 성능 관련 문제에 대한 현재 상황을 주말 전에 여러분께 알려드리고 싶었습니다. 현재 가장 높은 우선순위로 작업을 하고 있으며, 차주 문제 해결 방안과 함께 찾아 뵐 수 있도록 하겠습니다.

글 작성자: 
카카오게임즈

게시판 글 신고

신고 계정:

신고 유형

추가 정보