Studio cung cấp nhiều công cụ gỡ lỗi thông thường được tìm thấy trong Môi trường phát triển tích hợp (IDE).Các công cụ này giúp bạn giải quyết các lỗi và kiểm tra các dòng lệnh kịp thời khi chúng chạy.Thông tin gỡ lỗi được hiển thị trong Xem , Chồng gọi , Điểm dừng và Tập xuất để bạn kiểm tra.
Quy trình làm việc chung
Nếu bạn nhận thấy một vấn đề trong trải nghiệm của mình hoặc muốn xác minh rằng nó hoạt động như bạn mong muốn, bạn có thể gỡ lỗi mã liên quan đến nó như sau:
Chèn điểm dừng trên các dòng mã mà bạn muốn kiểm tra.
Trong tab Tập lệnh, nhấp vào Chơi hoặc Chạy trong tab kiểm tra để bắt đầu phiên thử nghiệm, cũng được gọi là phiên gỡ lỗi.
Khi một kịch bản đánh vào điểm dừng, phiên thử nghiệm bị tạm dừng.Kiểm tra Đồng hồ , Chồng gọi và Cửa sổ xuất để giúp bạn chẩn đoán và hiểu vấn đề.
Thêm điểm dừng bổ sung vào các dòng mã chưa được thực hiện để kiểm tra thêm dữ liệu.Vô hiệu hóa hoặc xóa điểm dừng mà bạn không cần nữa.
Trong tab Tập lệnh , nhấp vào Dừng để kết thúc phiên gỡ lỗi.
Lặp lại các bước trước cho đến khi bạn giải quyết vấn đề hoặc tìm ra nguyên nhân gốc.Khi bạn học quy trình làm việc chung, bạn có thể cấu hình các điểm dừng để chỉ phá vỡ nếu đáp ứng một số điều kiện nhất định, in một tin nhắn vào cửa sổ Thành phát và chỉ chạy trên máy khách hoặc máy chủ.Để biết thêm thông tin, xem Cấu hình điểm dừng .
Chèn điểm dừng
Điểm dừng là điểm kiểm tra dừng hoặc "phá vỡ" thực thi của 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 lỗ trống để kiểm tra và gỡ lỗi trải nghiệm của bạn, xem biến, và kiểm tra chồng gọi .Điểm phá vỡ là một trong những cách hiệu quả nhất để gỡ lỗi chức năng, vì vậy chúng là một trong những công cụ gỡ lỗi quan trọng nhất.Bạn có thể chèn điểm dừng ở bất kỳ dòng mã thực thi nào.
Để chèn một điểm dừng tiêu chuẩn tại một dòng mã, nhấp chuột trái vào khoảng cách bên phải số dòng của nó.Bạn cũng có thể nhấp chuột phải vào khoảng trống và nhấp vào Chèn điểm dừng.Điểm dừng xuất hiện dưới dạng một chấm màu đỏ.Để vô hiệu hóa nó, hãy nhấp vào dấu chấm.

Bước qua mã
Nếu bạn chèn một điểm dừng tại một dòng trong một kịch bản, kịch bản tạm dừng trước khi thực hiện dòng đó.Một mũi tên màu vàng gọi là "debugger" chỉ ra dòng mã nào sẽ được thực thi tiếp theo.

Khi kịch bản tạm dừng, thực hiện mã sau theo một dòng tại một lúc bằng cách di chuyển qua chúng với các nút trong tab Tập lệnh.Các nút cũng xuất hiện ở góc trên cùng bên trái của cửa sổ Chồng gọi.Khi bạn di chuyển qua mã, theo dõi cách trải nghiệm của bạn thay đổi khi dòng hiện tại được thực thi.

