Skip to content

Eventos

Auraum edited this page May 30, 2022 · 12 revisions

Los eventos son funcionalidades encapsuladas del juego que se pueden lanzar desde determinados puntos llamados triggers que contienen varios elementos de los juegos: nodos, enemigos, objetos, etc. Cada tipo de evento tiene sus campos específicos, pero todos tienen en común tres campos:

{
  "EventType": ...
  "TriggerCondition": ...
  "Chance": 1.0
  "..."
}
  • “EventType”: Campo obligatorio que indica el tipo de evento que se describe. (eSendText, eSendImage...) Todos ellos se describirán a continuación.
  • “TriggerCondition”: Campo opcional que indica las variables de progreso necesarias para el lanzamiento del evento. También permite poner operadores lógicos como "!" (NOT), "AND" y "OR".
  • “Chance”: Campo opcional que indica la probabilidad de que dicho objeto se ejecute. Sus valores posibles están en el rango [0...1]. Su valor por defecto es 1. A continuación se enumerarán todos los eventos y su forma de añadirlos.

-SendText: Sirve para mandar texto.

{
  "EventType": "eSendText",
  "Description": "SampleText"
}
  • “Description”: Campo obligatorio que indica el texto que se va a enviar.

-SendImage: Sirve para mandar una imagen.

{
  "EventType": "eSendImage",
  "ImageName": "SampleImage.jpg",
  "Description": "SampleText"
}
  • “ImageName”: Campo obligatorio que indica el nombre del archivo de la imagen a enviar
  • “Description”: Campo opcional que contiene el texto que se envía junto a la imagen.

-SendImageCollection: Sirve para mandar colecciones de varias imágenes.

{
  "EventType": "eSendImageCollection",
  "ImagesNames": [
    "SampleImage1.jpg",
    "SampleImage2.jpg"
  ]
}
  • “ImagesNames”: Campo obligatorio que guarda una lista de los nombres de los archivos de imágenes que se van a enviar.

-SetFlag: Sirve para cambiar una variable de progreso.

{
  "EventType": "eSetFlag",
  "Name": "FlagName",
  "SetAs": "True"
}
  • “Name”: Campo obligatorio que indica el nombre de la variable de progreso a establecer.
  • “SetAs”: Campo obligatorio que indica el valor booleano a asignar a la variable de progeso.

-StartBattle: Sirve para empezar una batalla con uno o más enemigos

{
  "EventType": "eStartBattle",
  "Enemy": "EnemyName"
}
  • Enemy: Campo obligatorio que indica el nombre del enemigo contra el que pelearán los jugadores. También se puede definir el evento de la siguiente manera:
{
  "EventType": "eStartBattle",
  "Enemies": [ "EnemyName1", "EnemyName2" ]
}

Donde en vez de utilizar el campo “Enemy”, se utiliza “Enemies”, que admite una lista de nombres de enemigos para crear una batalla con múltiples enemigos. -GiveItem: Sirve para que el jugador reciba uno o más objetos con cierta probabilidad.

{
  "EventType": "eGiveItem"
  "ItemLots": [
    "Item": "ItemName",
    "Quantity": 1,
    "ChanceToObtain": 1.0
  ]
}
  • “ItemLots”: Campo obligatorio que guarda una lista de objetos que se otorgarán al jugador. Cada objeto se define por:
    • “Item”: Campo obligatorio que indica el nombre del objeto a añadir.
    • “Quantity”: Campo opcional que indica la cantidad de objetos de dicho objeto que se otorgarán al usuario. Su valor por defecto es 1.
    • “ChanceToObtain”: Campo opcional que indica la probabilidad de obtener dicho objeto. Espera valores numéricos en el rango [0, 1]. Su valor por defecto es 1.

-LearnAttack: Sirve para que el jugador aprenda un ataque.

{
  "EventType": "eLearnAttack",
  "Attack": "AttackName"
}
  • "Attack": Campo obligatorio que indica el nombre del ataque que el jugador aprenderá.

-ChangeStat: Sirve para cambiar las estadísticas de algún combatiente.

{
  "EventType": "eChangeStat",
  "StatChanges": [
    {
      "StatToChange": "ATK",
      "Add": 0,
      "Multiple": 1.0,
      "ChangeMax": true,
      "AffectsSelf": true
    }
  ],
  "StatToDepend": "HP",
  "Threshold": 1,
  "Message": "Sample text",
  "Activations": -1
}
  • “StatChanges”: Campo opcional que guarda la lista de los cambios de estadísticas a realizar. Cada uno se define por:
    • “StatToChange”: Campo obligatorio con la estadística que se va a cambiar.
    • “Add”: Campo opcional con el factor aditivo a aplicar. Su valor por defecto es 0.
    • “Multiple”: Campo opcional con el factor multiplicativo a aplicar. Su valor por defecto es 1. Puede ser un valor no entero.
    • “ChangeMax”: Campo opcional que indica si el cambio es limitante o no. Su valor por defecto es false.
    • “AffectsSelf”: Campo opcional que indica si el cambio se realiza sobre el usuario. Su valor por defecto es false.
  • “StatToDepend”: Campo opcional que indica la estadística de cuyo valor depende la activación de los cambios. Su valor por defecto es HP.
  • “Threshold”: Campo opcional que indica el valor de la estadís- tica anterior relativo a su valor máximo (un número en el rango [0, 1]) por debajo del cual se activan los cambios. El valor por defecto es 1, en cuyo caso los cambios se activarán siempre.
  • “Message”: Campo opcional que indica el mensaje de texto que se enviará si se realizan los cambios.
  • “Activations”: Campo opcional que indica el número de activa- ciones que el evento tendrá. Al llegar a ese número, no se activará más. El valor por defecto es -1, en cuyo caso se activará de manera ilimitada.

Clone this wiki locally