Gỡ lỗi game được tạo bằng AI
Updated 2026-09-05
Tìm ranh giới thất bại đầu tiên, đưa triệu chứng có thể tái tạo cho agent và kiểm tra lại cùng hành động người chơi. Bắt đầu với engine và build bạn thực sự chạy.
Phân loại lỗi trước khi yêu cầu sửa
Xác định bước hỏng sớm nhất: phát hiện project, import, parse hoặc compile, khởi động scene, input người chơi, state gameplay, export hay chạy đích. Triệu chứng sau có thể là hệ quả lỗi đầu. Giữ version engine, revision project, target và reproduction chính xác cùng nhau.
Ví dụ, scene không bao giờ khởi động không thể cho biết nút restart có hoạt động không. Browser không fetch được game package không thể test controller. Đưa lỗi về đúng ranh giới trước khi đổi mã; điều này ngăn vòng sửa tích lũy patch không liên quan khi điều kiện gốc vẫn hỏng.
| Triệu chứng | Kiểm tra đầu tiên | Kết quả kiểm lại |
|---|---|---|
| Project không mở | Path, version, phụ thuộc | Project dự kiến tải |
| Scene trống | Lỗi khởi động, scene, camera, khả năng hiển thị | Nội dung dự kiến xuất hiện |
| Input không có tác dụng | Focus, action mapping, state, handler | Action đổi state game |
| Export thất bại | Preset hoặc điều kiện target | Artifact được tạo |
| Build chỉ lỗi trên target | Resource đóng gói và log nền tảng | Target hoàn tất cùng vòng |
Chụp lỗi engine có ý nghĩa đầu tiên
Trong Godot, dùng panel debugger và runtime output liên quan. Trong Unity, kiểm tra lỗi compile và runtime riêng, chờ editor sẵn sàng trước khi diễn giải kết quả play. Giữ stack hoặc vị trí xác định script hỏng và thao tác kích hoạt nó.
Gửi agent đoạn tập trung cùng ngữ cảnh scene hoặc object liên quan. Tránh log khổng lồ không phân biệt che lỗi đầu, nhưng giữ bản đầy đủ cục bộ để xem sau. Làm sạch credential và dữ liệu cá nhân. Báo cáo hữu ích nói người chơi làm gì, điều gì phải xảy ra và engine thực tế báo gì.
Thu nhỏ reproduction mà không đổi yêu cầu
Bắt đầu từ state project khôi phục được và cô lập scene hoặc action nhỏ nhất vẫn có lỗi. Giữ controller, luật va chạm hoặc ranh giới save thật đang liên quan. Xóa hẳn hệ thống lỗi có thể tạo lần chạy sạch nhưng làm mất hành vi cần sửa.
Brief bên dưới là template chẩn đoán nguyên bản. Điền chi tiết quan sát thay vì để model đoán nguyên nhân. Yêu cầu một lời giải thích đề xuất và thay đổi có phạm vi hẹp. Khi test xong, nối lại hành trình đầy đủ để bản sửa cục bộ không che chuyển tiếp scene hỏng.
Project revision: <record actual revision>
Engine and target: <record actual environment>
Steps: launch -> start round -> perform the failing action
Expected state: <specific result>
Observed state: <specific result>
First engine error: <relevant error and location>
Inspect the referenced scene and script before editing.
Propose one cause, make a scoped fix, then repeat these steps.
Preserve the required behavior and report any remaining failure.Điều tra màn hình trống theo lớp
Trước tiên xác định engine đã khởi động và scene dự kiến đã tải chưa. Sau đó kiểm tra camera, kích thước viewport, khả năng hiển thị object, vị trí và overlay che scene. Dùng state engine cùng capture thực; một ảnh riêng có thể không cho biết scene đang pause, ngoài camera hay trống.
Áp input và xem state có đổi dù không thấy gì. Nếu vị trí đổi mà ảnh không, tập trung render hoặc reference scene. Nếu cả hai không đổi, điều tra startup và input trước khi chỉnh nghệ thuật. Gắn từng giả thuyết với quan sát để agent không viết lại cả hai hệ thống không cần.
Truy input qua chuyển tiếp gameplay
Theo action từ focus và mapping tới handler, rồi tới state nó phải đổi. Kiểm tra pause và UI interception trước khi đổ lỗi cho toán di chuyển. Lỗi restart có thể do handler thiếu, reference scene cũ hoặc state chưa reset.
Sau sửa, kiểm tra action từ nhiều state liên quan: lần khởi động đầu, sau thắng và sau thua khi áp dụng. Kiểm tra handler trùng hoặc object cũ chỉ xuất hiện sau nhiều vòng. Miniflow hoàn chỉnh nhỏ có thể định vị lỗi lifecycle hiệu quả hơn test nút cô lập lặp lại.
Tách tải browser khỏi logic game
Với web export Godot, kiểm tra panel network và console browser trước khi sửa mã gameplay. Xác nhận HTML, JavaScript, WebAssembly và game package đã xuất tải từ đúng vị trí. Đối chiếu hosting với tài liệu web export chính thức, gồm yêu cầu của cấu hình thread đã chọn.
Giữ tên file đi kèm export nhất quán và test artifact thay vì trộn file cũ mới. Nếu project sai xuất hiện, kiểm tra cache service-worker trong browser test. Sau đó thao tác input và xác minh nội dung di chuyển. Canvas không trống chỉ là kiểm tra render đầu, không chứng minh game loop.
Kiểm tra lỗi riêng của export trên target
Khi editor chạy mà build phân phối lỗi, so lựa chọn scene khởi động, resource đưa vào, cấu hình và log target. Giữ hash artifact chính xác để export sau không làm mất hồ sơ reproduction. Test state đầu sạch trước khi dựa save hoặc cache editor.
Đừng đổi mechanic lõi để giải quyết file đóng gói thiếu. Sửa ranh giới đóng gói và chạy lại đường chấp nhận trong build target. Với artifact desktop, dùng hệ điều hành thực; với browser, dùng browser và hosting dự kiến. Chỉ cross-export không xác lập hành vi target.
Khép sửa chữa bằng kết quả trước và sau
Giữ reproduction lỗi, diff có phạm vi và action lặp hiện tạo state dự kiến. Thêm kiểm tra hồi quy ở ranh giới gây lỗi rồi chạy lại vòng game xung quanh. Ghi chỉnh sửa thủ công và request tiêu thụ bởi các lần sửa không thành công.
Ví dụ ở đây là quy trình chẩn đoán, không phải ca lỗi-sửa đã xuất bản. Dùng chúng để tạo báo cáo cụ thể từ project. Khi cùng triệu chứng còn sau nhiều đề xuất, dừng vòng tự động và thu quan sát thiếu thay vì leo thang tới rewrite rộng không có bằng chứng mới.
Câu hỏi thường gặp
Agent nói game đã sửa nhưng màn hình trống. Tiếp theo làm gì?
Tái tạo triệu chứng và kiểm tra lỗi startup, scene hoạt động, camera cùng phản hồi input. Message hoàn tất không phải quan sát runtime.
Có nên tạo lại toàn bộ project không?
Trước tiên cô lập ranh giới lỗi sớm nhất và giữ state hoạt động. Reproduction tập trung thường dễ rà soát hơn thay thế làm đổi nhiều hệ thống.
Vì sao browser hiển thị game cũ?
Kiểm tra danh tính artifact, tệp được phục vụ và cache service-worker trong browser test. Xác minh export hiện tại thực sự được tải.
Script check đạt có chứng minh chơi được không?
Chúng bao phủ check đã chạy. Wiring scene, input, render, chuyển state và persistence cần bằng chứng runtime.
Báo cáo bug hữu ích nên gồm gì?
Danh tính project và engine, target, bước, state kỳ vọng và quan sát, lỗi liên quan đầu tiên cùng scene hoặc file nhỏ nhất để tái tạo.