pub struct Persona {
pub archetype: String,
pub speech_style: String,
pub demeanor: Option<String>,
pub motivation: String,
pub secret: Option<String>,
pub backstory: Option<String>,
pub relationships: Vec<Relationship>,
}Expand description
A structured casting sheet. Structure lives in the
keys; every value is free text. archetype, speech_style and motivation
are required; the rest are optional.
Fields§
§archetype: StringOne-line character archetype (required).
speech_style: StringHow the NPC speaks — register, tics, formality (required).
demeanor: Option<String>Emotional bearing toward the player (optional).
motivation: StringWhat the NPC wants (required).
secret: Option<String>Something the NPC hides (optional).
backstory: Option<String>Backstory colour (optional).
relationships: Vec<Relationship>Attitudes toward other same-stage NPCs (optional; refs validated).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Persona
impl<'de> Deserialize<'de> for Persona
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for Persona
impl JsonSchema for Persona
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreimpl StructuralPartialEq for Persona
Auto Trait Implementations§
impl Freeze for Persona
impl RefUnwindSafe for Persona
impl Send for Persona
impl Sync for Persona
impl Unpin for Persona
impl UnsafeUnpin for Persona
impl UnwindSafe for Persona
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more