Table of Contents

Class RaceNamingData

Namespace
FishMMO.Shared.NameGeneration
Assembly
FishMMO.Shared.dll

Everything the name generator knows about one race, carried on its RaceTemplate: phonology, cultural variants, the places its titles refer to, its title vocabulary, and its city-name endings.

The serialized fields are what designers edit in the Race inspector; the runtime views are built once when the race registers with RaceRegistry, or lazily on first use.

[Serializable]
public class RaceNamingData
Inheritance
RaceNamingData
Inherited Members

Fields

AllowGenericOccupations

[Tooltip("Whether this race may take trades it did not author itself, from the shared title pools or the grammar's generic list. Off for monsters: a slime is never a potter, nor a pool's ferryman.")]
public bool AllowGenericOccupations

Field Value

bool

CitySuffixes

public SerializableRaceCitySuffixes CitySuffixes

Field Value

SerializableRaceCitySuffixes

Cultures

[Tooltip("Optional cultural variants, each with its own phonology under this race's titles and places.")]
public List<SerializableCultureVariant> Cultures

Field Value

List<SerializableCultureVariant>

Phonology

[Tooltip("Syllable tables names are assembled from.")]
public SerializableRacePhonology Phonology

Field Value

SerializableRacePhonology

Places

[Tooltip("Place names titles can refer to, e.g. 'of Ashford'.")]
public string[] Places

Field Value

string[]

Titles

public SerializableRaceTitles Titles

Field Value

SerializableRaceTitles

Properties

IsUsable

True when the phonology can produce a name at all.

public bool IsUsable { get; }

Property Value

bool

RuntimeCitySuffixes

public RaceCitySuffixes RuntimeCitySuffixes { get; }

Property Value

RaceCitySuffixes

RuntimeCultures

public IReadOnlyDictionary<string, RacePhonology> RuntimeCultures { get; }

Property Value

IReadOnlyDictionary<string, RacePhonology>

RuntimePhonology

public RacePhonology RuntimePhonology { get; }

Property Value

RacePhonology

RuntimePlaces

public string[] RuntimePlaces { get; }

Property Value

string[]

RuntimeTitles

public RaceTitles RuntimeTitles { get; }

Property Value

RaceTitles

Methods

BuildRuntime()

Rebuilds the runtime views from the serialized fields. Called on registration; call again after editing the fields at runtime.

public void BuildRuntime()

CopyFrom(RaceNamingData)

Copies every serialized field from another block, so a race can adopt a preset.

public void CopyFrom(RaceNamingData source)

Parameters

source RaceNamingData