Produkty dewelopera

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

A produkt dewelopera to przedmiot lub umiejętność, które użytkownik może kupić więcej niż raz, takie jak waluta w grze, amunicja lub mikstury.

Utwórz produkt dewelopera

Aby utworzyć produkt dewelopera:

  1. Przejdź do Kreacji i wybierz grę.
  2. Przejdź do MonetyzacjaProdukty dewelopera.
  3. Kliknij Utwórz produkt dewelopera.
  4. Prześlij obraz, który ma być wyświetlany jako ikona produktu. Upewnij się, że obraz nie przekracza 512x512 pikseli, nie zawiera ważnych szczegółów poza okrągłymi granicami i jest w formacie .jpg, .png lub .bmp.
  5. Wprowadź nazwę i opis produktu.
  6. Wybierz kategorię dla produktu. Kategoria jest używana do organizowania przedmiotów w twoim sklepie w grze.
  7. Ustaw cenę produktu w Robux. Minimalna cena to 1 Robux, a maksymalna cena to 1 miliard Robux.
  8. Kliknij Zapisz zmiany.

Uzyskaj identyfikator produktu dewelopera

Aby użyć skryptowania, potrzebujesz identyfikatora produktu dewelopera. Aby uzyskać identyfikator produktu:

  1. Przejdź do MonetyzacjaProdukty dewelopera.

  2. Najedź na miniaturę produktu, kliknij przycisk i wybierz Kopiuj identyfikator zasobu z menu kontekstowego.

Sprzedaj produkt dewelopera

Przed sprzedażą produktów dewelopera upewnij się, że prawidłowo przetwarzasz rachunki sprzedaży i przyznajesz użytkownikom zakupione przedmioty. Aby to zrobić, musisz:

  • Użyj API ProcessReceipt, aby sprawdzić rachunki zakupów. ProcessReceipt automatycznie odczytuje i potwierdza, że użytkownik kupił produkt poza grą.
  • Sprawdź każdy rachunek pod kątem User ID, Developer Product ID i statusu rachunku.
  • Jeśli rachunek ma status Otwarte, przyznaj użytkownikowi produkty dewelopera, które zakupił.
  • Odpowiedz na API ProcessReceipt wiadomością potwierdzającą rachunek i weryfikującą, że zakupy zostały przyznane.

Możesz sprzedawać produkty dewelopera na dwa sposoby:

W swojej grze

Aby zaimplementować i sprzedawać produkt dewelopera w grze, wywołuj funkcje MarketplaceService.

Użyj GetProductInfo, aby uzyskać informacje o produkcie dewelopera, takie jak nazwa i cena, a następnie, aby wyświetlić ten produkt użytkownikom. Możesz sprzedawać produkt w rynku twojej gry, na przykład. Dla produktów dewelopera drugi parametr musi być Enum.InfoType.Product.


local MarketplaceService = game:GetService("MarketplaceService")
-- Zamień identyfikator zastępczy na swój identyfikator produktu dewelopera
local productId = 000000
local success, productInfo = pcall(function()
return MarketplaceService:GetProductInfo(productId, Enum.InfoType.Product)
end)
if success and productInfo then
-- Wyświetl informacje o produkcie
-- Zamień instruować na kod UI, aby wyświetlić produkt
print("Nazwa produktu dewelopera: " .. productInfo.Name)
print("Cena w Robux: " .. productInfo.PriceInRobux)
print("Opis: " .. productInfo.Description)
end

Użyj GetDeveloperProductsAsync, aby pobrać wszystkie produkty dewelopera związane z twoją grą. Ta funkcja zwraca obiekt Pages, który możesz sprawdzić i filtrować, aby zbudować takie rzeczy, jak sklep w grze lub GUI listy produktów.


local MarketplaceService = game:GetService("MarketplaceService")
local success, developerProducts = pcall(function()
return MarketplaceService:GetDeveloperProductsAsync()
end)
if success and developerProducts then
local firstPage = developerProducts:GetCurrentPage()
for _, developerProduct in firstPage do
-- Zamień instrukcję drukowania na kod UI, aby wyświetlić produkt
print(field .. ": " .. value)
end
end

