Struct GameConfig

Source
pub struct GameConfig {
Show 85 fields pub attributes: Vec<Attribute>, pub item_cases_settings: Vec<ItemCasesSettingsByLevel>, pub game_settings: GameSettings, pub ads_settings: AdsSettings, pub items: Vec<ItemTemplate>, pub item_rarities: Vec<ItemRarity>, pub portal_rarities: Vec<PortalRarity>, pub skins: Vec<ConfigSkin>, pub skins_settings: SkinsSettings, pub effects: Vec<Effect>, pub abilities: Vec<AbilityTemplate>, pub ability_cases_settings: NonEmptyVec<AbilityCasesSettingsByLevel>, pub ability_rarities: Vec<AbilityRarity>, pub ability_levels: Vec<AbilityLevel>, pub ability_stones: Vec<AbilityStoneTemplate>, pub ability_stone_settings: AbilityStoneSettings, pub mana_settings: ManaSettings, pub fight_settings: FightSettings, pub flip_settings: FlipSettings, pub cores_settings: CoresSettings, pub pet_facet_settings: PetFacetSettings, pub laws: Vec<LawTemplate>, pub stones_settings: StonesSettings, pub kill_faucet_settings: KillFaucetSettings, pub trigger_stones: Vec<TriggerStoneTemplate>, pub effect_stones: Vec<EffectStoneTemplate>, pub artifacts_settings: ArtifactsSettings, pub artifacts: Vec<ArtifactTemplate>, pub artifact_stones: Vec<ArtifactStoneTemplate>, pub collection_power: CollectionPowerSettings, pub entities: Vec<EntityTemplate>, pub dungeon_templates: Vec<DungeonTemplate>, pub fight_templates: Vec<FightTemplate>, pub chapters: Vec<Chapter>, pub character_levels: Vec<CharacterLevel>, pub character_level_formula: CharacterLevelFormula, pub ability_slots_levels: Vec<AbilitySlotsLevel>, pub patron_levels: Vec<ReferralLevelInfo>, pub quests: Vec<QuestTemplate>, pub quests_progression_settings: QuestsProgressionSettings, pub vassals_settings: VassalsSettings, pub vassal_tasks: Vec<VassalTaskTemplate>, pub pvp_settings: PvpSettings, pub gifts: Vec<GiftTemplate>, pub mail_templates: Vec<MailTemplate>, pub currencies: Vec<Currency>, pub inventory_levels: Vec<InventoryLevel>, pub arena_settings: ArenaSettings, pub arena_leagues: Vec<ArenaLeague>, pub matchmaking_settings: MatchmakingSettings, pub event_descriptions: Vec<EventDescription>, pub classes: Vec<Class>, pub class_levels: Vec<ClassLevels>, pub projectiles: Vec<Projectile>, pub bundles: Vec<BundleRaw>, pub ability_presets_settings: AbilityPresetsSettings, pub bots_settings: BotsSettings, pub reports_settings: ReportsSettings, pub afk_rewards_settings: AfkRewardsSettings, pub afk_rewards_levels: Vec<AfkRewardsByLevel>, pub users_generating_settings: UsersGeneratingSettings, pub tutorial_steps: Vec<TutorialStep>, pub chats_settings: Vec<ChatSettings>, pub offers_templates: Vec<OfferTemplate>, pub shop_tabs: Vec<ShopTabConfig>, pub ratings_settings: Vec<RatingSettings>, pub cheat_scripts: Vec<CheatScript>, pub test_player_scripts: Vec<TestPlayerScript>, pub gatings: Gatings, pub pet_templates: Vec<PetTemplate>, pub pet_rarities: Vec<PetRarity>, pub pet_levels: Vec<PetLevel>, pub pet_slots_levels: Vec<PetSlotsLevel>, pub pet_cases_settings: Vec<PetCasesSettingsByLevel>, pub talent_tree_settings: TalentTreeSettings, pub talents: Vec<TalentTemplate>, pub statue_bonus_grades: NonEmptyVec<StatueBonusGrade>, pub statue_bonus_type_configs: NonEmptyVec<StatueBonusTypeConfig>, pub statue_level_configs: NonEmptyVec<StatueLevelConfig>, pub statue_settings: StatueSettings, pub buff_templates: Vec<BuffTemplate>, pub progress_pass: ProgressPassConfig, pub bird_variants: Vec<BirdVariant>, pub plinko_settings: PlinkoSettings, pub local_notifications: LocalNotificationsSettings,
}

Fields§

§attributes: Vec<Attribute>§item_cases_settings: Vec<ItemCasesSettingsByLevel>§game_settings: GameSettings§ads_settings: AdsSettings§items: Vec<ItemTemplate>§item_rarities: Vec<ItemRarity>§portal_rarities: Vec<PortalRarity>

