Bejeweled Next Lựa chọn trang sức tốt nhất


9

Có một kỹ thuật thiết kế trò chơi nào tôi có thể sử dụng để tôi loại bỏ hoàn toàn các tình huống 'Không còn di chuyển nữa'. I E. Trò chơi không chứa kịch bản bất khả thi.

Theo như tôi đoán Tất cả phụ thuộc vào viên ngọc nào và nơi bạn cung cấp cho người dùng sau khi nhóm ngọc gồm 3 hoặc 4 viên hòa tan.

Có thể không? An always infinitely solvable Bejewelled game?


2
làm cho tất cả các đồ trang sức màu xanh
amb

+1 câu hỏi tuyệt vời. Cần có một giải pháp khá phức tạp cho việc này, tùy thuộc vào số lượng đá quý mới bạn sinh ra.
tro999

@ as999999: Cảm ơn bạn, nhưng hai ý tưởng duy nhất cho đến thời điểm hiện tại, tôi nghĩ rằng việc loại bỏ tình huống bất hợp pháp này là có thể bằng 1.) kiểm tra vũ lực và bổ sung trang sức dựa trên tính toán vũ phu, 2.) giới thiệu những điều như bom hoặc khối lập phương tương tác với bất kỳ viên ngọc nào xung quanh tạo ra sự gián đoạn lớn trên mẫu bảng.
Vishnu

Câu trả lời:


1

Chắc chắn có thể tạo ra một trò chơi Bejeweled vô tận. PopCap đã tự mình làm điều đó với Bejeweled 3 mới nhất (chế độ được gọi là "Chế độ Zen").

Trước hết, bạn cần đảm bảo có ít nhất một động thái hợp lệ khi bạn lần đầu tiên tạo bảng.

Bất cứ khi nào người chơi thực hiện di chuyển, bạn phải tính toán bảng kết quả và tìm kiếm các nước đi hợp lệ. Nếu không có gì được tìm thấy, bạn phải kiểm soát các viên đá quý sẽ được sinh ra để khôi phục một bảng hợp lệ. Vì (ít nhất) 3 viên đá quý sẽ bị xóa bằng một lần di chuyển và bạn sẽ phải sinh ra 3 viên đá quý thay thế, bạn có thể đảm bảo rằng 3 viên đá quý thay thế này sẽ tạo thành một nước đi hợp lệ khác với bảng hiện tại. Chế độ vô tận đạt được.

Tất nhiên, không lý tưởng khi di chuyển mới sẽ xuất hiện với đá quý mới, nhưng đó là một cách rẻ tiền để luôn đảm bảo một bảng có thể chơi được. Và vì việc tạo ra các nước đi hợp lệ thực sự có nghĩa là hoán đổi vị trí của đá quý, sẽ không còn lâu nữa trước khi các động thái khác có thể thực hiện được.

Như đã đề cập, bom và các phương tiện khác để xóa các phần lớn của bảng sẽ thêm đa dạng hơn cho trò chơi, nhưng chúng không cần thiết để đảm bảo chế độ vô tận.


4

Đúng. Điều này trong thực tế sẽ có thể. Đây không phải là một trường hợp của vấn đề tạm dừng như trường hợp được xác định, không phải là tùy ý. Để trả lời điều này, hai phần phải được trả lời; đầu tiên nếu một giải pháp tồn tại thì nó có thể được tìm thấy, và thứ hai sẽ luôn luôn có một giải pháp hợp lệ để tìm.

Phần đầu tiên là làm thế nào để tìm một bộ gạch thay thế (đá quý) sẽ tạo ra một bảng có thể chơi được. Điều này có thể đạt được thông qua các phương pháp vũ lực, chỉ cần kiểm tra mọi bộ thay thế có thể cho đến khi gặp một phương pháp có thể chơi được (Cũng sẽ có các phương pháp không vũ lực tối ưu hơn).

