Công cụ bên thứ ba

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Đối với các studio phát triển chuyên nghiệp, việc thiết lập các công cụ bên thứ ba và đầu tư vào tự động hóa có thể cải thiện đáng kể năng suất phát triển. Cách tiếp cận ưu tiên đám mây của Roblox có nhiều ưu điểm, nhưng việc di chuyển một số phần của quy trình phát triển ra ngoài đám mây có thể giúp các đội ngũ lớn theo dõi thay đổi theo thời gian, xem lại mã và sử dụng các ngôn ngữ và công cụ mà họ đã quen thuộc.

  • Nếu bạn chỉ muốn sử dụng một trình soạn thảo văn bản bên ngoài hoặc giữ mã trong kiểm soát phiên bản, Script Sync là một lựa chọn tuyệt vời.
  • Nếu bạn muốn quản lý toàn bộ dự án của mình như một bộ tệp cục bộ, trang này sẽ đề cập đến một số công cụ và chiến lược.

Vấn đề đồng bộ hóa

Về bản chất, việc sử dụng các công cụ bên ngoài với Roblox là một vấn đề đồng bộ hóa:

  • Bạn muốn các phiên bản Roblox của mình tồn tại như các tệp trên đĩa để bạn có thể sử dụng các công cụ của riêng mình để làm việc trên chúng.
  • Bạn phải đưa các tệp của mình quay trở lại dự án Roblox của bạn sau khi bạn đã làm xong.
  • Nếu có người khác thay đổi những tệp đó trong thời gian đó, bạn phải xử lý bất kỳ xung đột nào.

Để toàn bộ giải pháp cảm thấy liền mạch và tự động, bạn cần a) lắng nghe các thay đổi đối với các tệp và b) kết hợp các thay đổi này trở lại Studio.

Thay vì cách tiếp cận ưu tiên đám mây của Roblox, Rojo cho phép một cách tiếp cận "ưu tiên hệ thống tệp". Nó chạy một máy chủ trên máy của bạn giao tiếp với một plugin Studio để đồng bộ hóa các tệp của bạn và mô hình dữ liệu Studio.

Cài đặt Rojo với Rokit

Bạn có thể tải xuống và chạy nhị phân Rojo một cách thủ công, nhưng cách tiếp cận đó có nguy cơ các nhà phát triển khác nhau trong đội của bạn sử dụng các phiên bản Rojo khác nhau. Một giải pháp tốt hơn là sử dụng một trình quản lý công cụ như Rokit, sử dụng một tệp cấu hình - một danh sách các kho lưu trữ và phiên bản - để làm cho quá trình cài đặt và nâng cấp nhất quán trên nhiều máy.

Bởi vì nó quản lý môi trường phát triển cơ bản của bạn thay vì các gói bên trong dự án của bạn, Rokit giống như nvm hơn là npm, nhưng phép so sánh này không hoàn hảo. Một tệp rokit.toml đơn giản trông như sau:


[tools]
rojo = "rojo-rbx/rojo@7.6.1"
wally = "upliftgames/wally@0.3.2"
lune = "lune-org/lune@0.10.4"

Sau đó, bạn cài đặt các công cụ này với rokit install. Ngoài một tệp rokit.toml toàn cục, Rokit hỗ trợ các tệp theo dự án, vì vậy bạn có thể dễ dàng sử dụng các phiên bản khác nhau của Rojo, Wally, hoặc bất kỳ công cụ nào khác cho các dự án khác nhau và giữ cho toàn bộ đội ngũ của bạn trên cùng một phiên bản đó.

Khi một công cụ phát hành phiên bản mới, bạn sau đó rõ ràng tăng số phiên bản trong tệp .toml của bạn, sử dụng Rokit để thực hiện nâng cấp, kiểm tra phiên bản mới, và giảm cấp nếu nó gây ra bất kỳ vấn đề nào. Để biết các lệnh và hướng dẫn cài đặt, xem Rokit.

Chạy Rojo

Sau khi bạn cài đặt Rojo với Rokit, điều bạn thực sự đã cài đặt là máy chủ Rojo. Bước tiếp theo là cài đặt plugin Rojo cho Roblox Studio.

Bạn có thể cài đặt từ Creator Store hoặc cài đặt nó cục bộ với lệnh này:


rojo plugin install

Sau đó, tạo cấu trúc dự án cho trò chơi mới của bạn và xây dựng nó:


rojo init my-new-experience
cd my-new-experience
rojo build -o my-new-experience.rbxl

Ngoài ra, bạn có thể chuyển một trò chơi hiện có. Bất kể cách nào, sau khi bạn có một dự án, bắt đầu máy chủ Rojo:


rojo serve

Trong Roblox Studio, mở tệp .rbxl mà bạn vừa xây dựng, mở plugin Rojo, và kết nối với máy chủ đang chạy của bạn, tại thời điểm đó bạn có thể bắt đầu thực hiện các thay đổi trong trình soạn thảo văn bản ưa thích và theo dõi các thay đổi đó đồng bộ trở lại Studio.