Użyj PromptProductPurchase, aby zaprosić do zakupu produktów w twojej grze. Możesz wywołać tę funkcję, gdy użytkownik wykonuje działania, takie jak naciśnięcie przycisku lub rozmowa z NPC sprzedawcą.


local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- Zamień identyfikator zastępczy na swój identyfikator produktu dewelopera
local productId = 000000
local function promptProductPurchase()
local success, errorMessage = pcall(function()
MarketplaceService:PromptProductPurchase(player, productId)
end)
if success then
print("Zaproponowano zakup pomyślnie")
end
end

Możesz również łączyć funkcje wewnątrz LocalScript. Na przykład, możesz stworzyć element UI, taki jak przycisk lub NPC sprzedawca, a następnie użyć GetProductInfo(), aby połączyć istniejący produkt dewelopera z tym elementem, sprawdzić, czy produkt jest na sprzedaż, a następnie użyć PromptProductPurchase(), aby zaprosić do zakupu zawsze, gdy użytkownik na niego kliknie.


local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local button = script.Parent
-- Zamień identyfikator zastępczy na swój identyfikator produktu dewelopera
local productId = 000000
-- Pobiera informacje o produkcie, gdy użytkownik kliknie przycisk UI
button.MouseButton1Click:Connect(function()
local success, productInfo = pcall(function()
return MarketplaceService:GetProductInfo(productId, Enum.InfoType.Product)
end)
if success and productInfo then
-- Sprawdza, czy produkt jest na sprzedaż
if productInfo.IsForSale then
print("To jest na sprzedaż")
-- Zaprasza do zakupu produktu
MarketplaceService:PromptProductPurchase(player, productId)
else
-- Informuje, że produkt nie jest na sprzedaż
print("Ten produkt nie jest obecnie na sprzedaż.")
end
else
print("Błąd podczas pobierania informacji o produkcie: " .. tostring(productInfo))
end
end)

Poza swoją grą

Aby umożliwić zakupy produktów dewelopera poza swoją grą, musisz współpracować z API ProcessReceipt. Po tym, jak użytkownik dokona zakupu w zakładce Sklep na stronie szczegółów twojej gry, musisz użyć ProcessReceipt, aby potwierdzić ich zakup i przyznać im ich przedmioty po ich powrocie do gry.

Tryb testowy

Funkcja trybu testowego pomaga weryfikować twój proces zakupu, symulując zakup produktu dewelopera poza grą. Powinieneś używać trybu testowego, aby upewnić się, że poprawnie zaimplementowałeś ProcessReceipt przed włączeniem sprzedaży produktów dewelopera na zewnątrz.

Produkty dewelopera, które wystawisz na sprzedaż w trybie testowym, mogą być widziane tylko przez ciebie i przez członków twojej grupy. Nie są widoczne dla użytkowników.

Aby przetestować swoją implementację:

  1. W Cetralnym Hubie Twórcy przejdź do MonetyzacjaProdukty dewelopera.
  2. Kliknij menu i wybierz Ustawienia zakupu zewnętrznego.
  3. Na stronie Ustawienia zakupu zewnętrznego kliknij Włącz tryb testowy.
  4. Gdy tryb testowy jest aktywny, wróć do strony Produkty dewelopera i wybierz produkt do przetestowania.
  5. Na stronie Podstawowe ustawienia zaznacz pole wyboru Zezwól na zakupy zewnętrzne i zapisz zmiany.
  6. Przejdź do zakładki Sklep na stronie szczegółów gry i zakup produkt, który udostępniłeś do sprzedaży.
  7. Wejdź do gry i potwierdź, że otrzymałeś zakupiony produkt. Status rachunku API ProcessReceipt powinien zaktualizować się do Zamknięty.

Po przetestowaniu swojej implementacji, Roblox weryfikuje, że test został pomyślnie zakończony i umożliwia pełne aktywowanie funkcji sprzedaży produktów dewelopera poza twoimi grami.

Aby uzyskać więcej informacji o API ProcessReceipt i jego implementacji, zobacz stronę ProcessReceipt.

Włącz sprzedaż zewnętrzną

