안녕하세요, 시스템 디지이너 Alex(알렉스)입니다. 오늘은 1.6에서 이민이 어떻게 변하는지 알려드리려 왔으며, 실제 개발자 하나를 데려와서 코드를 실제로 보여드리겠습니다.
변화의 목적
이번 패치의 목적은 이민을 체감되도록 완전히 바꾸려는 것이 아닙니다. 반대로, 패치 후에도 대동소이한 경험을 하는 것이 저희의 목표입니다. 이번 패치의 목적은 성능 개선입니다. 여러분의 후반 렉에 대한 걱정을 적극 반영하였습니다. 그 방안으로는 단순히 코딩을 조금 더 최적화하는 것 이외에도 게임 디자인을 조금 더 성능-친화적이도록 새로 하여 메커닉을 바꾸면서도 체감상 바뀌는 것이 없도록 고치는 해결책이 있습니다. 또한, 저희가 미래에 유지하고 수정하기 쉽도록 하기 위함이기도 합니다. 마지막으로 이번 기회에 QoL/UX 개선을 하는 것까지 목표입니다.
개요
현재 이주는 '시장내 이민'과 '대규모 이민'으로 이원화되어있습니다.
시장 내 이민은 시장 내에서만 일어나며, 경제적인 요인이 주를 이룹니다. 대규모 이민은 인구층이 다른 시장으로 이동하도록 하며, 문화적인 면에 초점이 맞추어져있습니다. 인구층이 어디로 얼마나 갈지는 주의 이민 선호도를 기반으로 합니다. 이민 선호도는 일자리, 남은 땅, 무역 중심지등을 반영하여 설정됩니다. 이민 선호도의 절댓값이 중요한 것이 아닌, 두 주 간의 차이가 중요한 것입니다. 주가 많은 이민자를 받아들일 경우, 이민 선호도는 꽤 빠르게 내려갈 수 있음에 유의하세요.
앞으로 '인구층(팝)', '인구층의 수(팝의 수)', '인구'라는 용어를 만나게 되실 것입니다. 인구층이란 같은 일자리, 같은 문화의 사람들을 말합니다. 만약 철 광산에 스웨덴 엔지니어도 있고 노르웨이 엔지니어도 있으면 엔지니어 인구층의 두 개가 되는 것입니다. 각 팝에는 인구가 있습니다. 예를 들어 철 광산의 스웨덴 엔지니어의 인구는 5000명이라고 할 수 있습니다.
바뀐 점
팝 고르기
원래 이민 메커닉은 모든 팝을 일정 비율로 조금씩 떼어 와서 보내는 것이었습니다. 성능 면에서 말하지면 한 팝이 여러개가 되는 것이기 때문에 굉장히 불리했습니다.
새로 바뀐 이민 메커닉에서는 최대한 팝을 '잔돈 없이 통째로' 팝을 옮기는 것에 주력했습니다. 이제 가장 작은 팝부터 순서대로 이주하며, 이주한 팝들은 기존 팝들과 합쳐집니다. 여전히 팝을 쪼개는 일이 없지는 않지만, 훨씬 덜 쪼갭니다.
이민 대상지
원래는 팝들은 선호도가 높은 곳이라면 어디든지 이민해갔습니다. 그 결과 팝들은 많은 주로 여기저기 퍼졌고, 팝을 여러개로 쪼개는 데 일조했습니다.
새로운 메커닉에서 팝들은 해당하는 문화의 '문화 공동체'라는 것으로만 이민할 수 있습니다. 여러개의 이주 가능한 문화 공동체가 있다면 가장 선호도가 높은 주 몇 개로만 한정지어서 이민합니다. 각 이민 대상지가 받는 이민자의 수는 선호도에 따라 나누어집니다.
문화 공동체
1.5 오픈베타에 참여하셨다면 우리가 이러한 변화를 몇가지 시도했다는 것(그리고 팝들이 이민법을 무시하는 등 흥미로운 버그)을 기억하실 것입니다. 문화 공동체란 사람들이 자기네 문화의 사람이 이미 있는 곳으로 이민을 하려는 성향을 게임으로 표현한 것입니다.
문화 공동체는 해당 문화의 팝이 하나라도 있는 모든 주에 존재합니다. 추가적으로, 자신의 주 중 하나에 같은 시장 내 문화의 문화 공동체가 새로 생겨날 확률이 매달 존재합니다. 만약 새로 생겨난 문화 공동체에 해당 문화 사람들이 아무도 오지 않는다면, 그 문화 공동체는 몇 주 후 자동으로 사라집니다.
성능에 실제로 영향을 주는 요인은 인구가 아니라 팝의 수라는 점에 주의하세요. 이민 메커닉이 더 [문화적으로] 균질한 결과를 내놓는다면, 다른 메커닉을 건드리지 않고도 성능을 향상할 수 있습니다. 우리가 자주 받은 피드백중에는 '너무 문화적으로 균질하다'가 아닌 '너무 말도 안되는 문화가 이민가서 섞여있다'가 있습니다. 이 새로운 변화는 각 주에 존재하는 문화의 수를 줄이는 데 도움을 줄 것입니다.
대규모 이민
원래는 대규모 이민이 시장 내 이민과 비슷하게 따라갔습니다. 1.6에서는 이제 별도의 조건 하에서 동작합니다. 새로운 메커닉에서 대규모 이민이 생겨날 때는 다음과 같은 과정을 거칩니다:
1. 각 문화에 대해 그 문화의 본토를 소유한 국가를 하나씩 돌며 대규모 이민이 소환될 생겨날 확률을 계산합니다. 이 단계에서 대규모 이민의 조건을 충족하지 못하는 국가들이 걸러집니다.
2. 조건을 충족하는 국가들 중 하나를 대규모 이민의 시발점으로 선택합니다.
3. 모든 국가에 대해 해당 문화의 대규모 이민 선호도를 계산합니다. 이는 대상 국가의 주들의 이민 선호도의 평균입니다.
4. 가장 높은 국가를 정합니다.
5. 대상 국가의 주를 하나씩 돌며 가장 높은 이민 선호도를 가진 주를 고릅니다.
위 과정을 거친 후 2단계의 국가로부터 5단계의 주로 대규모 이민을 생성합니다.
이후 시장 내 이민과 마찬가지로 작은 팝부터 하나씩 목적지로 보냅니다. 너무 많은 팝을 보내서 출발 주가 비어버리거나 도착 주가 미어터지는 일이 없도록 얼마나 보냈는지 확인합니다.
결과
이러한 변화들이 어떻게 성능에 영향을 주었을까요? 팝의 수를 줄였을 뿐만 아니라, 각 주에 있는 팝의 수가 줄어든 결과 건물의 수도 줄어들었습니다.
UX 개선사항
이민을 고치면서 UX 역시 플레이어들이 더 이해하기 쉽게 고쳤습니다. 기존에는 중요도에 비해 플레이어들에게 숨겨진 정보들이 너무 많았습니다. 제가 마음에 드는 부분은 이제 각 주가 대규모 이민을 받을 수 있는지 여부가 분명하게 표시된다는 것입니다.
대규모 이민 대상 역시 개념 설명 창을 새로 만들었습니다.
이러한 제한조건은 새로 도입한 것이 아니라 원래 있던것입니다. 각 주가 대규모 이민을 받을 수 있는지 일일히 확인하는 것은 어려울 수 있기 때문에 다음과 같은 지도를 만들었습니다.
어느 국가가 대규모 이민을 받을지 나타내는 지도입니다:
이 지도는 대규모 이민 선호도라는 새로운 개념 설명창과 함께합니다.
게임에 사람들이 실제로 어디로 이민가고 있는지 나타내는 지도가 없는거같아서 하나 추가했습니다.
또한 기존 이민 선호도 지도는 이제 전 세계가 아닌 당신 시장 내의 주만 표시합니다. 이는 시장 내 이민과 대규모 이민의 차이를 이해하기 쉽게 할 것입니다.
모더들을 위해 이 모든 것은 다 자유롭게 설정할 수 있습니다. 1.6이 나오면 모드를 업데이트해야한다는 점을 환기시킬 겸:
다음에 또 만나요
오늘은 이상입니다. 3월 6일에 1.6 업데이트가 나오니 기다리세요. 다음 개발일지(2주 후)에 전체 체인지로그[변경점]가 공개됩니다.
-------------------------------------------------------------------------------------------------
역자입니다. 언제나 그렇듯이 '[ ]' 내의 내용은 제가 추가한 것입니다.
이번 변경점에서 가장 환영할 점은 (실제로 얼마나 나아질지는 나와봐야 알) 성능 개선보다도 어느 주로 이민을 갈 지 더 지도에 잘 표시된다는 점일겁니다. 빅토2할때 가장 재밌는 점 중 하나가 유럽에서 전쟁날때마다 미국으로 이민자 쏟아지는거를 이민 지도에서 구경하는 것이었는데 이제 빅토3에서도 어느 정도 볼 수 있지 않을까 싶습니다.
첫댓글 인터페이스가 좀더 좋아진 것 같긴 한데... 가면갈수록 게임에서 시뮬레이터가 되어가는 갓겜...보다 갓시뮬레이터... 정말 개발방향이 이렇게 게임 알고리즘을 바꾸는데 치중하는 전략게임도 드물거 같네요.
번역 감사합니다!
제 눈에는 메커닉을 덜 만든 미완성인 상태로 출시한 후 외양간 고치는 것으로 보입니다
성능개선으로 이민 팝 정리를 한다니 기쁘네요