proposal: change to erosion of contract trading reputation
Posted: Sat Sep 06, 2008 9:30 pm
Excerpt from an interview with Commander Luke in the top industry rag, "Contract Trading Today":
Currently, reputation erodes randomly. Every time a pilot jumps, there is about a 3% chance that his reputation erodes. So trying to be a great hauler and saving game time on delivery routes trying to deliver ahead of schedule actually can *hurt* your reputation by giving the game more chances to erode your rating!
Ironically, successfully completing long routes (especially if you work hard for early delivery via painstakingly-chosen trade routes that increase the number of hops to decrease delivery time) can be *worse* for your reputation! The more hops, the more chances are that you'll suffer an erosion. Cross-galaxy deliveries, which only the most dedicated and skilled traders can hope to complete, are almost guaranteed to erode your rating at least once if you optimize for delivery time. I'd think that taking on and successfully completing long routes would make your reputation more secure, not less, because they are so memorable to the trading community: "Yeah, , I still remember Commander Trader, he did a cross-galaxy delivery for me way ahead of schedule". The word of mouth should spread and the reputation "strength" should increase and work to avoid erosion.
I think erosion should be modified to reward committed, active traders. A time-based erosion based on activity is fairer, and just makes more sense. It also introduces more strategy and trade-offs into the game.
Some points:
0) Fundamentally: memory fades over time
1) If a trader has current contracts, his reputation should remain constant in the minds of all customers because his status is there to see for all on the Galactic Trader charts. "Wow, there's Commander Whizbang again on the board, he's *always* doing trades, and he has a perfect reputation, he's the guy I want for my business!". Out of sight, out of mind. If you don't have active contracts, people will start to forget you. If you have active contracts, then they will remember you. This has a balancing effect for failed traders: you can't simply erase your failures by jumping back and forth between two planets 0.1 light years apart 100 times! The only way to improve bad reputation while actively trading is to complete trades. If you stay away from trading for a long time, then the positive erosion should occur, and this makes sense, but you don't then get the benefits of trading.
2) # of hops shouldn't enter in to the equation. "Hey, as long as he gets my stuff there on time, and his perfect reputation shows he will, I don't care about the # of hops. In fact, I *like* my traders to take more hops because it usually results in my stuff getting there faster."
3) Erosion should be based on how long you've been away from contracts. Do a trade, and the erosion clock is reset, because you're back in customers minds right away. Immediatlely after completing a contract, the chance for erosion should be zero, say for a week or so. Then, the longer one stays away, the higher the percentage chance of an erosion occuring. This time-away-from-contracts-based escalating chance of erosion has a balancing effect: currently a trader with a perfect reputation could, because erosion is random, keep the perfect reputation for a very long time. The longer one is away from contracts, the higher the chance of erosion should be.
4) Longer routes are more memorable. Completing them should give big bonuses, and failing them should give larger penalties.
5) Frequently, active traders, even of short routes, should build up reputation protection as well, but at a slower rate than long haulers.
Proposal:
+ Keep all the existing code surrounding reputation. The only change here is when the erodeReputation method is called.
+ Never erode if the player has outstanding contracts
+ Introduce the notion of reputation strength (RS), which has the units of game time.
+ RS is increased when the user has a perfect reputation and completes trades. This pushes the date of possible erosion into the future. Longer trades should be weighted to increase reputation strength more than small trades, but frequent small trades also serve to impress customers with your efficiency and activity and so do deserve notice.
+ Upon every hop, when the player does not have current contracts, the code to determine whether or not to erode would look something like this:
. RS , and is set to a future date as a bonus for completing trades when the player has a perfect reputation. Based on the difference between the current date and the RS date
So there you have it. The above tells my story. I'm here today to make a proopsal for changing how contract trading reputation erosion is handled in oolite.I had spent a long time building a perfect contract trading rep with a big ship, with the dream of advancing my contract trade business into the specialty gem/gold/platinum business that every contract trader desires. I had decided I wanted to focus exclusively on this higher end business. And so, once I had proven itself worthy, the desired contracts started appearing. Still actively involved in trading, I switched to a high end, small, strong, fast ship: the Dragon XE. This ship, together with my "Dangerous" combat rating gives my customers the assurance they need and shows that I'm no greenhorn: both I and my "12 little buddies" in the missile slots know how to deal with pirates, and to protect my clients' very special cargo. My small cargo hold says: "I'm not your every day contract trader. I won't become side-tracked by Food or Textile offers along my route, I know you're interested in discreet couriers, not huge sky-filling vessels that practically scream to the universe: "Attack me, Im' full of god stuff!". Moving to the Dragon XE was a key part in my strategy: my main advantage that sets me apart from the competition. But then something strange happened. Never more than a few days outside of any active contracts, all of a sudden the top contracts vanished. It was like some evil, cosmic Random Number Generator had rolled me a bad one, and overnight everybody suddenly decided that I didn't cut the mustard any more, and now, stuck in a small ship, I didn't have the means to gain back my reputation. Through the grapevine I learned that the WeHaveHugeBoringShips company had actually manipulated my reputation, because they can't stand the small, specialty couriers. The whole episode left me disappointed and frustrated, especially after the long hours and dedication I put into this business. This business needs an overhaul, and I intend to fight for small, specialty trader's reputation preservation rights. The Powers That Be should not be allowed to randomly take away my hard-earned contract reputation!
Currently, reputation erodes randomly. Every time a pilot jumps, there is about a 3% chance that his reputation erodes. So trying to be a great hauler and saving game time on delivery routes trying to deliver ahead of schedule actually can *hurt* your reputation by giving the game more chances to erode your rating!
Ironically, successfully completing long routes (especially if you work hard for early delivery via painstakingly-chosen trade routes that increase the number of hops to decrease delivery time) can be *worse* for your reputation! The more hops, the more chances are that you'll suffer an erosion. Cross-galaxy deliveries, which only the most dedicated and skilled traders can hope to complete, are almost guaranteed to erode your rating at least once if you optimize for delivery time. I'd think that taking on and successfully completing long routes would make your reputation more secure, not less, because they are so memorable to the trading community: "Yeah, , I still remember Commander Trader, he did a cross-galaxy delivery for me way ahead of schedule". The word of mouth should spread and the reputation "strength" should increase and work to avoid erosion.
I think erosion should be modified to reward committed, active traders. A time-based erosion based on activity is fairer, and just makes more sense. It also introduces more strategy and trade-offs into the game.
Some points:
0) Fundamentally: memory fades over time
1) If a trader has current contracts, his reputation should remain constant in the minds of all customers because his status is there to see for all on the Galactic Trader charts. "Wow, there's Commander Whizbang again on the board, he's *always* doing trades, and he has a perfect reputation, he's the guy I want for my business!". Out of sight, out of mind. If you don't have active contracts, people will start to forget you. If you have active contracts, then they will remember you. This has a balancing effect for failed traders: you can't simply erase your failures by jumping back and forth between two planets 0.1 light years apart 100 times! The only way to improve bad reputation while actively trading is to complete trades. If you stay away from trading for a long time, then the positive erosion should occur, and this makes sense, but you don't then get the benefits of trading.
2) # of hops shouldn't enter in to the equation. "Hey, as long as he gets my stuff there on time, and his perfect reputation shows he will, I don't care about the # of hops. In fact, I *like* my traders to take more hops because it usually results in my stuff getting there faster."
3) Erosion should be based on how long you've been away from contracts. Do a trade, and the erosion clock is reset, because you're back in customers minds right away. Immediatlely after completing a contract, the chance for erosion should be zero, say for a week or so. Then, the longer one stays away, the higher the percentage chance of an erosion occuring. This time-away-from-contracts-based escalating chance of erosion has a balancing effect: currently a trader with a perfect reputation could, because erosion is random, keep the perfect reputation for a very long time. The longer one is away from contracts, the higher the chance of erosion should be.
4) Longer routes are more memorable. Completing them should give big bonuses, and failing them should give larger penalties.
5) Frequently, active traders, even of short routes, should build up reputation protection as well, but at a slower rate than long haulers.
Proposal:
+ Keep all the existing code surrounding reputation. The only change here is when the erodeReputation method is called.
+ Never erode if the player has outstanding contracts
+ Introduce the notion of reputation strength (RS), which has the units of game time.
+ RS is increased when the user has a perfect reputation and completes trades. This pushes the date of possible erosion into the future. Longer trades should be weighted to increase reputation strength more than small trades, but frequent small trades also serve to impress customers with your efficiency and activity and so do deserve notice.
+ Upon every hop, when the player does not have current contracts, the code to determine whether or not to erode would look something like this:
Code: Select all
if ( reputationIsPerfect && (reputationStrength >= currentTime))
// no erosion
else
{
if ( ! reputationIsPerfect )
chanceOfErosion = 3%; // current behavior
else
{
reputationStrengthAge = fabs( reputationStrength - currentTime);
chanceOfErosion = <sliding scale, is age is old, more chance of erosion, if age is not old, smaller chance>
}
}
. RS , and is set to a future date as a bonus for completing trades when the player has a perfect reputation. Based on the difference between the current date and the RS date