Bảng sau đây tổng hợp ba cách để bước qua mã.Để tiếp tục thực thi mã của bạn sau khi bạn đánh dấu một điểm dừng, hãy nhấp vào Tái khởi động trong tab Tập lệnh .
Cái nút | Hành động | Lối tắt | Mô tả |
---|---|---|---|
![]() | Bước vào | F11 | Nút The Bước vào di chuyển trình gỡ lỗi vào mã của chức năng trên dòng hiện tại.Nếu không có chức năng trên dòng hiện tại, trình gỡ lỗi di chuyển đến dòng tiếp theo. |
![]() | Bước vượt qua | F10 | Nút Bước vượt qua di chuyển trình gỡ lỗi đến dòng tiếp theo của mã, không di chuyển vào các chức năng. |
![]() | Bước ra | ShiftF11 | Nút Bước ra di chuyển trình gỡ lỗi ra khỏi chức năng hiện tại và đến dòng mã tiếp theo sau lệnh gọi chức năng.Nếu dòng hiện tại không nằm trong chức năng, trình gỡ lỗi di chuyển đến dòng tiếp theo. |
Xem xét mã
Khi một điểm dừng lại dừng trải nghiệm trong quá trình thử nghiệm, bạn có thể kiểm tra cửa sổ Xem của ứng dụng, cửa sổ Tập lệnh gọi của ứng dụng, cửa sổ Xuất của ứng dụng và cửa sổ Trình biên tập mã để tìm thông tin về giá trị biến và thực thi chức năng.Với thông tin này, bạn có thể tìm ra nguyên nhân gốc của vấn đề trong trải nghiệm của bạn.
Xem
Cửa sổ Xem có hai tab: Biến và Đồng hồ của tôi .Tab Biến hiển thị thông tin về biến hiện tại trong phạm vi, và tab Đồng hồ của tôi hiển thị giá trị của biến hoặc phương trình mà bạn định nghĩa.Cả hai tab hiển thị thông tin trước khi dòng thực hiện.
Tab Biến có các cột sau:
- Tên - Tên được tuyên bố của biến.
- Phạm vi - Phạm vi của biến: nơi nó có thể "được nhìn thấy" và truy cập, chẳng hạn như Local, Global hoặc Upvalue.
- Giá trị - Giá trị hiện tại của biến.
- Loại dữ liệu - Loại dữ liệu của biến.
Tab Đồng hồ của tôi có các cột sau:
- Biểu hiệu - Biểu hiệu bạn muốn theo dõi.
- Giá trị - Giá trị hiện tại của biểu hiệu.
- Loại dữ liệu - Loại dữ liệu của biểu hiệu.
Trong tab Biến , bạn có thể lọc phạm vi biến bằng cách nhấp vào biểu tượng lọc.Bạn cũng có thể sắp xếp các hàng theo tên của cột để sắp xếp.Cửa sổ xem cung cấp cả quan điểm mở rộng và thu nhỏ của các bảng.

Để kiểm tra mã trong cửa sổ Quan sát:
Nếu cửa sổ Xem không mở, thì nhấp vào Xem trong tab Xem.
Khi phiên thử nghiệm của bạn tạm dừng tại một điểm dừng, hãy suy nghĩ về cách bạn mong đợi dòng hiện tại thay đổi các giá trị của biến trong kịch bản đó.
Khi bạn di chuyển qua mã, xem cách giá trị của biến thay đổi trong tab Biến .Nếu bạn muốn xem một biểu hiện không có trong tab Biến, hãy mở tab Đồng hồ của tôi .Nhấp vào một hàng trống trong cột Biểu hiện, sau đó nhập biểu hiện vào nó.Nếu bạn muốn xem một biến trong Trình soạn thảo kịch bản, nhấp đúp vào tên của biến, nhấp chuột phải, sau đó nhấp vào Thêm theo dõi .
So sánh các giá trị của biến và biểu hiệu từ những gì bạn mong đợi và những gì bạn thấy trong cửa sổ Quan sát.Nếu có sự khác biệt giữa cách bạn mong đợi các biến thay đổi và cách chúng thực sự thay đổi, thì các biến hoặc chức năng tương tác với chúng có thể gây ra vấn đề hoặc lỗi.
Ngăn xếp gọi
Cửa sổ Chồng gọi hiển thị dòng mã nào sẽ được thực hiện tiếp theo khi trình gỡ lỗi đạt đến điểm dừng.Chồng gọi chỉ ra dòng nào bạn gọi chức năng từ và, nếu bạn gọi chức năng trong các chức năng khác, thứ tự gọi chức năng và các dòng bạn gọi các chức năng khác.Chức năng hàng đầu của Call Stack là cuối cùng được gọi và thực thi đầu tiên.Bạn có thể sử dụng Call Stack để kiểm tra xem lệnh gọi chức năng trong các tập lệnh của bạn có phù hợp với mô hình tư duy của cuộc gọi chức năng hay không.

