Provisioned indicator on LM ads

One of the frustrations as a hauler is the time when you’re picking up LM ads and you’ve got a full load lined up, you accept one and it sits there on the first line.

Provisioning of shipment @ AB-123c

The shipper forgot to select an auto-provision, or worse - doesn’t even have the goods in inventory right now to provision for you to pick up.

You send them a message, wait expectingly as the ship arrives at the planet without any word back… and so you pick up the other stuff, send another message, wait 30 minutes, send another message, check chat and discord… and then go and send the ship off 1/3 empty - after all, the other shipments have deadlines that you need to meet. Request termination and continue on.

An hour later bing and its been provisioned and now you’re going to end up being a pirate because there’s no way to get back there and pick up that stuff.

This doesn’t happen too often, but when it does it is very frustrating for a hauler and possibly reputation ruining.


Suggestion:

Add a SBLK (soft block) status for inventory. When a local market shipping advertisement is created with “pre-provision”, the requisite inventory will be SBLK’ed. If the inventory is not present with “pre-provision”, the inventory will be SBLK’ed when it is available (production or MTRA event).

If an ad is canceled or times out, the SBLK inventory pops and is returned to the same inventory.

SBLK’ed inventory may not be moved or transfered (just as with BLCK’ed inventory).

Viewing an advertisement on the LM will indicate if there is inventory that has been SBLK’ed.

Upon accepting an ad with SBLK’ed inventory, the SBLK will change to a BLCK and be provisioned as usual.

11 Likes

Let me stress out the importance of the LM interface change: for this to work as intended, ads must show whether there is an SBLK attached or not (on the main LM page).

4 Likes

I think these are some really good suggestions.

Makes sense to add an auto-provision indicator, but adding a new ‘soft block’ mechanic is unnecessary, confusing for base storage, and unrealistic. It makes more sense to put auto-provisioned goods in escrow, like orders in the market. Though there should be a fee for escrow similar to warehouse fees. Otherwise escrow is free storage.

Soft block is the mechanism to prevent abusing this as free storage. IMHO it’s not only simpler to implement than your idea of escrow fee, but also easier to balance - because there’s no balancing required, the stuff just takes space as it normally would. With the fee, how do you decide how much is “fair”? Should it scale with time? If so, you need another time-keeping mechanism to track that fee. And finally I don’t want to pay any fee if I could just store the stuff in my base.
I vote for soft block, it’s simpler.

2 Likes

Hello Moon,

To respond to your points:

First, the escrow fee is not necessary to adapt the CX escrow for shipping. The escrow fee would simply be a logical counterpart to the warehouse fee. Of course, you could simplify things by making both escrow and warehouse cost nothing, but it doesn’t make sense that warehouses cost money and escrow does not. If only one could have a fee, in terms of realism, it should be escrow, since that requires a third party to store your goods.

If the escrow fee were to be implemented in a balanced way (unlike the current warehouse fee), it could be done through a faction-wide vote, like a CO-OP. The funds could then be distributed to faction members, either evenly, or based on contributions to warehouse upkeep costs.

Finally, I will elaborate on the downsides of the softblock.

  1. It is less realistic, because in the real world there is no such thing as a ‘soft block’. Either your assets are yours to allocate as you wish, or they are held in escrow by a third party as part of a contract.
  2. It would make inventory management unnecessarily confusing. Players would need to keep track of which goods were softblocked when viewing their inventory. At that point, just put it in escrow until the ad is accepted or canceled.

I look forward to hearing your opinion.
-Lucas

I’m arguing that the concept of a “faction-wide vote”, with funds “distributed to faction members” is unnecessarily complex. I don’t want a super complicated system for figuring out what my of escrow fee will be and where should the whole 73 ICA of it go. I want autoprovisioned ads to autoprovision without a fail.

