Core Data

Core data is typically configured before Base Data. Then Base Data uses Core Data:

diagram

Core Data Types:

Item Slot

Users can define item slot types like "legs", "head" etc.

After that, Item Slot Types are used in two places:

  • Inventory Abilities

    • Add a slot to an inventory ability and assign the field "Accepts".

    • If you assign nothing (Unity: None) to the "Accepts" field, that means the slot will accept any item.

  • Items

    • Assign the field "Fits Into Slot Type".

    • If you assign nothing, the item will fit into slots that accept any Item.

    • If you assign a slot type, the item will fit into slots that accept any Item and into slots that specifically accept this ItemSlotType.

Currency

Users can define currencies here. Runtime instances of currencies are assigned to the Player.

There are two types of currencies:

Currency

  • normal currencies are used to train units or buy items.

Perma Currency

  • perma currencies are used in an upkeep a.k.a. "unit cap" mechanic.

  • as such they are displayed in a "x/y" (x used of available y) manner.

This is reflected in the data model of Units.

It is a design descision that the currency UI is hidden when there are no visible currencies.

Cooldown Group:

Cooldown Group is NYI

A cooldown group is only necessary if you want to model for example the following situation: you have a minor and a major healing potion, but you don’t want the player to be able to drink a minor and a major one in quick succession, so you assign them to the same cooldown group. A cooldown group is assigned to an Ability’s cooldown.

If you assign the same cooldown group to the minor and the major healing potion, then the cooldown of the major healing potion starts when the player drinks a minor healing potion and vice versa.

Charge Group

Charge Group is NYI