Nếu bạn có nhiều điểm dừng trong các kịch bản khác nhau, chúng có thể tạm dừng phiên thử nghiệm chơi cùng một lúc.Bạn có thể chuyển đến các điểm dừng bằng cách nhấp vào mũi tên bên cạnh tên của kịch bản trong cửa sổ Call Stack.Nếu bạn nhấp vào Tiếp tục , thì bạn bước qua tất cả các điểm dừng đã tạm dừng cùng một lúc.

Để kiểm tra mã trong cửa sổ Call Stack trong phiên trình gỡ lỗi:
Nếu cửa sổ Ngăn xếp cuộc gọi không mở, then click Ngăn xếp cuộc gọi in the Xem tab.
Khi trải nghiệm của bạn tạm dừng tại một điểm dừng, hãy suy nghĩ về cách bạn mong đợi lệnh gọi chức năng được xếp theo thứ tự trong kịch bản đó.
Ngăn xếp cuộc gọi hiển thị thứ tự của cuộc gọi chức năng.Nếu điểm dừng nằm bên trong chức năng, Call Stack hiển thị chức năng nào gọi chức năng đó, nếu có.Call Stack cũng hiển thị tên và số dòng của mỗi chức năng.Nhấp vào hàng để một chức năng nhảy đến nó.
So sánh thứ tự của cuộc gọi chức năng mà bạn nghĩ đến trong bước 2 và thứ tự thực tế từ bước 3.Nếu có bất kỳ sự khác biệt nào, thì có sự khác biệt giữa cách bạn mong đợi mã hành xử và cách nó thực sự hành xử, do đó gây ra các vấn đề tiềm ẩn và lỗi.
Thành phẩm
Cửa sổ Thoát có thể truy cập từ tab Xem hiển thị các lỗi được thu thập từ việc chạy các tập lệnh, tin nhắn từ Roblox Engine, tin nhắn từ các cuộc gọi đến print() , và các lỗi từ các cuộc gọi đến warn() .
Trình soạn thảo kịch bản
Trình gỡ lỗi được tích hợp với Trình soạn thảo kịch bản.Khi trải nghiệm 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ể xem giá trị của một bảng mà bạn truyền làm tham số trong cuộc gọi chức năng.

Cài đặt điểm phá vỡ
Bạn có thể cấu hình các điểm dừng để chỉ phá vỡ nếu đáp ứng một số điều kiện nhất định, in một thông điệp vào cửa sổ Thành phát và chỉ chạy trên máy khách hoặc máy chủ.Bạn cũng 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.
Chỉnh sửa điểm dừng
Bạn có thể chỉnh sửa cấu hình của một điểm dừng bất cứ lúc nào, bao gồm cả trong các phiên thử nghiệm.Nếu bạn chỉnh sửa điểm dừng trong phiên thử nghiệm, các thay đổi vẫn tồn tại ngay cả sau khi bạn hoàn thành nó.Bạn cũng có thể chỉnh sửa điểm dừng mà đang tạm dừng phiên thử nghiệm chơi của bạn, nhưng các thay đổi không áp dụng cho đến phiên thử nghiệm chơi tiếp theo.
Để chỉnh sửa cấu hình của một điểm dừng:
Bấm chuột phải vào điểm dừng, sau đó bấm Chỉnh sửa điểm dừng .
Trong cửa sổ Chỉnh sửa điểm dừng , hãy cấu hình điểm dừng theo ý muốn.
Điều kiện, tin nhắn nhật ký và tùy chọn
Đối với mỗi điểm dừng, bạn có thể đặt điều kiện , thông điệp nhật ký , tiếp tục thực thi và ngữ cảnh .
Điều kiện là là biểu hiệu xác định xem điểm dừng bật lên hay không.Điều kiện là tùy chọn.Nếu điều kiện là trống, điểm dừng luôn luôn được kích hoạt.Nếu điều kiện tồn tại, thì điểm dừng 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 chỉ kích hoạt nếu biến n bằng 42 , thì hãy đặt điều kiện thành n == 42 .Các điều kiện hữu ích để gỡ lỗi cách các chức năng thực hiện khi một số biến có một số giá trị nhất định hoặc nếu bạn muốn phá vỡ chỉ trên một số thực thi trong một vòng lặp.
Tin nhật ký Log Message là biểu hiệu in vào cửa sổ Output khi điều kiện là đúng.Định dạng của Tin nhật ký giống như các tham số cho một print() tuyên bố.Ví dụ, hãy cài đặt Tin nhắn Log là "The value of n:", n để in cùng một tin nhắn như print("The value of n:", n) .Bạn có thể thêm và xóa Tin nhật không cần phải ngừng thực thi, không giống như các tuyên bố in.
Tùy chọn Tiếp tục thực thi xác định xem điểm dừng có phải tạm dừng kịch bản nếu nó được kích hoạt.Nó hữu ích nếu bạn muốn ghi giá trị của biến hoặc phương trình mà không ngừng thực thi.Tùy chọn này bị vô hiệu hóa mặc định.
Bối cảnh của điểm dừng xác định xem điểm dừng có nên kích hoạt trên Client, Server hoặc Chỉnh sửa hay không.Nếu ngữ cảnh là Khách hàng, thì điểm dừng sẽ kích hoạt trong các kịch bản bên khách.Nếu ngữ cảnh là Máy chủ, thì điểm dừng sẽ kích hoạt trong các kịch bản bên máy chủ.Nếu ngữ cảnh là Chỉnh sửa, thì điểm dừng sẽ kích hoạt khi bạn gỡ lỗi plugin.Nếu bạn nhấp vào Tùy chỉnh ngữ cảnh, cửa sổ cho thấy ngữ cảnh hiện tại.

