Vincula precios de compra, venta, producción y desbloqueo a una página de ítem o habilidad.
economyLink#
El addon que conecta un ítem o contenido del juego con las monedas y variables globales que manejan su economía. Define precios de compra, venta, producción y desbloqueo en una estructura unificada.
Por qué importa#
Ítem barato, ítem caro, ítem premium, ítem desbloqueable por evento — todo eso es "economía". Sin un addon dedicado, dispersas esos números en campos sueltos por toda la página del ítem, y cuando necesitas rebalancear el juego (subir todos los precios un 10%, dar un 50% de descuento durante un evento), tienes que buscar en 80 lugares diferentes.
Este addon centraliza todo, y también referencia globalVariable para que puedas ajustarlo todo de una vez (ej.: una variable item_buy_discount = 0.1 aplicada a todas las compras).
Dónde suele vivir#
- Páginas de tipo
🎒 Ítemso⚔️ Ítems con Efecto— viene por defecto junto con Inventario. - Páginas en blanco que representan algo vendible (una skin, un capítulo, un slot extra).
Singleton — 1 economyLink por página.
Esquema#
| Campo | Tipo | Padrão | Descrição |
|---|---|---|---|
idSí | string | ID interno. | |
nameSí | string | Nombre del addon (por defecto: Economía). | |
hasBuyConfig | boolean | Activa/desactiva el bloque de compra. Permite ítems no comprables. | |
buyCurrencyRef | string (sectionId) | Página de la moneda usada para comprar. | |
buyValue | number | Precio base de compra. | |
minBuyValue | number | Precio mínimo incluso con descuentos máximos. | |
buyModifiers | EconomyModifierRef[] | Lista de globalVariables que ajustan el buyValue (ej.: descuento de temporada). | |
hasSellConfig | boolean | Activa/desactiva el bloque de venta. | |
sellCurrencyRef | string (sectionId) | Moneda recibida en la venta (generalmente la misma que la de compra). | |
sellValue | number | Valor base de venta. | |
maxSellValue | number | Techo de venta incluso con bonos máximos. | |
sellModifiers | EconomyModifierRef[] | globalVariables que aumentan/disminuyen sellValue. | |
hasProductionConfig | boolean | Activa/desactiva la producción. El ítem produce X unidades por intervalo. | |
producedItemRef | string (sectionId) | Ítem que esta página produce cuando se coloca (ej.: una gallina produce huevos). | |
produceMin | number | Cantidad mínima producida por ciclo. | |
produceMax | number | Cantidad máxima producida por ciclo. | |
productionTimeSeconds | number | Intervalo entre ciclos. Acepta decimales. | |
hasUnlockConfig | boolean | Activa/desactiva la puerta de desbloqueo. | |
unlockRef | string (sectionId) | Moneda usada para desbloquear. | |
unlockValue | number | Cuánto cuesta desbloquear por primera vez. | |
notes | string | Notas libres. |
EconomyModifierRef#
{ refId: string } // sectionId de una página globalVariable
Apunta a una globalVariable (ej.: item_buy_discount, event_sell_markup). El motor lee el valor de la variable en tiempo de ejecución y lo aplica sobre buyValue/sellValue.
Ejemplo#
Espada de Hierro — comprable y vendible, con descuento de temporada:
{
"id": "econ-iron-sword",
"name": "Economía",
"hasBuyConfig": true,
"buyCurrencyRef": "section-gold",
"buyValue": 100,
"minBuyValue": 50,
"buyModifiers": [
{ "refId": "section-buy-discount-var" }
],
"hasSellConfig": true,
"sellCurrencyRef": "section-gold",
"sellValue": 50,
"maxSellValue": 80,
"sellModifiers": [
{ "refId": "section-sell-markup-var" }
],
"hasUnlockConfig": false
}
Bloques opcionales por defecto#
Cada bloque (Compra, Venta, Producción, Desbloqueo) tiene un booleano has*Config que lo activa/desactiva. Los ítems de solo venta (no comprables) o solo desbloqueo (sin economía) resultan en un JSON exportado más limpio.
Wizard#
No tiene wizard propio. Lo inicializa:
🎒 Ítems(junto con Inventario)⚔️ Ítems con Efecto(junto con Inventario + AttributeModifiers)
El wizard pide una moneda en el diálogo de requisitos, y esa moneda se convierte automáticamente en buyCurrencyRef + sellCurrencyRef.