Visual Studio Code với một dự án Rojo mở.

Plugin Rojo và Studio Explorer bên cạnh nhau.

Các dự án Rojo có một số yêu cầu đặt tên cho tệp, nhiều tùy chọn cấu hình, và một số giới hạn, tất cả đều được đề cập trong tài liệu Rojo.

Trình quản lý gói

Roblox có một bộ API mạnh mẽ đi kèm, nhưng nếu bạn muốn sử dụng các gói phần mềm từ cộng đồng một cách nhất quán và có thể tái tạo, bạn cần một trình quản lý gói. Wally là một lựa chọn phổ biến. Bạn có thể cài đặt nó thông qua Rokit, giống như Rojo.

Trong thư mục Rojo của trò chơi của bạn, chạy wally init. Sau đó thêm các gói mà bạn muốn vào wally.toml. Tệp có thể trông như sau:


[package]
name = "my-home-directory/my-new-experience"
version = "0.1.0"
registry = "https://github.com/UpliftGames/wally-index"
realm = "shared"
[dependencies]
react = "jsdotlua/react@17.2.1"
react-roblox = "jsdotlua/react-roblox@17.2.1"
cryo = "phalanxia/cryo@1.0.3"

Sau đó, chạy wally install. Wally sẽ tạo một thư mục Packages và tải xuống các gói đã chỉ định ở đó. Bước cuối cùng là thêm thư mục Packages vào Rojo để nội dung của nó đồng bộ trở lại Roblox. Mở default.project.json và thêm đường dẫn. Để đơn giản, ví dụ này thêm toàn bộ thư mục vào ReplicatedStorage để tất cả các gói có sẵn cho tất cả các kịch bản, nhưng bạn có thể muốn thêm các gói cụ thể vào ServerScriptService hoặc StarterPlayerScripts:


{
"name": "my-new-experience",
"tree": {
"$className": "DataModel",
"ReplicatedStorage": {
"Shared": {
"$path": "src/shared"
},
"Packages": {
"$path": "Packages"
}
},
...
}
}

Sau đó, bạn có thể yêu cầu các gói trong các kịch bản của bạn giống như bất kỳ ModuleScript nào khác:


local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local React = require(ReplicatedStorage.Packages.react)
local ReactRoblox = require(ReplicatedStorage.Packages["react-roblox"])
local handle = Instance.new("ScreenGui", Players.LocalPlayer.PlayerGui)
local root = ReactRoblox.createRoot(handle)
local helloFrame = React.createElement("TextLabel", {
Text = "Xin chào thế giới!",
Size = UDim2.new(0, 200, 0, 200),
Position = UDim2.new(0.5, 0, 0.5, 0),
AnchorPoint = Vector2.new(0.5, 0.5),
BackgroundColor3 = Color3.fromRGB(248, 217, 109),
Font = Enum.Font.LuckiestGuy,
TextSize = 24
})
root:render(helloFrame)

Giống như hầu hết các dự án phần mềm khác, mục tiêu là các đóng góp có thể nhân bản một kho lưu trữ, cài đặt Rokit, chạy một vài lệnh, và có môi trường phát triển giống như phần còn lại của đội ngũ.

Kiểm soát phiên bản

Có một bộ tệp văn bản thuần túy trên máy tính của bạn mở khóa một loạt các khả năng, nhưng khả năng chính là kiểm soát phiên bản. Bạn có thể lưu trữ các tệp của mình trong một kho lưu trữ Git hoặc Mercurial; lưu trữ các kho lưu trữ từ xa và xem xét các thay đổi mã trong GitHub, GitLab, hoặc Bitbucket; và sử dụng bất kỳ trình soạn thảo văn bản nào bạn thích.

Visual Studio CodeCursor có hệ sinh thái tiện ích mở rộng lớn nhất, nhưng Sublime TextNotepad++, và Vim đều là những lựa chọn phổ biến. Bất kể trình soạn thảo nào bạn chọn, việc phù hợp với khả năng của trình chỉnh sửa kịch bản Studio sẽ yêu cầu một số tiện ích mở rộng.

Bạn cũng có thể xem xét thêm:

Hoàn tác mọi thứ

Bởi vì các công cụ bên thứ ba đồng bộ hóa các thay đổi trở lại Roblox Studio thay vì thay thế nó, không phần nào của quy trình làm việc này liên quan đến sự ràng buộc nào. Bất cứ lúc nào, bạn có thể ngừng sử dụng một hoặc tất cả các công cụ này và quay trở lại chỉnh sửa trò chơi của bạn chỉ trong Studio. Việc thiếu rủi ro khiến việc thử nghiệm với các công cụ bên thứ ba trở nên đặc biệt hấp dẫn.

©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.