Spells

Castable spells — range, area, casting/cost type, source element. Time-travel with ?at_patch= + ?branch= (see Patches).

Endpoints

GET /v2/spells                             list
GET /v2/spells/{id}                        single spell
GET /v2/spells/{id}/icon                   → 302 redirect to the asset endpoint

Query parameters

NameModeDescription
idexactid.spell.<slug> or raw Id_Spell_<Name>
namesubstringmatches the display name
source_typeexactelement / source (Type.Spell.Source.Ice, ...)
casting_typeexactType.Spell.Cast.Casting, Type.Spell.Cast.Instant, ...
cost_typeexactType.Spell.Cost.Cooldown, Type.Spell.Cost.SpellPoints, ...
classtagfilter by owning class tag
min_range, max_rangerangerange in cm
at_patchversionrender this entity at the named patch's version
branchstringbranch (default main)
page, limitpaginationdefault 25, max 250

Example

curl 'https://api.darkerdb.com/v2/spells/id.spell.aqua_prison'

{
   "body": {
      "id":            "id.spell.aqua_prison",
      "name":          "Aqua Prison",
      "patch_version": "build-22811648-hotfix-113",
      "icon_url":      "/v1/codex/assets/62864450ebacec9b215eaf4f85e9b06373ceee6b24470519a7f0b6d1cefdaeaa",
      "source_key":    "Id_Spell_AquaPrison",
      "desc":          "AquaPrison_Desc",
      "range":         700,
      "area_radius":   20,
      "art_data":      "AquaPrison",
      "casting_type":  "Type.Spell.Cast.Casting",
      "cost_type":     "Type.Spell.Cost.Cooldown",
      "source_type":   "Type.Spell.Source.Ice",
      "spell_tag":     "Ability.Spell.AquaPrison",
      "sound_data":    "AquaPrison_Sound",
      "abilities":     [ "id.spell_ability.aqua_prison" ]
   }
}

range and area_radius are in centimeters (game-engine units). Multiply by 0.01 for meters.