보석으로 장식 된 다음 최고의 보석 선택


9

'No more left left'상황을 완전히 제거 할 수있는 게임 디자인 기법이 있습니까? 즉. 게임에는 불가능한 시나리오가 없어야합니다.

내가 추측 한 한, 보석은 3 개 또는 4 개의 보석 그룹이 해산 된 후 사용자에게 제공 할 보석과 위치에 따라 다릅니다.

가능합니까? An always infinitely solvable Bejewelled game?


2
모든 보석을 파란색으로 만드십시오
amb

+1 좋은 질문입니다. 얼마나 많은 새로운 보석이 스폰되는지에 따라 상당히 복잡하지 않은 솔루션이 있어야합니다.
ashes999

@ ashes999 : 감사합니다. 그러나 현재로서는 두 가지 아이디어가 있습니다. 불법 상황을 제거하는 것이 가능하다고 생각합니다. 1.) 무차별 대입 확인 및 예측 된 무차별 계산을 기반으로 보석 추가, 2.) 폭탄이나 하이퍼 큐브는 보석과 상호 작용하여 보드 패턴을 크게 혼란시킵니다.
비슈누

답변:


1

끝없는 Bejeweled 게임을 만들 수 있습니다. PopCap은 최신 Bejeweled 3 (이 모드를 "Zen Mode"라고 함)으로 자체적으로 수행했습니다.

우선 , 보드를 처음 생성 할 때 적어도 하나의 유효한 이동이 있는지 확인해야합니다 .

플레이어가 움직일 때마다 결과 보드를 계산하고 유효한 움직임을 검색해야합니다. 찾을 것이 없으면 유효한 보드를 복원하기 위해 스폰 될 보석을 제어해야합니다. 최소한 한 번의 이동으로 3 개의 보석이 제거되고 3 개의 교체 보석을 스폰해야하므로,이 3 개의 교체 보석이 현재 보드와 함께 또 다른 유효한 이동을 형성하도록 할 수 있습니다. 끝없는 모드 달성.

물론 새로운 움직임이 새로운 보석으로 등장하는 것은 이상적이지 않지만 항상 게임 가능한 보드를 보장하는 저렴한 방법입니다. 유효한 움직임을 만드는 것은 실제로 보석의 위치 를 바꾸는 것을 의미하기 때문에 다른 움직임이 가능해지기까지는 그리 오래 걸리지 않습니다.

이미 언급했듯이, 보드의 큰 부분을 지우는 폭탄과 다른 수단은 게임 플레이에 다양성을 더할 것이지만, 끝없는 모드를 보장하는 데 필요하지는 않습니다.


4

예. 실제로 가능할 것입니다. 경우가 정의 된대로 중지 문제가 아닌 임의의 것이 아닙니다. 이 질문에 답하려면 두 부분으로 답해야합니다. 먼저 솔루션이 있으면 찾을 수 있고 두 번째는 항상 유효한 솔루션을 찾을 수 있습니다.

첫 번째 부분은 재생 가능한 보드를 생성 할 대체 타일 (보석)을 찾는 방법입니다. 이는 무차별 대입 방법을 통해 달성 할 수 있습니다. 재생 가능한 대치가 발생할 때까지 가능한 모든 교체 세트를 확인하십시오 (보다 최적의 무브 러트 방법도 있습니다).

두 번째 부분은 항상 교체 가능한 세트가 있는지를 결정하여 재생 가능한 세트를 생성하는 것입니다. 한 번의 이동으로 제거 된 타일 세트는 3 개의 타일 세트의 상위 세트가되므로 최소 3 개만 제거하는 경우 재생 가능한 세트를 항상 찾을 수 있으면 제거 된 타일의 모든 가능한 패턴에 대해 제거 가능한 타일의 하위 세트 인 세 개의 제거 된 타일 세트 각각에 대한 모든 솔루션을 포함하므로 재생 가능한 세트가 있습니다.

행 / 열에서 3 개의 타일 만 지우는 최소의 경우, B 유형의 타일로 구분 된 A 유형의 2 개의 타일을 포함하는 교체 세트 3 열의 경우, 3 행의 경우 왼쪽 또는 오른쪽으로). 이 세 타일의 중심을 적절한 A 타일로 바꾸면 3 세트가 생성됩니다. 이것은 원래 타일이 지워진 열 / 행을 따라 유효한 이동을 생성하는 타일 세트를 항상 찾을 수 있음을 나타냅니다. 미래의 행 또는 열로의 이동을 제한하는 것은 무한 재생 가능한 게임에 대한 유효한 솔루션이지만 그리 재미 있지 않을 것입니다. 그러나 보석으로 장식 한 일반적인 게임에 대한 모든 규칙을 사용하면 행 / 열 외부로도 이동할 수있는 솔루션이 항상 존재한다는 것을 쉽게 알 수 있습니다. 3 개의 A 형 타일을 드롭한다고 가정합니다. 여기서 A는 제거 된 3 개 세트의 위 또는 아래 / 왼쪽 또는 오른쪽의 타일 중 하나입니다. 이렇게하면 "폭탄"스타일 타일이 생성되어 제거 할 때 영역이 지워집니다. 그런 다음 다른 대체 타일 세트를 드롭하면 해당 폭탄과 일치하는 타일 영역이 지워집니다. 이 영역에는 다른 행 내에 3 개의 타일 하위 세트가 포함되므로 향후 이동이 반드시 단일 행 / 열로 제한되지는 않습니다. 이렇게하면 "폭탄"스타일 타일이 생성되어 제거 할 때 영역이 지워집니다. 그런 다음 다른 대체 타일 세트를 드롭하면 해당 폭탄과 일치하는 타일 영역이 지워집니다. 이 영역에는 다른 행 내에 3 개의 타일 하위 세트가 포함되므로 향후 이동이 반드시 단일 행 / 열로 제한되지는 않습니다. 이렇게하면 "폭탄"스타일 타일이 생성되어 제거 할 때 영역이 지워집니다. 그런 다음 다른 대체 타일 세트를 드롭하면 해당 폭탄과 일치하는 타일 영역이 지워집니다. 이 영역에는 다른 행 내에 3 개의 타일 하위 세트가 포함되므로 향후 이동이 반드시 단일 행 / 열로 제한되지는 않습니다.


