Các plugin Studio

*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.

Một plugin là một tiện ích mở rộng thêm các tính năng hoặc chức năng bổ sung cho Studio. Bạn có thể cài đặt các plugin do cộng đồng tạo ra từ Creator Store, hoặc bạn có thể tạoxuất bản của riêng bạn lên Toolbox để sử dụng trong các trò chơi của bạn.

Nếu bạn chọn phân phối các plugin của mình đến Creator Store, bạn có thể cung cấp chúng miễn phí hoặc bán chúng với Đô la Mỹ. Roblox cung cấp một tỷ lệ chia sẻ doanh thu hàng đầu thị trường cho những giao dịch này, vì chỉ có thuế và phí xử lý thanh toán được khấu trừ. Để biết thêm thông tin về việc bán plugin, hãy xem Creator Store - Phân phối và bán tài sản.

Tạo plugin mới

Bạn có thể tạo các plugin của riêng mình để cải thiện quy trình làm việc trong Studio. Mẫu mã sau đây là một plugin có tên AddEmptyScript chèn một Script trống làm con của một Instance hoặc trong ServerScriptService. Các phần sau giải thích các phần chính để tạo plugin này.

Để bắt đầu, bạn nên bật Plugin Debugging Enabled trong phần Studio của cài đặt Studio. Điều này sẽ hiển thị PluginDebugService trong Studio, cung cấp khả năng gỡ lỗi theo thời gian thực cho mã của plugin của bạn và giúp dễ dàng tải lại và lưu plugin của bạn.

Plugin AddEmptyScript
local ServerScriptService = game:GetService("ServerScriptService")
local Selection = game:GetService("Selection")
-- Tạo một phần thanh công cụ mới và thư mục menu Plugins có tiêu đề "Custom"
local toolbar = plugin:CreateToolbar("Custom")
-- Thêm một nút thanh công cụ có nhãn "Empty Script"
local newScriptButton = toolbar:CreateButton("Empty Script", "Tạo một script trống", "rbxassetid://14978048121")
-- Làm cho nút có thể nhấp ngay cả khi viewport 3D bị ẩn
newScriptButton.ClickableWhenViewportHidden = true
local function onPluginButtonClicked()
local selectedObjects = Selection:Get()
local parent = selectedObjects[1] or ServerScriptService
local newScript = Instance.new("Script")
newScript.Source = ""
newScript.Parent = parent
end
newScriptButton.Click:Connect(onPluginButtonClicked)

Lưu script plugin

Để tạo một plugin, trước tiên hãy tạo một Script và lưu nó cục bộ.

  1. Chèn một Script mới vào trong ServerStorage và đổi tên thành AddEmptyScript.

  2. Sao chép và dán mã Plugin AddEmptyScript ở trên vào script mới.

  3. Với script mới được chọn trong cửa sổ Explorer, chọn Lưu dưới dạng Plugin Cục bộ từ menu Plugins của Studio.

  4. Trong cửa sổ popup, nhấp Lưu để chèn script plugin vào thư mục Plugins cục bộ của cài đặt Studio.

  5. Plugin sẽ xuất hiện trong PluginDebugService và bắt đầu chạy.

  6. QUAN TRỌNG
    Xóa script gốc trong ServerStorage và làm việc từ plugin AddEmptyScript bên trong PluginDebugService, nếu không bạn có thể áp dụng thay đổi cho script sai.

Thêm nút thanh công cụ

Để thêm một nút cho plugin của bạn vào tab Plugins của thanh công cụ Studio, hãy sử dụng các phương thức Plugin:CreateToolbar()PluginToolbar:CreateButton(). Trong mã cho AddEmptyScript, dòng 5 tạo một phần mới trong thanh công cụ và thư mục menu Plugins có tiêu đề Custom, trong khi dòng 8 tạo một nút có nhãn Empty Script.

Nút plugin mới được thêm vào thanh công cụ trong Studio

Thực thi mã khi nhấp

Để làm cho plugin thực thi mã khi người dùng nhấp vào nút thanh công cụ, kết nối một hàm với sự kiện PluginToolbarButton.Click của nút. Trong mã cho AddEmptyScript, hàm kết nối là onPluginButtonClicked().

Kiểm tra lựa chọn của người dùng

