Dengan fitur pembuatan aset dalam permainan, Anda dapat memungkinkan pengguna Anda untuk menyimpan kreasi yang mereka buat di permainan Anda ke dalam inventaris mereka. Pengguna Anda dapat menggunakan kreasi dalam permainan ini layaknya aset lainnya. Selain itu, kreasi ini memberikan atribusi kepada permainan Anda saat ditampilkan di platform Roblox, sehingga pengguna mana pun dapat menggunakan tautan atribusi untuk datang ke permainan Anda dan membuat milik mereka sendiri.
Sebagai contoh, Anda dapat memungkinkan pengguna untuk membuat makhluk kustom sebagai hewan peliharaan dalam permainan Anda, dan memungkinkan mereka untuk menyimpan hewan peliharaan favorit mereka ke dalam inventaris mereka. Anda memiliki kontrol penuh untuk menentukan objek mana yang dapat dimodifikasi dan disimpan oleh pengguna dari permainan Anda. Pengguna pada gilirannya dapat menampilkan kreasi mereka di profil mereka dengan atribusi ke permainan Anda, meningkatkan visibilitas permainan Anda.
Jenis aset yang didukung dan batasan
Sama seperti semua aset di platform, kreasi dalam permainan tunduk pada moderasi aset. Saat ini, Anda hanya dapat memungkinkan pengguna untuk membuat paket dari permainan Anda. Paket ini tidak dapat mengandung skrip atau aset pribadi, seperti audio, video, dan paket bersarang. Jika sistem mendeteksi skrip atau aset pribadi dalam paket yang dapat disimpan oleh pengguna, maka tindakan penyimpanan dalam permainan akan diblokir dengan menyembunyikan prompt penyimpanan bagi pengguna.
Saat Anda menjalankan atau menguji permainan Anda dan menambahkan skrip atau aset pribadi sebagai bagian dari kreasi dalam permainan, proses penyimpanan gagal dan memunculkan pesan kesalahan ke jendela Output Studio atau ke Konsol Pengembang.
Mengaktifkan pembuatan aset dalam permainan
Untuk mengaktifkan pembuatan aset dalam permainan bagi pengguna Anda, gunakan metode API AssetService:PromptCreateAssetAsync() dalam skrip sisi server, bersama dengan logika pembuatan lainnya. Tentukan instance mana dalam permainan Anda yang ingin Anda aktifkan fungsionalitas ini, atur pemicu kustom (seperti ikon UI) untuk memanggil metode tersebut, dan dengarkan peristiwa remote klien untuk menyimpan aset.
AssetService:PromptCreateAssetAsync() mengambil parameter berikut:
- Sebuah objek Player yang mewakili pengguna yang mengajukan kreasi aset.
- Sebuah objek Instance yang mewakili aset untuk dibuat.
- Enum.AssetType, yang saat ini terbatas pada Enum.AssetType.Model.
Saat server memanggil AssetService:PromptCreateAssetAsync(), itu memunculkan dialog Kirim Paket di klien, sehingga pengguna yang memicu tindakan penyimpanan bisa memasukkan nama dan deskripsi untuk paket tersebut. Roblox menyediakan UI dialog secara bawaan, karena alur kerja penyimpanan adalah fungsionalitas tingkat platform.
Contoh skrip sisi server berikut meminta pengguna untuk menyimpan mobil yang mereka cat di permainan:
-- Definisikan variabel AssetService
local AssetService = game:GetService("AssetService")
-- Siapkan PromptCreateAssetAsync() untuk memunculkan dialog pengajuan
local function CreateAsset(player, instance)
local complete, result, assetId = pcall(function()
return AssetService:PromptCreateAssetAsync(player, instance, Enum.AssetType.Model)
end)
if complete then
if result == Enum.PromptCreateAssetResult.Success then
print("berhasil diunggah, AssetId:", assetId)
else
print("Menerima hasil", result)
end
else
print("kesalahan")
print(result)
end
end
-- Logika pengecatan mobil diabaikan
-- Tambahkan handler peristiwa
local function onUserPublish(player, promptObject)
-- Pengguna menyimpan instance mobil dengan warna default permainan
if promptObject.Name == "car" then
CreateAsset(player, car)
elseif promptObject.Name == "CarPaintYellow" or promptObject.Name == "CarPaintBlue" or promptObject.Name == "CarPaintBlack" or promptObject.Name == "CarPaintRed" then
PaintCarColor(promptObject.Name)
end
end
PublishEvent.OnServerEvent:Connect(onUserPublish)Demo Arena Pembuatan Dalam Pengalaman menunjukkan contoh bagaimana Anda dapat menggunakan fitur ini. Anda dapat bergabung dengan demo untuk melintasi alur kerja pembuatan dalam permainan sebagai pengguna, atau mengedit tempat di Studio untuk merujuk desain tersebut.
Setelah pembuatan dan atribusi
Setelah pengguna membuat dan menyimpan aset dari permainan Anda, mereka dapat menemukannya di tempat-tempat berikut:
- Halaman Inventaris Saya mereka.
- Tab Kreasi di halaman Profil mereka.
- Tab Item Pengembangan di bawah halaman Dasbor Kreator Kreasi mereka.
- Tab Inventaris di Kotak Alat mereka di Studio.
Ketika pengguna melihat kreasi dalam permainan di profil atau inventaris teman mereka, mereka melihat atribusi ke permainan asli di mana aset tersebut dibuat. Pengguna dapat mengklik tautan atribusi untuk dialihkan ke halaman permainan, sehingga mereka dapat bergabung dengan permainan dan membuat milik mereka sendiri.