도형 코드
개요
도형 코드는 Shapez 2에서 도형을 텍스트로 표현한 것입니다. 각 레이어, 파트 유형, 색상을 모두 인코딩한 압축 문자열로서 도형을 복사·붙여넣기하거나, 기계 사이로 전송하거나, 설계도로 저장하거나, 게임 외부에서 공유할 수 있게 합니다. 도형 코드는 아래층에서 위층 순으로 레이어를 나열하며, 각 레이어는 콜론(:)으로 구분됩니다. 레이어 안의 각 파트는 두 문자로 표현되며: 첫 문자는 파트 유형 코드, 두 번째 문자는 색상 코드입니다. 레이어 내 파트들은 구분자 없이 오른쪽 위 사분면에서 시작해 시계 방향으로 기록됩니다.
게임은 각 레이어에 몇 개의 파트가 있는지를 결정하는 다양한 Shapes Configurations를 지원합니다. Quad 구성은 레이어당 4개의 파트를 사용(기본값)하고, Hex 구성은 레이어당 6개의 파트를 사용합니다. Flexible 규칙은 도형이 어떤 구성의 파트든 포함할 수 있고 레이어당 임의의 파트 수를 가질 수 있게 허용합니다(단 모든 레이어가 동일한 파트 수를 가져야 함). 반면 Strict 규칙은 도형이 현재 Scenario의 구성과 파트 수와 일치할 것을 요구합니다. 도형 코드 자체는 규칙집을 강제하지 않으며; Shape Code 입력의 유효성 검사는 필요할 때 활성 규칙집에 대해 수행됩니다.
파트 유형 문자와 색상 문자는 게임 내 코드 표에서 가져옵니다. 파트 유형 코드에는 C (원형), R (사각형), S (별), W (마름모), X/Y (정제된/이국적 도형), H/F/G (헥스 전용 유형), P (핀), c (크리스탈), - (빈칸) 같은 항목들이 포함됩니다. 색상 코드는 u (무색), r (빨강), g (초록), b (파랑), c (청록), m (마젠타), y (노랑), w (흰색), k (검정)을 포함합니다. 핀이나 빈 사분면처럼 색을 가질 수 없는 파트는 색상 문자로 -를 사용해야 합니다. 따라서 핀은 P-로 인코딩되고 빈 사분면은 --로 인코딩됩니다. 색을 가질 수 있는 유형의 경우 두 번째 문자는 위의 색상 문자들 중 하나입니다(예: Cu는 무색인 원형, Cr은 빨강으로 색칠된 원형을 의미).
도형 코드는 시뮬레이션된 장치 예제와 기계 로직 전반에서 사용됩니다. 예를 들어, 아래층이 모두 무색인 4개의 원형이고 위층이 모두 무색인 4개의 사각형인 두 레이어 도형은 CuCuCuCu:RuRuRuRu로 표기됩니다. 단일 레이어 도형은 콜론과 상위 레이어를 생략합니다. 예: CuCuCuCu는 무색 원형의 단일 쿼드 레이어를 인코딩합니다.
실용적인 주의사항과 제약:
- Shape Code로 도형을 생성할 때, 현재 Scenario에서 허용하는 최대 레이어 수를 초과하는 레이어가 생성된 도형에 포함될 수 있습니다; 이러한 초과 레이어는 Shape Gravity Rules(도형 중력 규칙)를 적용하는 기계를 통과할 때 적절히 삭제될 때까지 남아 있습니다.
- 레이어 내부의 순서는
고정되어 있습니다: 오른쪽 위에서 시작해 시계 방향. 이는 회전이나 위치별로 파트를 조작하는 다른 작업들에 영향을 줍니다.
- 색을 가질 수 없는 파트는 색상 문자로 반드시 -를 사용해야 합니다. 크리스탈은 생성된 후 색을 유지하며 크리스탈 유형 코드 c 다음에 색상으로 인코딩됩니다.
- 도형의 유효성 검사는 활성 규칙집에 따라 달라집니다: Strict 규칙집은 Scenario의 구성과 레이어당 파트 수를 강제하는 반면, Flexible 규칙집은 모든 레이어가 동일한 파트 수를 가지기만 하면 서로 다른 구성들을 허용합니다.
- 파트 유형과 색상에 대한 문자 표가 도형 코드에서 사용할 수 있는 유효 문자들의 권위 있는 출처입니다; 코드를 구성하거나 파싱할 때 해당 표를 참조하세요.