Làm thế nào tôi có thể tạo một thế giới ngẫu nhiên trên thế giới trong một công cụ gạch?


22

Tôi đang thiết kế một trò chơi đang làm việc trên một công cụ gạch cổ điển, nhưng thế giới của chúng được tạo ra ngẫu nhiên. Có những trò chơi hoặc thuật toán hiện có làm điều này? Các thuật toán tạo thủ tục mà tôi đã tìm thấy không bao giờ sử dụng hệ thống ô vuông ... Điều gì sẽ là cách tốt nhất để tạo ra cả một "thế giới" bằng hệ thống ô vuông? Tôi không nói về mê cung của các khối, nhưng một "bản đồ thế giới" tổng thể cảm ơn


5
Điều này đã được hỏi nhiều lần, hãy thử tìm kiếm ở đây: thế hệ ngẫu nhiên thế giới Chỉnh sửa: Đây là một cho một công cụ gạch.
Richard Marskell - Drackir

2
-1: Câu hỏi này không thể trả lời được ở dạng hiện tại. Đó là cách quá mơ hồ, chỉ nói rằng đó là một "bản đồ thế giới" được làm bằng gạch. OK, loại gạch nào? Những viên gạch này làm gì về mặt trò chơi? Đây có thể là bất cứ thứ gì từ Final Fantasy đến Civilization, và "cách tốt nhất" để tạo địa hình cho hai trò chơi này là hoàn toàn khác nhau . Không có cách nào để cung cấp một câu trả lời sẽ cung cấp lối chơi tốt mà không biết gì về cách bạn dự định sử dụng nó. Trước khi bạn có thể nói về việc tạo thủ tục của bất cứ điều gì, bạn phải có thể tự tạo một phiên bản tốt của nó.
Nicol Bolas

Câu trả lời:


34

Câu hỏi của bạn dẫn bạn vào lĩnh vực tạo nội dung thủ tục.

Thế hệ dựa trên gạch có nguồn gốc từ phương pháp liên tục / tương tự

Bằng cách liên tục, tôi có nghĩa là một cái gì đó không phải là gạch, một cái gì đó là tương tự, một ví dụ là một bản đồ vector. Bạn có thể sử dụng bất kỳ kỹ thuật liên tục để tạo, và sau đó định lượng nó. Ví dụ: tạo hình ảnh nhiễu Perlin có độ phân giải cao, sau đó giảm độ phân giải của nó để phù hợp với kích thước sơ đồ của bạn và lấy mẫu các pixel để cung cấp cho bạn một sơ đồ chiều cao. (Bản đồ chiều cao có thể là điểm khởi đầu tuyệt vời cho thế giới của bạn.) Điều này bởi vì bạn đã đề cập đến việc xem các nguồn không chỉ cho bạn phải làm gì liên quan đến cách áp dụng nó vào gạch.

Thế hệ dựa trên gạch sử dụng phương pháp khắc "chớp mắt"

Với cách tiếp cận dựa trên ô (ô), bạn có thể tạo ra một thế hệ mù nơi bạn tạo ra thế giới từng chút một mà không cần nhìn xa hơn, vd. gạch trực tiếp lân cận, nhưng điều này có xu hướng trông giống như công việc của một con côn trùng. Đây là công cụ CA (automata di động) điển hình và hiển thị thông minh quy mô lớn hơn một chút.

Thế hệ dựa trên gạch sử dụng chế độ xem thế giới rộng hơn, từ trên xuống

Điều này cần một cách tiếp cận thông minh hơn để xây dựng ngói thế giới bằng ngói, vì trước tiên nó sẽ xây dựng nó theo từng khu vực. Theo cách này, bạn có quyền kiểm soát ví dụ. quần xã sinh vật khác nhau, khu vực chính trị, vv như Tarn Adams đã làm trong Pháo đài Lùn. Tất nhiên điều này đòi hỏi bạn phải suy nghĩ một chút về cách bạn muốn phân chia thế giới của mình. Có nhiều cách, bạn sẽ phải làm nghiên cứu của riêng bạn.


Tạo nội dung theo thủ tục là một chủ đề khá rộng, vì vậy bạn sẽ cần đọc rất nhiều trước khi có ý tưởng vững chắc về những gì bạn thực sự muốn và làm thế nào để tìm hiểu về nó - ma quỷ luôn ở trong chi tiết . Vì lý do đó, một số nguồn tốt cho việc này là danh sách gửi thư rec.games.roguelike.development (một tấn thông tin về thế giới thủ tục dựa trên gạch), các trang lập trình trò chơi của AmitP (xem trong "Chủ đề khác") và cuối cùng nhưng không kém phần quan trọng, các nội dung thủ tục thế hệ Wiki .


Không có phương pháp nào trong số này có tính đến mục đích chơi trò chơi của bản đồ. Bất kỳ phương pháp nào trong số này có thể tạo ra các bản đồ chơi khủng khiếp. Tất nhiên, OP đã không nói bản đồ tốt sẽ trông như thế nào, vì vậy ...
Nicol Bolas

6
@NicolBolas Chính xác. OP cần một cái gì đó để tiếp tục. Tôi không cần phải viết một bài luận đầy đủ cho mỗi câu trả lời (mặc dù bằng chứng cho thấy rằng tôi làm điều đó thường xuyên đủ).
Kỹ sư

Đồng ý, "có thể chơi" là một heuristic tốt nhất để lại cho OP. "Có thể phát" là một lớp trên thế hệ thực của "thế giới ngẫu nhiên" và không bắt buộc bởi câu hỏi ban đầu.
Patrick Hughes

6

Thế hệ thủ tục là một chủ đề lớn. Làm thế nào sâu bạn sẵn sàng để đi?

Câu trả lời của Nick Wiggill là hàng đầu. Tôi muốn thêm vào điều đó bằng cách đề nghị bạn xem xét một số phương pháp toán học để tạo địa hình ngẫu nhiên mạch lạc.

Tiếng ồn Perlin cung cấp một cách tuyệt vời để tạo ra sự ngẫu nhiên được làm mịn và hoạt động tuyệt vời cho mọi loại địa hình. Xói mòn mô phỏng có thể mang lại ấn tượng thực tế về chiều cao (mặc dù bạn có thể không cần điều đó vì bạn đang làm một trò chơi dựa trên gạch)

Rất nhiều kỹ thuật được thảo luận trong các bài báo như thế này của Oddlabs , người tạo ra Rắc rối bộ lạc, cũng hoạt động tốt ở dạng 2D và ở độ phân giải thấp. Nếu bạn cảm thấy thoải mái hơn với cách tiếp cận này, học những kỹ thuật này có thể đáng để bạn sử dụng.


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.