[WIP] Rucksack - Multiplayer Inventory System

We’ve built Rucksack with the goal of being the most flexible and extensible inventory solution with UNet support that enables you to easily setup player inventories, NPC inventories, banks, premium shops and much more! So, what does this mean?

>> View on the Asset Store <<
Signup for the mailing list

>> Join Discord (thread not maintained) <<

It means that Rucksack is a super extensible system with full source code, a modular event based UI system, multiplayer built-in with UNet integration, a network permission model with server-based authorization, and much more!

We’re on a mission to build the best modular multiplayer-ready inventory system on the market, using all the knowledge we’ve gained over the years on the Asset Store - and we’re very hyped about releasing what we believe to be the best tool we’ve ever built!

:crossed_swords: Main Features :crossed_swords:

Multiplayer-compatible with UNet integration:


With a built-in integration for UNet that allows you to integrate into any server/networking setup, Rucksack is perfect for both online multiplayer and singleplayer games. Rucksack is secure and uses a server-authoritative permission model; So, no cheaters!

Modular event based UI system:
You’re in full control of your UI with our modular and event-based UI system. The system is very fast and extensible, yet simple to use, which means you’ll be setting up your inventory / collections UI in no time! It doesn’t matter if you’re making a fantasy RPG or a casual mobile game with IAP - Rucksack’s UI system can handle it all.

Items with behaviours:
In Rucksack, items can have behaviors, and you can very easily make your own item types and add custom behavior. We won’t limit your options!

Restrict collections:


Need a quest items-only inventory? Or a consumables-only inventory? Not a problem for Rucksack; Use any metric to restrict the objects that can be stored in a collection.

Insanely extensible:
Rucksack has been built from the ground-up to be extensible in every possible way, ensuring that you’ll never be limited in what you can achieve with the system if you want to extend it.

Visual item equipment / NPC’s with equipment:


Any character in your game can have their own inventories and equipment, which means you can make them equip different weapons and gear by simply binding it onto the NPC (static, skinned, and dynamic cloth meshes, or write your own equipment handler).

Permission Model with server-based authorization:
Our server-based authorization model makes your game cheat-proof, while remaining flexible and extensible to fit every kind of server / network setup. Example use with UNet: UNetPermissionRegistry.collections.SetPermission(collection, player, Permission.Read).

Vendors can sell anything for anything:
Need to be able to sell houses for cats, or skill for skillpoints? With Rucksack, any item can be sold, and anything can be a currency. Go nuts!

Shared and non-shared (instanced) banks and chests:


With Rucksack, you can easily differentiate between and setup both shared and non-shared (instanced) banks and chests in-game. The system is so flexible that the shared banks and chests could theoretically be shared between every player in a game, everyone in your party - and everything in-between.

Modular input and UI system:
Rucksack’s modular input system is extensible and changeable, and allows you to create input modules to handle your input. The beauty is that you can very easily replace or swap out certain input modules for maximum control (example).

Item inheritance:


Want to reduce the data transfers in your online game? With item inheritance, you can create variations of items (e.g. a Sword that can also be a Fire Sword). With Rucksack’s inheritance system, the Fire Sword can inherit its base stats from the Sword, while only overriding or adding those properties that have changed or have been added. In a large game, this saves a lot of duplicate data of unused props from being transferred.

Different prices at vendors for different users:


You can easily achieve and setup different prices at vendors / shops based on whatever properties you want, such as different in-app purchase prices based on country (requires custom IVendor implementation).

Thanks to everyone who helped beta test, and we hope you’re as excited as we are about Rucksack! Got any suggestions or feedback? Let us know below :slight_smile:

>> Join Discord (thread not maintained) <<

  • Your friends at Devdog (Joris and Sune)
10 Likes

Superb stuff, Can’t wait to get my hands on it. (insert Futurama meme here)

2 Likes

Finalllyyyyyy <3

After playing around with networking inventory pro, I’ve been watching on the Devdog Discord for this release! Can’t wait to see an UMA integration @SecretAnorak ^^

2 Likes

Oh trust me, I’ll be on the case immediately :smile:

3 Likes

Looking forward to getting my hands dirty on this right away :smile:

1 Like

Oooooooooooooooooooooooooooooooooooooooooooooooooooooooooh sweet.
LoL 3yrs worth begging and its here!! Well worth the wait

2 Likes

Looks very cool and promising asset! thumbs up :slight_smile:

Really hope you’ll enjoy it! Can’t wait to hear what you all think about it.

Videos and more will be coming soon too.

Does it support offline mode? Please compare with inventory pro in detail.

1 Like

Yes, it does, it just also happens to have really good support for online play.

http://rucksack-docs.readthedocs.io/en/latest/

1 Like

Is it possible to make this asset work with other networking solutions? Or is UNET required?

3 Likes

I’ve split of as much network code as I could into a general non-unet dependent namespace; So it can be re-used for a photon integration - or anything else.
You’re not forced to use UNet - it’s just what we provide a standard integration with. All of Rucksack has been built to be extendable and customizable.

An actual comparison chart is actually a good idea! Will consider that.

Rucksack is superior in every way to Inventory Pro and ultimately will aim to replace it (although in a separate package). Rucksack will be cheaper than Inventory Pro, but also lacks some features compared to inventory pro (no crafting, skillbars), as we aim to keep rucksack as clean as possible and build on top of it through addons / separate asset store packages; For example a mobile package, RPG pack, survival pack, etc

We aim to keep Rucksack clean and simple, yet powerful, so the community can build their own specific addons they might need for their game, rather than cluttering up the core inventory system.

On our new website, which will go live very soon, we’ll also have a section for addons where we will share these community-built addons.

2 Likes

Do you provide character stats? If so, I would like to support something like the status value curve generation.

Hey guys. Using your inheritable item feature, can we have item qualities? For example, in inventory pro you had to have one hundred different items if I wanted 100 levels of quality (plus a specific crafting recipe for each). For this one it sounds like I can have one item, then modify a quality stat as needed. Does that sound right?

1 Like

We don’t include character stats by default, however, you can very easily implement your own stats system. See: http://rucksack-docs.readthedocs.io/en/latest/APIDocs/CharacterEquipment/EquippableCharacter/ for the docs on how to create a stat character :slight_smile:

You could certainly do this. The item inheritance feature applies to item definitions only (see http://rucksack-docs.readthedocs.io/en/latest/APIDocs/Items/Items/#item-definition). You can either create the 100 items (lots of work, obviously), or, you can deterministically generate them at run-time

Finished two getting started videos.
Now we’re really just waiting for Unity to accept Rucksack :slight_smile:

2 Likes

It’s aliiiiive! :slight_smile:

@jorisshh - Will the upgrade pricing be permanent, or is it for a limited time only?

We want to keep it permanent, but have had to remove it right now because for some reason, when we had the discount enabled, Unity would show reviews of Inventory Pro on the Rucksack page, which is misleading as Rucksack is a new product entirely and has nothing to do with Inventory Pro.

We’ve reached out to Unity in the hopes to have this fixed, although it seems to just be the way the Asset Store works. Will give you guys an update once we’ve heard back.