한 번에 120 도만 회전합니다. 따라서 이전 이동으로 인해 보드의 다른 곳에서 점수를 매길 수있는 보드를 표시하고 새로 배치 된 블록에서 5 개의 이동을 요구하고 플레이어가 먼저 잘못된 것을 클릭하면 어떻게됩니까?
Clockwork-Muse

120도 회전? Bejeweled 는 회전을 포함하지 않습니다. Bejeweled Twist 를 생각하고 있습니까?
Matthew R

죄송합니다, 저는 Hexic 을 생각하고있었습니다 . 그러나 보석이 충분히 다르면 엔진이 매번 매번 일치하는 트리오를 생성하여 연속 플레이를 허용 해야하는 상황에 들어갈 수 있습니다 (다른 점수는 없음). 보기에는 흥미롭지 만 재생이 쉽지는 않습니다.
Clockwork-Muse

항상 해당 세트의 왼쪽 / 오른쪽 또는 위 / 아래에있는 타일과 동일한 유형의 동일한 3 개의 동일한 타일로 대체 세트를 생성하여 더 큰 세트를 만든 다음 제거 할 수 있습니다. 즉, 원래 타일의 행 또는 열에있는 모든 타일을 제거 할 수 있습니다. 보석으로 장식 한 대부분의 게임에서 큰 세트는 특정 타일 유형으로 영역 또는 모든 영역을 지우는 특수 타일로 이어집니다. 이것은 보드의 초기 상태에 관계없이 재생 가능한 보드가 생성 될 수있는 충분한 타일을 제거하기 위해 필요에 따라 캐스케이드 될 수 있습니다.
Matthew R

3

컴퓨터 과학에서 멈추는 문제 에 대해 언급했습니다 .

임의의 컴퓨터 프로그램에 대한 설명이 주어지면 어느 시점에서 멈추거나 영원히 실행 될지 추론 할 수 있습니까? 이것을 "문제"라고하는 이유가 있습니다.

짧은 대답은 아닙니다. 아닙니다. Bejeweled 게임에 불법적 인 움직임이 없을 것이라고 보장 할 수는 없습니다. 이를 보장하려면 무한한 컴퓨팅 시간이 필요합니다.


4
참고로, 정지 문제는 해결할 수없는 문제가 있다고 말하지만 모두 해결할 수는 없습니다. 이 특정 문제에 대해서는 당신이 할 수 없다고 생각합니다 (또는 게임이 예를 들어 2 색 및 3 * 3 그리드와 같이 엄청나게 간단 할 것입니다). 이와 같은 '정상 크기'게임에는 너무 많은 경로가 있습니다 .
Valmond

1
참고로 : PopCap의 현재 Bejeweled 게임은 끝없는 모드를 가지고 있습니다. 그래서 문제를 성공적으로 해결 한 것 같습니다 :) 유효한 이동을 보장하는 새로운 보석을 생성하여 항상 유효한 이동을 보장합니다. 현재 사용할 수없는 경우에만 적용됩니다).
bummzack 2016 년

1
@bummzack : 당신이 틀린 bummzack이라고 말해서 죄송하지만 popcap은 보석으로 장식되어 있습니다 (나는 고전과 속도면에서 최고 득점자라고 자부심을 느낍니다). 클래식 버전은 .NO MOVES LEFT라고 말하지 않고 게임 오버를 제공합니다.
비슈누

@ knight666 : 글쎄요, Mathew R의 다른 게시물과 같이 불가능하다고 생각하지 않습니다. ai가 불법 상황이 발생할 수 있다고 예측할 때 폭탄을 사용하는 것이 좋습니다.
비슈누

@Vishnu 글쎄, 나는 현재 세대를 썼는데 , Bejeweled 3이 될 것이며, 이것은 끝없는 모드 (또는 Zen 모드 또는 기타)에만 적용됩니다. 클래식 버전에서는 그렇지 않다는 것을 알고 있습니다.
bummzack
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.