syntax = "proto3"; package models.proto.cofd; //TODO do we want a single "morality" value, or keep it separate //inside the system-specific fields? //Information and values specific to the core game. message CoreFields { int32 integrity = 1; } //Information and values specific to Mage 2E. message MageFields { int32 widsom = 1; } //Information and values specific to Changeling 2E. message ChangelingFields { int32 clarity = 1; } //Base sheet for Chronicles of Darkness systems. message CofdSheet { message Merit { int32 dots = 1; string name = 2; } message Condition { string name = 1; } ///Entry for a skill message Skill { int32 dots = 1; string name = 2; sint32 untrained_penalty = 3; repeated string specializations = 4; } //A generic item with a name, physical description, and rules text. message Item { string name = 1; string description = 2; string rules = 3; } //An entry for an attack. Usually a weapon. message Attack { string name = 1; int32 dice_pool = 2; int32 damage = 3; int32 range = 4; sint32 initiative_modifier = 5; int32 size = 6; } string name = 1; string gender = 2; string concept = 3; int32 age = 4; string player = 5; string chronicle = 6; string description = 7; int32 strength = 8; int32 dexterity = 9; int32 stamina = 10; int32 intelligence = 11; int32 wits = 12; int32 resolve = 13; int32 presence = 14; int32 manipulation = 15; int32 composure = 16; map physical_skills = 17; map mental_skills = 18; map social_skills = 19; repeated Merit merits = 20; repeated Condition conditions = 21; int32 size = 22; int32 health = 23; int32 willpower = 24; int32 experience_points = 25; int32 beats = 26; repeated Item items = 27; repeated Attack attacks = 28; map other_data = 29; oneof system_fields { CoreFields core = 30; MageFields mage = 31; ChangelingFields changeling = 32; } }