{"kind":"rootNode","standard":"codama","version":"1.9.2","program":{"kind":"programNode","name":"soltoshidiceFights","publicKey":"5PrHPCCbKpW4SvBZfXmt23RKMaShSM4XGTJdBh8qpw3q","version":"1.0.0","docs":["Decode-only IDL for verified mainnet source d2c0b0b7fd14b727d925b137f64ee910261c9f3c. Native Borsh account layouts and instruction payloads; no Anchor discriminator is prepended.","Instruction account roles are intentionally not inferred. For transaction construction, use the maintained game/chain client builders and verified Rust validation. This IDL is not a replacement for those clients.","Accounts sharing the same byte length can be ambiguous; inspect their PDA derivation and owner against the verified Rust source before using decoded fields."],"accounts":[{"kind":"accountNode","name":"config","size":99,"docs":["Native Borsh account, with no Anchor prefix. Source: games/fights/fight-program/src/lib.rs:29."],"data":{"kind":"structTypeNode","fields":[{"kind":"structFieldTypeNode","name":"version","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"mint","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"bankVault","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"bankOwner","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"decimals","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"bump","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}}]},"discriminators":[{"kind":"sizeDiscriminatorNode","size":99}]},{"kind":"accountNode","name":"counter","size":42,"docs":["Native Borsh account, with no Anchor prefix. Source: games/fights/fight-program/src/lib.rs:34."],"data":{"kind":"structTypeNode","fields":[{"kind":"structFieldTypeNode","name":"version","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"player","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"next","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"bump","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}}]},"discriminators":[{"kind":"sizeDiscriminatorNode","size":42}]},{"kind":"accountNode","name":"fight","size":815,"docs":["Native Borsh account, with no Anchor prefix. Source: games/fights/fight-program/src/lib.rs:36."],"data":{"kind":"structTypeNode","fields":[{"kind":"structFieldTypeNode","name":"version","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"challenger","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"opponent","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"nonce","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"wager","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"sideBudget","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"credit","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"oracleCost","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"expires","type":{"kind":"numberTypeNode","format":"i64","endian":"le"}},{"kind":"structFieldTypeNode","name":"acceptedAt","type":{"kind":"numberTypeNode","format":"i64","endian":"le"}},{"kind":"structFieldTypeNode","name":"finishedAt","type":{"kind":"numberTypeNode","format":"i64","endian":"le"}},{"kind":"structFieldTypeNode","name":"state","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"bump","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"first","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"count","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"hp","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":2}}},{"kind":"structFieldTypeNode","name":"random","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":64}}},{"kind":"structFieldTypeNode","name":"oracleFloor","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"oracleSeed","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":32}}},{"kind":"structFieldTypeNode","name":"strikes","type":{"kind":"arrayTypeNode","item":{"kind":"definedTypeLinkNode","name":"combatStrike"},"count":{"kind":"fixedCountNode","value":64}}}]},"discriminators":[{"kind":"sizeDiscriminatorNode","size":815}]}],"instructions":[{"kind":"instructionNode","name":"initializeFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":0}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":0}}},{"kind":"sizeDiscriminatorNode","size":1}],"accounts":[]},{"kind":"instructionNode","name":"challengeFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":1}},{"kind":"instructionArgumentNode","name":"nonce","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"instructionArgumentNode","name":"wager","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"instructionArgumentNode","name":"sideBudget","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"instructionArgumentNode","name":"expires","type":{"kind":"numberTypeNode","format":"i64","endian":"le"}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":1}}},{"kind":"sizeDiscriminatorNode","size":33}],"accounts":[]},{"kind":"instructionNode","name":"acceptFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":2}},{"kind":"instructionArgumentNode","name":"wager","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"instructionArgumentNode","name":"sideBudget","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"instructionArgumentNode","name":"salt","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":32}}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":2}}},{"kind":"sizeDiscriminatorNode","size":49}],"accounts":[]},{"kind":"instructionNode","name":"advanceFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":3}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":3}}},{"kind":"sizeDiscriminatorNode","size":1}],"accounts":[]},{"kind":"instructionNode","name":"settleFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":4}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":4}}},{"kind":"sizeDiscriminatorNode","size":1}],"accounts":[]},{"kind":"instructionNode","name":"refundFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":5}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":5}}},{"kind":"sizeDiscriminatorNode","size":1}],"accounts":[]},{"kind":"instructionNode","name":"closeFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":6}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":6}}},{"kind":"sizeDiscriminatorNode","size":1}],"accounts":[]},{"kind":"instructionNode","name":"rebateFight","docs":["Decode-only instruction data. Account roles must be taken from the verified Rust handler and maintained client, not inferred from this schema."],"optionalAccountStrategy":"programId","arguments":[{"kind":"instructionArgumentNode","name":"discriminator","defaultValueStrategy":"omitted","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"defaultValue":{"kind":"numberValueNode","number":7}}],"discriminators":[{"kind":"constantDiscriminatorNode","offset":0,"constant":{"kind":"constantValueNode","type":{"kind":"numberTypeNode","format":"u8","endian":"le"},"value":{"kind":"numberValueNode","number":7}}},{"kind":"sizeDiscriminatorNode","size":1}],"accounts":[]}],"definedTypes":[{"kind":"definedTypeNode","name":"config","type":{"kind":"structTypeNode","fields":[{"kind":"structFieldTypeNode","name":"version","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"mint","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"bankVault","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"bankOwner","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"decimals","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"bump","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}}]}},{"kind":"definedTypeNode","name":"counter","type":{"kind":"structTypeNode","fields":[{"kind":"structFieldTypeNode","name":"version","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"player","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"next","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"bump","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}}]}},{"kind":"definedTypeNode","name":"fight","type":{"kind":"structTypeNode","fields":[{"kind":"structFieldTypeNode","name":"version","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"challenger","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"opponent","type":{"kind":"publicKeyTypeNode"}},{"kind":"structFieldTypeNode","name":"nonce","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"wager","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"sideBudget","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"credit","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"oracleCost","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"expires","type":{"kind":"numberTypeNode","format":"i64","endian":"le"}},{"kind":"structFieldTypeNode","name":"acceptedAt","type":{"kind":"numberTypeNode","format":"i64","endian":"le"}},{"kind":"structFieldTypeNode","name":"finishedAt","type":{"kind":"numberTypeNode","format":"i64","endian":"le"}},{"kind":"structFieldTypeNode","name":"state","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"bump","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"first","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"count","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"hp","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":2}}},{"kind":"structFieldTypeNode","name":"random","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":64}}},{"kind":"structFieldTypeNode","name":"oracleFloor","type":{"kind":"numberTypeNode","format":"u64","endian":"le"}},{"kind":"structFieldTypeNode","name":"oracleSeed","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":32}}},{"kind":"structFieldTypeNode","name":"strikes","type":{"kind":"arrayTypeNode","item":{"kind":"definedTypeLinkNode","name":"combatStrike"},"count":{"kind":"fixedCountNode","value":64}}}]}},{"kind":"definedTypeNode","name":"combatStrike","type":{"kind":"structTypeNode","fields":[{"kind":"structFieldTypeNode","name":"actor","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"dice","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":3}}},{"kind":"structFieldTypeNode","name":"outcome","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"damage","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"counter","type":{"kind":"numberTypeNode","format":"u8","endian":"le"}},{"kind":"structFieldTypeNode","name":"hp","type":{"kind":"arrayTypeNode","item":{"kind":"numberTypeNode","format":"u8","endian":"le"},"count":{"kind":"fixedCountNode","value":2}}}]}}],"pdas":[],"errors":[]},"additionalPrograms":[]}