ad. 1. There absolutely is such a thing as a soft block in the real world. When you order movie tickets online, your selected seats are soft blocked until payment (when they become hard blocked) - no third party handling this and collecting escrow fee. And in general, any company that sells something will (at least virtually) soft block goods that are in the process of being sold (so that they don’t sell it twice) but not yet shipped. This would be the exact same system.

ad. 2. You wouldn’t need to track anything. Just like now you see a virtual BLK item when you provision contract goods, you’d see the proposed SBLK items for softly blocked stuff. While this would clutter your inventory a bit, it would be perfectly clear IMHO (just like BLK or SHPT items can be clicked to see which contract they belong to), and an okay tradeoff for a robust and predictable autoprovision system.
If anything, it would make managing inventory cleaner. That 1300 C you want hauled off of Boucher? After you place 5 ads to ship 222 C in each, it turns into 5 SBLK items and there’s 190 C left loose - yay, now you know exactly how much you prepared for shipping and how much will remain after your ads get accepted.

1 Like

Firstly, could you link to a resource that uses the phrase ‘soft-block’, I’ve never heard this phrase before in the real world, and I haven’t found any mention of it after a quick search.

The examples of so-called ‘soft-blocks’ that you mentioned are not the ‘exact same system’, to the contrary, they are fundamentally different systems. Setting aside inventory for customers is voluntary, self-regulated inventory management. The inventory management system could be improved in this game, but again, it is a different issue.

The issue that we were discussing was ensuring that, for the benefit of the receiving party, goods are guaranteed to be auto-provisioned. Since it is a hard limitation imposed on one party for the benefit of the other, it is not a system of inventory management, it requires a third party, which is the definition of escrow..

In terms of fees, there are already fees for warehouses and production on planets. If you have multiple bases, you are already paying a variety of fees. An escrow fee does not need to be complex, it could simply be a price per ton and a price per cubic meter. It would be quite easy to calculate the impact of these fees on your profits: just add a column in your spreadsheet and update two values once each month, or once in three months.

Edit: to keep things realistic: there should be a cost to a lot of things that are currently free: moving goods between markets, storage locations, and ships, changing production lines, placing buy/sell orders, worker pay (currently they are not workers but serfs).

could you link to a resource that uses the phrase ‘soft-block’

I have no idea how that’s called in real-world inventory management, it’s not my area of expertise. All that I’m saying is that this exact mechanism, regardless of the exact naming, is ubiquitous IRL and requires no third party and no fees. It is just a promise that the provider of goods makes to the client and to organize internally. The movie theater manages their inventory of seats for a given screening for their own convenience (=to avoid overbooking) and for their clients’ convenience (so that the seats you’re about to pay for don’t get sniped before you process the payment). No third party participating and charging an extra fee.

Setting aside inventory for customers is voluntary, self-regulated inventory management.

Yes. Soft block would be voluntary as well - nobody forces you to use autoprovisioning. This is simply saying “I want the system to automatically set aside that stuff so that when someone accepts my ad it becomes immediately available for them without the need for me to intervene”. You’re not giving it to someone else to hold. You’re marking it internally for the purpose of fulfilling a promise.

Since it is a hard limitation imposed on one party

Again, nobody would force you to autoprovision; it is a 100% voluntary option. Feel free to not do that and provision manually ¯\(ツ)

To reiterate my point of view: the system proposed by @shagie which I endorse here is only a way to mark - OPTIONALLY - goods associated with an ad as associated with an ad. You’re only making a promise (to yourself and to the person who accepts your ad) that you have them right now and they will be available immediately. They’re not in escrow. They’re in your inventory. The SBLK is for you so that you don’t accidentally ship it yourself or sell it or burn it and fail to provision a contract and get blacklisted by your would-be-hauler (and for them, so they know they’ll be able to liftoff without unnecessary delay). You can cancel the ad and they’ll immediately return to you. Because they never left your inventory to begin with. Frankly, I would find it absurd to have to pay for that.