Aby włączyć sprzedaż zewnętrzną:

  1. Przejdź do strony Ustawienia zakupu zewnętrznego.
  2. Włącz Zakupy zewnętrzne.
  3. Wróć do strony Produkty dewelopera i wybierz produkty, które chcesz sprzedawać poza swoją grą.
  4. Na stronie Podstawowe ustawienia zaznacz pole wyboru Zezwól na zakupy zewnętrzne i zapisz zmiany.
  5. Potwierdź, że produkty są teraz dostępne do zakupu w zakładce Sklep na stronie szczegółów gry.

Aby wyłączyć sprzedaż zewnętrzną produktu dewelopera, wybierz produkt na stronie Produkty dewelopera i odznacz pole wyboru Zezwól na zakupy zewnętrzne.

Ograniczenia

  • Przedmioty na sprzedaż w trybie testowym kosztują rzeczywiste Robux. Zalecamy testowanie produktów dewelopera o niskich kosztach.
  • Przedmioty na sprzedaż w trybie testowym mogą być widziane tylko przez ciebie lub członków twojej grupy.
  • Aby mogły być sprzedawane zewnętrznie, twoje produkty dewelopera muszą mieć miniaturę.
  • Nie powinieneś sprzedawać poza swoją grą następujących przedmiotów:
    • Płatnych losowych przedmiotów
    • Przedmiotów ograniczonych do określonych ilości, czasu, miejsca lub ustawień i ról użytkowników

Obsłuż zakup produktu dewelopera

Po zakupie produktu dewelopera przez użytkownika musisz obsłużyć i zarejestrować transakcję. Aby to zrobić, użyj Script w ServerScriptService wykorzystując funkcję ProcessReceipt.

Aby uzyskać więcej informacji o API ProcessReceipt i jego implementacji, zobacz stronę ProcessReceipt.


local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local productFunctions = {}
-- Przykład: identyfikator produktu 123123 przywraca użytkownika do pełnego zdrowia
productFunctions[123123] = function(receipt, player)
local character = player.Character
local humanoid = character and character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
humanoid.Health = humanoid.MaxHealth
-- Wskazuje na pomyślne dokonanie zakupu
return true
end
end
-- Przykład: identyfikator produktu 456456 przyznaje użytkownikowi 100 złotych monet
productFunctions[456456] = function(receipt, player)
local leaderstats = player:FindFirstChild("leaderstats")
local gold = leaderstats and leaderstats:FindFirstChild("Gold")
if gold then
gold.Value += 100
return true
end
end
local function processReceipt(receiptInfo)
local userId = receiptInfo.PlayerId
local productId = receiptInfo.ProductId
local player = Players:GetPlayerByUserId(userId)
if player then
-- Pobiera powiązaną funkcję obsługi dla identyfikatora produktu dewelopera i stara się ją uruchomić
local handler = productFunctions[productId]
local success, result = pcall(handler, receiptInfo, player)
if success then
-- Użytkownik otrzymał swoje przedmioty
-- Zwraca "PurchaseGranted", aby potwierdzić transakcję
return Enum.ProductPurchaseDecision.PurchaseGranted
else
warn("Nie udało się przetworzyć rachunku:", receiptInfo, result)
end
end
-- Nie udało się przyznać przedmiotów użytkownikowi
-- Zwraca "NotProcessedYet" i próbuje ponownie przy następnym dołączeniu użytkownika do gry
return Enum.ProductPurchaseDecision.NotProcessedYet
end
-- Ustala callback
-- To może być zrobione tylko raz przez jeden skrypt po stronie serwera
MarketplaceService.ProcessReceipt = processReceipt

Spersonalizuj swój sklep w grze

Możesz użyć API inteligencji produktów do sortowania i rekomendowania produktów dewelopera użytkownikom. Personalizacja twojego sklepu w grze pomaga wydobyć najbardziej odpowiednie przedmioty dla każdego użytkownika, zwiększając zaangażowanie i przychody. Dostosowując produkty dewelopera do preferencji użytkowników, możesz poprawić ich odkrywalność, zwiększyć wskaźniki konwersji i odblokować nowe możliwości monetyzacji.

Rangi produktów dewelopera na sprzedaż

