로봇이 안에 든 걸 꺼내갈 수 있는 물류 상자 A가 있다고 해보자(색깔은 후술할 기능만 구현된다면 빨강/노랑/초록 중 뭐든 무관함)
이 물류 상자 A 외의 모든 물류 네트워크에 있는 특정 아이템 X가 이 물류 상자 A로 모이도록 하고 싶음(즉, X가 들어 있는 상자가 A 1개뿐이 되도록). A에 아이템이 일정 수량 이상 차면 갈아버리는 처리는 되어 있으므로 A에 넣고 싶어도 넣지 못하는 케이스는 고려하지 않음.
파랑 박스(B)로 한 번 모은 뒤에 투입기를 써서 A로 옮기려 하니 로봇이 다시 A에서 B로 무한히 옮기는 처리가 반복되어 버리고,
A를 초록 상자로 해서 모아버리면 X를 요청하려 할 때 일일이 "완충 상자에서 요청" 설정을 켜야 하는 번거로움이 있음
그래서...
1. X가 생성되는 모든 곳마다 보라색 상자를 쓸 필요 없이,
2. 모든 X가 자연스레 A로 모이되,
3. "완충 상자에서 요청" 설정을 켜지 않고도 로봇이 A에서 필요한 곳으로 X를 꺼내갈 수 있는
그런 시스템을 구현하고 싶음
혹시 어떤 방향으로 생각해보는 게 좋을까?
X가 어떤 아이템인진 모르겠는데 완충 상자에서 요청 옵션을 일일히 키기 번거로울 정도로 많은 곳에서 요구하는 아이템인거야?
로봇은 아이템을 보관할 때, 가능하다면 해당 아이템을 이미 보관 중인 상자에 우선으로 넣으려 시도하고, 불가능하다면 다음으로는 해당 아이템으로 필터가 걸린 상자에 넣는 걸 차선으로 시도하기 때문에 이러한 특성을 이용하면 쉽게 구현할 수 있음
단, 글에서 보장한대로 절대 보관상자 용량이 넘쳐선 안 됨 한 번이라도 넘치면 임의의 다른 상자들도 해당 조건을 만족하게 돼서 꼬여버림
요청상자에 회로 연결하고 SR래치 써서 껏다켰다 하는 방식으로 될거같긴 한데.. 우선 본문에서 쓴 번거로움의 이유가 완충상자에서 요청, 요청하지 않은 아이템 폐기 체크해둔 요청상자를 청사진화해서 B누르면 나오는 공용 청사진슬롯에 넣어두고 꺼내쓰는걸로 해결되긴 해서 그냥 완충상자 쓰는게 맞지않을까
보라색 상자가 안되면 노란상자로 모아주는 것도 안되고 완충상자요청설정이 안되면 상자우선순위 이용한 이중요청구조도 안되는데 회로똥꼬쇼로 되는지도 모르겠다 전제 자체가 너무 많아서 불가능함 뭔가는 포기해야됨
보라상자를 쓰든지 완충요청설정을 하든지 물건을 한군데로 모아야한다는 전제를 포기하든지 셋중하나는 포기해야됨
아 한가지 생각났다 최종요청상자를 초록C라고 하자 그럼 파랑B로 일단 모은 다음에 로보포트랑 회로연결해서 요청중인 품목을 모두 읽어서 X요청이 발생하는 만큼 노랑A에다 투입기로 집어넣어주면 됨
구현을 직접 모딩이나 스크립트 짜서 하겠다는거임? 그게 아니면 그냥 불가능함 많이 안쓰는 아이템이면 완충상자가 현실적이고 많이 쓰는거면 보라상자 써서 비운 뒤 로보포트로 모든 상자 읽어서 생산 제어해야지
아 일 생겨서 이제야 봤다...역시 뭔가를 포기하는 쪽이 빠르구나 다들 답변 고마워
보라상자 (능동공급) 로 A 아이템을 집어넣음 노란상자 (보관)에 A 만 받게 필터함 A 상자에 투입기 연결하고, A가 노란상자의 반 이상 차면 투입기가 동작하게 함. 이러면 모든 A는 보관상자로 이동하고, 목표치(반) 이상 차면 투입기로 빼냄. 빼낸 물건은 재활용을 하든 철상자에 저장하든 알아서 하면 됨
요컨데 받는것도, 주는것도 가능한 상자를 원하면 보관상자랑 완충상자밖에 없는데 완충은 일일이 체크해야해서 문제고, 보관상자는 아이템이 너무 많으면 다른 보관상자로 새나가는게 문제라 못쓴단 거잖아 그럼 보관상자에 다 모아놓고 넘치는건 투입기로 빼면 물류네트워크에서 제외되니까 상관없지
@Skippy 아 보라상자를 써야하면 어렵네 보라상자에 제어회로 달아서 활성화 여부 체크해야함
구체적인 아이템명 써주면 무슨 문제인지 확인 가능할 거 같음