Ein Abzeichen ist eine spezielle Belohnung, die du Spielern schenken kannst, wenn sie ein Ziel in deiner Erlebniserreichen, z. B. ein schwieriges Ziel abzuschließen oder für eine bestimmte Zeit zu spielen. Sobald ein Spieler ein Abzeichen erhält, wird es in der Abzeichen-Kategorie deines Inventars angezeigt.
Abzeichen erstellen
Du kannst bis zu 5 Abzeichen für kostenlos in einem 24-Stunden-Zeitraum (GMT) für jedes Erlebnis erstellen, das du besitzen. Wenn du mehr innerhalb des 24-Stunden-Zeitraums erstellen möchtest, kostet jedes zusätzliche Abzeichen 100 Robux.
Um ein Abzeichen zu erstellen:
Navigiere zum Creator-Dashboard.
Suchen Sie das zugeordnete Erlebnis, klicken Sie auf das ⋯ in der Ecke der Miniaturansicht und wählen Sie Badge erstellen .
Auf der erstellen-Seite, klicken Sie auf die Schaltfläche Bild hochladen und wählen Sie dann die Bild aus, die Sie als das Symbol des Abzeichens verwenden möchten. Wenn Sie beim Erstellen eines Bildes für ein Abzeichen zu verwenden berücksichtigen Sie gefolgte Profile:
Verwende eine Vorlage von 512×512 Pixel .
Der Upload-Vorgang schneidet und beschneidet das Abzeichenbild in ein kreisförmiges Symbol, so dass Sie keine wichtigen Details außerhalb der kreisförmigen Grenzen hinzufügen.
Füllen Sie die folgenden Felder aus:
- Name — ein Titel für das Abzeichen.
- Beschreibung — Eine Beschreibung dessen, was der Spieler tun kann, um das Abzeichen zu verdienen.
- Badge ist aktiviert — Unabhängig davon, ob das Badge beim Erstellen aktiviert wird oder nicht. Deaktivierte Badge werden nicht unter der Badge -Sektion der Hauptseite des Erlebnisses angezeigt und können nicht von Spielern verdient werden.
Klicken Sie auf die Schaltfläche Create Badge . Das neue Abzeichen wird in der Engagement- -Sektion der Abzeichen- -Sektion auf der 1> Creator-Dashboard-Seite1> angezeigt. Wenn das neue Abzeichen aktiviert ist, wird es auch unter der 4> Abzeichen-Sektion4> der Erlebnisseite angezeigt.
Skript-Abzeichen
Gewöhnliche Abzeichen-Skripte beinhalten die Verleihung von Abzeichen, das Überprüfen, ob ein Spieler in deiner Erlebnisbereits ein Abzeichen erhalten hat, und das Erhalten von Abzeichen-Informationen.
Badge-IDs finden
Die ID eines Abzeichens ist seine eindeutige Kennung. Du brauchst diese ID, wenn du Workflows wie das Ausgeben des Abzeichens an einen Spieler:inimplementierst.
On the Creator-Dashboard, navigate to the Abzeichen der zugeordneten Erlebnisunter Engagement .
Klicken Sie auf die Schaltfläche ⋯ für ein Abzeichen und wählen Sie Asset-ID kopieren .
Abzeichen vergeben
Du kannst Badges an Spieler:inwährend deines Erlebnisses vergeben, indem du die Methode BadgeService:AwardBadge() in einem Server-seitigen Script aufrufst. Class.BadgeService:GetBadgeInfoAsync
Das Folgende ist ein Beispiel für eine sichere Funktion für die Verteilung von Abzeichen an Spieler.
local BadgeService = game:GetService("BadgeService")
local function awardBadge(player, badgeId)
-- Abzeicheninformationen abrufen
local success, badgeInfo = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, badgeId)
if success then
-- Bestätigen, dass dieses Abzeichen vergeben werden kann
if badgeInfo.IsEnabled then
-- Abzeichen vergeben
local awarded, errorMessage = pcall(BadgeService.AwardBadge, BadgeService, player.UserId, badgeId)
if not awarded then
warn("Error while awarding badge:", errorMessage)
end
end
else
warn("Error while fetching badge info!")
end
end
Verdiente Abzeichen
Das folgende Skript prüft, wenn ein Spieler die Erlebnisbetritt, und verwendet dann die Methode BadgeService:UserHasBadgeAsync(), um zu überprüfen, ob dieser Spieler das Abzeichen mit der passenden ID setzt, die in der Variable BADGE_ID festgelegt ist. Sie können auch den Abzeichenbesitz in Lotches überprüfen, indem
local BadgeService = game:GetService("BadgeService")
local Players = game:GetService("Players")
local BADGE_ID = 00000000 -- Ändere dies zu deiner Abzeichen-ID
local function onPlayerAdded(player)
-- Überprüfen Sie, ob der Spieler das Abzeichen hat
local success, hasBadge = pcall(BadgeService.UserHasBadgeAsync, BadgeService, player.UserId, BADGE_ID)
-- Wenn ein Fehler auftritt, geben Sie eine Warnung aus und beenden Sie die Funktion
if not success then
warn("Error while checking if player has badge")
return
end
if hasBadge then
-- Verwalte die Abzeichenbesitzung des Spieler:in, wenn nötig
end
end
-- Verbinden Sie "PlayerAdded"-Ereignisse mit der "onPlayerAdded()"-Funktion
Players.PlayerAdded:Connect(onPlayerAdded)
Abzeichen-Info
Um Informationen über ein Abzeichen zu erhalten, z. B. seine Beschreibung oder Icon-Asset-ID, rufen Sie die Methode Class.BadgeService:GetBadgeInfoAsync() mit einer badge-ID auf. Zum Beispiel:
local BadgeService = game:GetService("BadgeService")local BADGE_ID = 00000000 -- Ändere dies zu deiner Abzeichen-ID-- Abzeicheninformationen abrufenlocal success, result = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, BADGE_ID)-- Geben Sie die Informationen ausif success thenprint("Badge:", result.Name)print("Enabled:", result.IsEnabled)print("Description:", result.Description)print("Icon:", "rbxassetid://" .. result.IconImageId)elsewarn("Error while fetching badge info:", result)end