Dev Log 11: Bartering and Inventory Tetris

← DEVLOGS
2025-05-12

Hi guys,

A while back we made a the change from the Underrail 1 style of inventory to a tetris grid based one. Originally, I was planning on keeping the previous inventory implementation because it was simpler and easier to integrate with other game mechanics. Also, not having to go through all the item management code would have saved me some development time. However, as we started adding all the different armor pieces and such, the difference in item scale and inability to render finer details on bigger pieces in the inventory made me realize this is not going to cut it.

It made inventory both aesthetically unpleasing and hard to read.

I was always planning on adding item volume mechanic to Infusion, so in addition to managing weight of your haul, you'd also need to manage the volume. You'd not be able to go around carrying a ridiculous amount of light items even if your character is quite strong.

However, now that we switched to a tetris style inventory, instead of giving every item "volume" stat, we can control its volume through its size on the grid and stacking behavior (how many instances and be stacked together).

Every character will start with 8x8 inventory grid, but will be able to expand that by wearing a backpack, waiste pouch or some other similar container. Each container will act as a separate grid (or a number of them, if it has multiple compartments), so when you, for example, drop a backpack, all the items that you have stored in that grid will remain inside the backpack and you can retreive them all at once when you pick up the backpack again. This will come useful when you have to quickly ditch some weight in order to escape an enemy or perform some athletic feat.

Before someone gets some funny ideas - no, you will not be able to put an item container into another item container, unless the former is empty. So - no infinite space through container nesting.

Other containers you encounter in the game will also use this grid system, limiting their storage capacity through volume. Depending on the type of container, they may also have different grid configurations. Some containers, such as shelves, will have multiple smaller grids, which may limit how big of an item you can store there.

* * * * * * *

I also made a new UI for bartering. The system itself remains mostly the same - with merchants only being willing to buy limited amount of specific merchandise.

(still missing some icons in the top left section)

Unlike before, this demand now "refills" bit by bit as time passes, instead all at once at set intervals. Also, there are no longer any hard-coded restocking mechanisms, so each store will have its own restocking logic.

Ocassionally, merchants will have discounts or mark ups on certain merchandise that would last for limited time or until the circuimstances change. Sometimes, you may get a personal discount from a merchant or they might even allow you to choose something for free as repayment for a favor.

Finally, all the items the store has will be present physically in the store somewhere, so all you theiving sons of rats will have a chance to get your greedy paws on it for free. Of course, the more valuable something is, the harder its going to be to get to it. Don't expect anyone to keep their super steel bars just lying on a shelf for everyone to see.

(note how we have different icons depending on the stack size)

Speaking of while, there will be two primary currencies that are going to be used in Infusion - Stygian Coins and United Stations Dollars. Nothing new here, except that we added a new denomination for each with 1/10 of the value - so 10 Stygian Chips have the same value as 1 Stygian Coin, and same for US Dime and US Dollar. Also, we added "Cerberus Bars" which are basically 1kg of super steel and can be used for trading when making a larger purchase.

That's it for now. Let me know how you like the UI changes. In the meantime, follow me on X, where I post smaller tidbits of development regularly.

Cheers!

← DEVLOGS
DISCUSS ON FORUM