Heroes
Queries
hero
heroReturns a single Hero according to its id.
hero(id: ID!): Heroheroes
heroesReturns multiple Heroes according to the arguments passed.
heroes(
skip: Int
first: Int
orderBy: HeroOrderBy
orderDirection: OrderDirection
where: HeroFilter
): [Hero]!Object Types
Hero
HeroThe Hero object type contains the following fields:
Basic Information
id:ID- the Hero's ID. Crystalvale Hero IDs are padded by1000000000000(one trillion), and Serendale (Klaytn) IDs are padded by2000000000000(two trillion).numberId:String- deprecated, asidnow sorts asInt.normalizedId:String- the ID that appears in-game without realm padding.owner:Profile- the current owner of the Hero. Heroes held in the Tavern contract will still return the Profile of their owner.previousOwner:Profile- the most immediate recent owner of the Hero. May returnnullif the Hero has not changed wallets since the Perilous Journey.creator:Profile- currently not in use and will returnnullnetwork:String- the current network of the Hero; returnshmy,dfk, orklaoriginRealm:String- the origin realm of the Hero; returnsSER,CRY, orSER2statGenes:String- the encrypted string of the Hero's dominant and recessive stat genesvisualGenes:String- the encrypted string of the Hero's dominant and recessive visual genesrarity:Int- maps from0(Common) to4(Mythic)shiny:Booleangeneration:IntfirstName:Int- parsed by the Hero First Name tables according togenderlastName:Int- parsed by the Hero Last Name tableshinyStyle:Int- ranging from0to13mainClassStr:StringsubClassStr:StringprofessionStr:String
Summoning Details
summonedTime:Int- the Unix timestamp of the Hero's summoningnextSummonTime:Int- the Unix timestamp of the Hero's next available summonsummonerId:Hero- theHeroobject of the Hero's SummonerassistantId:Hero- theHeroobject of the Hero's Assistant Summonersummons:Int- the number of summons used by the HeromaxSummons:Int- the maximum number of summons by the Hero; returns11for Gen0 HeroessummonsRemaining:Int- the number of summons remaining for the Hero; returns11for Gen0 HeroesdarkSummoned:Bool- whether the Hero was Dark Summoned or notdarkSummonLevels:Int- the maximum level a Hero can attain from Dark Summoning level boosts (Default: 1 for Dark Summoned Heroes; 0 for non-DS Heroes)
Hero State
staminaFullAt:Int- the Unix timestamp when the Hero's Stamina will be fullhpFullAt:Int- the Unix timestamp when the Hero's HP will be full; not currently in usempFullAt:Int- the Unix timestamp when the Hero's MP will be full; not currently in uselevel:Intxp:Int- the Hero's current XP toward their next levelcurrentQuest:String- the contract address of the Hero's current questsp:Int- not currently in usestatus:String- not currently in use
Stats and Stat Growth
Hero Stats
strength:Intintelligence:Intwisdom:Intluck:Intagility:Intvitality:Intendurance:Intdexterity:Inthp:Intmp:Intstamina:Int- the Hero's maximum stamina
Primary Stat Growth
strengthGrowthP:IntintelligenceGrowthP:IntwisdomGrowthP:IntluckGrowthP:IntagilityGrowthP:IntvitalityGrowthP:IntenduranceGrowthP:IntdexterityGrowthP:Int
Secondary Stat Growth
strengthGrowthS:IntintelligenceGrowthS:IntwisdomGrowthS:IntluckGrowthS:IntagilityGrowthS:IntvitalityGrowthS:IntenduranceGrowthS:IntdexterityGrowthS:Int
HP and MP Growth
hpSmGrowth:InthpRgGrowth:InthpLgGrowth:IntmpSmGrowth:IntmpRgGrowth:IntmpLgGrowth:Int
Profession Skills
mining:Intgardening:Intforaging:Intfishing:Int
Stat Genes
hasValidCraftingGenes:Bool- whether the Hero has valid Crafting Genes (e.g.StatsUnknown1andStatsUnknown2are rolled correctly for crafting)
mainClass:IntsubClass:Intprofession:Intpassive1:Intpassive2:Intactive1:Intactive2:IntstatBoost1:IntstatBoost2:IntstatsUnknown1:Intelement:IntstatsUnknown2:Int
Visual Genes
gender:IntheadAppendage:IntbackAppendage:Intbackground:InthairStyle:InthairColor:IntvisualUnknown1:InteyeColor:IntskinColor:IntappendageColor:IntbackAppendageColor:IntvisualUnknown2:Int
Auction Details
assistingAuction:Auction- if the Hero is currently placed for Hire, returns the correspondingAuctionassistingPrice:String- if the Hero is currently placed for Hire, returns the Hire price in weisaleAuction:Auction- if the Hero is currently placed for Sale, returns the correspondingAuctionsalePrice:String- if the Hero is currently placed for Sale, returns the Sale price in weiprivateAuctionProfile:Profile- if the Hero is currently placed for Private Sale or Hire, returns the correspondingProfileof the future buyer/renter
Perilous Journey
pjStatus:String- the Perilous Journey status of the Hero; returnsnull,SURVIVED,ON_JOURNEY, orDIEDpjLevel:Int- the Level of the Hero when & if it was sent on the Perilous JourneypjOwner:Profile- theProfileof the player who sent the Hero on the Perilous JourneypjClaimStamp:Int- the Unix timestamp of the Hero's Perilous Journey claim transaction
Examples
Example 1
All Heroes owned by an individual user:
{
heroes(where: {owner: "0x2E7669F61eA77F02445A015FBdcFe2DE47083E02"}) {
id
mainClass
rarity
}
}Example 2
All Level 1, Gen0 Heroes currently located on the Harmony network:
{
heroes(where: {generation: 0, level: 1, network: "hmy"}) {
id
mainClass
owner {
name
}
}
}Example 3
All Heroes with at least 23 Endurance that died on the Perilous Journey
{
heroes(orderBy: endurance, orderDirection: desc, where: {endurance_gte: 23, pjStatus: "DIED"}) {
id
mainClass
endurance
pjStatus
}
}Example 4
All Paladins currently for Sale that were summoned with a Might Enhancement Stone (assumes that Primary Strength Growth rate is at least 83%), sorted by ascending Sale Price:
{
heroes(orderBy: salePrice, orderDirection: asc, where: {mainClass: "Paladin", strengthGrowthP_gte: 8300, salePrice_not: null}) {
id
rarity
level
strengthGrowthP
statBoost2
salePrice
}
}Example 5
The Top 3 Heroes of each profession ordered by that profession skill, using aliases and fragments:
query topProfessionHeroes {
foraging: heroes(first: 3, orderBy: foraging, orderDirection: desc) {
...heroDetails
foraging
}
fishing: heroes(first: 3, orderBy: fishing, orderDirection: desc) {
...heroDetails
fishing
}
gardening: heroes(first: 3, orderBy: gardening, orderDirection: desc) {
...heroDetails
gardening
}
mining: heroes(first: 3, orderBy: mining, orderDirection: desc) {
...heroDetails
mining
}
}
fragment heroDetails on Hero {
id
mainClass
rarity
level
owner {
name
}
}Last updated