Regarding your fee idea: sometimes more hardcore realism is not a good thing. I don’t want to pay for moving stuff from one inventory to the other - in the real world you’d first put the numbers in your shipping manifest and go “huh, that’s weird, my ship doesn’t have the capacity” and then fix the manifest before giving it to your warehouse people to actually move stuff onto the ship and I like that the game abstracts this mistake away. Similar arguments apply to the concept of paying a fee for autoprovisioning. I feel like I’ve expressed all of my criticism of this idea.

I feel like I’m understanding your points less and less so let me just briefly state the advantages of @shagie’s proposal so that we’re clear on that, and then feel free to attack the individual points:
+ is conceptually simple (SBLK = stuff in this box was set aside for an ad)
+ guarantees the autoprovision will succeed (cause you can’t move the SBLK by accident)
+ helps with managing your inventory (cause you see which goods are SBLK’d and which are not)
+ helps with planning (because if you try to autoprovision stuff you don’t have, it’ll error out)
+ requires no third parties and no fees (because everything is in your inventory until it passes to the partner’s)

3 Likes

Got no idea why you try to overcomplicate simple things.
To follow your comparison to real world:

  • i want my stuff sent
  • i order courier service
  • i pack my stuff into a box, set it aside
  • wait for courier come pick it up

I dont hide it in cloud paying a mystery third-party a fee, I dont throw it around the house, it takes up my space in my place waiting for someone to pick it up and move to where I need.
The way its now its just setting an ad “i need sth shipped” and then when the courier comes i say “well sorry i dont have it, wait some X time” - or how its now in PrUn - the courier arrives and sits waitin or leaves cause there is no guarantee the stuff is there or even that the guy ordering the shipping is gonna respond.
The aforementioned idea is simple, very clear and selfexplanatory.
What you are proposing is some weird cloud-storage for magical fee that’s just multiplicating in-game windows and mechanics.
Seen a black box-o’-goods in the game? Thats what we want to appear when a “soft block” is in place. Thats it. And the option/information in the LM add.

3 Likes

A method to form custom shipment bundles would be a useful way to manage inventory. But there must be a clear separation between inventory management and escrow. Inventory management is the player’s responsibility, escrow is a third-party service to guarantee fulfillment of a contract. The escrow provider is the middleman who ensures that the goods are actually set aside. If a player is unable to move their goods, as described with this ‘soft-block’, ‘hard-block’ idea, that means their goods no longer in their possession, they are being held in escrow.

Quote 1: “I have no idea how that’s called in real-world inventory management.”

Quote 2: “I feel like I’m understanding your points less and less.”

Seems like these two are related. So now I will say it in simple terms:

Either my goods are mine or they are not.

If they are mine, they are in my inventory and I can do what I want with them. It is my job to save them for their intended purpose.

If they are not mine, they are in escrow and I cannot access them until I take them out of escrow.

Yes, we could use better inventory management tools to group and track goods. Again, that’s a separate issue.

Inventory management is the player’s responsibility

And this proposal is, in part, for a tiny extra tool to help you manage your inventory.

The escrow provider is the middleman who ensures that the goods are actually set aside. If a player is unable to move their goods

YOU are this middleman. You put the goods aside. You are absolutely able to move them - after you cancel the ad which you set them aside for.

If they are mine, they are in my inventory and I can do what I want with them

Okay now I think I understand you. You just don’t want to have a system that guarantees anything automatically. You want to be able to make ads that won’t autoprovision because of your own mistake. You want the right to make this mistake because you want to manage everything manually.

Well I’ve got a solution for you: let us have the soft-blocking, guaranteeing system, AND DON’T USE IT. Make non-autoprovisioning ads and manually provision every single time. You’ll have your error-prone, manual, player-managed “system” and be happy, we’ll have our system and be happy.

At this point I consider this dispute settled. Unless your subsequent reply brings some new idea to the table, I will not humor you with further replies. Your continued usage of the word “escrow” in this context sounds a bit too much like a troll attempt.