Điểm dừng điều kiện và điểm ghi nhận
Studio cung cấp các biến thể có tên của điểm phá vỡ để làm cho việc chèn điểm phá vỡ nhanh hơn.Để chèn một biến thể có tên, nhấp chuột phải vào khoảng trống bên phải số dòng của nó, sau đó nhấp vào biến thể bạn muốn chèn.

Một điểm dừng điều kiện là một điểm dừng với một điều kiện và thực thi tiếp tục bị vô hiệu hóa.Điểm dừng điều kiện chỉ tạm dừng kịch bản của bạn nếu một điều kiện là đúng, vì vậy chúng hữu ích để gỡ lỗi cách các chức năng thực hiện khi một số biến có một số giá trị nhất định.Điểm dừng điều kiện sử dụng các giá trị của biến trước khi dòng thực hiện.Khi bạn chèn một điểm dừng điều kiện, con trỏ của bạn tập trung vào tùy chọn Điều kiện để bạn có thể thiết lập nhanh chóng.
Một Điểm nhật ký là một điểm dừng với một Tin nhật ký và Thực thi tiếp tục được bật.Logpoints gửi tin nhắn sang cửa sổ Thoát mà không tạm dừng các kịch bản của bạn, vì vậy chúng hữu ích để gỡ lỗi các giá trị biến.Logpoints sử dụng các giá trị của các biến trước khi dòng thực hiện.Khi bạn chèn một điểm nhật ký, con trỏ của bạn tập trung vào Tin nhắn Log để bạn có thể thiết lập nó nhanh chóng.
Vô hiệu hóa điểm dừng
Có nhiều cách để vô hiệu hóa và bật lại điểm dừng:
- Nhấp vào biểu tượng của điểm dừng.
- Chỉnh sửa điểm dừng và bật/tắt kiểm tra Bật phím.
- Nhấp chuột phải vào biểu tượng điểm dừng và nhấp vào Tắt điểm dừng hoặc Bật điểm dừng.
Xóa điểm dừng
Để xóa điểm dừng, nhấp chuột giữa vào biểu tượng của nó. Bạn cũng có thể nhấp chuột phải vào biểu tượng của nó và nhấp vào Xóa điểm dừng .
Cửa sổ điểm dừng
Cửa sổ Breakpoints hiển thị tất cả các điểm dừng trong trải nghiệm của bạn.Để mở cửa sổ Breakpoints, hãy nhấp vào tab Xem ở trên cùng của Studio, sau đó nhấp vào Breakpoints.

