Studio cung cấp nhiều công cụ và quy trình gỡ lỗi thường thấy trong các Môi trường Phát triển Tích hợp (IDE). Những công cụ này giúp bạn kiểm tra và giải quyết lỗi trong các kịch bản khi chúng chạy.
Gỡ lỗi điểm dừng
Điểm dừng là các điểm kiểm tra tạm dừng hoặc "ngắt" việc thực thi các kịch bản của bạn tại các dòng cụ thể. Bạn có thể sử dụng các khoảng dừng này để kiểm tra và gỡ lỗi trò chơi của mình, theo dõi các biến và kiểm tra ngăn gọi. Điểm dừng là một trong những cách hiệu quả nhất để gỡ lỗi các hàm, vì vậy chúng là một trong những công cụ gỡ lỗi quan trọng nhất.
Quản lý
Trong Trình chỉnh sửa kịch bản, bạn có thể chèn nhiều loại điểm dừng và chỉnh sửa cấu hình của một điểm dừng bất kỳ lúc nào, bao gồm cả trong các phiên thử nghiệm. Nếu bạn chỉnh sửa các điểm dừng trong một phiên thử nghiệm, các chỉnh sửa sẽ được giữ lại ngay cả sau khi bạn kết thúc phiên đó. Bạn cũng có thể chỉnh sửa một điểm dừng đang tạm dừng phiên thử nghiệm của bạn, nhưng các thay đổi sẽ không được áp dụng cho đến phiên thử nghiệm tiếp theo.
Chèn
Điểm dừng có nhiều biến thể và có thể được chèn vào bất kỳ dòng mã thực thi nào như sau:
Để chèn một điểm dừng tiêu chuẩn tại một dòng mã, hãy nhấp vào khu vực bên phải số dòng của nó. Ngoài ra, nhấp chuột phải vào khu vực đó và chọn Chèn Điểm dừng. Biểu tượng điểm dừng xuất hiện dưới dạng một vòng tròn đỏ.

Vô hiệu hóa
Để tạm thời vô hiệu hóa một điểm dừng mà không xóa nó, hãy sử dụng bất kỳ quy trình nào sau đây:
- Nhấp vào biểu tượng của điểm dừng.
- Nhấp chuột phải vào biểu tượng của điểm dừng và chọn Vô hiệu hóa Điểm dừng.
- Chỉnh sửa điểm dừng và chuyển đổi hộp kiểm Đã bật của nó.
Một điểm dừng bị vô hiệu hóa xuất hiện dưới dạng phiên bản rỗng của biểu tượng đã bật của nó, ví dụ như một vòng tròn rỗng cho một điểm dừng tiêu chuẩn bị vô hiệu hóa, hoặc một hình thoi rỗng cho một điểm ghi bị vô hiệu hóa.


Xóa
Để xóa một điểm dừng, nhấp giữa vào biểu tượng của nó hoặc nhấp chuột phải vào biểu tượng của nó và chọn Xóa Điểm dừng.
Chỉnh sửa
Bạn có thể chỉnh sửa cấu hình của một điểm dừng bất kỳ lúc nào, bao gồm cả trong các phiên thử nghiệm. Nếu bạn chỉnh sửa các điểm dừng trong một phiên thử nghiệm, các chỉnh sửa sẽ được giữ lại ngay cả sau khi bạn kết thúc phiên đó. Bạn cũng có thể chỉnh sửa một điểm dừng đang tạm dừng phiên thử nghiệm của bạn, nhưng các thay đổi sẽ không được áp dụng cho đến phiên thử nghiệm tiếp theo.
Để chỉnh sửa một điểm dừng:
Nhấp chuột phải vào biểu tượng điểm dừng và chọn Chỉnh sửa Điểm dừng.
Trong cửa sổ Chỉnh sửa Điểm dừng, cấu hình điểm dừng theo mong muốn. Bạn có thể kết hợp các cấu hình này với nhau để phù hợp nhất với nhu cầu gỡ lỗi của bạn.
Tùy chọn Mô tả Điều kiện Một biểu thức tùy chọn xác định xem điểm dừng có kích hoạt hay không. Nếu điều kiện trống, điểm dừng luôn kích hoạt. Nếu điều kiện tồn tại, điểm dừng trở thành một điểm dừng điều kiện và chỉ kích hoạt nếu điều kiện là đúng. Ví dụ, nếu bạn muốn điểm dừng kích hoạt chỉ khi biến var bằng 10, hãy đặt điều kiện thành var == 10. Thông điệp ghi Một biểu thức in ra cửa sổ Đầu ra khi điểm dừng được chạm. Định dạng của thông điệp ghi giống như của một câu lệnh print(). Ví dụ, hãy đặt thông điệp ghi thành "Giá trị của var:", var để xuất ra cùng một thông điệp như print("Giá trị của var:", var). Tiếp tục thực thi Xác định xem điểm dừng có tạm dừng kịch bản nếu nó kích hoạt hay không. Tùy chọn này bị vô hiệu hóa theo mặc định trừ khi điểm dừng được chèn là một điểm ghi. Xóa Điểm dừng khi chạm Nếu được chọn, điểm dừng sẽ tự động xóa bản thân sau phiên thử nghiệm đầu tiên, hiệu quả làm cho nó trở thành một điểm dừng tạm thời. Kích hoạt Tại Ngữ cảnh của một điểm dừng xác định xem nó có nên kích hoạt trên Khách hàng (kịch bản phía khách hàng), Máy chủ (kịch bản phía máy chủ), hay Chỉnh sửa (gỡ lỗi các kịch bản plugin). Nếu bạn chọn Ngữ cảnh Tùy chỉnh, cửa sổ sẽ chỉ ra các ngữ cảnh kích hoạt hiện tại.
Quy trình làm việc
Quy trình làm việc điển hình cho gỡ lỗi điểm dừng như sau:
Mở kịch bản mà bạn muốn gỡ lỗi và chèn điểm dừng vào các dòng mã mà bạn muốn kiểm tra.
Từ mezzanine của Studio, khởi động một phiên thử nghiệm để bắt đầu gỡ lỗi.

