안드로이드 앱으로 만든 유명한 카탄 보드 게임 정착민. 이 앱은 싱글 플레이어와 로컬 멀티 플레이어를 지원합니다. 싱글 플레이어 모드에서는 다양한 어려움의 컴퓨터에서 플레이 할 수 있습니다. 그리고 현지 뮬리트 플레이어를 사용하면 단일 게임에서 최대 4 명의 플레이어와 플레이 할 수 있습니다.
카탄 사이트의 공식 정착민
공식 게임 규칙 (PDF)
이 proejct의 작은 부분을 보유한 저장소는 나중에이 반복성으로 결합되었습니다.
보드와 논리의 생성은 응용 프로그램의 가장 큰 부분입니다. 이사회의 생성은 단순히 SurfaceView에 여러 헥사곤을 그리는 것이 아닙니다. 각 행에 올바른 타일 수를 생성하기위한 올바른 알고리즘과 실제 카탄 게임에서 타일을 나타내는 각 헥사 곤에 값을 할당하는 알고리즘을 찾는 것이 포함되었습니다. 또한 보드 논리 자체는 매우 어려웠습니다. 우리는 보드에있는 각 육각형의 인접한 것을 파악해야했을뿐만 아니라 교차로와의 교차로, 항구와의 교차로 및 육각형 교차로를 파악해야했습니다. 이를 위해서는 그들이 조사한 인접 행렬의 생성이 필요했습니다.
카탄은 아마도 모든 게임의 가장 독특한 기능과 규칙을 가졌을 것입니다. 외부에서 카탄은 거래, 건축, 개발 카드 사용 및 강도 사용의 네 가지 핵심 행동으로 분류 될 수 있습니다. 그러나 각각 내에서 게임의 다양한 상황에 대한 다중 및 특정 알고리즘이있었습니다. Catan의 주요 특징 인 Building은 교차로 인접성을 고려한 것과 관련이 있으며 각 건물은 자원 생산을 위해 육각형 인접성을 고려해야했습니다.
이 강도는 카탄의 가장 독특한 특징 중 하나이며 구현 해야하는 방식에서 독특합니다. 짧게 말하면, 플레이어가 7을 굴릴 때마다 강도가 활성화되고 버려진 단계, 이동 단계 및 도둑질 단계의 세 단계가 있습니다. 구현하기가 가장 어려운 부분은 Discard Phase 이며이 기능은 다른 게임과는 별도로 분별합니다. 이는 플레이어가 자신의 차례가 아닌 경우 행동을 취해야하기 때문입니다. 프레임 워크는 실제로 턴 기반 동작을위한 것이기 때문에 게임 프레임 워크로 구현할 때 매우 위험합니다. 즉, 턴 체크를 우회해야 할뿐만 아니라 각 플레이어가 게임 상태를 올바르게 업데이트하고 있는지 확인해야합니다. 강도를 올바르게하기 위해
게임을 만드는 데 사용 된 많은 이미지가 우리에 의해 만들어졌습니다. 예를 들어, Catan 및 기타 주류 게임에서 영감을 얻은 도움으로 우리는 자원 아이콘과 건물 및 항구를 만들었습니다.
멍청한 컴퓨터 플레이어는 전적으로 무작위성과 현재 리소스를 기반으로합니다. 설정 단계에서 무작위로 구축 할 교차로를 선택하고 Chit 번호 나 리소스를 고려하지 않습니다. 정상 단계에서 그것은 무작위로 하나의 행동을 시도합니다. 도로를 건설하고, 정착지를 세우거나, 도시를 짓거나, 아무것도하지 않기 위해. 그것이 무언가를 구축하려고한다면, 게임은 컴퓨터 플레이어가 충분한 리소스를 가지고 있는지 확인하고 작업을 수행하는 경우 작업이 완료되면 컴퓨터 플레이어가 턴을 끝냅니다. 강도를 움직일 때 무작위로 유효한 타일로 이동 한 다음 무작위로 유효한 상대방에서 훔칩니다.
스마트 컴퓨터 플레이어는 먼저 내부 육각형 코너 중 하나를 기반으로한다는 점을 고려하여 설정 단계에서 AI 건물 위치 선택을 개선하여 시작합니다. 그런 다음 스마트 컴퓨터는 메인 액션 단계에서 벽돌이나 목재를 얻기 위해 거래를 완료하기에 충분한 자원이 있는지 확인하여 거래를합니다. 스마트 컴퓨터는 또한 개발 카드를 구매하고 사용할 수 있으며, 가장 적은 양의 자원 유형을 기반으로 얻을 수있는 카드 (독점 및 많은 연도)를 선택합니다. 건물은 정착지, 정착지에서 도시 및 도로를 건설 할 가능성이 있다면 다음 순서로 이루어집니다. 이를 통해 스마트 컴퓨터는 상대방보다 더 빠른 속도로 더 많은 승리 포인트를 얻을 수 있습니다.