ฉันคิดว่าคุณกำลังทำสิ่งนี้ผิด เส้นทางสูงสุดในกราฟที่มีรอบไม่ได้กำหนดทางเทคนิคเพราะมันไม่มีที่สิ้นสุดหากรอบอยู่ระหว่างจุดเริ่มต้นและจุดสิ้นสุด อาจเป็นวิธีที่ฉลาดที่คุณสามารถขยาย / จำกัดความหมายของเส้นทางสูงสุด แต่ฉันไม่คิดว่านั่นเป็นวิธีที่ดีที่สุดที่นี่
คุณไม่ได้พยายามสร้างแบบจำลองเส้นทางยาวที่แท้จริง (เช่นหุ่นยนต์ที่พยายามสำรวจพื้นที่ในแผนที่ให้มากที่สุด) คุณแค่พยายามให้ผู้เล่นสำรวจห้องต่างๆ
ดังนั้นให้โอกาสผู้เล่นค้นหาทางออกสัดส่วนกับร้อยละของแผนที่สำรวจจนถึงทำให้โอกาสที่ผู้เล่นพบทางออกสัดส่วนถึงร้อยละของแผนที่การสำรวจเพื่อให้ห่างไกลสมมติว่ามีห้อง X ในระดับหนึ่งและผู้เล่นได้สำรวจ Y ในครั้งต่อไปที่ตัวละครเข้ามาในห้องให้ออกจากที่นั่นด้วยความน่าจะเป็น f (Y, X) ตัวอย่างเล็กน้อยของ f อาจเป็น (Y * Y) / (X * X) - เช่นสำหรับ 10 ห้องมีโอกาส 100% ที่ทางออกในห้องสุดท้ายโอกาส 81% มีโอกาสในห้องถัดจากห้องสุดท้าย - และเพียง โอกาส 1% อยู่ในห้องแรก
คุณสามารถปรับแต่งสมการได้ แต่คุณต้องการทำให้เกมรู้สึกถูกต้องและอาจมอบความสามารถบางอย่างให้กับผู้เล่นเพื่อสร้างโอกาส ส่วนสำคัญคืออย่าสร้างทางออกจนกว่าตัวละครจะเข้าสู่ห้องจริง วิธีนี้เป็นภูมิคุ้มกันต่อความรู้ของผู้เล่นของอัลกอริทึมการสร้างดันเจี้ยน; แม้ว่าผู้เล่นจะมีรูปแบบการเคลื่อนไหวที่แปลกประหลาดเช่นการกระโดดของอัศวินใน NetHack หรือการเคลื่อนย้ายทางไกลพวกเขาจะต้องสำรวจห้องเพิ่มเติมเพื่อหาทางออก
หากคุณต้องสร้างทางออกแบบคงที่คุณสามารถใช้แนวคิดเดียวกันกับอักขระเสมือนได้ ลองนึกภาพการเติมน้ำท่วมเริ่มต้นจากตำแหน่งของตัวละครเคลื่อนที่ครั้งเดียวซ้ำแต่ละเซลล์ ห้องสุดท้ายที่จะถูกเติมคือห้องที่ทางออกอยู่ (อันที่จริงเซลล์สุดท้ายที่จะเต็มคือเซลล์ที่อยู่ไกลที่สุดจากผู้เล่น) อย่างไรก็ตามในกรณีนี้ผู้เล่นมีข้อมูลเพิ่มเติมเกี่ยวกับทางออก - หากพวกเขาอยู่ทางซ้ายก็เป็นไปได้มากที่สุดทางด้านขวา - และหากพวกเขาสามารถส่งผ่านทางไกลได้
ในที่สุดฉันเพิ่งจบโร๊คไลค์ที่ทางออกเกิดขึ้นที่อีกด้านหนึ่งของแผนที่จากตัวละครของผู้เล่นและจากนั้นก็เดินสุ่ม บางรายการในดันเจี้ยนทำให้มองเห็นได้บนแผนที่โดยที่ไม่ต้องหิวเร็ว ฉันไม่ได้ทำการวิเคราะห์ใด ๆ แต่มันรู้สึกอย่างแน่นอนว่าฉันต้องสำรวจแผนที่เพิ่มเติมเพื่อค้นหามันและทำให้ระดับความรู้สึกมีเอกลักษณ์