Để thay đổi hành vi của plugin dựa trên những gì người dùng đã chọn, hãy sử dụng dịch vụ Selection. Hàm onPluginButtonClicked() kiểm tra xem người dùng có chọn bất kỳ đối tượng nào không và tạo script mới làm con của nó thay vì bên trong ServerScriptService. Nếu người dùng không có gì được chọn, nó sẽ tạo script mới trong ServerScriptService.

Hỗ trợ hoàn tác và làm lại

Sử dụng ChangeHistoryService để cho phép người dùng hoàn tác và làm lại các thay đổi do một plugin thực hiện trong một trò chơi. Trong script của bạn, hãy đặt plugin gọi TryBeginRecording() và lưu lại định danh được gán cho cuộc gọi API trước khi thực hiện các thay đổi. Sau đó, hãy đặt plugin gọi FinishRecording() sau khi thực hiện các thay đổi, để nó ghi lại bất kỳ thay đổi nào được thực hiện trong phiên ghi cho việc hoàn tác và làm lại.

Mẫu mã sau đây tạo một plugin ví dụ có thể áp dụng vật liệu neon cho các phần đã chọn. Nó sử dụng ChangeHistoryService để ghi lại và quản lý các thay đổi do plugin thực hiện:

Plugin Vật liệu Ví dụ với Ghi lại cho Hoàn tác và Làm lại
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
-- Tạo một plugin ví dụ
local toolbar = plugin:CreateToolbar("Plugin Ví dụ")
local button = toolbar:CreateButton("Neon it up", "", "")
-- Kết nối một hàm với sự kiện nhấp
button.Click:Connect(function()
-- Cố gắng bắt đầu một ghi lại với một định danh cụ thể
local recording = ChangeHistoryService:TryBeginRecording("Đặt lựa chọn thành neon")
-- Kiểm tra xem việc ghi lại có được khởi tạo thành công không
if not recording then
-- Điều này cho thấy rằng plugin của bạn đã bắt đầu một ghi lại trước đó và chưa hoàn thành
-- Bạn chỉ có thể có một ghi lại cho mỗi plugin đang hoạt động tại một thời điểm
return
end
-- Lặp qua các đối tượng đã chọn
for _, instance in Selection:Get() do
-- Kiểm tra xem đối tượng có phải là BasePart không
if instance:IsA("BasePart") then
instance.Material = Enum.Material.Neon -- Đặt vật liệu của phần thành Neon
end
end
-- Hoàn thành việc ghi lại, cam kết các thay đổi vào lịch sử
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)

Tải lên các plugin

Sau khi bạn hoàn thành việc tạo một plugin, bạn có thể tải nó lên kho của mình để nó có thể truy cập trên tất cả các dự án của bạn.

Để tải lên một plugin:

  1. Trong cửa sổ Explorer, chọn một script plugin.

  2. Điều hướng đến menu Plugins của Studio, sau đó chọn Xuất bản dưới dạng Plugin.

  3. TÙY CHỌN
    Ở góc trên bên trái của cửa sổ cấu hình tài sản, nhấp vào hình ảnh mảnh ghép mặc định để tải lên một hình thu nhỏ 512×512 cho plugin của bạn.

  4. Điền vào các trường sau:

    • Tên — Một tiêu đề cho plugin của bạn.
    • Mô tả — Một mô tả mô tả những gì người dùng tiềm năng có thể mong đợi plugin sẽ làm.
    • Người tạo — Người tạo hoặc nhóm mà bạn muốn ghi nhận là người tạo của plugin.
  5. Nhấp vào nút Gửi. Plugin của bạn hiện đã có sẵn cho bạn trong Toolbox dưới các tab KhoTạo.

Phân phối và bán các plugin

Bạn có thể công khai phân phối và bán các plugin của riêng mình trên Creator Store để người khác sử dụng trong việc phát triển trò chơi của họ. Phương pháp kiếm tiền này cho phép bạn kiếm 100% doanh thu ròng từ các giao dịch, bỏ qua phí nền tảng và tỷ lệ DevEx. Để biết thêm thông tin về quy trình này, bao gồm cách thiết lập tài khoản người bán để đặt giá và nhận thanh toán, hãy xem Creator Store - Yêu cầu.

©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.