Portal-specific sprites mapped onto item rarity metadata.

§skins: Vec<ConfigSkin>§skins_settings: SkinsSettings§effects: Vec<Effect>§abilities: Vec<AbilityTemplate>§ability_cases_settings: NonEmptyVec<AbilityCasesSettingsByLevel>§ability_rarities: Vec<AbilityRarity>§ability_levels: Vec<AbilityLevel>§ability_stones: Vec<AbilityStoneTemplate>

Catalog of ability stones — their own collection, never mixed with item or artifact stones.

§ability_stone_settings: AbilityStoneSettings§mana_settings: ManaSettings§fight_settings: FightSettings§flip_settings: FlipSettings

Settings for the persistent global Real/Fantasy equipment flip gauge.

§cores_settings: CoresSettings

Balance knobs for the twin cores, their law slots and the bridges.

§pet_facet_settings: PetFacetSettings

Numbers of the twenty Pet Facets rolled by the Team Die.

§laws: Vec<LawTemplate>

Law catalog. A law lives in a slot on the core of its own side.

§stones_settings: StonesSettings

Tunables of the Trigger/Effect Stone system: gauge weights, trigger cooldown, the tier coefficient matrix, the socket unlock schedule and the temporary drop chance.

§kill_faucet_settings: KillFaucetSettings

BAL-038: the shared daily anti-idle contract for every kill-driven faucet. Core Essence is absent from this table on purpose — its D is the reached chapter band’s R_value in cores_settings.

§trigger_stones: Vec<TriggerStoneTemplate>§effect_stones: Vec<EffectStoneTemplate>§artifacts_settings: ArtifactsSettings

Tunables of the artifact system: the ownership bonus ladder, the duplicate ladder, the six-socket unlock schedule and the placeholder acquisition sources.

§artifacts: Vec<ArtifactTemplate>§artifact_stones: Vec<ArtifactStoneTemplate>

Catalog of artifact stones. Ships with the six Aspect (left column) stones only — the Law column needs the cores/laws vertical.

§collection_power: CollectionPowerSettings

Collection Power: the passive stat bonus paid for OWNING catalog content, across stones, laws, ability stones, gacha abilities and pets. Artifacts are excluded — they already pay their own ownership bonus.

§entities: Vec<EntityTemplate>§dungeon_templates: Vec<DungeonTemplate>§fight_templates: Vec<FightTemplate>§chapters: Vec<Chapter>§character_levels: Vec<CharacterLevel>§character_level_formula: CharacterLevelFormula§ability_slots_levels: Vec<AbilitySlotsLevel>§patron_levels: Vec<ReferralLevelInfo>§quests: Vec<QuestTemplate>§quests_progression_settings: QuestsProgressionSettings§vassals_settings: VassalsSettings§vassal_tasks: Vec<VassalTaskTemplate>§pvp_settings: PvpSettings§gifts: Vec<GiftTemplate>§mail_templates: Vec<MailTemplate>§currencies: Vec<Currency>§inventory_levels: Vec<InventoryLevel>§arena_settings: ArenaSettings§arena_leagues: Vec<ArenaLeague>§matchmaking_settings: MatchmakingSettings§event_descriptions: Vec<EventDescription>§classes: Vec<Class>§class_levels: Vec<ClassLevels>§projectiles: Vec<Projectile>§bundles: Vec<BundleRaw>§ability_presets_settings: AbilityPresetsSettings§bots_settings: BotsSettings§reports_settings: ReportsSettings§afk_rewards_settings: AfkRewardsSettings§afk_rewards_levels: Vec<AfkRewardsByLevel>§users_generating_settings: UsersGeneratingSettings§tutorial_steps: Vec<TutorialStep>§chats_settings: Vec<ChatSettings>§offers_templates: Vec<OfferTemplate>§shop_tabs: Vec<ShopTabConfig>§ratings_settings: Vec<RatingSettings>§cheat_scripts: Vec<CheatScript>§test_player_scripts: Vec<TestPlayerScript>§gatings: Gatings§pet_templates: Vec<PetTemplate>§pet_rarities: Vec<PetRarity>§pet_levels: Vec<PetLevel>§pet_slots_levels: Vec<PetSlotsLevel>§pet_cases_settings: Vec<PetCasesSettingsByLevel>§talent_tree_settings: TalentTreeSettings§talents: Vec<TalentTemplate>§statue_bonus_grades: NonEmptyVec<StatueBonusGrade>§statue_bonus_type_configs: NonEmptyVec<StatueBonusTypeConfig>§statue_level_configs: NonEmptyVec<StatueLevelConfig>§statue_settings: StatueSettings§buff_templates: Vec<BuffTemplate>§progress_pass: ProgressPassConfig§bird_variants: Vec<BirdVariant>§plinko_settings: PlinkoSettings§local_notifications: LocalNotificationsSettings

