How shigure-ruiseki/okbackpack works
OKBackpack is a Minecraft mod providing wearable and placeable inventory backpacks, configurable storage, modular upgrade slots, and player-facing interactions. The main workflow is that a player opens or uses a backpack; its wrapper and item handlers expose storage and upgrades to the GUI, while game events and upgrade wrappers provide automated or player effects. Separate branches cover rendering, sleeping bags, tool swapping, audio, and optional integrations. Some feature links are documented in the README; unsampled implementations are represented only by supported directories, and uncertain wiring is omitted.
Main entry points: BackpackWrapper.java Storage Wrapper · BackPackContainer.java Backpack Container · item Upgrade Behavior · IStorageWrapper.java Storage Contract
Components 22
Backpack Core
- Mod Bootstrap
src/main/java/ruiseki/okbackpack/OKBackpack.java - Mod Configuration
src/main/java/ruiseki/okbackpack/GeneralConfig.java - Backpack Blocks
src/main/java/ruiseki/okbackpack/common/block/BlockBackpack.java - Storage Wrapper
src/main/java/ruiseki/okbackpack/common/block/BackpackWrapper.java - Backpack Lookup
src/main/java/ruiseki/okbackpack/common/helpers/BackpackEntityHelpers.java - Storage Contract
src/main/java/ruiseki/okbackpack/api/IStorageWrapper.java
Player Interface
- Backpack Container
src/main/java/ruiseki/okbackpack/client/gui/container/BackPackContainer.java - Inventory Handler
src/main/java/ruiseki/okbackpack/client/gui/handler/BackpackItemStackHandler.java - Upgrade Sync
src/main/java/ruiseki/okbackpack/client/gui/syncHandler/DelegatedStackHandlerSH.java - Backpack GUI
src/main/java/ruiseki/okbackpack/client/gui
Upgrades And Effects
- Game Events
src/main/java/ruiseki/okbackpack/common/event/BackpackEventHandler.java - Upgrade Behavior
src/main/java/ruiseki/okbackpack/common/item - Upgrade Contracts
src/main/java/ruiseki/okbackpack/api/wrapper/IUpgradeWrapper.java - Sleeping Bag
src/main/java/ruiseki/okbackpack/common/block/BlockSleepingBag.java
Client Features
- Backpack Rendering
src/main/java/ruiseki/okbackpack/client/renderer/BackpackContentHandler.java - Tool Swapping
src/main/java/ruiseki/okbackpack/client/key/ToolSwapHandler.java - Jukebox Audio
src/main/java/ruiseki/okbackpack/client/audio/BackpackJukeboxSoundManager.java
Integrations
- Sorter Compatibility
src/main/java/ruiseki/okbackpack/compat/bogosorter/BackpackBogoSorterClientCompat.java - Mod Compatibility
src/main/java/ruiseki/okbackpack/compat
Other components
- Player
- Minecraft
- Optional Mods
Connections 23
- Mod Bootstrap → Mod Configuration: registers config
src/main/java/ruiseki/okbackpack/OKBackpack.java - Mod Bootstrap → Mod Compatibility: registers integrations
src/main/java/ruiseki/okbackpack/OKBackpack.java - Player → Backpack Blocks: uses
- Backpack Blocks → Storage Wrapper: provides storage
- Backpack Lookup → Storage Wrapper: resolves wrapper
src/main/java/ruiseki/okbackpack/common/helpers/BackpackEntityHelpers.java - Storage Wrapper → Storage Contract: implements contract
- Player → Backpack Container: opens
- Backpack Container → Inventory Handler: uses inventory
- Inventory Handler → Storage Contract: checks storage
src/main/java/ruiseki/okbackpack/client/gui/handler/BackpackItemStackHandler.java - Backpack Container → Backpack GUI: presents
src/main/java/ruiseki/okbackpack/client/gui/container/BackPackContainer.java - Backpack GUI → Upgrade Sync: synchronizes slots
src/main/java/ruiseki/okbackpack/client/gui/widget/updateGroup/AdvancedJukeboxStorageSlotGroupFactory.java - Upgrade Sync → Storage Contract: marks dirty
src/main/java/ruiseki/okbackpack/client/gui/syncHandler/DelegatedStackHandlerSH.java - Storage Wrapper → Upgrade Behavior: hosts upgrades
- Upgrade Behavior → Upgrade Contracts: implements contracts
- Minecraft → Game Events: dispatches events
src/main/java/ruiseki/okbackpack/common/event/BackpackEventHandler.java - Game Events → Backpack Lookup: visits backpacks
src/main/java/ruiseki/okbackpack/common/event/BackpackEventHandler.java - Player → Sleeping Bag: sleeps in
- Player → Backpack Rendering: wears backpack
- Player → Tool Swapping: triggers swap
- Upgrade Behavior → Jukebox Audio: plays records
- Player → Sorter Compatibility: sorts backpack
- Sorter Compatibility → Backpack Container: sorts slots
src/main/java/ruiseki/okbackpack/compat/bogosorter/BackpackBogoSorterClientCompat.java - Optional Mods → Mod Compatibility: optional integration