You are viewing a potentially older version of this package. View all versions.
TeamSorcerers-Artisan-1.1.0 icon

Artisan

A general-purpose quality of life mod, highlights include inventory extension support, the addition of a health bar and damage indicators that work in multiplayer, and added damage to the Aero and Teleblast spells.

Date uploaded a month ago
Version 1.1.0
Download link TeamSorcerers-Artisan-1.1.0.zip
Downloads 922
Dependency string TeamSorcerers-Artisan-1.1.0

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2305 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2305

README

Artisan

Artisan is a quality-of-life and gameplay enhancement mod for YAPYAP focused on multiplayer compatibility, stability, performance, and customization.

The mod expands existing gameplay systems while remaining fully configurable, lightweight, and multiplayer-friendly.

Why Artisan Exists

Artisan was created after experimenting with several community mods that introduced useful features but also presented limitations related to multiplayer compatibility, performance, maintainability, or configurability.

While contributing fixes directly to those projects would normally be preferable, some of them did not provide public repositories or issue trackers where improvements could be proposed.

Because of that, Artisan was developed as an independent project that reimplements, improves, and expands those ideas while focusing on:

  • Multiplayer compatibility
  • Stability
  • Performance
  • Configurability
  • Long-term maintainability

Artisan exists as a complement to community creations and not as criticism of the original authors whose work inspired some of its features.

Features

Monster Health Bars

Displays health bars above monsters when they receive damage.

Features:

  • Visible to all players with Artisan installed
  • Automatic fade-out when monsters leave combat
  • Configurable height offset
  • Multiplayer-safe implementation

Floating Damage Indicators

Displays floating damage numbers whenever monsters are hit.

Features:

  • Multiplayer synchronized
  • Damage-based visual scaling
  • Automatic fade and cleanup
  • Lightweight implementation

Aero & Teleblast Damage

Adds configurable damage support for:

  • Aero
  • Teleblast

Features:

  • Independent damage values
  • Independent enable/disable options
  • Optional player damage support
  • Multiplayer-safe damage handling

Extended Inventory Slots

Expands the player's inventory capacity beyond the vanilla limit.

Features:

  • Configurable maximum slot count
  • Additional slot hotkeys
  • Improved inventory performance
  • Persistent save support
  • Multiplayer compatibility

Dynamic Inventory Layout

Fully customizable inventory layout system.

Features:

  • Configurable inventory columns
  • Configurable slot spacing
  • Configurable inventory position
  • Adaptive inventory positioning
  • Optional inventory background hiding
  • Improved offhand slot positioning

Inventory Slot Upgrade System

Adds progression-based inventory expansion.

Players start with the default inventory size and can purchase additional slots during the lobby phase.

Features:

  • Individual progression per player
  • Shared room gold economy
  • Configurable upgrade prices
  • Configurable price scaling
  • Dedicated upgrade station
  • Multiplayer-safe synchronization
  • Persistent progression

Locked Inventory Slots

Protects unavailable inventory slots until they are unlocked.

Features:

  • Visual lock overlay
  • Tele-lock themed lock icon
  • Scroll wheel protection
  • Hotkey protection
  • Drag-and-drop protection
  • Item pickup validation

Inventory Data Recovery

Artisan includes several safeguards to prevent accidental item loss.

Features:

  • Automatic recovery of items stored in locked slots
  • Automatic recovery of items stored in overflow slots
  • Safe inventory restoration process
  • Protection against inventory save corruption

Configuration

All Artisan features can be configured through:

BepInEx/config/gamedroit.artisan.cfg

Settings are organized into dedicated configuration groups for improved readability.

Available configuration categories include:

Combat UI

  • Monster health bars
  • Damage indicators
  • Health bar height offset

Spells

  • Aero damage
  • Aero player damage
  • Teleblast damage
  • Teleblast player damage

Inventory

  • Extended inventory slots
  • Maximum slot count
  • Grid columns
  • Grid position
  • Slot spacing
  • Background visibility
  • Extra slot key bindings

Inventory Upgrades

  • Upgrade system enable/disable
  • Base upgrade price
  • Price multiplier

Installation

  1. Install BepInEx.
  2. Install Artisan.
  3. Launch the game once.
  4. Configure the mod if desired.

Configuration file:

BepInEx/config/gamedroit.artisan.cfg

Roadmap

Planned features include:

  • Host configuration synchronization
  • Automatic client configuration updates

Credits

Inspiration

Health Bar: https://thunderstore.io/c/yapyap/p/XiaohaiMod/HealthBar/

Aero With Damage: https://thunderstore.io/c/yapyap/p/ControllerAndHisFriends/AeroWithDamage/

More Inventory Slots: https://thunderstore.io/c/yapyap/p/H4Mods/MoreInventorySlots/

Author

Created by Gamedroit (Hadaward)

If you have suggestions, bug reports, or feedback, feel free to open an issue on GitHub or reach out through the YAPYAP modding community.

CHANGELOG

Changelog

1.1.0

Added

  • Added support for adaptive inventory grid positioning.
  • Added support for configurable inventory grid columns.
  • Added support for configurable slot spacing.
  • Added support for optional inventory background hiding.
  • Added support for configurable inventory position offsets.
  • Added support for extra slot key bindings.

Changed

  • Refactored inventory UI layout system to support dynamic grid configurations.
  • Reworked slot positioning to use relative offsets based on configurable grid settings.
  • Improved offhand slot alignment and scaling to maintain consistency with dynamic grid layouts.
  • Reorganized mod configuration into dedicated configuration groups.

    :warning: Its recommended to reset your mod configuration after updating to this version to ensure all new settings are properly initialized.

Fixed

  • Fixed issue where items could become permanently inaccessible when inventory slot upgrades were enabled after a save already contained items in higher slots. Such items are now automatically removed from invalid slots and dropped into the world as recoverable items.
  • Fixed issue where reducing MaxSlots could permanently delete items stored in higher inventory slots. Items from overflow slots are now automatically dropped into the world during inventory restoration instead of being lost.
  • Fixed race condition between: ServerTryRestoreFromKvp and ServerSerializeToKvp, which could cause inventory data to be overwritten during restoration. Now added restore state tracking through: RestoringInventories and prevented slot serialization while a restore operation is in progress.

What comes next on the roadmap?

  • Implementing support for synchronizing host configurations to clients in multiplayer sessions, so that settings are consistent across all players without requiring manual configuration.

If you have any suggestions or feedback on the mod, please feel free to reach out to me on the mod's GitHub repository or through the modding community discord. Your input is invaluable in helping me improve and expand the mod's features!

1.0.2

Added

  • Added configurable backpack inventory slot upgrades.
  • Added per-player inventory progression system.
  • Added lobby upgrade chest for purchasing additional inventory slots.
  • Added support for shared gold economy when purchasing inventory upgrades.
  • Added locked slot visual overlays with tele-lock mesh rendering.
  • Added automatic slot locking/unlocking synchronization.
  • Added multiplayer-safe inventory upgrade networking.
  • Added localized upgrade text support.
  • Added English and Brazilian Portuguese localization support.
  • Added shopkeeper purchase feedback integration.
  • Added purchase sound effects and NPC reactions after successful upgrades.
  • Added configurable upgrade pricing:
    • Base slot upgrade price
    • Upgrade price multiplier
  • Added support for disabling the upgrade system entirely while keeping all slots unlocked.
  • Added inventory full handling for potion ingredients and custom interactables.
  • Added runtime UI refresh for slot overlays and upgrade states.

Changed

  • Completely refactored extended inventory UI layout system.
  • Reworked slot positioning to use deterministic absolute positioning.
  • Improved inventory frame alignment and spacing.
  • Improved offhand slot alignment and scaling.
  • Improved locked slot visuals and overlay rendering.
  • Improved inventory interaction validation.
  • Improved multiplayer synchronization for inventory upgrades.
  • Improved tooltip behavior for locked/full inventory states.

Fixed

  • Fixed players being able to store items in locked inventory slots.
  • Fixed mouse scroll selecting locked slots.
  • Fixed locked slots accepting drag/drop interactions.
  • Fixed inventory pickup validation when extra slots are locked.
  • Fixed inventory full tooltip inconsistencies.
  • Fixed potion ingredient tooltip not displaying "Inventory Full".
  • Fixed upgrade chest not respawning after returning to the title screen.
  • Fixed locked slot overlays not refreshing immediately after upgrades.
  • Fixed several inventory UI alignment issues.
  • Fixed frame positioning inconsistencies between regular slots and offhand slot.
  • Fixed purchase SFX playing when upgrades failed.
  • Fixed multiplayer purchase confirmation behavior.
  • Fixed several UI layering and overlay positioning issues.

Technical

  • Added runtime mesh-to-sprite rendering for tele-lock slot icons.
  • Added server-authoritative inventory upgrade purchases.
  • Added custom Mirror networking handlers for upgrade synchronization.
  • Added helper utilities for locked slot validation and inventory state checks.
  • Added automatic UI rebuild and refresh logic for inventory overlays.