RankProductsAsync przyjmuje listę identyfikatorów produktów i zwraca spersonalizowaną uporządkowaną listę tych produktów. Możesz użyć tej metody, aby dostarczyć użytkownikom spersonalizowane rekomendacje produktów w swoim sklepie w grze.

Przykład: Trzy przedmioty "Moce" rankingu dla użytkownika
Trzy przedmioty rankingu dla użytkownika.

local MarketplaceService = game:GetService("MarketplaceService")
-- Stwórz tablicę produktów, które chcesz uszeregować
local productIdentifiers = {
{InfoType = Enum.InfoType.GamePass, Id = 123},
{InfoType = Enum.InfoType.Product, Id = 456},
{InfoType = Enum.InfoType.Product, Id = 789}
}
-- Wykonaj zabezpieczone wywołanie, aby obsłużyć błędy
local success, rankedProducts = pcall(function()
return MarketplaceService:RankProductsAsync(productIdentifiers)
end)
if not success then
error("Nie udało się uszeregować produktów")
end
-- Załaduj zwrócone przedmioty do sklepu
for i, rankedItem in ipairs(rankedProducts) do
local productIdentifier = rankedItem.ProductIdentifier
local productInfo = rankedItem.ProductInfo
-- ...
-- Logika dodawania produktów do sklepu
end

Wyświetl swoje najlepsze produkty dewelopera

RecommendTopProductsAsync przyjmuje tablicę wartości InfoType i zwraca do 50 przedmiotów, z którymi użytkownik najprawdopodobniej będzie chciał się zaangażować i zakupić. Możesz użyć tej metody do stworzenia sekcji "Najlepsze wybory" w swoim sklepie w grze.

Jeśli nie można ustalić żadnych rekomendacji, RecommendTopProductsAsync zwróci 0 przedmiotów.

W rzadkich przypadkach wywołania modelu rankingowego mogą być wolne. Aby pomóc wyeliminować opóźnienia dla użytkowników, zalecamy użycie task.spawn, aby wywołanie RecommendTopProducts było bez blokady.

Przykład: Zakładka "Najlepsze wybory" w sklepie w grze
Zakładka Najlepsze wybory w sklepie w grze.

local MarketplaceService = game:GetService("MarketplaceService")
-- Stwórz tablicę typów produktów, które chcesz uwzględnić w rekomendacjach -- Ten przykład obejmuje zarówno przepustki, jak i produkty dewelopera
local productTypes = {Enum.InfoType.GamePass, Enum.InfoType.Product}
-- Wykonaj zabezpieczone wywołanie, aby obsłużyć błędy
local success, topRankedItems = pcall(function()
return MarketplaceService:RecommendTopProductsAsync(productTypes)
end)
if not success then
error("Nie udało się uszeregować produktów")
end
-- Załaduj zwrócone przedmioty do sklepu
-- Upewnij się, że filtrujesz wszelkie niekwalifikujące się przedmioty z topRankedItems, takie jak produkty dewelopera, które użytkownik już nie może kupić
for i, rankedItem in ipairs(topRankedItems) do
local productIdentifier = rankedItem.ProductIdentifier
local productInfo = rankedItem.ProductInfo
-- ...
-- Logika dodawania produktów do sklepu
end

Analiza produktów dewelopera

Użyj analizy produktów dewelopera, aby analizować sukces poszczególnych produktów, identyfikować trendy i prognozować potencjalne przyszłe przychody.

Dzięki analizie możesz:

  • Przeglądać swoje najlepsze produkty dewelopera w wybranym okresie.
  • Pokazać do ośmiu najlepiej sprzedających się przedmiotów na wykresie czasowym, aby analizować całkowitą sprzedaż i netto przychody.
  • Monitorować swój katalog i sortować przedmioty według sprzedaży oraz netto przychodów.

Aby uzyskać dostęp do analizy produktów dewelopera:

  1. Przejdź do Kreacji i wybierz grę.
  2. Przejdź do MonetyzacjaProdukty dewelopera.
  3. Wybierz zakładkę Analiza.
©2026 Roblox Corporation. Nazwa Roblox, logo Roblox oraz hasło „Powering Imagination” należą do naszych zarejestrowanych i niezarejestrowanych znaków towarowych na terenie Stanów Zjednoczonych oraz w innych krajach.