בחלק זה וידאנו שכאשר יוצרים מפה אקראית ושמים בתוכה את השחקן, הוא לא "תקוע" בתוך הר או מערה קטנה שאי-אפשר לצאת ממנה. כתבנו קוד, שיוצר מפה אקראית של מערה, מציב את השחקן בנקודה אקראית, ובודק שאפשר להגיע ממנה ל 100- אריחים שונים לפחות. השתמשנו באלגוריתם BFS על מנת לבדוק האם מהמיקום האקראי של השחקן ניתן להגיע ל- 100 אריחים שונים. אם אי-אפשר להגיע ל- 100 אריחים שונים לפחות, המשחק שם את השחקן בנקודה אקראית אחרת ובודק שוב, עד שהשחקן מגיע לנקודה המקיימת את התנאי.
ע"מ לשחק במשחק לחץ כאן
הצבת בשחקן בנקודה אקראית: אם לשחקן אין מיקום על המסך, אז נשים אותו בנקודה אקראית. לאחר שלשחקן יש מיקום על המסך - נבדוק אם המיקום הוא חוקי (לא נמצא על הר).
הפונקצייה PlacePlayerOnRandomAllowedTile מוצאת את המיקומים האפשריים שהשחקן יכול להיות בהם ושמה את השחקן במיקום רנדומלי מבניהם:
הפונקצייה ValidatePlayerPosition בודקת אם מיקום השחקן הוא חוקי, כלומר, ניתן להגיע ממנו ל-100 אריחים שונים:


