UNPKG

farming-weight

Version:

Tools for calculating farming weight and fortune in Hypixel Skyblock

75 lines (74 loc) 2.61 kB
import type { DropKind, DropTag } from '../effects/types.js'; import { Stat } from './stats.js'; import type { UpgradeCost } from './upgrades.js'; export declare enum Crop { Cactus = "CACTUS", Carrot = "CARROT_ITEM", CocoaBeans = "INK_SACK:3", Melon = "MELON", Mushroom = "MUSHROOM_COLLECTION", NetherWart = "NETHER_STALK", Potato = "POTATO_ITEM", Pumpkin = "PUMPKIN", SugarCane = "SUGAR_CANE", Wheat = "WHEAT", Seeds = "WHEAT_SEEDS", Sunflower = "DOUBLE_PLANT", Moonflower = "MOONFLOWER", WildRose = "WILD_ROSE" } export interface CropCraft { item: string; amount?: number; takes: number; and?: { item: string; amount: number; cost?: number; }[]; } export interface CropRngDrop { chance: number; drops: Record<string, number>; /** Output bucket for this drop. Defaults to `rng`. */ output?: 'rng' | 'collection' | 'currency'; /** * If `harvestFeast`, this drop only occurs when a Harvest Feast is active and this crop is in-season. * Used for Seasoning + per-crop Harvest Feast materials. */ only?: 'harvestFeast'; /** * Drop kind classification used by the effects pipeline. Defaults to `'rng'` when omitted. */ dropKind?: DropKind; /** * Drop tags consumed by `Effect.scope.tags`. See `DropTagBuiltin` for the well-known set. * Defaults to `['overbloom','rare-crop']` when omitted (the SkyBlock RARE CROP pool). */ tags?: readonly DropTag[]; } export interface CropInfo { name: string; npc: number; drops: number; fortuneType: Stat; breaks?: number; replenish?: boolean; exportable?: boolean; exportableCost?: UpgradeCost; startingTool: string; toolXpFactor: number; crafts: CropCraft[]; rng?: CropRngDrop[]; } /** Drop chance of Seasoning from any in-season crop during a Harvest Feast (1/2,250). */ export declare const HARVEST_FEAST_SEASONING_CHANCE: number; /** Drop chance of a per-crop Harvest Feast unique material from in-season crops (1/18,000). */ export declare const HARVEST_FEAST_MATERIAL_CHANCE: number; /** Per-crop unique Harvest Feast material item id, dropped at 1/18,000 from in-season crops. */ export declare const HARVEST_FEAST_MATERIALS: Partial<Record<Crop, string>>; export declare const CROP_INFO: Record<Crop, CropInfo>; export declare const MAX_CROP_FORTUNE: Record<Crop, number>; export declare const LIST_OF_CROPS: Exclude<Crop, Crop.Seeds>[]; export declare const LIST_OF_CROPS_WITH_SEEDS: Crop[]; export declare const EXPORTABLE_CROP_FORTUNE = 12;