Khi kịch bản chạm vào một điểm dừng, phiên thử nghiệm sẽ tạm dừng trừ khi điểm dừng đó được cấu hình để tiếp tục thực thi. Một mũi tên màu vàng trên điểm dừng cho biết dòng mã nào sẽ thực thi tiếp theo.

Khi kịch bản tạm dừng, hãy kiểm tra cửa sổ Điểm dừng, cửa sổ Theo dõi, cửa sổ Ngăn gọi, cửa sổ Đầu ra và Trình chỉnh sửa kịch bản để tìm thông tin về giá trị biến và các lần thực thi hàm.
Để tiếp tục thực thi mã sau khi chạm vào một điểm dừng, hãy nhấp vào Tiếp tục Kịch bản trong mezzanine.

Bạn cũng có thể thực thi mã từng dòng một với các nút bước trong mezzanine:

Hành động Tổ hợp phím Mô tả Bước vào F11 Nút Bước vào di chuyển trình gỡ lỗi vào mã của hàm trên dòng hiện tại. Nếu không có hàm nào trên dòng hiện tại, trình gỡ lỗi sẽ di chuyển đến dòng tiếp theo. Bước qua F10 Nút Bước qua di chuyển trình gỡ lỗi đến dòng mã tiếp theo, không di chuyển vào các hàm. Bước ra ShiftF11 Nút Bước ra di chuyển trình gỡ lỗi ra khỏi hàm hiện tại và đến dòng mã tiếp theo sau cuộc gọi hàm. Nếu dòng hiện tại không nằm trong một hàm, trình gỡ lỗi sẽ di chuyển đến dòng tiếp theo. Khi bạn đã hoàn tất gỡ lỗi phiên hiện tại, hãy nhấp vào nút Dừng.

Giám sát
Studio bao gồm nhiều cửa sổ và công cụ để giám sát giá trị biến và các lần thực thi hàm trong khi gỡ lỗi. Với thông tin này, bạn có thể tìm ra nguyên nhân gốc rễ của hầu hết các vấn đề trong các kịch bản của bạn.

Điểm dừng
Cửa sổ Điểm dừng là một cái nhìn thống nhất cho thấy tất cả các điểm dừng trong tất cả các kịch bản. Để mở nó, hãy nhấp vào Điểm dừng từ thanh công cụ tab Kịch bản của Studio, hoặc điều hướng đến menu Cửa sổ ⟩ Gỡ lỗi và bật Điểm dừng.
Trong cửa sổ, các cột Kịch bản và Dòng luôn hiển thị, và bạn có thể bật/tắt các cột cấu hình khác thông qua menu ⋮ ở góc trên bên phải. Trong cột Kịch bản, nhấp chuột phải vào bất kỳ điểm dừng nào để hiện ra menu tùy chọn để chỉnh sửa, vô hiệu hóa/bật, xóa, hoặc nhảy đến dòng của điểm dừng trong kịch bản.

Trong một phiên gỡ lỗi, cột bên trái nhất hiển thị (x3) cho biết nhiều ngữ cảnh (Khách hàng, Máy chủ, Chỉnh sửa) cho điểm dừng. Bằng cách mở rộng nhánh của bất kỳ điểm dừng nào, bạn có thể nhấp vào biểu tượng bên cạnh một ngữ cảnh cụ thể để vô hiệu hóa/bật nó cho ngữ cảnh đó, chẳng hạn như vô hiệu hóa một điểm dừng chỉ trong ngữ cảnh Khách hàng trong khi giữ nó được bật trong ngữ cảnh Máy chủ.

Ngăn gọi
Cửa sổ Ngăn gọi, có thể truy cập từ thanh công cụ tab Kịch bản của Studio hoặc menu Cửa sổ ⟩ Gỡ lỗi, cho thấy dòng mã nào sẽ thực thi tiếp theo khi trình gỡ lỗi đạt đến một điểm dừng. Nếu bạn gọi các hàm từ bên trong các hàm khác, nó chỉ ra các dòng mà các hàm đó đã được gọi từ, cho phép bạn xác nhận xem luồng gọi thực tế có khớp với luồng mong đợi hay không.