Texts and timings for OS-level notifications the client schedules on the device itself. Nothing here is sent from the server at runtime.

Implementations§

Source§

impl GameConfig

Source

pub fn is_class_ability(&self, ability_id: AbilityId) -> bool

Whether the ability is a class active (referenced by any class’s class_abilities). Class abilities are level-capped below regular ones and use their own ability-stone socket ladder.

Source

pub fn clone_translate(&self, translator: &Translator, locale: &str) -> Self

Source

pub fn validate(&self)

Source

pub fn class_level(&self, class_id: ClassId, level: u64) -> Option<&ClassLevels>

Trait Implementations§

Source§

impl Clone for GameConfig

Source§

fn clone(&self) -> GameConfig

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GameConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for GameConfig

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl From<GameConfig> for JsValue

Source§

fn from(value: GameConfig) -> Self

Converts to this type from the input type.
Source§

impl IntoWasmAbi for GameConfig

Source§

type Abi = <JsType as IntoWasmAbi>::Abi

The Wasm ABI type that this converts into when crossing the ABI boundary.
Source§

fn into_abi(self) -> Self::Abi

Convert self into Self::Abi so that it can be sent across the wasm ABI boundary.
Source§

impl JsonSchema for GameConfig

Source§

fn schema_name() -> String

The name of the generated JSON Schema. Read more
Source§

fn schema_id() -> Cow<'static, str>

Returns a string that uniquely identifies the schema produced by this type. Read more
Source§

fn json_schema(generator: &mut SchemaGenerator) -> Schema

Generates a JSON Schema for this type. Read more
§

fn is_referenceable() -> bool

Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
Source§

impl OptionIntoWasmAbi for GameConfig

Source§

fn none() -> Self::Abi

Returns an ABI instance indicating “none”, which JS will interpret as the None branch of this option. Read more
Source§

impl Serialize for GameConfig

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Tsify for GameConfig

Source§

