You are viewing a potentially older version of this package. View all versions.
Sparroh-UpgradeFiltering-1.1.2 icon

UpgradeFiltering

Advanced upgrade filtering and customizable priority sorting for the gear details menu.

Date uploaded 3 weeks ago
Version 1.1.2
Download link Sparroh-UpgradeFiltering-1.1.2.zip
Downloads 75
Dependency string Sparroh-UpgradeFiltering-1.1.2

This mod requires the following mods to function

BepInEx-BepInExPack_Mycopunk-5.4.2403 icon
BepInEx-BepInExPack_Mycopunk

BepInEx pack for Mycopunk. Preconfigured and ready to use.

Preferred version: 5.4.2403
Sparroh-SparrohUILib-1.2.2 icon
Sparroh-SparrohUILib

Shared UI library for Sparroh Mycopunk mods. Provides themed widgets, HUD builders, windows, and resolution-aware layout.

Preferred version: 1.2.2

README

Upgrade Filtering

A BepInEx mod for Mycopunk that adds advanced filtering and customizable priority sorting to the gear upgrade menu.

Originally split out from Enhanced Upgrade Menu as a focused standalone mod.

Features

Filter Panel

  • Toggle a filter panel from the gear action bar (Filter)
  • Hide upgrades by rarity (Standard, Rare, Epic, Exotic, Oddity)
  • Filter by favorites (Show All, Only Favorite, Hide Favorite)
  • Filter by upgrade stats / properties (context-aware for upgrades vs skins)
  • Clear all filters with one click

Priority Sort

  • Fully customizable multi-criteria sort order
  • Open from the gear action bar (Upgr. Sort)
  • Drag-and-drop reordering of sort priorities
  • Criteria include favorites, locked/unlocked, rarity, trash/turbo status, recently used/acquired, and name
  • Save, Cancel, and Reset controls
  • Priority order is saved between sessions

Stat Display Formatting

  • Optional reformatting of upgrade stats from 50 Damage to Damage: **50**
  • Does not affect directive window hover information
  • Toggleable in config (disabled by default)

Getting Started

Dependencies

  • Mycopunk (base game)
  • BepInEx 5.4.2403 or compatible (BepInExPack for Mycopunk)
  • SparrohUILib 1.2.2 or compatible

Building

  1. Clone this repository
  2. Open the solution in Visual Studio, Rider, or your preferred C# IDE
  3. Build the project in Release mode to generate the .dll

Alternatively, use the .NET CLI:

dotnet build --configuration Release

Installing

Via Thunderstore (recommended)

  1. Install via a Thunderstore mod manager
  2. Dependencies (including SparrohUILib) are installed automatically

Manual installation

  1. Install BepInEx and SparrohUILib
  2. Place UpgradeFiltering.dll in <Mycopunk Directory>/BepInEx/plugins/

The mod loads automatically through BepInEx when the game starts. Check the BepInEx console for a load confirmation message.

Configuration

Settings are in:

<Mycopunk Directory>/BepInEx/config/sparroh.upgradefiltering.cfg

Setting Section Default Description
Enable Reformat General false Force Key: Value stat format on upgrade stats

Priority sort order is stored via the game's player options (SortPriority.Order).

Usage

  1. Open a gear details window
  2. Click Filter on the gear action bar to open the filter panel
  3. Click Upgr. Sort to open the drag-and-drop priority editor
  4. Arrange criteria, then click Save to apply (or Reset to restore defaults)

Help

  • Mod not loading? Verify BepInEx and SparrohUILib are installed, then check console logs for errors
  • Filter panel missing? Open gear details first, then click Filter on the action bar
  • Priority sort not applying? Open Upgr. Sort, arrange criteria, then click Save
  • UI elements missing? Confirm mod and SparrohUILib version compatibility

Authors

  • Sparroh

License

This project is licensed under the MIT License — see the LICENSE file for details.

CHANGELOG

Changelog

1.1.2

Fixes

  • Priority sort actually changes the list — default order puts rarities before Name/Recently*; saved orders that had Name above rarities are auto-migrated (Name is a total sort and was swallowing Exotic/Oddity)
  • Layout — sets anchoredPosition with vanilla math (height fallback); no broken SetUpgradePosition reflection
  • Save — applies in-memory criteria immediately; sticky until a vanilla sort button is used
  • Filters — keep rarity selections across open; reliable window lookup; hide + layout in one pass
  • Trashed — only with BatchScrapping (IsTrashMarked / flag 0x20)
  • Grid ↔ list toggle — re-applies sticky priority sort and filters after SwitchUpgradeView / SetupUpgrades rebuilds the pool
  • Depends on SparrohUILib 1.2.2+

1.1.1

Fixes

  • Priority sort — correctly reads the static upgradeUIs list, sorts only the live window range, and applies layout via UpdateUpgradeOrder / SetUpgradePosition
  • Filters — no longer overwrite upgradeUICount with the visible count (that broke later layout); hidden items are compacted and positions refreshed through the game layout path
  • Depends on SparrohUILib 1.2.1+ for drag-list cursor follow fixes in the sort priority editor

1.1.0

  • Initial standalone release (split from Enhanced Upgrade Menu)
  • Filter panel: rarity hiding, favorites filter, context-aware stat/property filters, and clear-all
  • Customizable priority sort with drag-and-drop reordering, Save/Cancel/Reset, and persistent settings
  • Optional upgrade stat reformatting (Key: **Value**), disabled by default
  • Depends on SparrohUILib for shared UI components

1.0.0

  • Pre-split baseline while features lived in Enhanced Upgrade Menu
  • Complete upgrade filtering and sorting system
  • Filter panel with rarity hiding, favorite filtering, and stat-based filtering
  • Property-aware sorting with custom comparisons
  • Dynamic stat filter list based on current gear context
  • Custom UI integration with the gear details window
  • Packaging: thunderstore.toml, LICENSE, and CHANGELOG