Economy Rollbacks

Today, I just had experienced a game developer’s worst nightmare. Our silly mistake of a spelling error lead to the inflation of our own game’s economy.

A few newcomers needed some admin commands to be able to test the game on the main-place, testing ground wasn’t an option. We have a script that gives players admin if they are a whitelisted member. Upon whitelisting a few userIds, we made a mistake in how evaluate whether they get admin or not. Instead of checking whether their id was valid (==), we accidentally checked for (~=). A mistake that shouldn’t have happened working with such a delicate component of the game, but it happened nonetheless and there’s nothing we can do about it.

Big oopise, however went unchecked for a whole week and only got news of it today (the last day of the week). Therefore we had no choice but to rollback everyone’s data for at least a week. Although backlash was expected, and we got plenty… People were frustrated, we get it but refunds is non-negotiable for obvious reasons.

A suggestion was to read from an endpoint and infer userId and purchase amount, but weren’t sure if it would be accurate and reliable. So we settled with a solution we thought people would be happy with; we reimbursed their progress with a hefty compensation (in-game hard currency), an amount that they realistically wouldn’t have reached playing for a week.

What could we have done better?

1 Like

When dealing with situations like these there are only two scenarios I would consider if you do not have the technology required to handle such incidents, both of which are equally great, one lazier than the other.

  1. Refactor the whole economy. You can mitigate the damage by completely revamping the economy and adapting to a new system for your game. This is a great choice depending on how much damage you accidentally have done to your game.
  2. Play off the mistake as an event. Your players don’t have to know you messed up, and you don’t have to worry as much if you play off the event as an intentional economic bonus. There is not much long-term damage done with this plan of action, and provides the easiest course of action without antagonizing your players.

Of course, these are simple scenarios that I would consider personally, but they’re probably the most reliable to fall back on if incidents like this mistake do occur in the future. Best of luck with the future of your economy!

1 Like

We’ve made disastrous mistakes and damaged our economy in the past as well - instead of rewarding players coins for catching fish, we rewarded gems (the game’s premium currency) instead. Gems became almost more plentiful than coins for a while.

We solved this with “resource sinks” - we added features to the game that cost gems and didn’t really reward the player with anything that would affect gameplay (e.g, just cosmetics and small fun things). Over time players with an absurd number of gems “sink” their currency into these options and ultimately the economy re-stabilizes itself. We left these features in the game because they were little value-adds for people who decided they were worth the money.

2 Likes

There’s a lot of problems with expecting the economy to re-stabilize since players had literally access to everything, they could get insane stats, could buy anything and the pattern goes on for every aspect of the game. There were millions of players who may or may not have abused the fact that they had ADMIN, and chose not to report it for a whole week! The game’s economy was beyond repair at that point, we had a choice to make, discontinue development or roll them back a week.

24 hours later of the backlash

We did the best we could with refunding everyone,

however we made a critical mistake, being stressed from all the criticism and constant backlash we accidentally rolled people back further than just a week. Fortunately, new logins as of today were savable.

In retrospect, we couldn’t announce that we recovered some peoples data publicly to mitigate the situation because previous data (that tried to login yesterday) were simply irrecoverable and that would just further fuel the heated situation, due to the unfairness of who’s data got rolled back and not.

If only we could go back in time, maybe we could do any of your suggestions, but the backlash put an unimaginable amount of stress on us and lead into some bad decision making.

Despite knowing we are accountable for everything, being called thieves from your own community is heartbreaking :broken_heart: nonetheless and that kind of hostility demotivates one to continue working on the game, making us very tempted to give everyone admin and let them roam free to get their data back. :frowning:

Since then we have decided to make it slightly easier to gain currency, levels and etc for a month, we hope this makes things easier. But if not maybe it is just worth it to give up; What do you think?

If you still have an active playerbase it’s definitely not worth giving up on the game. Give it time and show that you’re still dedicated to the game and people will forgive and forget (see: No Man’s Sky).

Also, our admin system has a command log so we know exactly who does what. You might want to implement something like that for the future.

The way I dealt with this exact issue was to “round off” player currency so that users below a certain “reasonable” level that they could have attained through legitimate means were allowed to keep all of their currency in tact, whilst anyone with a value above a certain value was rounded off logarithmically so that the damage was minimised. It’s still technically unfair, but it was the most fair solution I could think of.