Contracting Conundrum

Bart the 43rd was excited. After grinding hard in his Avenger and, well, 42 deaths, he’d scraped together enough money to buy a used Constellation tricked out for cargo running. While it didn’t have the cargo capacity of the Starfarer, it meant he could haul over three times as much cargo on each run. He’d been parked at the Shippers’ Guild for hours looking for the right contract for his Connie’s inaugural run.

“Too far. Too dangerous. Too expensive. Man, am I ever going to see something other than this crap,” said Bart the 43rd to nobody in particular since the woman staffing the Guild desk long ago tuned him out. “Wait a minute… wait a minute!”

SHIPPING CONTRACT: 35 ton refinery robot CPUs for immediate delivery to Nemo. Speed bonus paid for delivery within 3 days.

“Bingo!” shouted Bart the 43rd. Bart accepted the contract, raced to his new Connie, and 36 hours later, he was at the door. 36 hours and 15 minutes later, he was back in his Connie. Another trader in a closer system accepted the contract first and beat him there.

“Effing pigeon drones,” Bart the 43rd muttered. “When in the hell are those UEE boys going to invent FTL communications?”

A serious problem with relay-style communications is highlighted by poor Bart the 43rd’s dilemma. At least the poor dude can visit the Space Whale while he figures out how to pay for the fuel he burned getting to Nemo.

To understand what happened to Bart the 43rd and to facilitate what I expect will be an ongoing discussion concerning this issue, I’ve created the following graphic:

Let’s make some assumptions for the purposes of this blog entry…

  • Nemo is system ‘A’ and the source of the contract request.
  • Each planet graphic represents a different system.
  • Commercial communications take one hour to propagate between systems via pigeon drone (just for ease of discussion purposes and not a prediction of how long it will actually take in the game).
  • Bart the 43rd was on system ‘D’
  • The trader who fulfilled the contract was on system ‘B’ and is named ‘Hilda’

Now let’s work the timeline.

  • Hour 0: Contract request made
  • Hour 1: Contract request at system B
  • Hour 2: Hilda accepts the contract at system B. Contract request at system C.
  • Hour 3: Hilda’s contract acceptance received at System A. Contract request reaches Bart the 43rd at system D, is accepted by him, and he leaves immediately for the jump point. Hilda’s contract acceptance data at System C.
  • Hour 4: Hilda’s contract acceptance data reaches System D. Bart the 43rd’s acceptance reaches System C.

It’s clear the relay delay has screwed Bart the 43rd out of his contract. Even in the best case where his MobiGlas picks up Hilda’s acceptance data once Bart enters the system with system C, he’s still screwed.

The pigeon drone and system-limited exchange system CIG has envisioned will inevitably cause duplicate contract acceptances. Inevitably. The question then becomes how to handle it. Frankly, there are no good ways to handle it within the game fiction.

The creator of the contract on system A cannot be responsible for anything other than the first contract acceptance. Even in the limited example above, there could be four duplicate contracts – one each from planets B, C, D, and E with only the one from System B being the ‘valid’ contract.

The creator of the contract will possibly still need those refinery robot CPUs and be willing to offer a lower price to those who arrived “late”. But that’s not fair to the traders, especially traders who come longer distances and have higher costs that may not be covered by the lower prices.

There may be other consumers of refinery robot CPUs on Nemo who could take up the slack supply, but that would have to be coincidental. CIG couldn’t purposefully spawn consuming nodes just to handle duplicate contract issues. It would break the game economy quickly.

I honestly have no idea how CIG gets around this problem inside the game given the current communications assumptions. And I’ll reiterate Bart the 43rd’s situation is an inevitable and regular occurrence in the economy as currently foreseen.

The easiest way around it is to relent and make communications instant (faster-than-light). Perhaps the technology could be limited by the fiction to very short bursts – urgent news and contract data – and not suitable for the kinds of constant stream of price data necessary for regional exchanges. This is about the only “have our cake and eat it too” solution I can devise.

There is another way around this, and that’s the use of an outside contracting website. Some enterprising folks set up a contracting exchange outside the game. Anyone interested in any type of contract – askers and bidders – list their contracts on this outside exchange. Contract-related communication in this outside exchange would not be hampered by in-game communications limitations and are, therefore, instant. Everyone involved agrees contracts made on this outside exchange are binding inside the game, with appropriate penalties (loss of access to the system, for example) for breaking this agreement. At the point bidders and askers make contact in the game, an in-game contract between the two is created to fulfill the contract originally created on the outside exchange.

I’m 110% confident outside exchanges will be created if CIG can’t come up with a good solution to this “Contract Conundrum” Bart the 43rd experienced. We have already seen similar websites created as players work around analogous issues in EVE (see EVE-Central.com and EVE‑Markets.net as two examples).