A previous job I had, I worked back office for a reasonably sized retail company (300 stores at the time with tens of thousands of SKUs active at any given time). Writing the software for inventory management, point of sales, picking lists, and delivery dispatches was my set of responsibilities.

When a customer made an order that required them to go pick up items from the yard or arrange for delivery of those items that weren’t of the “pick it up and take it to a cash register”, we didn’t have any special provisioning or storage for them.

The inventory had a count of how many 123-4567 items were available and a list of “these orders have yet to be picked up.” There may be 234 of SKU 123-4567 availble in the yard, but if the picking lists and delivery orders accounted for 200 of them, the system wouldn’t let someone buy 35 more of them.

This implements a similar system and provides a visual indicator of “this inventory has been promised to this advertisement.”

You can see similar systems at work with online retailers. “Only 7 left”. The retailer doesn’t start picking immediately when the order is placed - it goes into the queue of orders to be picked and it may even be days until its picked. My Amazon delivery day is Friday and if I order something to be delivered not tomorrow, it doesn’t get picked until Thursday - and yet the “Only 7 left” becomes “Only 6 left” on Amazon’s page. That is a soft lock on the inventory. Amazon hasn’t moved it to any other location, its still in their warehouse and remain there until it is picked. If I cancel my order before it is picked, the only thing that happens is some numbers in the database get updated.

PRUN doesn’t have an inventory management system that I can write software for. FIO exists, but I can’t do inventory management from there. And so, my request is to have the devs implement a way that will reduce friction for independent haulers to be able to plan their shipping better (I had to deal with delivery of owner operator semis and the inventory updates there too).

SBLK is a visual representation of the exact same processes that are used in real world inventory management systems to ensure they don’t sell inventory that they don’t have and say to the semi truck driver “sorry, you have to wait another 4 hours because we don’t have the shipment of coffee that we were going to have you move in the warehouse because the staff drank some of it.”

1 Like

“You just don’t want to have a system that guarantees anything automatically.”

That is not true. A system that guarantees transactions would be good, but it should be separate from inventory management.

Here’s one implementation:

Inventory management: allow grouping of multiple items into single entities with custom names, like folders in a file system. There are lots of potential names for this grouping: shipment, bundle, container, box, etc.

Advertisements: when the creating player elects to auto provision, the shipment is removed from inventory and held by the guarantor (realistically for a fee) until the ad is cancelled or accepted.

This achieves the same effect, while maintaining the basic distinction between player and outside inventory.

Edit: maybe I should clarify why this distinction matters. In the real world, any internal inventory management is non-binding. Successful inventory management helps the company, both logistically and reputation-wise, but it is not a guarantee. Contrast that with goods held in escrow, custody, etc: these entities have a widely established reputation of reliability, and they ensure the availability of the goods and funds between parties who have not established sufficient trust in the other’s inventory management abilities.

This all makes sense, however, I believe a clear separation between internal inventory management and external guarantors is more realistic. I refer you to my most recent response to MoonSugarTravels for more detail.

  • Lucas

External guarantees and escrow is a different domain (which I do want).

This is a suggestion to reimplement the existing functionality of auto provision in a way that exposes more information about the current state of the inventory:

As it current stands, this functionality while being quite useful is incomplete and can eaislly create mistakes when doing the shipment. Do I have 100 RAT now in the warehouse? Do have other LM ads that exist to ship that RAT?

As a hauler, I want to know “is it on the virtual loading dock now or will I have to wait a couple hours for someone to click ‘Fulfill’ because they forgot to select an auto provision and thus possibly miss the shipping deadlines of the goods I’ve already picked up?”

Escrow, and the fees and storage of goods in escrow is different.

This proposal is singularly focused on increasing the information value of the auto provision.

2 Likes

@shagie you’ve spent probably 15 minutes writing up this detailed explanation for him to respond:

In the real world, any internal inventory management is non-binding