Phần thứ hai là để xác định xem sẽ luôn có một bộ thay thế sẽ tạo ra một bộ có thể chơi được hay không. Bất kỳ bộ gạch nào bị loại bỏ trong một lần di chuyển sẽ là một số siêu bộ gồm ba khối, vì vậy, trong trường hợp tối thiểu chỉ có ba khối bị loại bỏ, nếu luôn có thể tìm thấy một bộ có thể phát, thì đối với tất cả các mẫu có thể loại bỏ của gạch sẽ có một bộ có thể chơi được, vì nó sẽ chứa tất cả các giải pháp cho mỗi bộ ba ô bị loại bỏ, đó là một tập hợp con của các ô bị loại bỏ.

Trong trường hợp tối thiểu chỉ xóa ba ô trong một hàng / cột, Tập hợp thay thế chứa hai ô loại A được phân tách bằng ô xếp loại B (trong đó loại A là loại ô bên trên hoặc bên dưới tập hợp ba ô đã xóa trường hợp một cột ba, hoặc bên trái hoặc bên phải trong trường hợp một hàng ba). Điều này sẽ mang lại một động thái trong đó hoán đổi trung tâm của ba gạch này với gạch A thích hợp cùng với nó sẽ tạo ra một bộ ba. Điều này cho thấy luôn có thể tìm thấy một tập hợp các ô sẽ tạo ra một bước di chuyển hợp lệ dọc theo cột / hàng nơi các ô ban đầu bị xóa. Hạn chế di chuyển trong tương lai đối với cột hoặc hàng đó, trong khi là một giải pháp hợp lệ cho một trò chơi vô cực, sẽ không thú vị lắm. Nhưng sử dụng tất cả các quy tắc cho các trò chơi theo phong cách phổ biến, thật dễ dàng để chỉ ra rằng sẽ luôn tồn tại một giải pháp cho phép di chuyển bên ngoài hàng / cột đó. Giả sử chúng ta thả vào ba ô loại A, trong đó A là một trong các ô bên trên hoặc bên dưới / bên trái hoặc bên phải của bộ ba loại bỏ. Điều này sẽ tạo ra một lát gạch kiểu bom ném bom, sẽ xóa một khu vực khi được gỡ bỏ. Sau đó, nếu chúng ta thả vào một bộ gạch thay thế khác dẫn đến trận đấu được thực hiện với quả bom đó, một khu vực gạch sẽ bị xóa. Khu vực này sẽ chứa một số 3 tập hợp con trong các hàng khác, điều đó có nghĩa là các bước di chuyển trong tương lai sẽ không nhất thiết bị giới hạn trong một hàng / cột đơn. Điều này sẽ tạo ra một lát gạch kiểu bom ném bom, sẽ xóa một khu vực khi được gỡ bỏ. Sau đó, nếu chúng ta thả vào một bộ gạch thay thế khác dẫn đến trận đấu được thực hiện với quả bom đó, một khu vực gạch sẽ bị xóa. Khu vực này sẽ chứa một số 3 tập hợp con trong các hàng khác, điều đó có nghĩa là các bước di chuyển trong tương lai sẽ không nhất thiết bị giới hạn trong một hàng / cột đơn. Điều này sẽ tạo ra một lát gạch kiểu bom ném bom, sẽ xóa một khu vực khi được gỡ bỏ. Sau đó, nếu chúng ta thả vào một bộ gạch thay thế khác dẫn đến trận đấu được thực hiện với quả bom đó, một khu vực gạch sẽ bị xóa. Khu vực này sẽ chứa một số 3 tập hợp con trong các hàng khác, điều đó có nghĩa là các bước di chuyển trong tương lai sẽ không nhất thiết bị giới hạn trong một hàng / cột đơn.


Nó chỉ xoay 120 độ một lần, phải không? Vậy chuyện gì sẽ xảy ra nếu bạn hiển thị một bảng (do di chuyển trước đó) có các bản phân phối có thể ghi được ở nơi khác trong bảng, yêu cầu 5 lần di chuyển từ một khối mới được đặt và người chơi nhấp vào cái gì đó sai trước?
Đồng hồ-Muse

