Insignias

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Una insignia es un premio especial que puedes otorgar a los jugadores cuando alcanzan un objetivo dentro de tu juego, como completar un objetivo difícil o jugar durante un tiempo determinado. Tan pronto como un jugador recibe una insignia, se muestra dentro de la categoría de Insignias de su inventario.

Ejemplo de insignias en el inventario de un jugador
Ejemplo de insignias en el inventario de un jugador

Crear insignias

Puedes crear hasta 5 insignias de forma gratuita en un período de 24 horas (GMT) para cada juego que poseas. Si deseas crear más dentro del período de 24 horas, cada insignia adicional cuesta 100 Robux.

Para crear una insignia:

  1. Navega a el Tablero del Creador.

  2. Coloca el cursor sobre la miniatura de un juego, haz clic en el botón y selecciona Crear Insignia.

  3. En la página de creación, haz clic en el botón Subir Imagen y luego selecciona/confirma la imagen que deseas usar como el ícono de la insignia. Al crear una imagen para usar en una insignia, considera lo siguiente:

    • Usa una plantilla de 512×512 píxeles.

    • El proceso de carga recorta y recorta la imagen de la insignia en un ícono circular, así que evita poner detalles importantes fuera de los límites circulares.

      Buen recorte circular
      Mal recorte circular
  4. Completa los siguientes campos:

    • Nombre — Un título para la insignia.
    • Descripción — Una descripción de lo que el jugador puede hacer para ganar la insignia.
    • La insignia está habilitada — Si la insignia estará habilitada cuando se cree o no. Las insignias deshabilitadas no se muestran en la sección de Insignias de la página principal del juego y no pueden ser ganadas por los jugadores.
  5. Haz clic en el botón Crear Insignia. La nueva insignia se mostrará en la sección de CompromisoInsignias en el Tablero del Creador. Si la nueva insignia está habilitada, también se mostrará en la sección de Insignias de la página principal del juego.

    Insignia en la página principal del juego

Reordenar insignias

Cuando se crea una insignia por primera vez, se coloca al final de la lista de insignias. Puedes reordenar hasta 50 insignias a la vez utilizando la interfaz de arrastrar y soltar.

Para reordenar insignias:

  1. Navega al juego asociado.

  2. En el panel lateral bajo el encabezado de Compromiso, navega a la página de Insignias.

  3. Selecciona Reordenar para navegar a la página de reordenación.

    Botón de reordenar insignias
  4. En la página de reordenación, arrastra y suelta las insignias en su orden preferido.

    Arrastrar y soltar insignias para reordenar
  5. Selecciona Guardar para guardar este orden. El orden especificado ahora debería aparecer en la página de detalles del juego.

Script de insignias

Los flujos de trabajo comunes de scripting de insignias incluyen otorgar insignias, verificar si un jugador ha ganado previamente una insignia en tu juego, y obtener información sobre la insignia.

Localizar IDs de insignias

El ID de una insignia es su identificador único. Necesitarás este ID al implementar flujos de trabajo como otorgar la insignia a un jugador.

  1. En el Tablero del Creador, navega a la sección de Insignias del juego asociado bajo Compromiso.

  2. Coloca el cursor sobre la miniatura de una insignia, haz clic en el botón y selecciona Copiar ID de Activo en el menú contextual.

Otorgar insignias

Puedes otorgar insignias a los jugadores a lo largo de tu juego llamando al método BadgeService:AwardBadgeAsync() en un Script del lado del servidor. BadgeService:GetBadgeInfoAsync() devuelve propiedades de la insignia, incluyendo IsEnabled que confirma si la insignia puede ser otorgada o no a un jugador. Puedes habilitar o deshabilitar una insignia desde el formulario de Configurar Insignia en el Tablero del Creador.

Lo siguiente es un ejemplo de una función segura para otorgar insignias a los jugadores.


local BadgeService = game:GetService("BadgeService")
local function awardBadge(player, badgeId)
-- Obtener información de la insignia
local success, badgeInfo = pcall(function()
return BadgeService:GetBadgeInfoAsync(badgeId)
end)
if success then
-- Confirmar que la insignia puede ser otorgada
if badgeInfo.IsEnabled then
-- Otorgar insignia
local awarded, errorMessage = pcall(BadgeService.AwardBadgeAsync, BadgeService, player.UserId, badgeId)
if not awarded then
warn("Error al otorgar la insignia:", errorMessage)
end
end
else
warn("Error al obtener información de la insignia: " .. badgeInfo)
end
end

Comprobar insignias ganadas

El siguiente script comprueba cuándo entra un jugador en el juego, y luego utiliza el método BadgeService:UserHasBadgeAsync() para verificar si ese jugador posee la insignia con el ID correspondiente establecido en la variable BADGE_ID. También puedes verificar la propiedad de la insignia en lotes usando el método BadgeService:CheckUserBadgesAsync().


local BadgeService = game:GetService("BadgeService")
local Players = game:GetService("Players")
local BADGE_ID = 00000000 -- Cambia esto a tu ID de insignia
local function onPlayerAdded(player)
-- Verificar si el jugador tiene la insignia
local success, hasBadge = pcall(BadgeService.UserHasBadgeAsync, BadgeService, player.UserId, BADGE_ID)
-- Si hay un error, emite una advertencia y sale de la función
if not success then
warn("Error al verificar si el jugador tiene la insignia")
return
end
if hasBadge then
-- Manejar la propiedad de la insignia del jugador según sea necesario
end
end
-- Conectar los eventos "PlayerAdded" a la función "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)

Obtener información sobre la insignia

Para obtener información sobre una insignia, como su descripción o el ID de activo del ícono, llama al método BadgeService:GetBadgeInfoAsync() con un ID de insignia. Por ejemplo:


local BadgeService = game:GetService("BadgeService")
local BADGE_ID = 00000000 -- Cambia esto a tu ID de insignia
-- Obtener información de la insignia
local success, result = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, BADGE_ID)
-- Salida de la información
if success then
print("Insignia:", result.Name)
print("Habilitada:", result.IsEnabled)
print("Descripción:", result.Description)
print("Ícono:", "rbxassetid://" .. result.IconImageId)
else
warn("Error al obtener información de la insignia:", result)
end
©2026 Roblox Corporation. Roblox, el logotipo de Roblox y "Powering Imagination" son algunas de nuestras marcas registradas y no registradas en los Estados Unidos y otros países.