const DECL: &'static str = "export interface GameConfig {\n attributes: Attribute[];\n item_cases_settings: ItemCasesSettingsByLevel[];\n game_settings: GameSettings;\n ads_settings: AdsSettings;\n items: ItemTemplate[];\n item_rarities: ItemRarity[];\n /**\n * Portal-specific sprites mapped onto item rarity metadata.\n */\n portal_rarities: PortalRarity[];\n skins: ConfigSkin[];\n skins_settings: SkinsSettings;\n effects: Effect[];\n abilities: AbilityTemplate[];\n ability_cases_settings: NonEmptyVec<AbilityCasesSettingsByLevel>;\n ability_rarities: AbilityRarity[];\n ability_levels: AbilityLevel[];\n /**\n * Catalog of ability stones \u{2014} their own collection, never mixed with item\n * or artifact stones.\n */\n ability_stones: AbilityStoneTemplate[];\n ability_stone_settings: AbilityStoneSettings;\n mana_settings: ManaSettings;\n fight_settings: FightSettings;\n /**\n * Settings for the persistent global Real/Fantasy equipment flip gauge.\n */\n flip_settings: FlipSettings;\n /**\n * Balance knobs for the twin cores, their law slots and the bridges.\n */\n cores_settings: CoresSettings;\n /**\n * Numbers of the twenty Pet Facets rolled by the Team Die.\n */\n pet_facet_settings: PetFacetSettings;\n /**\n * Law catalog. A law lives in a slot on the core of its own side.\n */\n laws: LawTemplate[];\n /**\n * Tunables of the Trigger/Effect Stone system: gauge weights, trigger\n * cooldown, the tier coefficient matrix, the socket unlock schedule and\n * the temporary drop chance.\n */\n stones_settings: StonesSettings;\n /**\n * BAL-038: the shared daily anti-idle contract for every kill-driven\n * faucet. Core Essence is absent from this table on purpose \u{2014} its `D` is\n * the reached chapter band\\\'s `R_value` in `cores_settings`.\n */\n kill_faucet_settings: KillFaucetSettings;\n trigger_stones: TriggerStoneTemplate[];\n effect_stones: EffectStoneTemplate[];\n /**\n * Tunables of the artifact system: the ownership bonus ladder, the\n * duplicate ladder, the six-socket unlock schedule and the placeholder\n * acquisition sources.\n */\n artifacts_settings: ArtifactsSettings;\n artifacts: ArtifactTemplate[];\n /**\n * Catalog of artifact stones. Ships with the six Aspect (left column)\n * stones only \u{2014} the Law column needs the cores/laws vertical.\n */\n artifact_stones: ArtifactStoneTemplate[];\n /**\n * Collection Power: the passive stat bonus paid for OWNING catalog\n * content, across stones, laws, ability stones, gacha abilities and pets.\n * Artifacts are excluded \u{2014} they already pay their own ownership bonus.\n */\n collection_power: CollectionPowerSettings;\n entities: EntityTemplate[];\n dungeon_templates: DungeonTemplate[];\n fight_templates: FightTemplate[];\n chapters: Chapter[];\n character_levels: CharacterLevel[];\n character_level_formula: CharacterLevelFormula;\n ability_slots_levels: AbilitySlotsLevel[];\n patron_levels: ReferralLevelInfo[];\n quests: QuestTemplate[];\n quests_progression_settings: QuestsProgressionSettings;\n vassals_settings: VassalsSettings;\n vassal_tasks: VassalTaskTemplate[];\n pvp_settings: PvpSettings;\n gifts: GiftTemplate[];\n mail_templates: MailTemplate[];\n currencies: Currency[];\n inventory_levels: InventoryLevel[];\n arena_settings: ArenaSettings;\n arena_leagues: ArenaLeague[];\n matchmaking_settings: MatchmakingSettings;\n event_descriptions: EventDescription[];\n classes: Class[];\n class_levels: ClassLevels[];\n projectiles: Projectile[];\n bundles: BundleRaw[];\n ability_presets_settings: AbilityPresetsSettings;\n bots_settings: BotsSettings;\n reports_settings: ReportsSettings;\n afk_rewards_settings: AfkRewardsSettings;\n afk_rewards_levels: AfkRewardsByLevel[];\n users_generating_settings: UsersGeneratingSettings;\n tutorial_steps: TutorialStep[];\n chats_settings: ChatSettings[];\n offers_templates: OfferTemplate[];\n shop_tabs: ShopTabConfig[];\n ratings_settings: RatingSettings[];\n cheat_scripts: CheatScript[];\n test_player_scripts: TestPlayerScript[];\n gatings: Gatings;\n pet_templates: PetTemplate[];\n pet_rarities: PetRarity[];\n pet_levels: PetLevel[];\n pet_slots_levels: PetSlotsLevel[];\n pet_cases_settings: PetCasesSettingsByLevel[];\n talent_tree_settings: TalentTreeSettings;\n talents: TalentTemplate[];\n statue_bonus_grades: NonEmptyVec<StatueBonusGrade>;\n statue_bonus_type_configs: NonEmptyVec<StatueBonusTypeConfig>;\n statue_level_configs: NonEmptyVec<StatueLevelConfig>;\n statue_settings: StatueSettings;\n buff_templates: BuffTemplate[];\n progress_pass: ProgressPassConfig;\n bird_variants: BirdVariant[];\n plinko_settings: PlinkoSettings;\n /**\n * Texts and timings for OS-level notifications the client schedules on the\n * device itself. Nothing here is sent from the server at runtime.\n */\n local_notifications: LocalNotificationsSettings;\n}"

Source§

const SERIALIZATION_CONFIG: SerializationConfig

Source§

type JsType = JsType

§

fn into_js(&self) -> Result<Self::JsType, Error>
where Self: Serialize,

§

fn from_js<T>(js: T) -> Result<Self, Error>
where T: Into<JsValue>, Self: DeserializeOwned,

Source§

impl VectorIntoWasmAbi for GameConfig

Source§

type Abi = <JsType as VectorIntoWasmAbi>::Abi

Source§

fn vector_into_abi(vector: Box<[Self]>) -> Self::Abi

Source§

impl WasmDescribe for GameConfig

Source§

impl WasmDescribeVector for GameConfig

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FutureExt for T

§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ReturnWasmAbi for T
where T: IntoWasmAbi,

Source§

type Abi = <T as IntoWasmAbi>::Abi

Same as IntoWasmAbi::Abi
Source§

fn return_abi(self) -> <T as ReturnWasmAbi>::Abi

Same as IntoWasmAbi::into_abi, except that it may throw and never return in the case of Err.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> Serialize for T
where T: Serialize + ?Sized,

Source§

fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>

Source§

fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<S, T> Upcast<T> for S
where T: UpcastFrom<S> + ?Sized, S: ?Sized,

Source§

fn upcast(&self) -> &T
where Self: ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider ref type within the Wasm bindgen generics type system. Read more
Source§

fn upcast_into(self) -> T
where Self: Sized + ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider type within the Wasm bindgen generics type system. Read more
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,