다시 한번 매우 중요한 fff
https://www.factorio.com/blog/post/fff-430
FFF #430 - 유체에 익사하기
게시자 raiguard
2024-09-27
안녕하세요,
오늘 우리는 다시 한번 유체의 세계로 뛰어듭니다.
지난 시간 이후
지난 6월, 유체 시스템 2.0(FFF-416)을 공개한 바로 그 주에 저희는 게임을 테스트하기 위해 사내 랜 파티를 진행했습니다. 플레이하면서 새로운 시스템이 너무 쉽다는 것을 알 수 있었습니다. 나우비스 기지에는 엄청나게 거대한 파이프라인이 사방으로 뻗어 있었고, 그 뒤에는 아무런 생각이나 구조도 없었습니다. 특히 멀리 떨어진 전초기지를 연결하기 위해 유체 열차를 사용했지만, 이마저도 대부분 습관에 따른 것이었고 파이프라인이 더 우수했을 것입니다.
전 세계를 아우르는 무한한 처리량의 파이프라인들
이러한 '파이프 만능론'은 펌프가 처리량을 늘리지 않고 제한만 하는 상황을 만들었습니다. 이는 직관적이지 못한 점이었고, 게다가 회로 연결로 특정 구간을 비활성화하지 않는 한 네트워크에서 펌프를 사용할 필요가 없다는 의미이기도 했습니다. 또한 사람들이 모든 곳에서 기나긴 파이프라인을 사용하도록 유도하는 것은 실수로 두 개의 다른 파이프라인을 연결할 가능성이 크게 증가하기에 유체 혼합 사고가 일어날 가능성도 높아졌죠. 다른 행성에 있는 동안 건설 로봇이 무언가를 건설하다가 이런 일이 발생했다면 거대한 검색 영역에서 잘못 배치된 파이프 하나를 찾는 것은 끔찍한 일이 아닐 수 없습니다.
해결책을 찾아야 할 때였습니다.
시각적 피드백의 중요성
운송 벨트는 매우 시각적으로 뚜렷하고 상호작용하기 쉽기 때문에 재미있게 플레이할 수 있습니다. 물건이 들어오는 곳, 나가는 곳, 병목 지점을 한 눈에 정확히 확인할 수 있죠. 반면 파이프는 거의 완전히 불투명하고 작은 창으로는 충분한 시각적 피드백을 제공하기에 충분하지 않습니다. 이것이 우리가 유체 흐름에 '생각이 필요 없는' 솔루션을 선택한 이유 중 하나이기도 합니다.
유체 시스템에 제한을 추가하려면 그 제한이 매우 쉽고 분명하며 상호 작용할 수 있어야 합니다. 한동안 머리를 맞댄 끝에 생각해낸 것이 바로 이것입니다.
파이프라인 확장
파이프라인은 250x250 타일 영역으로 제한되며, 이 제한을 초과하면 파이프라인을 통한 모든 흐름이 중단됩니다. 펌프를 사용하여 파이프라인을 분할할 수 있습니다. 게임에서 파이프라인이 끊어진 것을 시각화하여 표시하고 펌프를 배치해야 하는 위치에 경고를 생성합니다. 따라서 문제를 쉽게 진단하고 쉽게 수정할 수 있습니다.
유체 관련 엔티티를 집어들면 게임에서 보이는 파이프라인에 연결된 시각화 라인이 표시되고 내부의 유체에 맞게 색상이 지정됩니다. 마우스로 개별 파이프라인을 가리키면 파이프라인의 크기를 알려주는 화살표도 표시됩니다.
이 모습은 제 Pipe Visualizer 모드 유저에게는 이미 익숙하게 보일 수도 있겠네요.
마지막으로, 지도에서 파이프라인을 볼 수 있는 토글을 활성화할 수도 있습니다!
개별 라인을 구축할 때는 파이프를 연결하면 "그냥 작동"하기 때문에 파이프 처리량에 대해 크게 걱정할 필요가 없습니다. 그러나 여러 라인을 함께 연결할 때는 방향성과 펌프의 처리량에 대해 실제로 걱정해야 하기 때문에 조금 더 많은 생각이 필요합니다. 또한 펌프로 격리된 섹션은 실수로 유체를 혼합하더라도 재앙을 훨씬 덜 일으킵니다.
밸런스 조정
확장성 외에도 유체 구성 요소의 밸런스를 몇 가지 조정했습니다:
- 펌프의 유량은 초당 1200유닛으로 너프되었지만(10배 감소), 품질에 따라 증가시킬 수 있습니다.
- 유체 화물차의 용량이 50,000으로 상향되었습니다(2배 증가).
- 1만큼의 물은 이제 보일러와 열교환기에서 10배의 양의 증기로 확장되어 변환됩니다.
유체 화물차당 3개의 펌프를 사용하면 유체 화물차당 3600/s, 즉 화물차의 내용물을 완전히 퍼내는 데 약 14초가 걸립니다. 이는 이전의 0.7초보다 훨씬 더 현실적인 속도입니다. 너프되었지만 바닐라 메가베이스에는 여전히 충분히 빠르며, 우주 시대에서는 전설적인 품질의 주조소에 더 많은 처리량이 필요한 경우 펌프 품질을 향상시켜 개선할 수 있습니다.
물 대 증기 비율 변경으로 유체 화물차나 물 배럴을 사용하여 전력 또는 원자력 설비를 공급하는 것이 더 수월해졌습니다. 이 변경은 기계의 전력 소비량/출력에는 영향을 미치지 않으며, 같은 양의 증기를 만드는 데 10배 적은 물을 소비할 뿐입니다.
이러한 변화와 함께 유체 화물차와 대형 파이프라인 사이에서 선택의 폭이 훨씬 더 다양해졌습니다. 전 세계를 뒤덮는 파이프라인은 더 이상 모든 것에 대한 유일한 해결책이 아닙니다. 여전히 구축할 수는 있지만 약간의 회로를 필요로 하고 마법의 힘이 훨씬 덜합니다. 파이프라인의 거의 즉각적인 운송과 유체 화물차의 향상된 유연성 중 어떤 것을 선택하시겠습니까?
알고리즘 조정
알고리즘이 처음 도입된 이후 몇 가지 변경 사항이 있었습니다:
- 이전에는 출력 속도가 무제한이었지만 이제는 차있는 유체의 비율에 반비례합니다.
- 저장 탱크 유량에 대한 특별 예외사항이 제거되었습니다.
- 입력 속도 제한은 파이프라인에서 물을 끌어올 때만 적용되었지만, 이제 이 제한과 새로운 출력 속도 제한이 유체 화물차를 제외한 모든 유체 흐름 작업에 적용됩니다.
이전에 충분히 설명하지 못한 점은 특정 틱에 파이프라인을 통과하는 총 유량에 대한 제한은 없지만, 유량 작업당 100유체(6000/s)라는 하드코딩된 제한이 있다는 것입니다. 이 제한에 유체가 입력부와 엔티티에 차있는 비율을 곱하여 실제 유량 값을 생성하며, 이 비례를 통해 기계들이 유체를 더 고르게 공유할 수 있습니다. 여전히 먼저 업데이트하는 기계가 가장 많은 유체를 공유하지만, 각 파이프 엔티티를 구축하는 순서가 흐름에 큰 영향을 주었던 1.1보다 그 차이가 훨씬 낮아졌습니다.
출력 속도 제한은 유체를 다시 유체처럼 느끼게 해주기 때문에 특히 흥미롭습니다. 이전에는 펌프가 파이프 라인이 100% 가득 찰 때까지 최대 초당 6000유닛의 속도로 유체를 밀어 넣을 수 있었지만 이제는 파이프 라인이 채워질수록 속도가 느려집니다. 각 파이프 라인에는 출력 속도와 입력 속도가 같아지는 특정 비율이 있으며, 기계가 작업을 수행하면 이 점을 중심으로 파이프의 유체 수위가 진동하게 됩니다.
디버그 뷰를 사용하여 표시된 파이프의 유량.
아직 완성되지 않음
LAN 파티를 위해 파이프라인 확장 시스템과 밸런스 조정이 이루어졌고, 이에 대한 반응은 매우 긍정적이었습니다! 여기까지 오기까지 긴 여정이었고, 아직 해야 할 일도 많고 알려드릴 것도 많습니다. 지금 보시는 것이 2.0이 출시될 때의 시스템 모습과 거의 같겠지만 앞으로도 계속 조정하고 반복할 예정입니다.
이전 게시물에 보내주신 모든 분들께도 감사의 말씀을 전하고 싶습니다. 대부분의 댓글에 답변하지 않더라도 모든 댓글을 다 읽었으니 안심하세요. 여러분의 열정은 팩토리오를 훌륭한 게임으로 만드는 데 큰 역할을 합니다.
언제나 그렇듯, 여러분의 생각을 적절한 곳에 쏟아내 주세요.
또 한놈 갑니다 pipe visualizer
제 Pipe Visualizer 모드 유저에게는 이미 익숙하게 보일 수도 있겠네요. 깨알같은 자기가 만든 모드 자랑 ㅋ.ㅋ
저거 없었으면 파이 못함 ㅋㅋ
오늘의 놓치기 쉬운 중요 포인트 이제 물 1로 증기 10을 만들 수 있음. 1:20:40이 아니라 1:200:400....
해안펌프도 일반 펌프처럼 너프 먹었을 듯
거기에 이제 병목도 없으니깐 기존의 정형화된 발전소 디자인에서 다른 여러가지 디자인으로 바뀌게될까 아니면 1:2는 여전하니 비슷한방식으로 쓰게될까
증기사용량을 재조정하지 않을까
안한다고했슴 기존 공장들에는 영향없고 그냥 물 대 증기 비율만 달라지는것
지도에서 색상이 사실상 유일한 식별자인데 그건 어떻게 해결했지 레이더켜진상태에서는 된다치더라도 꺼진상태에선 그저 도트 일뿐 일텐데 게다가 파이프위에 그림그려진다는게 좀 짜치긴하다만 한편으론 철도신호기를 손에들어도 구간이 나눠지긴해서 어쩔수없는거라고 생각해야되나 싶기도하네
엔지니어 고글에 HUD 개쩌는게 달렸다고 생각하면 되징
새 유체 시스템이 너무 사기라고 생각하긴 했음 유체 열차 쓸 필요 없다고 생각돼서
근데 이 파이프 길이 제한 시스템 너무 시스템을 위한 시스템아닌가
좀 그런면이 없잖아 있음
2.0 나오면 이것도 바꿔야겠네
새 시스템은 표로 나타낼 수가 없을듯?
6000/s에 엔티티에 유체가 차 있는 비율을 곱하니까 비율별로 나눠서 하면 될 것 같은데
통짜 세그먼트가 좀 사기였다곤 해도 이건 너무 작위적인 거 같은데
인정은 하는데 더 나은 방식을 ups 영향없이 만들수 있냐 하면 이게 최선인거같음
그럼 현실적으로 유체역학 적용하면 니가 유량을 예측할 수 있음? 없으니까 쉽고 직관적으로 만든다잖아 이해가 그렇게 어렵나
반비례 vs 해겐-포아죄유 방정식 반비례 vs 다르시-바이스바흐 방정식 반비례 vs 베르누이 방정식 뭐가 더 쉬움? 걍 게임을 쉽고 직관적으로 만든다잖아 ~ 너같이 알아먹는게 어려운 애들을 위해 ㅋ
유체는 원래 작위적으로 "예측"하는 거임. "계산"이 아니라 ㅋㅋ
소신발언) 베르누이 좀 꼴리는듯,,
왤케 비비 꼬였냐 내가 뭐 이게 잘못된 거라 한 것도 아니고 타협이 필요한 건 당연하지 이게 유체 시뮬 게임도 아닌데 근데 1칸부터 250칸까지는 똑같이 처리되다가 251칸부터 갑자기 다르게 처리되는 건 이상한 거 맞잖아 넌 이게 직관적임? 이게 최선이라 해도 이상한 부분은 있다 이거 이해하기가 힘듦?
너네 싸우지마라. 왜 싸우냐 ㅠㅠ - dc App
직관적인건 맞는데 이상한 것도 맞음. 걍 자연o+직관x 미는 애랑 vs 자연x 직관o 맞다이까서 직관이 이긴듯
중간에 혼란을 틈탄 베르누이 꼴린다는 댓글 뭐임 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
250칸 제한 이상한데서 존나 불편할듯 빅사이즈 그리드에 원유처리 크게 만든다던지 하면 250칸 바로 넘어갈텐데
품질 시스템이 맘에 안들면 끄고 하라고 하던데 이런식으로 애초 밸런스 짤때부터 품질방패 들이밀면 그냥 칼들고 쓰라 협박하는거 아닌가.. 그리고 250칸 제한이라는 방법밖에 없었나?
펌프 품질 얘기는 일반적인 상황에서는 의미 없고 마찬가지로 주조소의 품질도 건드렸을때나 필요해진다는 소린데 이게 왜 칼들고협박임
그래 그래 니 말이 다 맞아 갓겜이네 ㅇㅇ
심술이 잔뜩 났네 ㅋㅋㅋ 글 함 다시 읽어보지
쿨찐오졌다
근데 현실에서 파이프로 수백km 넘어서 연결하지 않나? 제한을 두는건 너무 억지 같은데
근데 파이프 길이제한 그냥 펌프만 두면 사실상 의미 없는 수준인 거 아닌가? 내가 잘못이해하는건가