which is a yet another iteration of “I didn’t read this thread at all and I still think the proposed solution forces me to do something with my inventory”. Followed with another iteration of “I want a complex system to emulate the real world to the most minute details and turn every shipping contract into effectively 3 contracts involving a third party that collects fees determined via another contrived system”. There’s no convincing him so I’d say we should simply agree to disagree and give up on this completely fruitless discussion, hoping that most players (and the devs) understand what’s being proposed here and vote for it.

Speaking as a player who doesn’t use contracts much, actually I’m not sure of the difference between provisioning and this “soft-block” idea. I thought that’s what provisioning was. Is it really necessary to have two different types of blocked inventory?

Without auto provisioning, when you (as a hauler) accept a shipping advertisement on the local market, it looks like this:

As a person placing the ad, it looks like this

That first line - the “Provisioning of 711 units of Basic Rations” that’s already on its way, but that’s what this proposal is referring to. My current inventory looks like:

Lets say that I want to ship my RAT from Midway - Sand to Moria again.

If I don’t select auto provision, that first line of the contract created will just sit there waiting for me to click Fulfill within 3 days. You’ve got a ship waiting to pick up the goods that I have to fly them - you’ve got a bunch of other shipments where you already have the SHPT in your inventory.

Auto provision was implemented to make it so that the hauler doesn’t need to wait if the goods are there. ( A Deluge of Development Info – Development Log #231)

On Thursday I added the last new feature: auto-provisioning of shipping ads. This has been a much requested feature because when it is being used haulers that accept a local market ad will able to pick up the shipment right away.

If the materials are in the selected store when the contract closes, the provisioning condition is fulfilled immediately. If the materials are added to the store at a later point, but within the deadline, the materials are provisioned automatically as well. The selection of an inventory for auto-provisioning is entirely optional.

Note that part that I bolded.

So, I’m going to make some ads on Sand. I’ve got 697 RAT in my inventory now and I make a couple hundred a day. Lets call it 200 RAT / day.

If I create three auto provisioned shipments for 250 RAT each, and you accept all three, the first two will be automatically fulfilled, and the 3rd one will wait until I’ve got another 53 RAT in my inventory. You don’t know how long that will take. It could be minutes for a production order to complete, it could be hours instead (they’re all backed up behind a mass of FIMs I’m making), it could be until I get back on and fix a recipe (I’m about to run out of GRN, but I’ve got MAI in my inventory too).

You, looking at the local market only see that I’ve got 3 ads up. Whats more, even if “is this ad auto provisioned” won’t tell you if I have the inventory now to actually fill the shipment orders.

The SBLK suggestion would make it so that the inventory is soft blocked and pre-allocated for fulfillment of the contract when its accepted. This would then be coupled with an indicator on the local market advertisement to say “yes, there is a SBLK inventory associated with this ad”.

In the previous case with my 697 RAT and the three 250 shipments, two of them would be SBLK’ed immediately allowing you, the hauler to know that if you accept these ads the goods will be there right now - you won’t have to wait for some future event to occur and the 3rd one… if you accept it, you might have to wait a bit.

The difference is “what does it take to get the inventory to ‘pop’?”

A SBLK’ed inventory is linked to an ad and would pop when the ad is canceled (something that I, as the person posting the ad can do anytime before it is accepted) or when it expires (say, 5 days from now).

A BLCK’ed inventory is a linked to a closed contract and would pop when the contract is terminated - either through a request termination or it wasn’t ever picked up within the deadline. Those are things that I, the person who posted the ad, cannot do (I can request a termination, but both conditions require the partner to do (or not do) something).

And there is a 3rd type of blocked inventory - the SHPT - which is a moveable blocked inventory that the hauler interacts with. It only pops when the contract is violated and not extended, a contract is terminated by both parties, or when its delivered. Again, these are things that I, the person who posted the ad can’t initiate.

So this is why a 3rd type of blocked inventory would need to be created to properly implement this - because the “how a player interacts with it” for the other two types of blocked inventory is different and that its linked to an advertisement rather than a closed contract.