Khi kịch bản tạm dừng tại các điểm dừng, hãy sử dụng các nút bước trong mezzanine để bước vào, qua, hoặc ra khỏi một hàm/dòng như đã nêu trong quy trình làm việc.

Theo dõi
Cửa sổ Theo dõi, có thể truy cập từ thanh công cụ tab Kịch bản của Studio hoặc menu Cửa sổ ⟩ Gỡ lỗi, cho phép bạn theo dõi các giá trị biến và biểu thức khi bạn bước qua các điểm dừng.
Tab Biến hiển thị thông tin về các biến hiện tại trong phạm vi, có thể lọc bằng cách nhấp vào nút Tất cả Phạm vi trong thanh trên của cửa sổ. Mở rộng một nhánh cho thấy các thành viên của biến hoặc thể hiện đó và các giá trị của chúng. Bạn cũng có thể theo dõi bất kỳ biến nào bằng cách nhấp đúp để làm nổi bật nó trong Trình chỉnh sửa Kịch bản, nhấp chuột phải và chọn Thêm Theo dõi từ menu popup.


Trình chỉnh sửa kịch bản
Trình gỡ lỗi được tích hợp với Trình chỉnh sửa Kịch bản. Khi trò chơi của bạn tạm dừng tại một điểm dừng trong một kịch bản, bạn có thể di chuột qua tên của một biến để xem giá trị của nó. Ví dụ, bạn có thể thấy thành phần của một bảng và các khóa/giá trị chứa trong đó.

Các công cụ gỡ lỗi bổ sung
Ngoài trình gỡ lỗi, Studio cung cấp các công cụ gỡ lỗi bổ sung để bạn sửa các vấn đề và lỗi trong trò chơi của mình.
Thanh lệnh
Thanh lệnh cho phép bạn chạy các lệnh Luau trong khi trò chơi đang chạy. Nó có sẵn trong Studio từ menu Cửa sổ ⟩ Kịch bản và trong Bảng điều khiển Nhà phát triển.
Bảng điều khiển Nhà phát triển
Bảng điều khiển Nhà phát triển cung cấp một loạt các chi tiết bao gồm đầu ra của khách hàng và máy chủ, mức sử dụng bộ nhớ, hiệu suất mạng, và nhiều hơn nữa. Để mở bảng điều khiển trong khi thử nghiệm hoặc chơi một trò chơi, hãy gõ /console vào trò chuyện hoặc nhấn F9.
Tệp nhật ký
Khi một kịch bản in ra hoặc lỗi trong Studio hoặc ứng dụng người chơi, ứng dụng sẽ ghi lại thông điệp trong một tệp nhật ký trong hệ thống tệp cục bộ. Những tệp này nằm ở các vị trí khác nhau tùy thuộc vào hệ điều hành.
Windows
Để truy cập các tệp nhật ký trên Windows:
- Mở File Explorer.
- Điều hướng đến thư mục %LOCALAPPDATA%\Roblox\logs.
- Nhấp đúp vào một nhật ký để mở nó. Các nhật ký có cùng giá trị XXXXX là từ cùng một phiên Studio.
Mac
Để truy cập các tệp nhật ký trên Mac:
- Mở Finder.
- Trong thanh menu, chọn Đi ⟩ Đi đến Thư mục....
- Trong hộp thoại, nhập ~/Library/Logs/Roblox.
- Nhấp đúp vào kết quả để điều hướng đến thư mục nhật ký Roblox.
- Bên trong thư mục, nhấp đúp vào một nhật ký để mở nó.
iOS
Bạn có thể thu thập nhật ký iOS bằng cách sử dụng một Mac hoặc sử dụng một thiết bị iOS.
Để truy cập các tệp nhật ký iOS trên một Mac:
- Kết nối thiết bị iOS với một Mac.
- Mở Finder.
- Điều hướng đến Tiện ích và mở ứng dụng Console.
- Để làm đầy nhật ký theo thời gian thực trong ứng dụng Console, hãy chọn thiết bị iOS từ thanh bên, nhấp vào nút Bắt đầu, và tái tạo vấn đề trên thiết bị iOS.
- Để làm đầy nhật ký đã lưu trong ứng dụng Console, chạy sudo log collect --device-name "[Tên thiết bị iOS]" trong Terminal. Đảm bảo không có dấu nháy trong tên thiết bị hoặc bạn có thể gặp lỗi khi chạy lệnh.
Android
Để truy cập các tệp nhật ký trên Android:
- Điều hướng đến Cài đặt ⟩ Hệ thống ⟩ Tùy chọn nhà phát triển.
- Bật Tùy chọn nhà phát triển.
- Trên máy tính, tải xuống và cài đặt Android Studio.
- Trong Android Studio, nhấp vào Logcat.
- Kết nối thiết bị Android với máy tính để tự động làm đầy Logcat với các nhật ký.