// Different properties of a player/item/entity
pubtraitStat{}// StatEffector = Effect
pubstructEffectDefinition<K>{pubkey: K,
pubname: String,
pubdescription: String,
}pubstructEffectInstance<K>{pubeffector: K,
}// Stat of T driving a transition of T to T'
pubtraitStatTransition{// stat transition can fail (ie missing mana)
// add key
}