Every time a player feels the need to Alt-Tab away from Star Citizen, immersion suffers. That’s a bad thing, so here’s to hoping CIG and the community can come up with a smart way to solve prevent poor Bart the 43rd’s problem.

[Note: Make sure to click on the comments where we have discussed a possible solution to this problem. Feel free to hop into the conversation. Comments are moderated to start, but I release them pretty quickly.]

15 thoughts on “Contracting Conundrum

  1. I have a potential solution for this problem:

    Instead of a message from a node saying “I need X amount of…(whatever),” maybe a more generalized message saying “Planet/Station Y will pay well for X commodity.” That way, you can have multiple players who see that message and will deliver goods. Sure, Hilda might bring in more profit than Bart, but Bart won’t have wasted his time either. Once the “quota” has been reached, then the message goes away. Maybe some folks get shafted, but it won’t be quite so dramatic. Maybe a message saying “Planet/Station Y has fulfilled its needs for commodity X. Many thanks to the traders who responded to our request.”

  2. As discussed in chatroll, the only real in-game solution to this problem is really the simplest one: enable instantaneous FTL communications across multiple star systems. Maybe not all systems in the universe, but instant within a given “region” of space spanning multiple close systems, at the very least.

    If FTL communications are enabled, you can INSTANTLY lock down contracts upon acceptance, preventing a lot of player grief and rage due to the duplicity conundrum stated above. And you can just as easily/quickly free up a contract the moment the system detects a contract-holder has been taken down by pirates, allowing for an overall smoother economy.

    I see FTL comms (even in a limited region-wide sense) to be absolutely essential to this economic model if CIG intends to preserve immersion and discourage our resorting to the ubiquitous contingency FTL communicator (Read: the internet’s various websites) for a solution to this problem.

  3. Maybe both can work. You can have “specific commodity” missions happening WITHIN a star system where speed of light lag isn’t felt so badly.

    Example: A player at an Ag station over Earth sees a bulletin to take 5 tons of grain to a foodstuffs factory over Io. Another player at an Ag station over Mars sees the same thing, but light speed delay isn’t so slow that only one player is awarded the contract.

    For inter-system requests that require jumps, then the more generalized version is needed, as stated in my previous message, “Port Benjamin at Nick’s World in Croshaw will pay top credit for Luxuries.” (nod to my radio show pilot there.)

    Maybe that would help.

  4. -How long does it take to “jump” from one system to another? Near instantaneous like previous games? I think intersystem communication will be the longest part of the communication (light takes 8 minutes to get to earth, could we say communication takes 10 minutes to get to the “jumpgate”?) so if they had a pigeon station on both sides of the gate, they could have them set up to send out a pidgeon every minute, or even faster. There would still be an issue with what you depicted in your story, but as long as you were close to the pidgeon station it would be minimized.
    -That of course would bring up another issue, you would have everyone camping at the station the shortest distance from the jumpgate, and ignoring the other parts of the system.
    - I think major bases should have FTL communication to each other. (There are even theories in real life as how to do this with quantum entanglement) Ship to ship communication would be then limited to how far they were from either; who they were trying to communicate with, or the nearest starbase.

    • I’m not sure jumps will be instantaneous in Star Citizen. If what Chris Roberts says about “navigating a new jump route” is true, then it sounds like jumping might be more like the old Origin game “Space Rogue” where you actually had to fly your ship through a tunnel in space. That takes time and therefore pigeon drones will need to take time (similar amount or slightly faster) to negotiate the same circuitous route. You might actually find travel between stars will take longer than a point-to-point message sent at light speed within a star system.

      • I expect navigating a jump will be slow when done the first time or any time you try and do it manually. I expect it will be compressed when it’s done via your AI.

        I suspect the speed of the gate navigation will ultimately depend on how much data they have to handle when you pass between systems. If they have to pass a ton of data, the jump will be longer :) .

  5. This could be a solution, Clint_Steel. Communications inside systems is instant (or nearly so). Having very frequent pigeon drones would still build delays from source to end as even 1 minute delays in each system translate to meaningful delays. We don’t know how many jumps there are between the two most distant systems. It’s not 100 even though there are 100 systems, but

    Delay = # of jumps * drone frequency

    This might be a “good enough” solution to cover most populated areas, especially if each contract worked by a “Claim and Confirm” mode. Bart the 43rd would not have “accepted” the contract, he would have “claimed” it. It wouldn’t have been his contract until the originator “confirmed” it — which wouldn’t have happened given Hilda “claimed” it first.

    Hilda would have been the only one to get a “confirm” and Bart the 43rd would have still lost out on a lucrative deal, but wouldn’t have wasted time and money to get there.

    I’m not sure CIG previously thought the jump gates would get that kind of workout, but…

  6. I suspect that in most cases contracts will be handed out intra-system where communication will be instantaneous. There might be cases where a contract might have to be beamed across multiple systems. In those cases I suspect the contract would not involve anything that is time-sensitive – ie rescue a ship from attack but rather would be something around the lines of go and get some rare resources from this far away system. In those cases a 3 round communication mechanism could solve the contracting conundrum problem by adding a confirmation step in the process:

    1) A contract is made available on the market and beamed out to all systems. The farther the system the more time it will take to reach.
    2) Somewhere in the system a player looks at the contract and decides to ‘volunteer’ for it. They submit their request and it is beamed back to the source
    3) The first response that reaches the source is selected for the contract. A confirmation is sent back to the volunteer. Once received the mission is on. If no confirmation is received within a given time frame then the contract was denied.

    • To elaborate further, all contracts should have an expiry time (ie respond in the next 2 hours to be considered)

      I assume that most players will volunteer for multiple contracts to increase their chances of getting work. They might be accepted for multiple jobs but would have to reject some or accept too many to be able to complete all in time. As such may be the case, it could take some time for a contract to get picked up by someone and be fulfilled entirely on time.

      Even if a call to action bears no rewards for a player upon reaching the destination (ie arriving too late to rescue a ship from attack), I’m sure the journey to reach the place would be filled with adventures that could potentially lead to finding treasures or other stuff along the way to make up for the time spent on the quest.

    • Nice to see you Maxy!

      If folks decide to hang around the most populous commercial systems waiting for jobs, then I think you’re right that most contracts will be offered and accepted in system. That’s bad design on CIG’s part, however, since you would really rather have people dispersed across the galaxy as much as possible both from a technical and gameplay perspective.

      Otherwise, most contracts will originate in areas heavy with manufacturing nodes and be filled in areas heavy in raw material nodes. It will take time to get back and forth from there. Your three-part bid-accept-confirm solution might work, but it will have to be four-part with both the originator and acceptor confirming — because, just as you say, in a system where delays are inherent like CIG has proposed, people will accept way more contracts than they can handle in the hopes of being confirmed on a few..

      I think people have to be careful about accepting tons of different contracts because accepting and then not fulfilling will reduce their attractiveness to people offering contracts.

      • :)

        As a thought, maybe the ability to fulfil a contract could be tied to a players status / reputation. You would own this information. So if you sign up for a ton of jobs but only complete a few it will show up on your profile, etc. This won’t affect game-play that much if you get contracts from the AI but if you try to get a job from another player….

        This is indeed a tricky part of the game.

  7. -So I was watching the live stream and they did say there would be an IM system for friend and guildmates that would be indeed be instant. Since they have conceded this much, I don’t see the benefit of trying to keep the lore as slower than light communication.

    -So I go back to the quantum entanglement idea (worked for mass effect) maybe not as expensive, but you just need to physically give the other player/place the pair of the particle. Means that there still could be communication delays but over all FTL communication would be the norm.

    • I tend to agree. Delayed communications only ensure most serious pilots will use Alt-+Tab 3rd party commercial intelligence services, thus breaking fiction.

      I know why CIG wants to preserve this particularly bit of fiction — or at least I think I do — but I’m not sure it’s worth it, all things considered.

  8. Using IM outside the game is certainly going to be used. The possibility of CIG endorsing it, I think, is dicey. There is nothing to keep it from happening, I suppose, unless there is some way to limit credit transfers to just contracts made within the game. The problems everyone has mentioned are certainly real. Unfair, inefficient, mistake-prone, etc. But that is at the very root of the nature of capitalism. It is not risk vs. profit, it is risk = profit. Consider the Silk Road trade that existed and worked for over two millennia. The one basic rule that made it work, was the greater the risk, the greater the profit. And one risk was that your cargo may not be worth as much when you deliver it as it was on your last trip, or a new cheaper source might become available. (Of course, another risk was that you may disappear somewhere in the mountains or deserts between eastern Afghanistan and western Iran). Every person involved in any kind of commerce wants to minimize the chance of loss and maximize the opportunity for profit. Everyone wants “the man”, or whatever “powers that be” to in some way guarantee they will make a profit, usually at a less well connected persons expense. But this is a Sim of a basic, raw, opportunistic frontier economy. There should be no built-in “fair” except Laissez-faire. If you think pigeon drones are too risky for your purposes, hire an armed messenger service. If the need is there, I guarantee one will pop up. Other wise, contract with specific contractors, only honor those contracts. You may pay more occasionally, but it is good business practice. If you are dealing with the first supplier that shows up, you are dealing with people that know they may not get your business on that trip. If you contract with someone across the galaxy, even if someone else shows up and you buy their stuff, you still have a contract to honor with that supplier way over there. That is the nature of the concept of “contract”. It’s the difference between doing business thru Amazon and Craigslist.

Leave a Reply