Mayın Tarlası Oyunu Matlab Kodları

Herkese merhaba. Mayın tarlası oyunu 1990 yılında Microsoft tarafından çıkarıldı ve o zamanlar Valorant, PUBG, LoL oynar gibi mayın tarlası oynardık. Yani bendeki ve benim dönemimdeki (Y kuşağı) etkisi / değeri büyüktür.

Bu nedenle daha önceden mayın tarlası oyununun Python kodlarını paylaşmama rağmen şimdi de Matlab ile aynı oyunun nasıl yazıldığını göreceksiniz.

Aslında mayın tarlası (Minesweeper) oyunu benzeri başka oyunlar da bulunmaktadır.  İşte bazı örnekler:

  1. Minesweeper X: Bu oyun, klasik mayın tarlası oyununun biraz daha zorlu bir versiyonudur. Oyun tahtası daha büyüktür ve mayınlar daha yoğun bir şekilde yerleştirilmiştir. Ayrıca, oyun tahtasında bazı özel hücreler bulunur ve bu hücrelerin açılması ekstra puan kazandırır.

  2. Hexagonal Minesweeper: Bu oyun, klasik mayın tarlası oyununun altıgen hücrelerle yeniden tasarlanmış versiyonudur. Oyun, klasik versiyona benzer şekilde oynanır, ancak altıgen hücrelerin düzeni oyun dinamiklerinde farklılık yaratır.

  3. Nonogram: Bu oyun, bir resmin renkli piksellerini bir ızgara üzerinde doğru şekilde açığa çıkarma hedefiyle oynanır. Her satır ve sütun, açılması gereken hangi piksellerin olduğunu gösteren bir dizi numara ile işaretlenir. Oyuncular, bu numaraları kullanarak ızgarayı doğru şekilde tamamlamaya çalışırlar.

  4. Sudoku: Bu oyun, 9x9 boyutlu bir ızgara üzerinde oynanır ve oyuncuların her satırda, her sütunda ve her 3x3 bölgede sayıları doğru şekilde yerleştirmesi gerekmektedir. Oyun, matematiksel zekayı test etmek için tasarlanmıştır ve genellikle diğer mantık oyunlarına benzer şekilde oynanır.

Bu oyunlar, birçok farklı platformda mevcut olan popüler mantık oyunlarıdır. Bu oyunların her biri, farklı zorluk seviyeleri ve oyun dinamikleri sunar ve birçok insanın zihinsel becerilerinizi geliştirmeye yardımcı olabilir. Şimdi gelelim Matlab ile Mayın Tarlası (Minesweeper) oyununun kodlarına:

% Oyun tahtası boyutları
rows = 10;
cols = 10;

% Mayın sayısı
num_mines = 10;

% Tahta oluştur
board = zeros(rows, cols);

% Mayınları yerleştir
mine_spots = randperm(rows*cols, num_mines);
board(mine_spots) = -1;

% Boş hücreleri sayılarla doldur
for i = 1:rows
    for j = 1:cols
        if board(i,j) == -1
            continue
        end
        neighbors = get_neighbors(board, i, j);
        num_mine_neighbors = sum(neighbors(:) == -1);
        board(i,j) = num_mine_neighbors;
    end
end

% Oyunu oynat
game_over = false;
while ~game_over
    disp(board) % Tahtayı göster
    
    % Kullanıcının tahminini al
    row_guess = input('Guess row:');
    col_guess = input('Guess col:');
    
    % Seçilen hücreyi aç
    if board(row_guess, col_guess) == -1
        fprintf('Game over! You hit a mine.\n');
        game_over = true;
    else
        board(row_guess, col_guess) = -2; % Açılan hücreyi işaretle
    end
    
    % Tüm boş hücreleri açtıysa oyunu kazandın
    if all(board(:) ~= 0 & board(:) ~= -1 & board(:) ~= -2)
        disp(board) % Tahtayı göster
        fprintf('You win! Congratulations.\n');
        game_over = true;
    end
end

% İşlevler
function neighbors = get_neighbors(board, row, col)
    [rows, cols] = size(board);
    row_range = max(row-1,1):min(row+1,rows);
    col_range = max(col-1,1):min(col+1,cols);
    neighbors = board(row_range, col_range);
end

Bu örnekte, oyun tahtasının boyutları, mayınların sayısı ve tahtanın içeriği önceden belirlenmiş olarak tanımlanmıştır. board adlı bir 2 boyutlu dizi, tahtanın her bir hücresinin durumunu tutar. Tahtanın oluşturulması ve mayınların yerleştirilmesi, num_mines değişkenine bağlı olarak rastgele yapılır. Kullanıcının tahminlerinin alınması, tahta üzerindeki hücrelerin işaretlenmesi ve oyunun sonlandırılması ile ilgili işlevler tanımlanmıştır.

Mayın tarlası oyunu, Python da olduğu gibi MATLAB'da da yazılması oldukça kolay bir oyundur. Kodları kopyala yapıştır yaparak test edebilir, örneği kendi isteklerinize göre düzenleyebilirsiniz. Minesweeper oyununun gelişmiş bir versiyonunu hazırlayan arkadaşlar kodlarını benimle paylaşırsa web sitemde seve seve paylaşırım... ;)

matlab, 'matlab mayın tarlası oyunu', 'matlab ile oyun', 'matlab mayın tarlası', 'matlab mayın tarlası kodları'', matlab mayın tarlası oyunu kodu', 'oyun kodlama örnekleri', 'örnek oyun kodu', 'matlab örnek oyun kodu', minesweeper

 

Bilgilendirme

www.aliosmangokcan.com sayfasına gösterdiğiniz ilgiden dolayı teşekkür ederim. İçeriklerle ilgili duygu ve düşüncelerinizi mail adresim üzerinden iletebilirsiniz...

 

İstatistikler

  • Kullanıcılar 1
  • Makaleler 112
  • Makale Görüntüleme 867126