Studio, Entegre Geliştirme Ortamlarında (IDE'ler) yaygın olarak bulunan birçok hata ayıklama aracı ve iş akışı sunar. Bu araçlar, betikler çalışırken hataları incelemenize ve çözmenize yardımcı olur.
Kesme Noktası ile Hata Ayıklama
Kesme noktaları, betiklerinizin belirli satırlarda çalışmasını durduran veya "kesilen" kontrol noktalarıdır. Durdurma anlarını, oyununuzu incelemek ve hata ayıklamak, izleme değişkenlerini kontrol etmek ve çağrı yığınını incelemek için kullanabilirsiniz. Kesme noktaları, işlevleri hata ayıklamanın en etkili yollarından biridir, bu nedenle en önemli hata ayıklama araçlarından biridir.
Yönetim
Betik Düzenleyici içinde, istediğiniz zaman, oyun testi oturumları sırasında bile, çeşitli türde kesme noktaları ekleyebilir ve bir kesme noktasının yapılandırmasını düzenleyebilirsiniz. Oyun testi oturumu sırasında kesme noktalarını düzenlerseniz, düzenlemeler oturum sona erdikten sonra bile devam eder. Ayrıca, oyun testi oturumunuzu aktif olarak durduran bir kesme noktasını da düzenleyebilirsiniz, ancak değişiklikler bir sonraki oyun testi oturumuna kadar uygulanmaz.
Ekle
Kesme noktaları, birden fazla varyasyona sahiptir ve yürütülebilir kodun herhangi bir satırına aşağıdaki gibi eklenebilir:
Bir kod satırında standart bir kesme noktası eklemek için, satır numarasının hemen sağındaki boşluğa tıklayın. Alternatif olarak, boşluğa sağ tıklayın ve Kesme Noktası Ekle seçeneğini seçin. Kesme noktası simgesi kırmızı bir daire olarak görünür.

Devre Dışı Bırak
Bir kesme noktasını silmeden geçici olarak devre dışı bırakmak için aşağıdaki iş akışlarından herhangi birini kullanın:
- Kesme noktasının simgesine tıklayın.
- Kesme noktasının simgesine sağ tıklayın ve Kesme Noktasını Devre Dışı Bırak seçeneğini seçin.
- Kesme noktasını düzenleyin ve Etkin onay kutusunu değiştirin.
Devre dışı bırakılmış bir kesme noktası, etkin simgesinin boş bir versiyonu olarak görünür; örneğin, devre dışı bırakılmış standart bir kesme noktası için boş bir daire veya devre dışı bırakılmış bir logpoint için boş bir elmas.


Sil
Bir kesme noktasını silmek için, simgesine orta tıklayın veya simgesine sağ tıklayın ve Kesme Noktasını Sil seçeneğini seçin.
Düzenle
Bir kesme noktasının yapılandırmasını istediğiniz zaman, oyun testi oturumları sırasında bile düzenleyebilirsiniz. Oyun testi oturumu sırasında kesme noktalarını düzenlerseniz, düzenlemeler oturum sona erdikten sonra bile devam eder. Ayrıca, oyun testi oturumunuzu aktif olarak durduran bir kesme noktasını da düzenleyebilirsiniz, ancak değişiklikler bir sonraki oyun testi oturumuna kadar uygulanmaz.
Bir kesme noktasını düzenlemek için:
Kesme noktası simgesine sağ tıklayın ve Kesme Noktasını Düzenle seçeneğini seçin.
Kesme Noktasını Düzenle penceresinde, kesme noktasını istediğiniz gibi yapılandırın. Hata ayıklama ihtiyaçlarınıza en iyi şekilde uyacak şekilde bu yapılandırmaları bir araya getirebilirsiniz.
Seçenek Açıklama Koşul Kesme noktasının etkinleşip etkinleşmeyeceğini belirleyen isteğe bağlı bir ifadedir. Koşul boşsa, kesme noktası her zaman etkinleşir. Koşul varsa, kesme noktası bir koşullu kesme noktası haline gelir ve yalnızca koşul doğruysa etkinleşir. Örneğin, kesme noktasının yalnızca var değişkeni 10 olduğunda etkinleşmesini istiyorsanız, koşulu var == 10 olarak ayarlayın. Log Mesajı Kesme noktası vurulduğunda Çıktı penceresine yazdırılan bir ifadedir. Log mesajının formatı, bir print() ifadesinin formatıyla aynıdır. Örneğin, log mesajını "Değişkenin değeri:", var olarak ayarlarsanız, print("Değişkenin değeri:", var) ile aynı mesajı yazdırırsınız. Yürütmeyi Devam Ettir Kesme noktası etkinleştiğinde betiği durdurup durdurmayacağını belirler. Bu seçenek, eklenen kesme noktası bir logpoint değilse varsayılan olarak devre dışıdır. Vurulduğunda Kesme Noktasını Kaldır Seçiliyse, kesme noktası ilk oyun testi oturumundan sonra kendini otomatik olarak kaldırır, bu da onu geçici bir kesme noktası haline getirir. Tetikleme Yeri Bir kesme noktasının bağlamı, İstemci (istemci tarafı betikleri), Sunucu (sunucu tarafı betikleri) veya Düzenleme (hata ayıklama eklenti betikleri) üzerinde etkinleşip etkinleşmeyeceğini belirler. Özel Bağlam seçeneğini seçerseniz, pencere mevcut tetikleme bağlamlarını gösterir.
İş Akışı
Kesme noktası ile hata ayıklama için tipik iş akışı aşağıdaki gibidir:
Hata ayıklamak istediğiniz betiği açın ve incelemek istediğiniz kod satırlarına kesme noktaları ekleyin.
Studio'nun mezzanininden, hata ayıklamaya başlamak için bir oyun testi başlatın.

Betik bir kesme noktasına ulaştığında, oyun testi oturumu durur; bu kesme noktası yapılandırılmışsa yürütmeye devam eder. Kesme noktasının üzerinde sarı bir ok, bir sonraki çalışacak kod satırını gösterir.

Betik durduğunda, değişken değerleri ve işlev yürütmeleri hakkında bilgi bulmak için Kesme Noktaları penceresini, İzleme penceresini, Çağrı Yığını penceresini, Çıktı penceresini ve Betik Düzenleyici penceresini inceleyin.
Bir kesme noktasına ulaştıktan sonra kodu yürütmeye devam etmek için mezzaninde Betikleri Devam Ettir butonuna tıklayın.

Ayrıca, mezzanindeki adım butonlarıyla kodu bir satırda bir kez yürütmek de mümkündür:

İşlem Kısayol Açıklama İçine Adım F11 İçine Adım butonu, hata ayıklayıcıyı mevcut satırdaki işlevin koduna taşır. Eğer mevcut satırda bir işlev yoksa, hata ayıklayıcı bir sonraki satıra geçer. Üzerine Adım F10 Üzerine Adım butonu, hata ayıklayıcıyı bir sonraki kod satırına taşır, işlevlerin içine girmeden. Dışına Adım ShiftF11 Dışına Adım butonu, hata ayıklayıcıyı mevcut işlevden çıkarır ve işlev çağrısından sonraki bir sonraki kod satırına taşır. Eğer mevcut satır bir işlevin içinde değilse, hata ayıklayıcı bir sonraki satıra geçer. Mevcut oturumu hata ayıklamayı bitirdiğinizde, Durdur butonuna tıklayın.

İzleme
Studio, hata ayıklama sırasında değişken değerlerini ve işlev yürütmelerini izlemek için birden fazla pencere ve araç içerir. Bu bilgilerle, betiklerinizdeki çoğu sorunun kök nedenini bulabilirsiniz.

Kesme Noktaları
Kesme Noktaları penceresi, tüm betikler içindeki tüm kesme noktalarını gösteren birleşik bir görünüm sunar. Açmak için, Studio'nun Betik sekmesi araç çubuğundan Kesme Noktaları seçeneğine tıklayın veya Pencere ⟩ Hata Ayıklama menüsüne gidip Kesme Noktaları seçeneğini açın.
Pencerede, Betik ve Satır sütunları her zaman görüntülenir ve diğer yapılandırma sütunlarını üst sağ köşedeki ⋮ menüsünden açıp kapatabilirsiniz. Betik sütununda, herhangi bir kesme noktasına sağ tıklayarak düzenleme, devre dışı bırakma/etkinleştirme, silme veya kesme noktasının satırına atlama seçeneklerini içeren bir menü açabilirsiniz.

Hata ayıklama oturumu sırasında, en soldaki sütun (x3) gösterir; bu, kesme noktasının birden fazla bağlamı (İstemci, Sunucu, Düzenleme) olduğunu belirtir. Herhangi bir kesme noktasının dalını genişlettiğinizde, belirli bir bağlam için devre dışı bırakma/etkinleştirme seçeneğini seçmek için simgeye tıklayabilirsiniz; örneğin, bir kesme noktasını yalnızca İstemci bağlamında devre dışı bırakırken Sunucu bağlamında etkin bırakabilirsiniz.

Çağrı Yığını
Çağrı Yığını penceresi, Studio'nun Betik sekmesi araç çubuğundan veya Pencere ⟩ Hata Ayıklama menüsünden erişilebilir ve hata ayıklayıcı bir kesme noktasına ulaştığında hangi kod satırının bir sonraki çalışacağını gösterir. Eğer bir işlevi başka bir işlevin içinden çağırıyorsanız, bu işlevlerin hangi satırlardan çağrıldığını gösterir; böylece gerçek çağrı akışının beklenen akışla eşleşip eşleşmediğini doğrulayabilirsiniz.


Betik kesme noktalarında durduğunda, iş akışı bölümünde belirtildiği gibi, adım butonlarını kullanarak bir işlev/satırın içine, üzerine veya dışına adım atabilirsiniz.

İzleme
İzleme penceresi, Studio'nun Betik sekmesi araç çubuğundan veya Pencere ⟩ Hata Ayıklama menüsünden erişilebilir ve kesme noktaları arasında adım atarken değişken ve ifade değerlerini aktif olarak izlemenizi sağlar.
Değişkenler sekmesi, kapsamda mevcut olan değişkenler hakkında bilgi gösterir; pencerenin üst çubuğundaki Tüm Kapsamlar butonuna tıklayarak filtrelenebilir. Bir dalı genişlettiğinizde, o değişkenin veya örneğin üyeleri ve değerleri gösterilir. Ayrıca, herhangi bir değişkeni Betik Düzenleyici içinde çift tıklayarak vurgulayabilir, sağ tıklayabilir ve açılan menüden İzlemeye Ekle seçeneğini seçebilirsiniz.


Betik Düzenleyici
Hata ayıklayıcı, Betik Düzenleyici ile entegre edilmiştir. Oyun bir betikte bir kesme noktasında durduğunda, bir değişkenin adının üzerine gelerek değerini görebilirsiniz. Örneğin, bir tablonun bileşimini ve içindeki anahtar/değerleri görebilirsiniz.

Ek Hata Ayıklama Araçları
Hata ayıklayıcıya ek olarak, Studio, oyununuzdaki sorunları ve hataları düzeltmek için ek hata ayıklama araçları sunar.
Komut Çubuğu
Komut Çubuğu, oyun çalışırken Luau komutları çalıştırmanıza olanak tanır. Studio'da Pencere ⟩ Betik menüsünden ve Geliştirici Konsolu içinde mevcuttur.
Geliştirici Konsolu
Geliştirici Konsolu, istemci ve sunucu çıktısı, bellek kullanımı, ağ performansı ve daha fazlası dahil olmak üzere geniş bir ayrıntı yelpazesi sunar. Bir oyunu test ederken veya oynarken konsolu açmak için, sohbet penceresine /console yazın veya F9 tuşuna basın.
Log Dosyaları
Bir betik Studio'da veya oyuncu uygulamasında yazdırıldığında veya hata aldığında, uygulama mesajı yerel dosya sisteminde bir log dosyasına kaydeder. Bu dosyalar, işletim sistemine bağlı olarak farklı yerlerde bulunur.
Windows
Windows'ta log dosyalarına erişmek için:
- Dosya Gezgini'ni açın.
- %LOCALAPPDATA%\Roblox\logs dizinine gidin.
- Bir log dosyasına çift tıklayarak açın. Aynı XXXXX değerine sahip loglar, aynı Studio oturumundan gelmektedir.
Mac
Mac'te log dosyalarına erişmek için:
- Finder'ı açın.
- Menü çubuğunda Git ⟩ Klasöre Git... seçeneğini seçin.
- Diyalog kutusuna ~/Library/Logs/Roblox yazın.
- Sonucu çift tıklayarak Roblox log dizinine gidin.
- Dizinde, bir log dosyasına çift tıklayarak açın.
iOS
iOS loglarını bir Mac kullanarak veya bir iOS cihazı kullanarak toplayabilirsiniz.
iOS log dosyalarına Mac'te erişmek için:
- iOS cihazını bir Mac'e bağlayın.
- Finder'ı açın.
- Yardımcı Programlar'a gidin ve Konsol uygulamasını açın.
- Konsol uygulamasında gerçek zamanlı logları doldurmak için, yan panelden iOS cihazını seçin, Başlat butonuna tıklayın ve iOS cihazında sorunu yeniden oluşturun.
- Konsol uygulamasında arşivlenmiş logları doldurmak için, Terminal'de sudo log collect --device-name "[iOS Cihaz Adı]" komutunu çalıştırın. Cihaz adında kesme işareti olmadığından emin olun, aksi takdirde komutu çalıştırırken hata alabilirsiniz.
Android
Android'de log dosyalarına erişmek için:
- Ayarlar ⟩ Sistem ⟩ Geliştirici seçenekleri'ne gidin.
- Geliştirici seçenekleri'ni açın.
- Bir bilgisayarda Android Studio indirin ve yükleyin.
- Android Studio'da Logcat'e tıklayın.
- Android cihazını bilgisayara bağlayarak Logcat'i otomatik olarak loglarla doldurun.