Xoay 120 độ? Bejeweled không liên quan đến luân chuyển. Bạn đang nghĩ về Bejeweled Twist ?
Matthew R

Xin lỗi, không, tôi đã nghĩ về Hexic . Nhưng, với đủ các loại đá quý khác nhau, có thể vào một tình huống mà động cơ sẽ phải tạo ra một bộ ba phù hợp mỗi lần để cho phép chơi liên tục (vì không có gì khác ghi được). Điều này có thể thú vị để xem, nhưng không thể chơi được.
Đồng hồ-Muse

Bạn sẽ luôn có thể tạo một bộ thay thế gồm ba ô giống nhau cùng loại với một ô ở bên trái / phải hoặc trên / dưới của tập hợp đó, điều này sẽ tạo ra một tập hợp lớn hơn sẽ bị xóa. Điều này có nghĩa là tất cả các ô trong hàng hoặc cột của ô ban đầu cuối cùng có thể được gỡ bỏ. Trong hầu hết các trò chơi theo phong cách trang sức, các bộ lớn hơn dẫn đến các ô đặc biệt có thể xóa các khu vực hoặc tất cả các loại ô cụ thể. Điều này có thể được xếp tầng khi cần thiết để xóa đủ các ô mà bảng có thể phát được có thể được tạo bất kể trạng thái ban đầu của bảng.
Matthew R

3

Bạn đã chạm vào vấn đề tạm dừng trong khoa học máy tính.

Đưa ra một mô tả về một chương trình máy tính tùy ý, chúng ta có thể suy luận nếu nó sẽ dừng lại ở một thời điểm nào đó hoặc chạy mãi mãi? Có một lý do này được gọi là "vấn đề".

Câu trả lời ngắn gọn là: không, bạn không thể đảm bảo rằng trò chơi Bejeweled sẽ không bao giờ có bất kỳ động thái bất hợp pháp nào. Bởi vì để đảm bảo nó sẽ mất thời gian tính toán vô hạn.


4
Chỉ cần FYI, vấn đề tạm dừng nói rằng có những vấn đề không thể giải quyết, không phải tất cả đều như vậy. Đối với vấn đề cụ thể này, tôi nghĩ rằng bạn không thể làm điều đó (hoặc trò chơi sẽ đơn giản một cách nực cười, chẳng hạn như 2 màu và lưới 3 * 3), có quá nhiều đường dẫn có thể có trong một trò chơi 'có kích thước bình thường' như thế này .
Valmond

1
Ngoài ra FYI: Thế hệ trò chơi Bejeweled hiện tại (từ PopCap) có chế độ vô tận ... vì vậy họ dường như đã giải quyết vấn đề thành công :) Họ đảm bảo luôn có một động thái hợp lệ bằng cách sinh ra đá quý mới sẽ đảm bảo di chuyển hợp lệ ( chỉ áp dụng khi hiện tại không có sẵn).
bummzack

1
@bummzack: rất tiếc khi nói rằng bạn sai bummzack, nhưng trong popcap bejeweled (điều mà tôi tự hào khi nói tôi là cầu thủ ghi bàn hàng đầu cả về cổ điển và tốc độ). Phiên bản cổ điển tạm dừng nói .NO MOVES LEFT và cung cấp cho bạn một trò chơi.
Vishnu

@ hiệp sĩ: Chà, tôi không nghĩ điều đó là không thể, giống như bài đăng khác của Mathew R, anh ấy đã đưa ra một ý tưởng tốt về việc sử dụng bom khi ai thấy trước một tình huống bất hợp pháp có thể xảy ra.
Vishnu

@Vishnu Tôi đã viết thế hệ hiện tại , sẽ là Bejeweled 3, và điều này chỉ áp dụng cho chế độ vô tận (hoặc chế độ Zen hoặc bất cứ điều gì). Tôi biết rằng đây không phải là trường hợp trong phiên bản cổ điển ...
bummzack
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.