Cửa sổ Breakpoints có các cột sau: chưa được đánh dấu, Tập lệnh, Dòng, Dòng nguồn, Điều kiện, Tin nhắn ghi chú, và Tiếp tục thực thi.Các cột Không có nhãn, Kịch bản và Dòng luôn hiển thị, nhưng bạn có thể chuyển đổi các cột khác bằng cách nhấp vào ba điểm ở góc trên cùng bên phải của cửa sổ.
Trong cột chưa được đánh dấu, nhãn (x3) cho thấy số điểm dừng trên cùng một dòng mã, và biểu tượng cho thấy cấu hình điểm dừng.Các điểm dừng trên cùng một dòng chia sẻ cùng một điều kiện, thông điệp nhật ký và tiếp tục thực thi nhưng khác nhau theo ngữ cảnh.Bạn có thể chỉnh sửa cấu hình của một điểm dừng trong cửa sổ Breakpoints.Ví dụ, bạn có thể chỉnh sửa điều kiện của điểm dừng bằng cách chỉnh sửa khu vực văn bản trong cột điều kiện của nó.

Bạn có thể bật và tắt các điểm dừng bằng cách nhấp vào biểu tượng điểm dừng của nó trong cột đã bật.Bạn cũng có thể nhấp vào các nút sau để vô hiệu hóa, tắt và xóa một số hoặc tất cả các điểm dừng.
Cái nút | Hành động |
---|---|
![]() | Vô hiệu hóa tất cả các điểm dừng. Nếu bất kỳ điểm dừng nào bị vô hiệu hóa, hãy bật tất cả chúng. |
![]() | Xóa tất cả các điểm dừng. |
Biểu tượng Breakpoint
Biểu tượng của điểm dừng phụ thuộc vào việc nó được bật, có điều kiện và có tin nhắn ghi lại.Nếu điểm dừng có tin nhật ký, thì nó xuất hiện như một điểm dừng bất kể nó có điều kiện hay không.
Tên | Biểu tượng | Bật | Điều kiện | Thông điệp nhật ký |
---|---|---|---|---|
Điểm dừng | ![]() | Có | Không | Không |
![]() | Không | Không | Không | |
Điểm dừng điều kiện | ![]() | Có | Có | Không |
![]() | Không | Có | Không | |
Điểm nhật ký | ![]() | Có | Có thể | Có |
![]() | Không | Có thể | Có |
Công cụ gỡ lỗi bổ sung
Ngoài trình gỡ lỗi, Studio cung cấp thêm công cụ gỡ lỗi để bạn có thể sửa các vấn đề và lỗi trong trải nghiệm của mình.
Thanh lệnh
Thanh lệnh cho phép bạn thực hiện lệnh Luau trong khi trải nghiệm đang chạy .Nó có sẵn trong Studio từ tab Xem 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 khách hàng và máy chủ, sử dụng bộ nhớ, hiệu hiệu lựcmạng và nhiều hơn nữa.Để mở Developer Console trong khi thử nghiệm hoặc chơi một trải nghiệm, hãy nhập /console vào trò chuyện hoặc nhấn F9 .Để biết thêm thông tin, xem Bảng điều khiển nhà phát triển .
File nhật ký
Khi một kịch bản in hoặc xảy ra lỗi trong Studio hoặc ứng dụng Người chơi, ứng dụng ghi lại tin nhắn trong một tập tin nhật ký trong hệ thống tập tin địa phương.Các tập tin này nằm ở những vị trí khác nhau tùy thuộc vào hệ điều hành.
Cửa sổ
Để truy cập các tập tin nhật ký trên Windows:
- Mở Trình khám phá file .
- Di chuyển đế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ó giá trị tương tự XXXXX là từ cùng một phiên Studio.
Máy Mac
Để truy cập các tập tin nhật ký trên Mac:
- Mở Trình tìm kiếm .
- Trong thanh menu, hãy 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.
- 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 Mac hoặc sử dụng thiết bị iOS.
Để truy cập tập tin nhật ký iOS trên Mac:
- Kết nối thiết bị iOS với Mac.
- Mở Trình tìm kiếm .
- Di chuyển đến Công cụ và mở ứng dụng Bảng điều khiển .
- Để lấp đầy nhật ký 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 hiện vấn đề trên thiết bị iOS.
- Để lấp đầy nhật ký đã lưu trong ứng dụng Console, chạy sudo log collect --device-name "[iOS Device Name]" trong Terminal .Hãy chắc chắn rằng không có dấu chấm câu trong tên thiết bị hoặc bạn có thể nhận được một lỗi khi chạy lệnh.
Người Android
Để truy cập các tập tin nhật ký trên Android:
- Di chuyển đế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 lên.
- Trên một 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 điền vào Logcat với các bản ghi.