Las monedas son la divisa de Xorisu: se ganan jugando y se gastan en skins. Es lo que conecta la progresión con el combate (las skins tienen efecto).

Cómo se ganan

FuenteRecompensa
Recompensa diaria50 + min(racha, 7) × 10 monedas (60–120), 1×/día. Racha de días consecutivos.
battlepasscada subida de nivel suelta 10 + nivel × 2 monedas
(próximo)premios de torneos ya dan size × 50 al campeón

Cómo se gastan: la tienda

Compras skins por monedas. El precio sale del tipo de desbloqueo o de la rareza:

RARITY_PRICE = { common: 25, rare: 100, epic: 200, legendary: 500 }
precio = skin.unlockType === 'purchase' ? skin.unlockValue : RARITY_PRICE[skin.rarity]

Muchas skins se desbloquean jugando (por victorias, partidas, puñetazos…) y otras se compran. Recuerda: muchas no son cosméticas — ver objetos-funcionales.

El "dual-coins" (deuda técnica conocida)

Hay dos campos de monedas en el modelo y no están unificados:

  • users.coins — lo lee la API de skins del app.
  • user_inventories.coins — la billetera real gastable: lo usan la tienda, la recompensa diaria y los premios de torneo.

Regla: cualquier recompensa nueva va a user_inventories.coins. Unificarlos es una decisión pendiente (tocaría saldos existentes), por eso no se ha hecho aún.

Conexiones

sistemas · skins · objetos-funcionales · battlepass · torneos