EverambleGAME API / 1

CONTENT CONTRACT · VERSION 1

game

Explicit entry point selecting the map, world rules, player profile and presentation.

Signature

{ id: ContentId, kind: "game", name: TextKey, new_player: PlayerProfileId, presentation: PresentationProfileId, ruleset: RulesetId, start_map: MapId }

Fields

NameTypeMeaning
idContentIdPackage-qualified identity; unique within its declaring namespace.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$
kind"game"Discriminant
nameTextKeyLocalization key for the displayed name.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: text
new_playerPlayerProfileIdProfile used when creating a persistent player.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: player_profile
presentationPresentationProfileIdPresentation profile supplying the game's interface audio.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: presentation_profile
rulesetRulesetIdAuthoritative gameplay limits selected by this game.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: ruleset
start_mapMapIdMap instantiated for the start of this game.
Length: 1…129; Pattern: ^[a-z][a-z0-9_]{0,31}:[a-z][a-z0-9_]{0,95}$; Reference: map

Validated example

{
  "id": "core:training",
  "kind": "game",
  "name": "core:training_name",
  "new_player": "core:new_player",
  "presentation": "core:default_presentation",
  "ruleset": "core:default_rules",
  "start_map": "core:valley"
}