여러 의미로 중요한 FFF
https://www.factorio.com/blog/post/fff-417
FFF #417 - 우주 시대 확장팩 개발
게시자 Kovarex
2024-06-28
안녕하세요,
요즘은 FFF에서 보통 완성된 내용을 보여드리지만, 저는 개인적으로 항상 커튼 뒤에서 유저들의 혼란을 엿보는 것을 좋아했습니다. 그래서 전반적인 확장팩 개발이 제 관점에서 어떻게 느껴졌는지 일종의 개요를 작성하게 되었습니다. 저와 같은 분이라면 매우 흥미로운 내용이겠죠.
저희의 이야기는 2021년 2월 확장팩 계획을 처음으로 발표한 FFF-365에서 시작됩니다.
1년차 - 2021년 - 골격 만들기
우선 인력 보충에 집중하여 팀을 두 배, 총 30명 가까이로 늘렸으며, 특히 GFX 부서를 2명에서 8명으로 확대했습니다.
계획 세우기 - 수직적 설계
첫 번째이자 필수적인 단계는 전체 확장팩의 넓은 수준의 계획에 대한 긴 토론이었습니다. 최대한 빨리 디자인을 반복하고 싶었기 때문에 '수직 슬라이스'라는 표현을 자주 사용했습니다. 수직 슬라이스는 확장팩을 플레이하는 가장 기본적인 방법으로 피드백을 바탕으로 개선을 시작할 수 있도록 하기 위한 것이었습니다. 돌이켜보면 이것은 매우 좋은 아이디어였습니다.
저희는 Earendel을 고용했고 그는 게임 디자인 부분을 돕고 싶어 했습니다. 모드 제작에 대한 방대한 경험과 전례 없는 생산성 덕분에 그는 항상 행성과 그 메커니즘의 완전한 작동 초안을 매우 빠르게 제공할 수 있었습니다. 가능하면 그는 종종 메커니즘 초안 중 일부를 Lua 스크립트로 작성하여 테스트 가능한 버전을 만들고 C++로 엔진에 제대로 통합하기 전에 승인받기도 했습니다.
Earendel의 초안은 게임플레이의 복잡성 측면에서 항상 지나치게 과했기 때문에 보통 원래 크기의 절반으로 단순화하는 것부터 시작해서 곧 다시 절반으로 축소했지만, 처음부터 새로 만드는 것보다 프로토타입에서 가장 좋은 부분만 남기고 깎아내는 것이 훨씬 쉬웠습니다.
행성
다른 대부분의 것들이 어떤 식으로든 행성과 관련이 있기 때문에 다음으로 할 일은 행성이었습니다. 행성 클래스는 2021년 1월 26일에 만들어졌습니다. 첫 번째 확장팩이 발표되기 며칠 전이었죠. 저희는 항상 다른 행성으로의 이동을 기반으로 하는 확장팩을 만들고 싶었기 때문에 독립적인 표면의 지원은 이미 몇 년 전부터 게임 코드에 포함되어 있었습니다. 여러 모드에서 다수의 표면을 사용하는 경우가 많았기 때문에 이미 충분한 테스트를 거쳤습니다. 덕분에 많은 수고를 덜었지만 독립적인 표면과 행성이 저희 기준에 맞게 잘 작동하도록 조정해야 할 부분이 여전히 많았죠.
이때 저희는 행성을 무작위로 생성되는 무한한 행성 탐험이 아닌, 프로토타입을 기반으로 진행과 밀접한 관련이 있는 행성으로 만들기로 결정했습니다.
그래서 각 행성의 주요 테마를 정하고 특정 레시피를 제작할 수 있는 특정 조건을 지정할 수 있는 기능, 태양 전지판 전력과 같은 요소에 영향을 미치는 행성의 다양한 속성, 장소 간 이동을 편하게 할 수 있는 UI 지원 등 이에 필요한 기반을 마련하기 시작했습니다.
우주 플랫폼
우주 플랫폼은 행성들을 연결하고 다른 게임 하위 시스템과 연관되어 있기 때문에 전체 설계에서 두 번째로 중요한 부분입니다.
고가 철도 (FFF-378)
저희는 처음부터 고가 철도가 확장팩의 일부가 되어야 한다는 것을 알고 있었습니다.
이는 확장팩의 가장 큰 과제 중 하나였기 때문에 최대한 빨리 시작하는 것이 좋다고 생각했습니다.
부패 (FFF-414)
글레바에 필요한 정확한 레시피와 콘텐츠가 무엇인지 몰랐지만, 이미 부패 매커니즘이 필요하다는 것을 알고 있었기 때문에 첫번째 해에 개발도 시작했습니다.
2년차 - 2022년 - 첫 번째 플레이 가능한 프로토타입 출시
1년(!) 후, 또 다른 업데이트 FFF-367이 있었는데, 요약하자면 "게임의 많은 부분을 플레이할 수 있으며, 처음부터 끝까지 플레이 테스트할 수 있는 상태에 가까워지고 있습니다"라는 문구와 함께 "가능한 한 가장 기본적인 방식으로"라는 각주가 붙어 있습니다.
첫 번째 플레이
제가 확장팩 전체를 처음부터 끝까지 플레이하는 용감한 시도를 처음 시작한 것도 이 무렵이었으니 그 말이 사실이었죠.
플레이 과정은 7개월에 걸쳐 진행되었고, 초반에는 실제로 처음부터 끝까지 플레이하는 것이 불가능했습니다. 하지만 게임을 진행하면서 개별 기능 콘텐츠 사이의 모든 공백을 메우면서 밀어붙이자는 아이디어가 떠올랐죠.
제가 시작할 당시에는 행성 물류 부분이 아직 작동하지 않았기 때문에 우주로 가기 전에 공장을 확장하고 다른 것들(고가 철도 및 품질 시스템 등)을 테스트해야 했습니다.
나우비스에서 더 크게 건설하고 고가 레일과 열차 시스템을 더 많이 테스트하고 싶었기 때문에 개선에 더 의욕이 생겼습니다. 이때 저는 열차 인터럽트를 만들고 Klonan은 열차 그룹(FFF-389)을 만들었습니다.
우주 물류
첫 번째 버전의 우주 물류는 우주 플랫폼에 우주 플랫폼 이젝터라는 서로 관련성이 없는 건물이 여러개 있었기 때문에 사용하기가 정말 끔찍했습니다.
각 이젝터는 독립적인 인벤토리와 요청을 가진 개별 건물이었습니다.
이 작업은 나중에 FFF-381에서 설명하는 공간에 물건을 공급하는 방식과 비슷하게 고통스러웠습니다.
그래서 엉망진창이었지만 그래도 우리가 실제로 플레이할 수 있는 것이었죠.
보세요, 이제 엔진에 '불꽃'이 생겼습니다.
행성 지나가기
불카누스는 다른 행성에 비해 구체적인 기술 요구 사항이 많지 않았기 때문에 가장 먼저 테스트한 행성이었습니다(농사가 있는 글레바와 번개가 있는 풀고라는 아직 준비되지 않았었죠).
임시 고가 철도 그래픽이 포함된 임시 불카누스.
글레바는 두 번째였습니다. 착륙 패드와 관련하여 모든 착륙 패드가 개별적으로 우주에서 화물을 수용하는 원래 설계의 문제점 중 하나를 볼 수 있습니다. 여기에는 다음과 같은 세 가지 문제가 있었습니다:
- 각 아이템 요청을 개별적으로 관리하는 것이 매우 번거로웠습니다.
- 착륙 패드가 아직 물류 공급을 하지 않았기 때문에 모든 곳에서 착륙 패드 → 수동 공급 상자의 패턴이 반복되는 경향이 있었습니다.
- 아무 곳에나 착륙 패드를 만들 수 있었기 때문에 우주에서 아이템을 필요한 곳에 떨어뜨릴 수 있다는 것은 너무 유치한 느낌이 들었습니다. 이것이 바로 이제 행성당 확장 가능한 착륙 패드가 하나만 있는 이유 중 하나입니다.
초기 착륙 패드가 있고 수확 가능한 식물 종류가 너무 많은 임시 글레바.
풀고라는 세 번째로 방문한 행성으로, 원래 게임과 같은 디자인으로 제가 회의감을 느끼기 시작한 곳입니다(나중에 자세히 설명하겠습니다).
임시 고가 철도 그래픽과 바닐라 같은 광석 채굴을 갖춘 임시 풀고라.
간단히 말해서, 7개월 후 세이프 플레이타임이 370시간(!)이 지나고 나서야 드디어 마지막 화면에 도달할 수 있었습니다.
그 후 얼마 지나지 않아 사무실 랜 파티를 열어 멀티플레이를 시도하면서 더 많은 피드백을 받고 테스트했습니다. 월요일부터 금요일까지 플레이했는데, 마지막 날에는 지쳐서 마지막 행성에 간신히 도착했고 결국 다 끝내지 못했습니다.
첫 번째 피드백 및 결론
처음으로 확장팩을 완성한 것은 좋은 일인 동시에 나쁜 일이기도 했습니다.
이제 기반이 마련되었으니 이제부터는 더 나아질 수 있습니다. 그래픽, 사운드, 음악이 업데이트될 것입니다. 새로운 시스템의 UX가 개선되고 게임의 전반적인 밸런스가 맞춰질 것입니다.
확장팩 컨셉에 대해 심각한 의구심이 들었고, 대부분 FFF-399에 설명되어 있었죠. 꽤나 나빴습니다.
수많은 문제가 있었고 대다수는 명확한 해결책이 있었지만 일부는 다른 문제였습니다:
- 너무 길었습니다(개발중인 문제를 고려하더라도 370시간은 너무 길었습니다).
- 너무 반복적이었습니다(풀고라의 번개 및 기타 변경 사항이 적용되기 전의 일입니다).
- 일부 메커니즘은 확장 시 사용하기에 너무 투박하거나 번거로웠습니다(우주 플랫폼 물류, 기차 등).
- 해야 할 일의 규모가 너무 커서 너무 힘들게 느껴질 때가 많았습니다.
결론은 나머지 개발에 대한 매우 구체적인 가이드라인을 도출해냈죠. 다음과 같습니다:
- 게임 진행 속도가 빨라져야 합니다. 대부분 재료 비용을 낮추고, 불필요한 레시피 단계를 줄이며, 삶의 질을 높이는 방식으로 진행합니다.
- 행성별 게임플레이는 더 독특해야 합니다.
풀고라 행성의 컨셉 변경과 함께 불카누스는 구리/철/석탄 채굴을 하지 않고 용암에서 기본 자원을 얻을 수 있도록 변경되었고, 글레바에서 수확하는 식물의 종류는 12개(!)에서 2개로 줄였습니다. 또한 행성별 생산물을 다른 곳으로 수출할 수 있도록 하여 확장의 동기를 크게 높였고, 강력한 기계인 만큼 진행 속도와 보상을 더 빠르게 만들 수 있었습니다.
3년차 - 2023년 - 갈고 닦기
게임을 처음부터 끝까지 다시 한 번 플레이했는데 240시간이 소모되었고 여전히 너무 많은 시간이 걸렸습니다. 그러나 이 플레이에서는 분당 100만 과학 (SPM)을 목표로 거의 모든 것을 전설적인 품질로 얻으려고 공장 규모를 상당히 거대하게 만들었다는 점을 고려해야합니다.
아직 100만 SPM에 도달하지 못했지만 출시 전까지는 도달할 수 있을지도 모르겠네요 :).
전반적으로 기존 370시간보다 대폭 짧아졌고, 무엇보다도 더 재미있게 느껴졌습니다.
대부분의 작업은 수천 가지의 사소한 부분으로 이루어졌지만, 몇 가지 중요한 변경 사항을 말씀드리겠습니다.
새로운 기능 설명하기
저희는 게임의 새로운 부분을 더 잘 이해할 수 있는 방법이 필요하다는 것을 깨닫고 팩토리피디아를 만들었습니다(FFF-397).
메커니즘이 안정화되면서 새로운 팁과 요령을 다루기 시작했고, 그 과정에서 전반적인 기능이 개선되었습니다.
이제 시뮬레이션에서 GUI 상호작용을 보여줄 수 있게 되었습니다(실제로 게임에서 완전히 독립된 두 개의 활성 UI 상태가 있는데 하나는 시뮬레이션에, 다른 하나는 플레이어가 제어하는 상태입니다). 또한 훨씬 더 강력한 스킵 트리거 시스템을 만들었고 거의 모든 팁 트리거를 더 정확하게 재검토했습니다.
게임플레이 및 UI
글레바에서 나오는 적의 첫 번째 피드백 작업을 완료했습니다(추후 공개 예정입니다). 확장팩에서 점점 더 많이 사용됨에 따라 원격 뷰어를 더욱 개선했습니다.
물류 그룹이 리팩터링된 우주 물류 버전에 제대로 통합되어 수입 행성 -> 플랫폼 -> 수출 행성 시스템에서 필요한 사항을 한 번의 사용자 작업으로 업데이트할 수 있게 되었습니다.
소행성 수집기
소행성 수집기(FFF-385)를 완성하는 것은 꽤나 큰 일이었는데, 그 이유는 로직이 게임 성능에 미치는 영향을 최소하하는 방향으로 매우 신중을 기해야 했기 때문입니다.
게임 내에서 이를 확인하는 것은 플랫폼의 느낌에 있어 큰 이정표 중 하나였습니다.
그래픽
행성들의 모습이 점점 공식적인 모습을 갖춰가고 있었죠.
우주 플랫폼은 더 이상 회색 사각형이 아니게 되었습니다(FFF-381).
새로운 효과의 사운드는 물론, 기존에 있던 오래된 것들도 많이 개선되었습니다.
대부분의 기계가 원래의 분위기대로 완전히 애니메이션화된 최종 버전이 되었습니다.
출시 전까지 매주 충분히 보여줄 수 있다고 판단하여 주간 FFF를 재개한 시기이기도 합니다.
발표할 수 있도록 마무리 작업에 동기를 부여하는 데 도움이 되었습니다.
4년차 - 2024년 - 함께 만들어가는 것들
4년차에 저희는 두 번째 게임 디자인 패드백 작업을 마쳤습니다.
점점 더 많은 팀원들이 플레이를 완료했고, 점점 더 매끄럽게 진행되었습니다.
그 후, 저희는 더 많은 단축을 시도했고, 그 결과 일주일 전에 진행했던 두 번째 랜파티 플레이를 4일째 되는 날에 무리하게 스피드런을 시도하지 않고도 끝낼 수 있었습니다.
이는 2년 전에 만든 가이드라인을 따른 것이 성과를 거뒀다는 분명한 신호였습니다. 그리고 확장팩을 더 빨리 끝낼 수 있었을 뿐만 아니라 더 재미있게 플레이할 수 있었습니다.
발견된 가장 큰 문제는 플레이 마지막 날에 60 UPS를 유지하는 상태에서 모든 사람이 연결된 상태에서 멀티플레이를 계속할 수 없어서 모든 사람의 컴퓨터가 따라갈 수 있도록 게임 속도를 85%까지 낮춰야 했습니다.
현재 상태
유체 시스템의 변화(FFF-416)와 주조소(FFF-387)가 결합되고 용융 금속이 있는 기차는 철/구리 판에 비해 아이템 밀도가 훨씬 높기 때문에 현재 바닐라의 후반 게임과 매우 다른 후반부 공장의 모습을 만들 수 있습니다.
주조소는 그 자체로 매우 강력하고 건설 방식을 바꿀 수 있다는 점이 마음에 들지만, 방해석은 불카누스에서만 유일하게 채굴할 수 있는 행성이기 때문에 이를 꾸준히 공급받을 수 있는 경우에만 잘 작동합니다.
이것은 "왜 철이 없는가"와 같은 문제를 조사하는 것이 다른 행성으로까지 이어질 수 있는 예입니다. 정말 마음에 듭니다!
방해석의 사용, 높은 채굴 생산성, 주조소를 통해 채굴 전초기지를 용융 금속 수출공장으로 직접적으로 바로 전환하는 것이 매우 효율적입니다.
주조소와 전자기 플랜트는 최종 후반부 게임에서 좋은 친구입니다.
각 출력은 8개의 스택(FFF-393)으로 쌓인 초록 벨트이므로 기존의 완전히 압축된 85.3개의 파란 벨트 분량의 생산과 동일합니다.
이것이 바로 전설적인 품질의 힘입니다 .
일반적으로 주조소 및 전자기 플랜트와 결합된 건물이 하나 더 있는데, 이 건물은 나중에 다룰 예정입니다.
생산 속도가 빨라지면 철도 교차로 설계에 문제가 생길 수 있겠네요.
석탄과 돌의 낮은 스택 크기와 이를 녹일 수 없다는 점은 어떤 면에서 그 처리 과정을 특별하게 만들죠.
불카누스의 초기 단계에서는 단순한 격자형 그리드 설계도를 밀어 넣을 수 없기 때문에 복잡한 지형과 결합하여 독특한 전초 기지를 만들수 있습니다.
마지막 사진을 보면 게임의 마지막에 가능한 규모를 엿볼 수 있습니다.
이 대량 투입기(원래 묶음 투입기였던 것)는 전설적인 묶음 투입기(FFF-393)를 만들기 위한 재료로 다른 행성으로 대량 수송되고 있습니다.
세 번째 피드백
지금 바로 세 번째 피드백이 진행되고 있습니다. 지난 랜파티에서 받은 방대한 양의 피드백에 초점을 맞추고 있습니다.
두 가지 주요 카테고리에 초점을 맞출 예정입니다:
- 버그, 삶의 질 기능 및 밸런싱.
- 최적화. 우주 시대 확장팩에서는 공장이 점점 더 커지고, 이를 원활하게 처리하기 위해 프로그래머의 마법이 필요합니다.
상황이 안정되고 있고 현재 게임 상태에 꽤 만족하기 시작했기 때문에
우주 시대 확장팩의 출시에 대한 구체적인 날짜를 알려드릴 준비가 되었습니다...
다음 주에 알려드리겠습니다 :)
언제나 그렇듯이 평소와 마찬가지로 여러분의 생각을 알려주세요.
고가 철도 교차로 쌀것같다..
[불카누스의 초기 단계에서는 단순한 격자형 그리드 설계도를 밀어 넣을 수 없기 때문에] 이거 높이 주는것처럼 쓰는 절벽을 쉽게 못없앤다는 말이지??
절벽도 있고 용암도 있고
교차로진짜존나야하네
1M spm ㄷㄷ
생각보다 dlc 빨리 나올 것 같네 크탐모 엔딩보려면 한참 남았는데 시발
서프라이즈로 한달내에 나온다 하면 좋겠누
와 진짜 미쳤다 벌써부터 갤망호 상주할 생각에 기대된다 역시 팩토리오다
개멋있다 진짜 자랑스럽다 - dc App
피드백 나도 하고싶은데
공장겜 고트 원조의 원조 캬
정리해서 보니까 그냥 팩토리오2네
섹
스
백만 SPM ㅋㅋㅋㅋㅋ
어서 나오너라~
백만 spm이라고?? 10k도 쉬운게 아닌데??
와 이번 개발일지 존나 눈물 난다 읽기만 해도 내가 같이 막 개발한 것 같고 같이 힘들어하는 것 같고 늘 FFF보면서 재밌게 읽었는데 완결느낌난다
다음주 ㄷㄷ
시발 이랳ㅈ는데 갑자기 다음 FFF 에서 DLC 출시날짜는.... 바로 내일입니다. 이러면 나 진짜 기절해버릴듯. - dc App
그럴리 없으니 안심하렴
내 꿈을 짓밟지 말아줘 ㅠㅠ - dc App
그와중에 에란델 시작부터 급발진하는거 그냥 개웃기네
에란델 대체 일을 얼마나 잘하는거임 ㅋㅋㅋ 고용인 만족도 최상
백만 spm - dc App